AVR單片機(jī)實用程序設(shè)計

出版時間:2012-1  出版社:北京航空航天大學(xué)出版社  作者:張克彥 等編著  頁數(shù):536  

內(nèi)容概要

《AVR單片機(jī)實用程序設(shè)計》對AVR中檔單片機(jī)升級換代產(chǎn)品ATmega16
、ATmega8535的系統(tǒng)結(jié)構(gòu)、特點、運(yùn)行原理和指令系統(tǒng)等做了詳細(xì)介紹,在此基礎(chǔ)上給出眾多具代表性的實用程序的設(shè)計及其使用方法,并提供詳細(xì)程序清單。內(nèi)容包括ATmega16/8535單片機(jī)硬件結(jié)構(gòu),升級后的功能特點以及運(yùn)行原理;AVR單片機(jī)指令系統(tǒng);軟件DAA、定點運(yùn)算以及數(shù)制轉(zhuǎn)換子程序設(shè)計方法,并設(shè)計了使用乘法指令設(shè)計快速多字節(jié)乘法以及數(shù)制轉(zhuǎn)換程序;各類實用程序(查表、線性插值、外設(shè)管理、通信、A/D轉(zhuǎn)換、定時/計數(shù)器應(yīng)用、可靠性設(shè)計、數(shù)/碼制轉(zhuǎn)換、串行器件多點測溫、觸摸屏、高性能液晶顯示模塊、紅外通訊技術(shù)、帶定時告警功能的串行實時鐘芯片等)的設(shè)計使用方法,并對嵌入式系統(tǒng)程序設(shè)計及優(yōu)化方法進(jìn)行總結(jié);
AVR浮點程序庫設(shè)計及使用;AVR單片機(jī)的編程功能以及由AVR
JTAG接口實現(xiàn)的功能強(qiáng)大的在線調(diào)試系統(tǒng)。主要程序都附有流程圖,所有程序都列出清單并帶詳細(xì)注釋,而且配備光盤。
本書歸納的程序設(shè)計和優(yōu)化方法,以及完整的軟件設(shè)計實例也適用于其他流行機(jī)型,如C8051F、MCS51/196、Frecscale等單片機(jī)。
《AVR單片機(jī)實用程序設(shè)計》可作為單片機(jī)應(yīng)用工程技術(shù)人員的設(shè)計參考書,或作為大專院校的教學(xué)參考書。本書由張克彥完成本書統(tǒng)稿工作。

書籍目錄

第1章  ATmega16單片機(jī)硬件結(jié)構(gòu)和運(yùn)行原理
1.1 AVR單片機(jī)概述
1.2 ATmegal6的結(jié)構(gòu)與主要特點
1.3 ATmegal6的主要性能
1.4 ATmegal6 MCU內(nèi)核
1.5 ATmegal6的存儲器組織
1.5.1 可實現(xiàn)在線/在應(yīng)用自我編程的閃存FLASH
1.5.2 數(shù)據(jù)存儲器SRAM
1.5.3 EEPROM數(shù)據(jù)存儲器
1.5.4 I/O寄存器
1.6 系統(tǒng)時鐘及其選擇
1.6.1 時鐘系統(tǒng)及其分配
1.6.2 源時鐘信號
1.6.3 外部晶振
1.6.4 外部低頻晶體振蕩器
1.6.5 外部RC振蕩器
1.6.6 可標(biāo)定的內(nèi)部RC振蕩器
1.6.7 外部時鐘源
1.6.8 定時器/計數(shù)器振蕩器(異步時鐘)
1.7 電源管理和休眠模式
1.7.1 概述
1.7.2 休眠模式的實現(xiàn)
1.7.3 如何將功耗最小化
1.8 復(fù)位系統(tǒng)
1.8.1 復(fù)位源
1.8.2 MCU控制及狀態(tài)寄存器MCUCSR
1.8.3 內(nèi)部參考電壓源
1.8.4 看門狗定時器
1.9 中斷系統(tǒng)
1.9.1 中斷源及其管理
1.9.2 中斷向量
1.9.3 中斷控制寄存器
1.9.4 中斷響應(yīng)過程
1.10 定時器/計數(shù)器
1.10.1 定時器/計數(shù)器的預(yù)分頻器
1.10.2 8位定時器/計數(shù)器0-T/CO
1.10.3 16位定時器/計數(shù)器1-T/C1
1.10.4 8位定時器/計數(shù)器2-T/C2
1.11 ATmegal6/8535的I/O端口
1.11.1 概 述
1.11.2 I/O內(nèi)部結(jié)構(gòu)及工作原理
1.11.3 各端口寄存器
1.11.4 I/O特殊功能寄存器SFl0R
1.11.5 端口第二功能
1.12 同步串行接口SPI
1.12.1 內(nèi)部結(jié)構(gòu)和運(yùn)行原理
1.12.2 SPI相關(guān)寄存器
1.12.3 SS引腳功能
1.12.4 SPI數(shù)據(jù)傳送模式
1.13 通用同步/異步串行接口USART
1.13.1 概 述
1.13.2 串行時鐘的產(chǎn)生
1.13.3 數(shù)據(jù)幀格式
1.13.4 USART的初始化
1.13.5 數(shù)據(jù)幀的發(fā)送過程
1.13.6 異步串行數(shù)據(jù)的位接收時序
1.13.7 數(shù)據(jù)幀接收過程
1.13.8 多機(jī)通信的實現(xiàn)方法
1.13.9 USART寄存器
1.14 兩線串行總線接口TWI(I2C)
1.14.1 兩線串行總線接口定義
1.14.2 TWI模塊概述
1.14.3 TwI寄存器
1.14.4 TWI總線的使用
1.14.5 多主機(jī)系統(tǒng)和總線仲裁
1.15 模擬比較器
1.16 模數(shù)轉(zhuǎn)換器
1.16.1 ADC工作過程
1.16.2 啟動ADC
1.16.3 預(yù)分頻與轉(zhuǎn)換時間
……
第2章 AVR單片機(jī)指令系統(tǒng)
第3章 定點運(yùn)算和定點數(shù)制轉(zhuǎn)換
第4章 AVR實用程序
第15章 AVR浮點程序庫
第6章 在線測試功能和編程功能
參考文獻(xiàn)

