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