零基礎學AVR單片機:基於ATmega16、彙編及C語言

零基礎學AVR單片機:基於ATmega16、彙編及C語言

《零基礎學AVR單片機基於ATmega16、彙編及C語言》是2011年機械工業出版社出版的圖書。

內容簡介

《零基礎學AVR單片機:基於ATmega16、彙編及C語言》主要內容包括15章:單片機概述、AVR單片機的開發工具、AVR單片機C語言、ATmegal6單片機基本結構、AVR的指令系統與彙編系統、ATmegal6的I/O連線埠、ATmegal6的中斷系統、ATmegal6的復位系統及睡眠模式的設定、定時器/計數器O、定時器/計數器1、A/D轉換器、同步串列SPI接口、USART串列口的套用、TWI接口的套用、綜合設計實例等。

全書重點突出,層次分明,注重知識的系統性、針對性和先進性;注重理論與實踐聯繫,培養工程套用能力。另外,《零基礎學AVR單片機:基於ATmega16、彙編及C語言》還配有部分實驗的視頻錄像。

《零基礎學AVR單片機:基於ATmega16、彙編及C語言》可作為普通高等院校自動化、電氣工程、測控技術與儀器、電子科學與技術、微電子學以及光信息科學與技術等專業的本科生教材,也可作為相關工程技術人員的學習參考用書。

編輯推薦

《零基礎學AVR單片機:基於ATmega16、彙編及C語言》:

對於入門讀者,學習AVR單片機最有效的途徑是什麼?

第1步:巨觀把握。選擇AVR單片機的主流產品ATmegal6,了解AVR單片機的主要性能、開發過程與開發工具,選取學習單片機必須使用的實驗開發板,並通過LED小燈閃爍實驗展示AVR單片機開發的基本過程。

第2步:庖丁解牛。認真學習AVR單片機的體系結構、指令系統、C語言編程及彙編系統,並通過實例展示如何進行簡單的軟硬體系統設計。

第3步:更上層樓。學習AVR單片機的模組功能及接口套用。

第4步:學以致用。通過兩個綜合案例進行實戰開發,借鑑移植。

《零基礎學AVR單片機:基於ATmega16、彙編及C語言》基於ATmegal6,系統論述了AVR單片機的軟體開發與硬體開發,《零基礎學AVR單片機:基於ATmega16、彙編及C語言》具有以下鮮明點:

硬體底層以彙編指令為主,實例設計以C語言為主;涵蓋AVR主流單片機的主要功能模組;實例不但硬體電路圖設計完整、程式代碼完整,而且電路圖和程式代碼均通過調試,具有一定的工程參考價值。

涵蓋內容

AVR單片機的開發工具

ATmegal6單片機基本結構

ATmegal6的I/O連線埠

ATmegal6的復位系統及睡眠模式的設定

AVR單片機的定時器/計數器

基於ATmegal6的同步串列SPI接口

TWI接口的套用

綜合實例

LED小燈閃爍實驗過程演示

LED流水燈設計

單片機與液晶顯示模組的接口設計

藥片裝瓶監控系統設計

定時器控制LED閃爍

PWM控制電機轉速

對輸入的電壓進行A/D轉換

同步串列口套用舉例

單片機給PC機上傳數據

調光燈的設計

AVR單片機C語言

AVR的指令系統與彙編系統

ATmegal6的中斷系統

AVR單片機的定時器/計數器O

AVR單片機的A/D轉換器

LJSART串列口的套用

用數碼管顯示0~9共10個數字的系統設計

獨立式按鍵設計

一位LED數碼管顯示系統設計

睡眠功能套用實例

定時器控制PWM輸出

用計數器製作頻率檢測儀

對輸入的兩路模擬電壓進行A/D轉換

兩片單片機之間串列通信

TWI接口套用舉例

電能質量檢測系統設計

目錄

前言

第一篇 開發基礎

第1章 單片機概述

1.1 什麼是單片機

1.2 單片機的套用

1.3 ATMEL的AVR單片機

1.4 AVR單片機的家族成員

1.4.1 AVR單片機的型號

1.4.2 AVR單片機的選型

1.5 ATmegal6單片機概述

1.5.1 ATmegal6單片機的主要性能

1.5.2 ATmegal6單片機的引腳

說明

1.6 實踐拓展

1.7 思考與練習

第2章AVR單片機的開發工具

