出版時間:2012-2 出版社:電子工業(yè)出版社 作者:嚴(yán)雨,廉潔 編著 頁數(shù):376
Tag標(biāo)簽:無
內(nèi)容概要
本書基于Proteus仿真和C語言由淺入深地介紹了ATmega128單片機(jī)的應(yīng)用。所提供100個實例覆蓋了整個單片機(jī)系統(tǒng)開發(fā)全過程,包括單片機(jī)開發(fā)環(huán)境、單片機(jī)的內(nèi)部結(jié)構(gòu)、C語言基礎(chǔ),以及ATmega128單片機(jī)的內(nèi)部資源應(yīng)用。所涉及的ATmega128單片機(jī)的內(nèi)部資源包括I/O引腳、外部中斷、E2PROM、USART模塊、定時/計數(shù)器、TWI接口、SPI接口、模擬比較器、ADC模塊、看門狗等。
書籍目錄
第1章 ATmega128單片機(jī)基礎(chǔ)
1.1ATmega128單片機(jī)介紹
1.2ATmega128單片機(jī)的結(jié)構(gòu)
1.2.1ATmega128單片機(jī)的內(nèi)核
1.2.2ATmega128單片機(jī)的存儲器體系
1.2.3ATmega128單片機(jī)的系統(tǒng)時鐘
1.2.4ATmega128單片機(jī)的電源管理
1.2.5ATmega128單片機(jī)的復(fù)位
1.2.6ATmega128單片機(jī)的中斷系統(tǒng)
1.3ATmega128單片機(jī)的指令系統(tǒng)和尋址
第2章 ATmega128單片機(jī)的軟件開發(fā)環(huán)境
2.1ICCAVR軟件開發(fā)環(huán)境
2.1.1ICCAVR軟件安裝
2.1.2ICCAVR菜單
2.1.3ICCAVR的常用文件類型
2.1.4ICCAVR的擴(kuò)展關(guān)鍵字
2.1.5ICCAVR的啟動文件
2.1.6ICCAVR的庫函數(shù)
2.2ICCAVR IDE的使用
應(yīng)用實例1——使用ICCAVR IDE
第3章 ATmega128單片機(jī)的開發(fā)環(huán)境
3.1ATmega128單片機(jī)開發(fā)常用的工具
3.1.1ISP編程器
3.1.2數(shù)字萬用表
3.1.3數(shù)字示波器
3.2Proteus仿真軟件的使用
應(yīng)用實例2——使用Proteus仿真ATmega128單片機(jī)
3.3Proteus仿真軟件的應(yīng)用說明
3.3.1運行、單步運行、暫停和停止運行
3.3.2打開對應(yīng)的觀察窗口
第4章 ATmega128單片機(jī)應(yīng)用系統(tǒng)開發(fā)基礎(chǔ)
4.1ATmega128單片機(jī)應(yīng)用系統(tǒng)的構(gòu)成
4.2ATmega128單片機(jī)應(yīng)用系統(tǒng)開發(fā)流程
4.3ATmega128單片機(jī)應(yīng)用系統(tǒng)的硬件設(shè)計
4.43個微型ATmega128單片機(jī)應(yīng)用系統(tǒng)
應(yīng)用實例3——點亮8位LED
應(yīng)用實例4——驅(qū)動7位數(shù)碼管
應(yīng)用實例5——串口數(shù)據(jù)發(fā)送和接收
第5章 ATmega128單片機(jī)C語言基礎(chǔ)
5.1ATmega128單片機(jī)C語言的數(shù)據(jù)類型、運算符和表達(dá)式
5.1.1ATmega128單片機(jī)C語言的數(shù)據(jù)類型
5.1.2ATmega128單片機(jī)C語言的常量和變量
應(yīng)用實例6——使用常量
應(yīng)用實例7——使用變量
5.1.3ATmega128單片機(jī)C語言的算術(shù)運算、賦值運算、邏輯運算和關(guān)系運算
應(yīng)用實例8——使用算術(shù)表達(dá)式
應(yīng)用實例9——使用強制類型轉(zhuǎn)換
應(yīng)用實例10——邏輯運算應(yīng)用
應(yīng)用實例11——關(guān)系運算應(yīng)用
5.1.4ATmega128單片機(jī)C語言的位操作
應(yīng)用實例12——位邏輯運算:位與和位或
應(yīng)用實例13——位邏輯運算:位異或和位取反
應(yīng)用實例14——移位運算應(yīng)用
應(yīng)用實例15——自增減運算應(yīng)用
應(yīng)用實例16——復(fù)合運算應(yīng)用
應(yīng)用實例17——逗號運算應(yīng)用
5.1.5運算符的優(yōu)先級
5.2ATmega128單片機(jī)C語言的結(jié)構(gòu)語句
5.2.1順序結(jié)構(gòu)
應(yīng)用實例18——順序結(jié)構(gòu)語句應(yīng)用
5.2.2選擇結(jié)構(gòu)
應(yīng)用實例19——if語句的基本結(jié)構(gòu)應(yīng)用
應(yīng)用實例20——switch語句的應(yīng)用
5.2.3循環(huán)結(jié)構(gòu)
應(yīng)用實例21——while語句的應(yīng)用
應(yīng)用實例22——do while語句應(yīng)用
應(yīng)用實例23——for語句的應(yīng)用
應(yīng)用實例24——循環(huán)語句的進(jìn)階用法
5.2.4break語句、continue語句和goto語句
應(yīng)用實例25——break語句的應(yīng)用
應(yīng)用實例26——continue語句的應(yīng)用
應(yīng)用實例27——goto語句的應(yīng)用
第6章 ATmega128單片機(jī)高階C語言
6.1ATmega128單片機(jī)C語言的函數(shù)
6.1.1函數(shù)的分類
6.1.2函數(shù)的定義
應(yīng)用實例28——無參函數(shù)的應(yīng)用
應(yīng)用實例29——有參函數(shù)的應(yīng)用
6.1.3函數(shù)的調(diào)用
應(yīng)用實例30——函數(shù)的預(yù)先定義
應(yīng)用實例31——函數(shù)的后定義
應(yīng)用實例32——函數(shù)的遞歸調(diào)用
應(yīng)用實例33——函數(shù)的嵌套調(diào)用
6.1.4內(nèi)部函數(shù)和外部函數(shù)
6.1.5變量類型
應(yīng)用實例34——靜態(tài)局部變量應(yīng)用
應(yīng)用實例35——全局變量應(yīng)用
6.2ATmega128單片機(jī)C語言的數(shù)組和指針
6.2.1數(shù)組
應(yīng)用實例36——一維數(shù)組的應(yīng)用
應(yīng)用實例37——二維數(shù)組的應(yīng)用
應(yīng)用實例38——字符數(shù)組的應(yīng)用
6.2.2指針
應(yīng)用實例39——指針的應(yīng)用
6.2.3數(shù)組和指針
應(yīng)用實例40——數(shù)組下標(biāo)引用輸出
應(yīng)用實例41——數(shù)組名作為地址輸出
應(yīng)用實例42——指針引用數(shù)組輸出
應(yīng)用實例43——使用指針運算引用數(shù)組輸出
應(yīng)用實例44——數(shù)組下標(biāo)引用二維數(shù)組的輸出
應(yīng)用實例45——指針引用二維數(shù)組的輸出
6.2.4字符串和指針
應(yīng)用實例46——字符指針的字符數(shù)組輸出
6.2.5數(shù)組、指針和函數(shù)的聯(lián)系
應(yīng)用實例47——數(shù)組作為函數(shù)參數(shù)的應(yīng)用
應(yīng)用實例48——指針作為函數(shù)參數(shù)
應(yīng)用實例49——返回指針的函數(shù)
6.2.6指針數(shù)組和指向指針的指針
應(yīng)用實例50——指向指針的指針應(yīng)用
6.3ATmega128單片機(jī) C語言中的自定義數(shù)據(jù)類型
6.3.1結(jié)構(gòu)體
應(yīng)用實例51——結(jié)構(gòu)體的應(yīng)用
應(yīng)用實例52——結(jié)構(gòu)體數(shù)組應(yīng)用
應(yīng)用實例53——結(jié)構(gòu)體變量指針
應(yīng)用實例54——結(jié)構(gòu)體指針變量作為函數(shù)參數(shù)
6.3.2聯(lián)合體(共用體)
應(yīng)用實例55——結(jié)構(gòu)體的應(yīng)用
6.3.3枚舉
應(yīng)用實例56——枚舉變量的應(yīng)用
6.4ATmega128單片機(jī) C語言程序設(shè)計技巧
6.4.1養(yǎng)成好的編程習(xí)慣
6.4.2宏定義
應(yīng)用實例57——宏定義的應(yīng)用
應(yīng)用實例58——參數(shù)宏定義的應(yīng)用
6.4.3條件編譯
應(yīng)用實例59——條件編譯
6.4.4一些關(guān)鍵字的使用
第7章 ATmega128單片機(jī)的I/O引腳應(yīng)用實例
7.1ATmega128單片機(jī)的I/O引腳基礎(chǔ)
7.1.1ATmega128單片機(jī)的I/O引腳配置
7.1.2ATmega128單片機(jī)讀取引腳電平
7.1.3ATmega128單片機(jī)的I/O引腳低功耗處理
7.1.4ATmega128單片機(jī)的I/O引腳的第二功能
7.2ATmega128單片機(jī)擴(kuò)展發(fā)光二極管(LED)
7.2.1發(fā)光二極管(LED)基礎(chǔ)
7.2.2ATmega128單片機(jī)擴(kuò)展發(fā)光二極管(LED)應(yīng)用實例
應(yīng)用實例60——使用I/O引腳驅(qū)動LED閃爍
應(yīng)用實例61——使用I/O引腳驅(qū)動流水燈
7.3ATmega128單片機(jī)擴(kuò)展數(shù)碼管
7.3.1一位數(shù)碼管基礎(chǔ)
7.3.2ATmega128擴(kuò)展一位數(shù)碼管應(yīng)用實例
應(yīng)用實例62——使用I/O引腳驅(qū)動數(shù)碼管顯示
7.3.3多位數(shù)碼管基礎(chǔ)
7.3.4ATmega128單片機(jī)擴(kuò)展多位數(shù)碼管應(yīng)用實例
應(yīng)用實例63——使用I/O引腳驅(qū)動多位數(shù)碼管動態(tài)顯示
7.4 ATmega128單片機(jī)擴(kuò)展按鍵、鍵盤和撥碼開關(guān)
7.4.1獨立按鍵基礎(chǔ)
7.4.2ATmega128單片機(jī)擴(kuò)展獨立按鍵應(yīng)用實例
應(yīng)用實例64——使用I/O引腳擴(kuò)展獨立按鍵格式
7.4.3行列掃描鍵盤基礎(chǔ)
7.4.4ATmega128單片機(jī)擴(kuò)展行列掃描鍵盤應(yīng)用實例
應(yīng)用實例65——使用I/O引腳擴(kuò)展行列掃描鍵盤
7.4.5撥碼開關(guān)基礎(chǔ)
7.4.6ATmega128單片機(jī)擴(kuò)展撥碼開關(guān)應(yīng)用實例
應(yīng)用實例66——使用I/O引腳擴(kuò)展撥碼開關(guān)
7.5ATmega128單片機(jī)擴(kuò)展繼電器
7.5.1繼電器基礎(chǔ)
7.5.2功率驅(qū)動器件基礎(chǔ)
7.5.3ATmega128單片機(jī)擴(kuò)展繼電器應(yīng)用實例
應(yīng)用實例67——使用I/O引腳擴(kuò)展繼電器
7.6ATmega128單片機(jī)擴(kuò)展蜂鳴器
7.6.1蜂鳴器基礎(chǔ)
7.6.2ATmega128單片機(jī)擴(kuò)展蜂鳴器應(yīng)用實例
應(yīng)用實例68——使用I/O引腳擴(kuò)展蜂鳴器
7.7ATmega128單片機(jī)擴(kuò)展電動機(jī)
7.7.1直流電動機(jī)基礎(chǔ)
7.7.2ATmega128單片機(jī)擴(kuò)展直流電動機(jī)的應(yīng)用實例
應(yīng)用實例69——使用I/O引腳擴(kuò)展直流電動機(jī)
7.7.3步進(jìn)電動機(jī)基礎(chǔ)
7.7.4ATmega128單片機(jī)擴(kuò)展步進(jìn)電動機(jī)的應(yīng)用實例
應(yīng)用實例70——使用I/O引腳擴(kuò)展步進(jìn)電動機(jī)
第8章 ATmega128單片機(jī)的外部中斷應(yīng)用實例
8.1ATmega128單片機(jī)的外部中斷基礎(chǔ)
8.1.1外部中斷控制寄存器A(EICRA)
8.1.2外部中斷控制寄存器B(EICRA)
8.1.3外部中斷屏蔽寄存器(EIMSK)
8.1.4外部中斷標(biāo)志寄存器(EIFR)
8.2ATmega128單片機(jī)的外部中斷應(yīng)用實例
應(yīng)用實例71——外部中斷7脈沖計數(shù)
應(yīng)用實例72——外部中斷控制LED
應(yīng)用實例73——多個外部中斷聯(lián)合計數(shù)
第9章 ATmega128單片機(jī)的內(nèi)部E2PROM應(yīng)用實例
9.1E2PROM基礎(chǔ)
9.1.1地址寄存器EEARH和EEARL
9.1.2數(shù)據(jù)寄存器EEDR
9.1.3控制寄存器EECR
9.1.4E2PROM的操作時間
9.1.5E2PROM的寫操作
9.1.6E2PROM的讀操作
9.1.7E2PROM的掉電處理
9.2ATmega128單片機(jī)的E2PROM應(yīng)用實例
應(yīng)用實例74——用E2PROM保存用戶數(shù)據(jù)
應(yīng)用實例75——E2PROM的數(shù)據(jù)寫入和讀出
第10章 ATmega128單片機(jī)的USART模塊應(yīng)用實例
10.1USART模塊應(yīng)用基礎(chǔ)
10.1.1USART的相關(guān)寄存器
10.1.2USART的時鐘發(fā)生器
10.1.3USART的數(shù)據(jù)幀格式
10.1.4USART的使用方法
10.2ATmega128單片機(jī)的USART應(yīng)用實例
應(yīng)用實例76——USART0的數(shù)據(jù)發(fā)送
應(yīng)用實例77——USART1的數(shù)據(jù)發(fā)送
應(yīng)用實例78——Proteus中的虛擬串口調(diào)試
應(yīng)用實例79——使用USART0和計算機(jī)進(jìn)行雙向數(shù)據(jù)通信
應(yīng)用實例80——綜合使用USART0和USART1
應(yīng)用實例81——使用單片機(jī)A控制單片機(jī)B
第11章 ATmega128單片機(jī)的定時/計數(shù)器模塊應(yīng)用實例
11.1定時/計數(shù)器T/C0基礎(chǔ)
11.1.1定時/計數(shù)器T/C0的工作模式
11.1.2T/C0的相關(guān)寄存器
11.2定時/計數(shù)器T/C1和T/C3基礎(chǔ)
11.2.1T/C1和T/C3的工作模式
11.2.2T/C1和T/C3的相關(guān)寄存器
11.3定時/計數(shù)器T/C2基礎(chǔ)
11.3.1T/C2的工作模式
11.3.2T/C2的相關(guān)寄存器
11.4定時/計數(shù)器模塊應(yīng)用實例
應(yīng)用實例82——T/C0控制LED閃爍
應(yīng)用實例83——T/C1控制LED閃爍
應(yīng)用實例84——T/C2脈沖計數(shù)
應(yīng)用實例85——T/C1實現(xiàn)頻率計
應(yīng)用實例86——T/C1實現(xiàn)占空比可調(diào)PWM輸出
應(yīng)用實例87——T/C0的秒定時
應(yīng)用實例88——頻率可調(diào)的PWM信號輸出
第12章 ATmega128單片機(jī)的TWI(I2C)接口總線模塊應(yīng)用實例
12.1TWI(I2C)總線基礎(chǔ)
12.1.1TWI(I2C)接口總線的一些術(shù)語
12.1.2TWI(I2C)接口總線的數(shù)據(jù)傳輸過程和幀格式
12.1.3TWI(I2C)總線器件的地址
12.2ATmega128單片機(jī)的TWI(I2C)接口總線模塊應(yīng)用基礎(chǔ)
12.2.1ATmega128單片機(jī)的TWI(I2C)接口總線模塊構(gòu)成
12.2.2ATmega128單片機(jī)的TWI(I2C)接口總線模塊寄存器
12.2.3ATmega128單片機(jī)的TWI(I2C)接口總線模塊的工作模式
12.2.4ATmega128單片機(jī)的TWI(I2C)接口總線模塊的使用
12.3ATmega128單片機(jī)的TWI(I2C)接口總線模塊應(yīng)用實例
應(yīng)用實例89——使用TWI(I2C)總線進(jìn)行雙機(jī)通信
第13章 ATmega128單片機(jī)的SPI接口總線模塊應(yīng)用實例
13.1SPI總線基礎(chǔ)
13.1.1SPI總線的結(jié)構(gòu)
13.1.2SPI總線的時序
13.2ATmega128單片機(jī)的SPI接口總線模塊應(yīng)用基礎(chǔ)
13.2.1ATmega128單片機(jī)的SPI接口總線模塊的寄存器
13.2.2ATmega128單片機(jī)的SPI接口總線模塊的工作模式
13.3ATmega128單片機(jī)的SPI接口總線模塊應(yīng)用實例
應(yīng)用實例90——使用SPI總線接口進(jìn)行雙機(jī)通信
第14章 ATmega128單片機(jī)的模擬比較器模塊應(yīng)用實例
14.1ATmega128單片機(jī)的模擬比較器模塊應(yīng)用基礎(chǔ)
14.1.1ATmega128單片機(jī)模擬比較器模塊的寄存器
14.1.2ATmega128單片機(jī)模擬比較器模塊輸入通道
14.2ATmega128單片機(jī)的模擬比較器模塊應(yīng)用實例
應(yīng)用實例91——使用比較器模塊比較兩個模擬信號
應(yīng)用實例92——使用比較器模塊將正弦波信號轉(zhuǎn)換為方波信號
應(yīng)用實例93——多通道模擬信號電壓比較
第15章 ATmega128單片機(jī)的ADC模塊應(yīng)用實例
15.1ADC基礎(chǔ)知識
15.2ATmega128單片機(jī)的ADC模塊應(yīng)用基礎(chǔ)
15.2.1ATmega128單片機(jī)的ADC模塊的相關(guān)寄存器
15.2.3ATmega128單片機(jī)的ADC模塊的使用
15.3ATmega128單片機(jī)的ADC模塊應(yīng)用實例
應(yīng)用實例94——單通道A/D采樣
應(yīng)用實例95——多通道A/D采樣
應(yīng)用實例96——差分輸入A/D采樣
應(yīng)用實例97——增益放大A/D采樣
應(yīng)用實例98——定時器控制A/D采樣
應(yīng)用實例99——多通道電壓比較和A/D采樣
第16章 ATmega128單片機(jī)的看門狗模塊應(yīng)用實例
16.1ATmega128單片機(jī)看門狗模塊應(yīng)用基礎(chǔ)
16.2ATmega128單片機(jī)看門狗模塊應(yīng)用實例
應(yīng)用實例100——ATmega128單片機(jī)看門狗模塊工作狀態(tài)測試
章節(jié)摘錄
版權(quán)頁:插圖:
編輯推薦
《AVR單片機(jī)C語言應(yīng)用100例》是百例成才系列叢書之一。
圖書封面
圖書標(biāo)簽Tags
無
評論、評分、閱讀與下載
AVR單片機(jī)C語言應(yīng)用100例 PDF格式下載