內容簡介
《AVR單片機系統開發經典實例》程式設計思路清晰,語言簡潔,在每個實例中都給出了硬體原理圖以及主要部分的程式代碼,具有很強的工程性、實用性和指導性,對於學習者來說,很容易上手。
《AVR單片機系統開發經典實例》適合於從事AVR單片機開發的技術人員學習和參考,也可做為高校計算機、自動化、電子及硬體相關專業在校學生的參考書。
圖書目錄
第1章 AVR基礎知識 1
1.1 AVR單片機簡介 1
1.1.1 AVR單片機的主要特點 1
1.1.2 ATmega系列單片機簡介 2
1.2 ATmega128單片機系統結構 3
1.2.1 ATmega128的總體結構 3
1.2.2 ATmega128的中央處理器CPU 5
1.2.3 ATmega128的存儲器組織 6
1.2.4 ATmega128的復位與中斷系統 8
1.2.5 ATmega128的定時器/計數器 11
1.2.6 ATmega128的I/O連線埠 12
第2章 AVR單片機功能接口實例 14
2.1 使用ATmega128驅動發光二極體輪流發光顯示 14
2.1.1 實例說明 14
2.1.2 硬體設計 14
2.1.3 軟體設計 15
2.2 使用ATmega128驅動數碼管顯示 16
2.2.1 實例說明 16
2.2.2 硬體設計 16
2.2.3 軟體設計 18
2.3 基於ATmega128的LED點陣顯示控制 20
2.3.1 實例說明 20
2.3.2 硬體設計 20
2.3.3 軟體設計 23
2.4 基於ATmega128實現的液晶顯示 28
2.4.1 實例說明 28
2.4.2 硬體設計 28
2.4.3 軟體設計 30
2.5 基於ATmega128觸控螢幕人機接口的設計 31
2.5.1 實例說明 31
2.5.2 硬體設計 31
2.5.3 軟體設計 34
2.6 使用ATmega128實現交通信號機的設計 36
2.6.1 實例說明 36
2.6.2 硬體設計 36
2.6.3 軟體設計 39
2.7 SPI接口的套用設計 41
2.7.1 實例說明 41
2.7.2 硬體設計 41
2.7.3 軟體設計 45
2.8 並行接口擴展套用 50
2.8.1 實例說明 50
2.8.2 硬體設計 50
2.8.3 軟體設計 52
2.9 數字溫度感測器與ATmega128的接口設計 52
2.9.1 實例說明 52
2.9.2 硬體設計 53
2.9.3 軟體設計 56
第3章 AVR單片機工業控制實例 59
3.1 嵌入式控制器的設計 59
3.1.1 實例說明 59
3.1.2 硬體設計 59
3.1.3 軟體設計 63
3.2 模型車速度的控制 64
3.2.1 實例說明 64
3.2.2 硬體設計 64
3.2.3 軟體設計 69
3.3 繼電保護裝置的設計 69
3.3.1 實例說明 69
3.3.2 硬體設計 70
3.3.3 軟體設計 72
3.4 電網遙控系統 73
3.4.1 實例說明 73
3.4.2 硬體設計 73
3.4.3 軟體設計 77
3.5 使用ATmega128實現步進電機的驅動 79
3.5.1 實例說明 79
3.5.2 硬體設計 79
3.5.3 軟體設計 82
3.6 使用ATmega128實現脈衝頻率測量 84
3.6.1 實例說明 84
3.6.2 硬體設計 85
3.6.3 軟體設計 85
3.7 實現對顯示器與印表機的控制 87
3.7.1 實例說明 87
3.7.2 硬體設計 87
3.7.3 軟體設計 91
3.8 自動滅火器的設計 94
3.8.1 實例說明 94
3.8.2 硬體設計 94
3.8.3 軟體設計 96
第4章 通信傳輸系統實例 98
4.1 USB接口與PC機的通信實現 98
4.1.1 實例說明 98
4.1.2 硬體設計 98
4.1.3 軟體實現 99
4.2 使用I2C匯流排實現ATmega128與24C512之間的通信 100
4.2.1 實例說明 100
4.2.2 硬體設計 100
4.2.3 軟體設計 102
4.3 使用ATmega128實現的無線數據傳輸系統 108
4.3.1 實例說明 108
4.3.2 硬體設計 108
4.3.3 軟體設計 112
4.4 網關設計 113
4.4.1 實例說明 113
4.4.2 硬體設計 113
4.4.3 軟體設計 117
4.5 語音回示的實現 117
4.5.1 實例說明 117
4.5.2 硬體設計 117
4.5.3 軟體設計 121
4.6 基於ATmega128的乙太網與LON匯流排的網關設計與實現 123
4.6.1 實例說明 123
4.6.2 硬體設計 124
4.6.3 軟體設計 127
4.7 ATmega128實現監測信號系統 129
4.7.1 實例說明 129
4.7.2 硬體設計 130
4.7.3 軟體設計 132
4.8 無線感測器網路的設計 134
4.8.1 實例說明 134
4.8.2 硬體設計 134
4.8.3 軟體設計 139
第5章 數據採集系統實例 142
5.1 使用ATmega128實現的數據採集 142
5.1.1 實例說明 142
5.1.2 硬體設計 142
5.1.3 軟體設計 147
5.2 使用ATmega128實現的信號採集 148
5.2.1 實例說明 148
5.2.2 硬體設計 149
5.2.3 軟體設計 152
5.3 GPS時鐘設計 161
5.3.1 實例說明 161
5.3.2 硬體設計 161
5.3.3 軟體設計 163
5.4 基於ATmega128的道路監測系統設計 163
5.4.1 實例說明 163
5.4.2 硬體設計 164
5.4.3 軟體設計 165
第6章 綜合套用實例 168
6.1 MP3 播放機的設計 168
6.1.1 實例說明 168
6.1.2 硬體設計 168
6.1.3 軟體設計 171
6.2 使用ATmega128實現的無線數據終端 172
6.2.1 實例說明 172
6.2.2 硬體設計 172
6.2.3 軟體設計 174
6.3 基於ATmega128在電機調速系統的設計 177
6.3.1 實例說明 177
6.3.2 硬體設計 177
6.3.3 軟體設計 178
6.4 CRC算法 181
6.4.1 實例說明 181
6.4.2 硬體設計 181
6.4.3 軟體設計 182
6.5 RC5與RC6算法 188
6.5.1 實例說明 188
6.5.2 硬體設計 188
6.5.3 軟體設計 190
6.6 C/OS-Ⅱ在ATmega128上的移植 193
6.6.1 實例說明 193
6.6.2 硬體設計 193
6.6.3 軟體設計 195
6.7 在ATmega128上實現TCP/IP協定棧 202
6.7.1 實例說明 202
6.7.2 硬體設計 203
6.7.3 軟體設計 204
6.8 嵌入式網路接口的設計 213
6.8.1 實例說明 213
6.8.2 硬體設計 213
6.8.3 軟體設計 214
參考文獻 218
第1章 AVR基礎知識 1
1.1 AVR單片機簡介 1
1.1.1 AVR單片機的主要特點 1
1.1.2 ATmega系列單片機簡介 2
1.2 ATmega128單片機系統結構 3
1.2.1 ATmega128的總體結構 3
1.2.2 ATmega128的中央處理器CPU 5
1.2.3 ATmega128的存儲器組織 6
1.2.4 ATmega128的復位與中斷系統 8
1.2.5 ATmega128的定時器/計數器 11
1.2.6 ATmega128的I/O連線埠 12
第2章 AVR單片機功能接口實例 14
2.1 使用ATmega128驅動發光二極體輪流發光顯示 14
2.1.1 實例說明 14
2.1.2 硬體設計 14
2.1.3 軟體設計 15
2.2 使用ATmega128驅動數碼管顯示 16
2.2.1 實例說明 16
2.2.2 硬體設計 16
2.2.3 軟體設計 18
2.3 基於ATmega128的LED點陣顯示控制 20
2.3.1 實例說明 20
2.3.2 硬體設計 20
2.3.3 軟體設計 23
2.4 基於ATmega128實現的液晶顯示 28
2.4.1 實例說明 28
2.4.2 硬體設計 28
2.4.3 軟體設計 30
2.5 基於ATmega128觸控螢幕人機接口的設計 31
2.5.1 實例說明 31
2.5.2 硬體設計 31
2.5.3 軟體設計 34
2.6 使用ATmega128實現交通信號機的設計 36
2.6.1 實例說明 36
2.6.2 硬體設計 36
2.6.3 軟體設計 39
2.7 SPI接口的套用設計 41
2.7.1 實例說明 41
2.7.2 硬體設計 41
2.7.3 軟體設計 45
2.8 並行接口擴展套用 50
2.8.1 實例說明 50
2.8.2 硬體設計 50
2.8.3 軟體設計 52
2.9 數字溫度感測器與ATmega128的接口設計 52
2.9.1 實例說明 52
2.9.2 硬體設計 53
2.9.3 軟體設計 56
第3章 AVR單片機工業控制實例 59
3.1 嵌入式控制器的設計 59
3.1.1 實例說明 59
3.1.2 硬體設計 59
3.1.3 軟體設計 63
3.2 模型車速度的控制 64
3.2.1 實例說明 64
3.2.2 硬體設計 64
3.2.3 軟體設計 69
3.3 繼電保護裝置的設計 69
3.3.1 實例說明 69
3.3.2 硬體設計 70
3.3.3 軟體設計 72
3.4 電網遙控系統 73
3.4.1 實例說明 73
3.4.2 硬體設計 73
3.4.3 軟體設計 77
3.5 使用ATmega128實現步進電機的驅動 79
3.5.1 實例說明 79
3.5.2 硬體設計 79
3.5.3 軟體設計 82
3.6 使用ATmega128實現脈衝頻率測量 84
3.6.1 實例說明 84
3.6.2 硬體設計 85
3.6.3 軟體設計 85
3.7 實現對顯示器與印表機的控制 87
3.7.1 實例說明 87
3.7.2 硬體設計 87
3.7.3 軟體設計 91
3.8 自動滅火器的設計 94
3.8.1 實例說明 94
3.8.2 硬體設計 94
3.8.3 軟體設計 96
第4章 通信傳輸系統實例 98
4.1 USB接口與PC機的通信實現 98
4.1.1 實例說明 98
4.1.2 硬體設計 98
4.1.3 軟體實現 99
4.2 使用I2C匯流排實現ATmega128與24C512之間的通信 100
4.2.1 實例說明 100
4.2.2 硬體設計 100
4.2.3 軟體設計 102
4.3 使用ATmega128實現的無線數據傳輸系統 108
4.3.1 實例說明 108
4.3.2 硬體設計 108
4.3.3 軟體設計 112
4.4 網關設計 113
4.4.1 實例說明 113
4.4.2 硬體設計 113
4.4.3 軟體設計 117
4.5 語音回示的實現 117
4.5.1 實例說明 117
4.5.2 硬體設計 117
4.5.3 軟體設計 121
4.6 基於ATmega128的乙太網與LON匯流排的網關設計與實現 123
4.6.1 實例說明 123
4.6.2 硬體設計 124
4.6.3 軟體設計 127
4.7 ATmega128實現監測信號系統 129
4.7.1 實例說明 129
4.7.2 硬體設計 130
4.7.3 軟體設計 132
4.8 無線感測器網路的設計 134
4.8.1 實例說明 134
4.8.2 硬體設計 134
4.8.3 軟體設計 139
第5章 數據採集系統實例 142
5.1 使用ATmega128實現的數據採集 142
5.1.1 實例說明 142
5.1.2 硬體設計 142
5.1.3 軟體設計 147
5.2 使用ATmega128實現的信號採集 148
5.2.1 實例說明 148
5.2.2 硬體設計 149
5.2.3 軟體設計 152
5.3 GPS時鐘設計 161
5.3.1 實例說明 161
5.3.2 硬體設計 161
5.3.3 軟體設計 163
5.4 基於ATmega128的道路監測系統設計 163
5.4.1 實例說明 163
5.4.2 硬體設計 164
5.4.3 軟體設計 165
第6章 綜合套用實例 168
6.1 MP3 播放機的設計 168
6.1.1 實例說明 168
6.1.2 硬體設計 168
6.1.3 軟體設計 171
6.2 使用ATmega128實現的無線數據終端 172
6.2.1 實例說明 172
6.2.2 硬體設計 172
6.2.3 軟體設計 174
6.3 基於ATmega128在電機調速系統的設計 177
6.3.1 實例說明 177
6.3.2 硬體設計 177
6.3.3 軟體設計 178
6.4 CRC算法 181
6.4.1 實例說明 181
6.4.2 硬體設計 181
6.4.3 軟體設計 182
6.5 RC5與RC6算法 188
6.5.1 實例說明 188
6.5.2 硬體設計 188
6.5.3 軟體設計 190
6.6 C/OS-Ⅱ在ATmega128上的移植 193
6.6.1 實例說明 193
6.6.2 硬體設計 193
6.6.3 軟體設計 195
6.7 在ATmega128上實現TCP/IP協定棧 202
6.7.1 實例說明 202
6.7.2 硬體設計 203
6.7.3 軟體設計 204
6.8 嵌入式網路接口的設計 213
6.8.1 實例說明 213
6.8.2 硬體設計 213
6.8.3 軟體設計 214
參考文獻 218