2.1 AVR單片機程式開發環境

2.1.1 GCCAVR開發環境的安裝

2.1.2 智峰下載軟體

2.2 AVR單片機的開發語言

2.3 實驗設備

2.3.1 本書所用的實驗開發板

2.3.2 下載線

2.4 LED小燈閃爍實驗過程演示

2.5 實踐拓展

2.6 思考與練習

第二篇 結構與編程

第3章AVR單片機C語言

3.1 C語言的結構

3.2 C語言的基本字元、標識符和關鍵字

3.3 C語言的基本數據類型

3.4 函式

3.4.1 系統庫函式

3.4.2 用戶自定義函式

3.5 數組

3.5.1 一維數組

3.5.2 二維數組

3.6 指針

3.7 結構體

3.7.1 結構體類型的聲明和變數的定義

3.7.2 結構體變數的初始化

3.7.3 對結構體各成員的訪問與使用

3.8 共用體

3.9 實踐拓展.

3.10 思考與練習

第4章ATmegal6單片機基本結構

4.1 ATmegal6的內部結構

4.2 ATmegal6記憶體儲器結構

4.2.1 A17megal6的程式存儲器

4.2.2 ATmegal6的數據存儲器

4.3 狀態暫存器——SREG

4.4 ATmegal6的封裝和引腳功能

4.5 ATmegal6的電源電路和復位電路

4.6 ATmegal6的時鐘電路

4.7 實踐拓展——最小系統設計

4.8 思考與練習

第5章AVR的指令系統與彙編系統

5.1 A17megal6指令概述

5.1.1 指令格式

5.1.2 指令的表示形式

5.1.3 指令的分類

5.1.4 AVR指令系統中的名詞

5.1.5 AVR彙編語言系統

5.2 AVR指令系統的定址方式

5.3 數據傳送指令

5.3.1 直接定址數據傳送指令

5.3.2 間接定址數據傳送指令

5.3.3 從程式存儲器中取數裝入暫存器指令

5.3.4 寫程式存儲器指令

5.3.5 I/O口數據傳送

5.3.6 堆疊操作指令

5.4 算術和邏輯指令

5.4.1 加法指令

5.4.2 減法指令

5.4.3 取反碼指令

5.4.4 取補碼指令

5.4.5 比較指令

5.4.6 邏輯“與”指令

5.4.7 邏輯“或”指令

5.4.8 邏輯“異或”指令

5.4.9 乘法指令

5.5 轉移指令

5.5.1 無條件轉移指令

5.5.2 條件轉移指令

5.5.3 子程式調用和返回指令

5.6 位操作和位測試指令

5.6.1 帶進位邏輯操作指令

5.6.2 位變數傳送指令

5.6.3 位變數修改指令

5.7 MCU控制指令

5.8 彙編偽指令及表達式

5.8.1 偽指令

5.8.2 表達式

5.8.3 器件定義頭檔案

5.9 編程實例

5.10 實踐拓展

5.11 思考與練習

第6章ATmegal6的I/O連線埠

6.1 I/0連線埠的結構和功能

6.1.1 I/O連線埠的內部結構

6.1.2 I/O連線埠的相關暫存器

6.2 I/O連線埠的套用舉例

6.2.1 LED流水燈設計

6.2.2 獨立式按鍵設計

6.2.3 單片機與液晶顯示模組的

接口設計

6.3 實踐拓展

6.4 思考與練習

第7章ATmegal6的中斷系統

7.1 概述

7.2 中斷源和中斷向量

7.2.1 中斷源

7.2.2 中斷向量

7.3 相關暫存器

7.3.1 狀態暫存器

7.3.2 通用中斷控制暫存器

7.4 外部中斷

7.4.1 外部中斷相關暫存器

7.4.2 實例:一位LED數碼管顯示系統設計

7.4.3 實例:藥片裝瓶監控系統設計

7.5 實踐拓展

7.6 思考與練習

第8章 復位系統及睡眠模式的設定

8.1 ATmegal6的復位系統

8.1.1 幾種復位方式

8.1.2 復位系統硬體電路

8.1.3 復位的操作處理

8.2 看門狗定時器

8.2.1 看門狗電路的結構

8.2.2 看門狗電路的工作原理

8.2.3 看門狗電路的相關暫存器

8.2.4 看門狗的套用

8.3 睡眠模式的設定

