本書針對Atmel公司的AVR系列單片機(jī)和ImageCraft公司的ICC AVR開發(fā)環(huán)境,詳細(xì)地介紹了AT90LS8535的C語言程序設(shè)計。全書共有13章,其內(nèi)容既涉及到了單片機(jī)的結(jié)構(gòu)原理、指令系統(tǒng)、內(nèi)容資源和外部功能擴(kuò)展,又包含了單片機(jī)的編程工具——ICC AVR C編程器的數(shù)據(jù)類型、控制流、函數(shù)和指針等。本書的特點(diǎn)是:深入淺出,從最基本的概念開始,循序漸進(jìn)地講解單片機(jī)的應(yīng)用開發(fā);列舉了大量實例,使讀者能從實際應(yīng)用中掌握單片機(jī)的開發(fā)與應(yīng)用技術(shù)。本書適合作為從事單片機(jī)開發(fā)人員的參考用書。書中先后講解了C語言基礎(chǔ)、AVR單片機(jī)基礎(chǔ),并舉了一些簡單的實例。本書非常適合初學(xué)者。 【目錄信息】 第1章 單片機(jī)系統(tǒng)概述 1. 1 AVR系列單片機(jī)的特點(diǎn) 1. 2 AT90系列單片機(jī)簡介 第2章 AT90LS8535單片機(jī)的基礎(chǔ)知識 2. 1 AT90LS8535單片機(jī)的總體結(jié)構(gòu) 2. 1. 1 AT90LS8535單片機(jī)的中央處理器 2. 1. 2 AT90LS8535單片機(jī)的存儲器組織 2. 1. 3 AT90LS8535單片機(jī)的I/O接口 2. 1. 4 AT90LS8535單片機(jī)的內(nèi)部資源 2. 1. 5 AT90LS8535單片機(jī)的時鐘電路 2. 1. 6 AT90LS8535單片機(jī)的系統(tǒng)復(fù)位 2. 1. 7 AT90LS8535單片機(jī)的節(jié)電方式 2. 1. 8 AT90LS8535單片機(jī)的芯片引腳 2. 2 AT90LS8535單片機(jī)的指令系統(tǒng) 2. 2. 1 匯編指令格式 2. 2. 2 尋址方式 2. 2. 3 偽指令 2. 2. 4 指令類型及數(shù)據(jù)操作方式 2. 3 應(yīng)用程序設(shè)計 2. 3. 1 程序設(shè)計方法 2. 3. 2 應(yīng)用程序舉例 第3章 AT90LS8535單片機(jī)的C編程 3. 1 支持高級語言編程的AVR系列單片機(jī) 3. 2 AVR的C編譯器 3. 3 ICCAVR介紹 3. 3. 1 安裝ICCAVR 3. 3. 2 設(shè)置ICCAVR 3. 4 用ICCAVR編寫應(yīng)用程序 3. 5 下載程序文件 第4章 數(shù)據(jù)類型. 運(yùn)算符和表達(dá)式 4. 1 ICCAVR支持的數(shù)據(jù)類型 4. 2 常量與變量 4. 2. 1 常量 4. 2. 2 變量 4. 3 AT90LS8535的存儲空間 4. 4 算術(shù)和賦值運(yùn)算 4. 4. 1 算術(shù)運(yùn)算符和算術(shù)表達(dá)式 4. 4. 2 賦值運(yùn)算符和賦值表達(dá)式 4. 5 邏輯運(yùn)算 4. 6 關(guān)系運(yùn)算 4. 7 位操作 4. 7. 1 位邏輯運(yùn)算 4. 7. 2 移位運(yùn)算 4. 8 逗號運(yùn)算 第5章 控制流 5. 1 C語言的結(jié)構(gòu)化程序設(shè)計 5. 1. 1 順序結(jié)構(gòu) 5. 1. 2 選擇結(jié)構(gòu) 5. 1. 3 循環(huán)結(jié)構(gòu) 5. 2 選擇語句 5. 2. 1 if語句 5. 2. 2 switch分支 5. 2. 3 選擇語句的嵌套 5. 3 循環(huán)語句 5. 3. 1 while語句 5. 3. 2 do…while語句 5. 3. 3 for語句 5. 3. 4 循環(huán)語句嵌套 5. 3. 5 break語句和continue語句 第6章 函數(shù) 6. 1 函數(shù)的定義 6. 1. 1 函數(shù)的定義的一般形式 6. 1. 2 函數(shù)的參數(shù) 6. 1. 3 函數(shù)的值 6. 2 函數(shù)的調(diào)用 6. 2. 1 函數(shù)的一般調(diào)用 6. 2. 2 函數(shù)的遞歸調(diào)用 6. 2. 3 函數(shù)的嵌套調(diào)用 6. 3 變量的類型及其存儲方式 6. 3. 1 局部變量 6. 3. 2 局部變量的存儲方式 6. 3. 3 全局變量 6. 3. 4 全局變量的存儲方式 6. 4 內(nèi)部函數(shù)和外部函數(shù) 6. 4. 1 內(nèi)部函數(shù) 6. 4. 2 外部函數(shù) 第7章 指針 7. 1 指針和指針變量 7. 2 指針變量的定義和引用 7. 2. 1 指針變量的定義 7. 2. 2 指針變量的引用 7. 2. 3 指針變量作為函數(shù)參數(shù) 7. 3 數(shù)組與指針 7. 3. 1 指向數(shù)組元素的指針變量 7. 3. 2 數(shù)組元素的引用 通過指針 7. 3. 3 數(shù)組名作為函數(shù)參數(shù) 7. 3. 4 指向多維數(shù)組的元素的指針變量 7. 4 字符串與指針 7. 4. 1 字符串的表示形式 7. 4. 2 字符串指針變量與字符數(shù)組的區(qū)別 7. 5 函數(shù)與指針 7. 5. 1 函數(shù)指針變量 7. 5. 2 指針型函數(shù) 7. 6 指向指針的指針 7. 7 有關(guān)指針數(shù)據(jù)類型和運(yùn)算小結(jié) 7. 7. 1 有關(guān)指針的數(shù)據(jù)類型的小結(jié) 7. 7. 2 指針運(yùn)算的小結(jié) 第8章 結(jié)構(gòu)體和共用體 8. 1 結(jié)構(gòu)體的定義和引用 8. 1. 1 結(jié)構(gòu)體類型變量的定義 8. 1. 2 結(jié)構(gòu)體類型變量的引用 8. 2 結(jié)構(gòu)類型的說明 8. 3 結(jié)構(gòu)體變量的初始化和賦值 8. 3. 1 結(jié)構(gòu)體變量的初始化 8. 3. 2 結(jié)構(gòu)體變量的賦值 8. 4 結(jié)構(gòu)體數(shù)組 8. 4. 1 結(jié)構(gòu)體數(shù)組的定義 8. 4. 2 結(jié)構(gòu)體數(shù)組的初始化 8. 5 指向結(jié)構(gòu)體類型變量的指針 8. 5. 1 指向結(jié)構(gòu)體變量的指針 8. 5. 2 指向結(jié)構(gòu)體數(shù)組的指針 8. 5. 3 指向結(jié)構(gòu)體變量的指針做函數(shù)參數(shù) 8. 6 共用體 8. 6. 1 共用體的定義 8. 6. 2 共用體變量的引用 第9章 A190LS8535的內(nèi)部資源 9. 1 I/O 口 9. 1. 1 端口A 9. 1. 2 端口B 9. 1. 3 端口C 9. 1. 4 端口D 9. 1. 5 I/O口的編程 9. 2 中斷 9. 2. 1 單片機(jī)的中斷功能 9. 2. 2 AT90LS8535單片機(jī)的中斷系統(tǒng) 9. 2. 3 1CCAVRC編譯器的中斷操作 9. 2. 4 中斷的編程 9. 3 串行數(shù)據(jù)通信 9. 3. 1 數(shù)據(jù)通信基礎(chǔ) 9. 3. 2 AT90LS8535的同步串行接口 9. 3. 3 AT90LS8535的異步串行接口 9. 4 定時/計數(shù)器 9. 4. 1 定時/計數(shù)器的分頻器 9. 4. 2 8位定時/計數(shù)器0 9. 4. 3 16位定時/計數(shù)器1 9. 4. 4 8位定時/計數(shù)器2 9. 5 EEPROM 9. 5. 1 與EEPROM有關(guān)的寄存器 9. 5. 2 EEPROM讀/寫操作 9. 5. 3 EEPROM的應(yīng)用舉例 9. 6 模擬量輸入接口 9. 6. 1 模數(shù)轉(zhuǎn)換器的結(jié)構(gòu) 9. 6. 2 ADC的使用 9. 6. 3 與模數(shù)轉(zhuǎn)換器有關(guān)的寄存器 9. 6. 4 ADC的噪聲消除 9. 6. 5 ADC的應(yīng)用舉例 9. 7 模擬比較器 9. 7. 1 模擬比較器的結(jié)構(gòu) 9. 7. 2 與模擬比較器有關(guān)的寄存器 9. 7. 3 模擬比較器的應(yīng)用舉例 第10章 AT90LS8535的人機(jī)接口編程 10. 1 鍵盤接口 10. 1. 1 非矩陣式鍵盤 10. 1. 2 矩陣式鍵盤 10. 2 LED顯示輸出 10. 2. 1 LED的靜態(tài)顯示 10. 2. 2 LED的動態(tài)掃描顯示 10. 2. 3 動態(tài)掃描顯示專用芯片MC14489 10. 3 LCD顯示輸出 10. 3. 1 字符型LCD 10. 3. 2 點(diǎn)陣型LCD 10. 4 ISD2500系列語音芯片的編程 10. 4. 1 ISD2500的片內(nèi)結(jié)構(gòu)和引腳 10. 4. 2 ISD2500的操作 10. 4. 3 ISD2500和單片機(jī)的接口及編程 10. 5 TP-uP微型打印機(jī) 10. 5. 1 TP-uP打印機(jī)的接口和邏輯時序 10. 5. 2 P-uP打印機(jī)的打印命令和字符代碼 10. 5. 3 AT90LS8535與TP-uP系列打印機(jī)的接口及編程 10. 6 IC卡 10. 6. 1 IC卡讀寫裝置 10. 6. 2 IC卡軟件 第11章 AT90LS8535的外圍擴(kuò)展 11. 1 簡單I/O擴(kuò)展芯片 11. 1. 1 用74LS377擴(kuò)展數(shù)據(jù)輸出接口 11. 1. 2 數(shù)據(jù)輸入接口 11. 2 模擬量輸出 11. 2. 1 D/A轉(zhuǎn)換器簡介 11. 2. 2 8位數(shù)模轉(zhuǎn)換器DAC0832 11. 2. 3 8位數(shù)模轉(zhuǎn)換器與單片機(jī)的接口及編程 11. 2. 4 12位數(shù)模轉(zhuǎn)換器DACl230 11. 2. 5 12位數(shù)模轉(zhuǎn)換器與單片機(jī)的接口及編程 11. 3 可編程I/O擴(kuò)展芯片8255A 11. 3. 1 8255A的引腳和內(nèi)部結(jié)構(gòu) 11. 3. 2 8255A的工作方式 11. 3. 3 8255A的控制字 11. 3. 4 AT90LS8535和8255A的接口 11. 4 帶片內(nèi)RAM的I/O擴(kuò)展芯片8155 11. 4. 1 8155的引腳和內(nèi)部結(jié)構(gòu). 11. 4. 2 8155的I/O口工作方式 11. 4. 3 8155的定時/計數(shù)器 11. 4. 4 8155的命令和狀態(tài)字 11. 4. 5 AT90LS8535與8155的接口及編程 11. 5 定時/計數(shù)器芯片8253 11. 5. 1 8253的信號引腳和邏輯結(jié)構(gòu) 11. 5. 2 8253的工作方式 11. 5. 3 8253的控制字 11. 5. 4 AT90LS8535與8253的接口及編程 11. 6 實時時鐘芯片DS1302 11. 6. 1 DS1302的引腳和內(nèi)部結(jié)構(gòu) 11. 6. 2 DS1302的控制方式 11. 6. 3 AT90LS8535與DS1302的接口與編程 11. 7 數(shù)字溫度傳感器DS18B20 11. 7. 1 DSl8B20的引腳和內(nèi)部結(jié)構(gòu) 11. 7. 2 DS18B20的溫度測量 11. 7. 3 AT90LS8535與DS18B20的接口與編程 第12章 AT90LS8535的通信編程 12. 1 串口通信 12. 1. 1 異步串口UART通信 12. 1. 2 同步串口SPI通信 12. 2 I2C總線 12. 2. 1 I2C總線協(xié)議 12. 2. 2 采用AT90LS8535的并行I/O口模擬I2C總線 12. 3 CAN總線 12. 3. 1 CAN總線的特點(diǎn) 12. 3. 2 CAN協(xié)議的信息格式 12. 3. 3 CAN控制器SJA1000 12. 3. 4 AT90LS8535與SJA1000的接口及編程 12. 4 AT90LS8535單片機(jī)與PC的串行通信 12. 4. 1 基于VC 6. 0的PC串口通信 12. 4. 2 應(yīng)用實例 第13章 系統(tǒng)設(shè)計中的程序處理方法 13. 1 數(shù)字濾波處理 13. 1. 1 平滑濾波 13. 1. 2 中值濾波 13. 1. 3 程序判斷濾波 13. 2 非線性處理 13. 2. 1 查表法 13. 2. 2 線性插值法
標(biāo)簽: AVR 單片機(jī) C語言編程 應(yīng)用實例
上傳時間: 2013-11-04
上傳用戶:元宵漢堡包
本Demo Board 采用HOLTEK 公司最新推出的VFD MCU 系列(HT49CVX),該系列產(chǎn)品可以直接驅(qū)動VFD,由MCU 的引腳和VFD 的引腳直接相連,而不需要外加任何的驅(qū)動芯片。本DMEO BOARD 除有鍵盤操控顯示以外,還附加了紅外線遙控接收裝置,使用極為方便。 功能 所使用MCU 之功能為紅外線遙控接收,根據(jù)按鍵的選擇進(jìn)入不同的顯示模式,附帶還有A/D 轉(zhuǎn)換和溫度測量功能,而使用的MCU 為HT49CV5 DEMO BOARD 外觀 為了方便使用者了解和開發(fā)使用,本DEMO BOARD 提供了三種使用方式,即MCU 方式、HT49CVX 母體+ROM LESS 方式和仿真器方式,其中MCU 方式和HT49CVX 母體+ROM LESS 方式向使用者展示了DEMO BOARD 的具體工作情況;而仿真器方式則提供給使用者自行開發(fā)產(chǎn)品。
上傳時間: 2013-12-29
上傳用戶:Artemis
TLC2543是TI公司的12位串行模數(shù)轉(zhuǎn)換器,使用開關(guān)電容逐次逼近技術(shù)完成A/D轉(zhuǎn)換過程。由于是串行輸入結(jié)構(gòu),能夠節(jié)省51系列單片機(jī)I/O資源;且價格適中,分辨率較高,因此在儀器儀表中有較為廣泛的應(yīng)用。 TLC2543的特點(diǎn) (1)12位分辯率A/D轉(zhuǎn)換器; (2)在工作溫度范圍內(nèi)10μs轉(zhuǎn)換時間; (3)11個模擬輸入通道; (4)3路內(nèi)置自測試方式; (5)采樣率為66kbps; (6)線性誤差±1LSBmax; (7)有轉(zhuǎn)換結(jié)束輸出EOC; (8)具有單、雙極性輸出; (9)可編程的MSB或LSB前導(dǎo); (10)可編程輸出數(shù)據(jù)長度。 TLC2543的引腳排列及說明 TLC2543有兩種封裝形式:DB、DW或N封裝以及FN封裝,這兩種封裝的引腳排列如圖1,引腳說明見表1 TLC2543電路圖和程序欣賞 #include<reg52.h> #include<intrins.h> #define uchar unsigned char #define uint unsigned int sbit clock=P1^0; sbit d_in=P1^1; sbit d_out=P1^2; sbit _cs=P1^3; uchar a1,b1,c1,d1; float sum,sum1; double sum_final1; double sum_final; uchar duan[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; uchar wei[]={0xf7,0xfb,0xfd,0xfe}; void delay(unsigned char b) //50us { unsigned char a; for(;b>0;b--) for(a=22;a>0;a--); } void display(uchar a,uchar b,uchar c,uchar d) { P0=duan[a]|0x80; P2=wei[0]; delay(5); P2=0xff; P0=duan[b]; P2=wei[1]; delay(5); P2=0xff; P0=duan[c]; P2=wei[2]; delay(5); P2=0xff; P0=duan[d]; P2=wei[3]; delay(5); P2=0xff; } uint read(uchar port) { uchar i,al=0,ah=0; unsigned long ad; clock=0; _cs=0; port<<=4; for(i=0;i<4;i++) { d_in=port&0x80; clock=1; clock=0; port<<=1; } d_in=0; for(i=0;i<8;i++) { clock=1; clock=0; } _cs=1; delay(5); _cs=0; for(i=0;i<4;i++) { clock=1; ah<<=1; if(d_out)ah|=0x01; clock=0; } for(i=0;i<8;i++) { clock=1; al<<=1; if(d_out) al|=0x01; clock=0; } _cs=1; ad=(uint)ah; ad<<=8; ad|=al; return(ad); } void main() { uchar j; sum=0;sum1=0; sum_final=0; sum_final1=0; while(1) { for(j=0;j<128;j++) { sum1+=read(1); display(a1,b1,c1,d1); } sum=sum1/128; sum1=0; sum_final1=(sum/4095)*5; sum_final=sum_final1*1000; a1=(int)sum_final/1000; b1=(int)sum_final%1000/100; c1=(int)sum_final%1000%100/10; d1=(int)sum_final%10; display(a1,b1,c1,d1); } }
上傳時間: 2013-11-19
上傳用戶:shen1230
本書全面系統(tǒng)地介紹了MCS-51單片機(jī)的結(jié)構(gòu)、原理、接口技術(shù)、擴(kuò)展應(yīng)用等知識,主要內(nèi)容包括:計算機(jī)運(yùn)算基礎(chǔ),計算機(jī)硬件電路基礎(chǔ),單片微型機(jī)的組成原理,MCS-51系列單片機(jī)的指令系統(tǒng),匯編語言程序設(shè)計,MCS-51單片機(jī)的擴(kuò)展應(yīng)用,MCS-51單片機(jī)接口技術(shù),最新增強(qiáng)型51系列兼容單片機(jī)介紹,單片機(jī)指令一覽表和常用芯片的引腳圖等。
標(biāo)簽: MSC 51 單片機(jī)原理 接口技術(shù)
上傳時間: 2013-11-03
上傳用戶:cazjing
AT93C46/56/66是Atmel公司生產(chǎn)的低功耗、低電壓、電可擦除、可編程只讀存儲器,采用CMOS工藝技術(shù)制造并帶有3線串行接口,其容量分別為1kB/4kB,可重復(fù)寫100萬次,數(shù)據(jù)可保存100年以上。文中介紹了該存儲器的引腳功能和指令時序,給出了AT93C46/56/66和單片機(jī)的接口應(yīng)用電路和軟件程序。
上傳時間: 2013-11-18
上傳用戶:2404
單片機(jī)c語言學(xué)習(xí)和單片機(jī)制作資料: 函數(shù)的使用和熟悉 實例3:用單片機(jī)控制第一個燈亮 實例4:用單片機(jī)控制一個燈閃爍:認(rèn)識單片機(jī)的工作頻率 實例5:將 P1口狀態(tài)分別送入P0、P2、P3口:認(rèn)識I/O口的引腳功能 實例6:使用P3口流水點(diǎn)亮8位LED 實例7:通過對P3口地址的操作流水點(diǎn)亮8位LED 實例8:用不同數(shù)據(jù)類型控制燈閃爍時間 實例9:用P0口、P1 口分別顯示加法和減法運(yùn)算結(jié)果 實例10:用P0、P1口顯示乘法運(yùn)算結(jié)果 實例11:用P1、P0口顯示除法運(yùn)算結(jié)果 實例12:用自增運(yùn)算控制P0口8位LED流水花樣 實例13:用P0口顯示邏輯"與"運(yùn)算結(jié)果 實例14:用P0口顯示條件運(yùn)算結(jié)果 實例15:用P0口顯示按位"異或"運(yùn)算結(jié)果 實例16:用P0顯示左移運(yùn)算結(jié)果 實例17:"萬能邏輯電路"實驗 實例18:用右移運(yùn)算流水點(diǎn)亮P1口8位LED 實例19:用if語句控制P0口8位LED的流水方向 實例20:用swtich語句的控制P0口8位LED的點(diǎn)亮狀態(tài) 實例21:用for語句控制蜂鳴器鳴笛次數(shù) 實例22:用while語句控制LED 實例23:用do-while語句控制P0口8位LED流水點(diǎn)亮 實例24:用字符型數(shù)組控制P0口8位LED流水點(diǎn)亮 實例25: 用P0口顯示字符串常量 實例26:用P0 口顯示指針運(yùn)算結(jié)果 實例27:用指針數(shù)組控制P0口8位LED流水點(diǎn)亮 實例28:用數(shù)組的指針控制P0 口8 位LED流水點(diǎn)亮 實例29:用P0 、P1口顯示整型函數(shù)返回值 實例30:用有參函數(shù)控制P0口8位LED流水速度 實例31:用數(shù)組作函數(shù)參數(shù)控制流水花樣 實例32:用指針作函數(shù)參數(shù)控制P0口8位LED流水點(diǎn)亮 實例33:用函數(shù)型指針控制P1口燈花樣 實例34:用指針數(shù)組作為函數(shù)的參數(shù)顯示多個字符串
上傳時間: 2013-10-21
上傳用戶:llandlu
第一章 單片機(jī)基礎(chǔ)知識 什么是單片機(jī)單片機(jī)能做什么為什么要學(xué)單片機(jī)單片機(jī)的引腳分布、內(nèi)部結(jié)構(gòu)和引腳結(jié)構(gòu)如何學(xué)習(xí)單片機(jī)
上傳時間: 2013-10-25
上傳用戶:sunshine1402
PCA9698 是56 腳的CMOS 器件,能夠?qū)崿F(xiàn)I2C/SMBus 應(yīng)用中40 位通用GPIO 的擴(kuò)展。改進(jìn)的特性包括4000pF 的驅(qū)動能力、5V I/O 口、工作電流低于1mA、單獨(dú)的I/O 口配置、400kHz I2C 總線時鐘頻率和更小的封裝形式。當(dāng)應(yīng)用中需要額外的I/O 口來連接ACPI(“高級配置與電源接口“這是英特爾、微軟和東芝共同開發(fā)的一種電源管理標(biāo)準(zhǔn))電源開關(guān)、傳感器、按鈕、LED、風(fēng)扇等時,可使用 I/O 擴(kuò)展器件實現(xiàn)簡單的解決方案。
標(biāo)簽: 9698 PCA 應(yīng)用筆記
上傳時間: 2013-11-11
上傳用戶:gundamwzc
帶您從零學(xué)51單片機(jī)之單片機(jī)基礎(chǔ)知識 目錄1 什么是單片機(jī)2 單片機(jī)能做什么3 為什么要學(xué)單片機(jī)4 單片機(jī)的引腳分布、內(nèi)部結(jié)構(gòu)和引腳結(jié)構(gòu)5 如何學(xué)習(xí)單片機(jī)
標(biāo)簽: 51單片機(jī) 單片機(jī) 基礎(chǔ)知識
上傳時間: 2013-10-14
上傳用戶:lili123
PCA9698 是一款40 位I2C 輸入/輸出擴(kuò)展器,能夠?qū)崿F(xiàn)I2C/SMBus 應(yīng)用中40 位GPIO 的擴(kuò)展
標(biāo)簽: 9698 PCA I2C 擴(kuò)展芯片
上傳時間: 2013-11-21
上傳用戶:文993
蟲蟲下載站版權(quán)所有 京ICP備2021023401號-1