章節(jié)摘錄

版權(quán)頁:插圖:AVR.MCU內(nèi)核都含有32個8位可快速訪問的通用寄存器文件,訪問時間為一個時鐘周期。從而實現(xiàn)單時鐘周期的算術(shù)邏輯運(yùn)算。在典型的ALU操作中,兩個位于寄存器文件中的操作數(shù)同時被訪問,然后執(zhí)行運(yùn)算,結(jié)果再被送回寄存器文件。ALU還支持寄存器與常數(shù)之間的算術(shù)、邏輯運(yùn)算,也可以執(zhí)行單寄存器操作。運(yùn)算完成后依照運(yùn)算結(jié)果更新狀態(tài)寄存器的標(biāo)志位。寄存器文件里有6個寄存器作為3個16位的間接尋址(間址)寄存器指針(X、Y、Z),用以尋址數(shù)據(jù)空間,實現(xiàn)高效的地址運(yùn)算。其中Z指針還可作為查取程序存儲器內(nèi)數(shù)據(jù)表格的地址指針,或作為寫FLASTI數(shù)據(jù)指針。程序主要通過有/無條件的跳轉(zhuǎn)指令和調(diào)用指令來控制流程或走向。AVR指令以字為單位,大多數(shù)指令長度為16位。程序存儲器分為兩個區(qū)域:引導(dǎo)程序區(qū)和應(yīng)用區(qū)。這兩個區(qū)都有專門的鎖定位以實現(xiàn)讀/寫保護(hù)。用于寫應(yīng)用程序的SPM指令必須位于引導(dǎo)程序區(qū)。中斷或調(diào)用子程序的返回地址(即程序計數(shù)器PC之內(nèi)容)被保存于堆棧之中。堆棧位于SRAM空間,堆??臻g不能與其他數(shù)據(jù)空間沖突。在復(fù)位例程里用戶首先要初始化位于I/O空間的堆棧指針SP、以及其他I/O寄存器??赏ㄟ^5種不同的尋址模式對SRAM中的數(shù)據(jù)進(jìn)行訪問。AVR存儲空間為平面線性結(jié)構(gòu)空間。AVR有一個靈活的中斷控制模塊,位于I/O空間,由狀態(tài)寄存器里的全局中斷使能位,以及中斷控制寄存器里的中斷使能位組成。每個中斷在中斷向量表里都有獨立的中斷向量。各個中斷的硬件優(yōu)先級以其在中斷向量表里的排列位置決定,地址越低者優(yōu)先級越高。AVR的ALU與32個寄存器文件直接相連。寄存器與寄存器之間,寄存器與立即數(shù)之間的算術(shù)。邏輯運(yùn)算只需要一個時鐘周期。算術(shù)邏輯操作分為3類:算術(shù),邏輯和位運(yùn)算。此外,還提供了支持有/無符號數(shù)和小數(shù)乘法的乘法器,具體請參考第2章指令集。狀態(tài)寄存器包含了執(zhí)行最后運(yùn)算的算術(shù)指令的結(jié)果信息。這些信息可用以改變程序流程,實現(xiàn)條件操作。所有算術(shù)邏輯運(yùn)算都影響狀態(tài)寄存器的內(nèi)容,對狀態(tài)寄存器各個位進(jìn)行測試,可根據(jù)不同情況決定程序的走向。

編輯推薦

《AVR單片機(jī)實用程序設(shè)計(第2版)》是由北京航空航天大學(xué)出版社出版的。

圖書封面

評論、評分、閱讀與下載


    AVR單片機(jī)實用程序設(shè)計 PDF格式下載


用戶評論 (總計0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7