8.3.1 MCUCR

8.3.2 睡眠模式

8.3.3 系統功耗最小化方法

8.3.4 睡眠工能套用實例

8.4 實踐拓展

8.5 思考與練習

第三篇 模組功能

第9章定時器/計數器0

9.1 定時器/計數器的基本功能

9.2 定時器/計數器0的特點及內部結構

9.3 預分頻器

9.4 輸出比較單元和比較匹配輸出單元

9.4.1 輸出比較單元

9.4.2 比較匹配輸出單元

9.5 定時器/計數器0的相關暫存器

9.6 定時器/計數器0的工作模式

9.6.1 普通模式

9.6.2 快速PWM模式

9.6.3 相位修正PWM模式

9.6.4 CTC模式

9.7 定時器/計數器0套用舉例

9.7.1 定時器控制LED閃爍

9.7.2 定時器控制PWM輸出

9.8 實踐拓展

9.9 思考與練習

第10章 定時器/計數器1

10.1 定時器/計數器1的內部結構

10.2 計數器單元

10.3 輸入捕捉單元

10.4 輸出比較單元

10.5 比較匹配輸出單元.

10.6 訪問16位暫存器

10.7 定時器/計數器1的相關暫存器

10.8 定時器/計數器l的工作模式

10.8.1 普通模式

10.8.2 CTC模式

10.8.3 快速PWM模式

10.8.4 相位修止PWM模式

10.8.5 相位與頻率修正PWM模式

10.9 定時器/計數器1套用舉例

10.9.1 PWM控制電機轉速

10.9.2 用計數器製作頻率檢測儀

10.10 實踐拓展

10.11 思考與練習

第11章A/D轉換器

11.1 A/D轉換單元結構

11.1.1 A/D轉換器內部結構

11.1.2 ADC預分頻器

11.2 相關暫存器設定

11.2.1 特殊功能I/0暫存器(SFIOR)

11.2.2 A/D控制和狀態暫存器A(ADCSRA)

11.2.3 A/D數據暫存器(ADCH及ADCL)

11.2.4 A/D多工選擇暫存器(ADMUX)

11.3 ADC工作原理

11.4 ADC轉換時序

11.5 A/D轉換套用實例

11.5.1 實例:對輸入的電壓進行

A/D轉換

11.5.2 實例:對輸入的兩路模擬電壓進行A/D轉換

11.6 實踐拓展

11.7 思考與練習

第12章 同步串列SPI接口

12.1 同步串列通信基礎

12.2 主機和從機的連線

12.3 相關暫存器設定

12.3.1 SPI控制暫存器(SPCR)

12.3.2 SPI狀態暫存器(SPSR)

12.3.3 SPI數據暫存器(SPDR)

12.4 數據模式

12.5 同步串列口套用舉例

12.6 實踐拓展

12.7 思考與練習

第13章USART串列口的套用

13.1 串列口工作原理

13.2 相關暫存器設定

13.2.1 USART數據暫存器(UDR)

13.2.2 USART控制和狀態暫存器A(UCSRA)

13.2.3 USART控制和狀態暫存器B(UCSRB)

13.2.4 USART控制和狀態暫存器C(UCSRC)

13.2.5 USART波特率暫存器(UBRRL和UBRRH)

13.3 USART串列口套用舉例

13.3.1 兩片單片機之間串列通信

13.3.2 單片機給PC機上傳數據

13.4 實踐拓展

13.5 思考與練習

第14章TWI接口的套用

14.1 TWI通信原理

14.2 相關暫存器設定

14.2.1 TWI比特率暫存器TWBR

14.2.2 TWI控制暫存器TWCR

14.2.3 TWI狀態暫存器TWSR

14.2.4 TWI數據暫存器TWDR

14.2.5 TWI(從機)地址暫存器TWAR

14.3 TWI接口套用舉例

14.4 實踐拓展

14.5 思考與練習

第四篇 綜合設計

第15章 綜合設計實例

15.1 調光燈的設計

15.1.1 任務要求與方案設計

15.1.2 硬體電路設計

15.1.3 軟體設計

15.2 電能質量檢測系統設計

15.2.1 任務分析

15.2.2 硬體電路設計

15.2.3 軟體設計

15.3 實踐拓展

15.4 思考與練習

參考文獻

相關詞條

熱門詞條

聯絡我們