嵌入式技術(shù)基礎(chǔ)與實(shí)踐-王宜懷復(fù)習(xí)指導(dǎo)_第1頁(yè)
嵌入式技術(shù)基礎(chǔ)與實(shí)踐-王宜懷復(fù)習(xí)指導(dǎo)_第2頁(yè)
嵌入式技術(shù)基礎(chǔ)與實(shí)踐-王宜懷復(fù)習(xí)指導(dǎo)_第3頁(yè)
嵌入式技術(shù)基礎(chǔ)與實(shí)踐-王宜懷復(fù)習(xí)指導(dǎo)_第4頁(yè)
嵌入式技術(shù)基礎(chǔ)與實(shí)踐-王宜懷復(fù)習(xí)指導(dǎo)_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、嵌入式復(fù)習(xí)整理第1章 概述1. 嵌入式系統(tǒng)定義:一種計(jì)算機(jī)硬件與軟件的組合,也許還有機(jī)械裝置,用于實(shí)現(xiàn)一個(gè)特定的功能。在某些特定情況下,嵌入式系統(tǒng)是一個(gè)大系統(tǒng)或產(chǎn)品的一部分。2. 微控制器的含義:在一塊芯片上集成了中央處理單元(CPU)、存儲(chǔ)器(RAM/ROM等)、定時(shí)器/計(jì)數(shù)器及多種輸入輸出(I/O)接口的比較完整的數(shù)字處理系統(tǒng)。 第2章 AW60硬件最小系統(tǒng)與S08CPU1. AW60的組成結(jié)構(gòu):S08CPU、存儲(chǔ)器、定時(shí)器接口模塊、定時(shí)器模塊、看門狗模塊、 通用IO模塊、串口通信模塊(SCI)、串行外設(shè)接口(SPI)、 IIC模塊、A/D轉(zhuǎn)換模塊、鍵盤中斷模塊、時(shí)鐘發(fā)生模塊、復(fù)位與中斷模

2、塊等。2. AW60存儲(chǔ)器映像:所謂存儲(chǔ)器映像(Memory map),是指地址$0000 - $FFFF這個(gè)64KB空間,哪些地址被何種存儲(chǔ)器或I/O寄存器所占用。(1) 2KB的RAM:地址為$0070 - $086F,用于存放用戶數(shù)據(jù)(主要是全局變量)和堆??臻g。(2) 兩段Flash存儲(chǔ)器,$0870 - $17FF,$1860-$FFFF,存儲(chǔ)程序、常量和中斷向量。(3) I/O映像寄存器:直接頁(yè)寄存器、高端頁(yè)寄存器和非易失性寄存器。3. AW60引腳:電源類信號(hào)引腳、復(fù)位信號(hào)引腳、主要功能模塊引腳和其他引腳。4. AW60最小硬件系統(tǒng):包括電源及其濾波電路、復(fù)位電路、晶振電路及其P

3、LL濾波電路、寫入器接口電路。5. S08CPU的特點(diǎn):(1) 目標(biāo)代碼與M68HC05系列、M68HC08系列MCU向上兼容;(2) 具有16位堆棧指針SP、16位變址寄存器HX,16種尋址方式;(3) 最高達(dá)40MHz CPU內(nèi)部總線頻率、64KB程序/數(shù)據(jù)存儲(chǔ)器空間;(4) 不經(jīng)過(guò)累加器A的存儲(chǔ)器之間數(shù)據(jù)直接傳送;(5) 快速8位8位乘法指令、快速16位與8位相除指令,增強(qiáng)的BCD指令;(6) 模塊化結(jié)構(gòu),可擴(kuò)展的內(nèi)部總線定義可使尋址范圍超過(guò)64KB;(7) 低功耗的STOP、WAIT模式。6. S08CPU的內(nèi)部寄存器:(1) 累加器A(Accumulator):8位通用寄存器,用來(lái)存

4、放操作數(shù)和運(yùn)算結(jié)果。(2) 變址寄存器HX(Index Pointer) :16位寄存器,H是高8位,X是低8位,可單獨(dú)使用。(3) 堆棧指針SP(Stack Pointer) :指向下一個(gè)棧地址的16位寄存器,堆棧指針SP采用遞減的結(jié)構(gòu),即進(jìn)棧時(shí)SP減1,出棧時(shí)SP加1。(4) 程序計(jì)數(shù)器PC(Program Counter) :也是16位的,可尋址范圍達(dá)64KBPC存放下一條指令的地址,在執(zhí)行轉(zhuǎn)移指令時(shí)存放轉(zhuǎn)移地址,在執(zhí)行中斷指令時(shí)存放中斷子程序入口地址。(5) 條件碼寄存器CCR(Condition Code Register) :8位的寄存器,其中5位(除了中斷屏蔽位I)用于指示執(zhí)行完

5、指令的結(jié)果狀態(tài),這些位可由程序來(lái)測(cè)試。7. S08 CPU的尋址方式:(1) 內(nèi)在尋址方式(INH)(2) 立即尋址方式(IMM)(3) 直接尋址方式(DIR)(4) 擴(kuò)展尋址方式(EXT)(5) 無(wú)偏移量變址方式(IX)(6) 8位偏移量變址方式(IX1)(7) 16位偏移量變址方式(IX2)(8) 相對(duì)變址尋址方式(REL)(9) 存儲(chǔ)器:直接地址直接地址尋址方式(DD)(10) 存儲(chǔ)器:直接地址變址、變址加1的尋址方式(DIX+)(11) 存儲(chǔ)器:立即數(shù)直接地址尋址方式(IMD)(12) 存儲(chǔ)器:變址直接地址、變址加1的尋址方式(IX+D)(13) 無(wú)偏移量變址、變址加1尋址方式(IX+

6、)(14) 8位偏移量變址、變址加1尋址方式(IX1+)(15) 8位偏移量堆棧尋址方式(SP1)(16) 16位偏移量堆棧尋址方式(SP2)8. S08 CPU的指令系統(tǒng):(1) 數(shù)據(jù)傳送指令:取數(shù)指令、存數(shù)指令、堆棧操作指令、寄存器間數(shù)據(jù)傳送指令、存儲(chǔ)器間數(shù)據(jù)傳送指令。(2) 算術(shù)運(yùn)算指令:加減指令堆棧操作指令、乘/除法指令、加1/減1指令、取反/求補(bǔ)指令、比較指令、清零指令、測(cè)試是否為0指令、SP與HX增加指令。(3) 邏輯運(yùn)算指令:完成邏輯與、或、異或等操作。(4) 位操作類指令:位測(cè)試、位置1、位清0等操作。(5) 移位類指令:?jiǎn)蜗蛞莆恢噶睢⒀h(huán)移位指令。(6) 程序控制指令:一般轉(zhuǎn)

7、移指令、特殊轉(zhuǎn)移指令、跳轉(zhuǎn)指令 。(7) 其他指令。第3章 第一個(gè)樣例程序及CodeWarrior工程組織1. 通用I/O接口:I/O接口,即輸入輸出接口,是微控制器同外界進(jìn)行交互的重要通道。所謂通用I/O,也記為GPIO(General Purpose I/O),即基本的輸入/輸出,有時(shí)也稱并行I/O,或普通I/O,它是I/O的最基本形式。2. 上拉電阻和下拉電阻:MCU的某個(gè)引腳通過(guò)一個(gè)電阻接到電源(Vcc)上,這個(gè)電阻被稱為“上拉電阻”。與之相對(duì)應(yīng),若MCU的某個(gè)引腳通過(guò)一個(gè)電阻接到地(GND)上,則相應(yīng)的電阻被稱為“下拉電阻”。3. AW60的GPIO接口:AW60有7個(gè)GPIO口,每

8、個(gè)GPIO口的名稱由一位英文字母組成,分別是A、B、C、D、E、F、G。GPIO模塊的每個(gè)口最多對(duì)應(yīng)8個(gè)GPIO引腳,但各個(gè)GPIO口的編程寄存器均為8位,沒(méi)有對(duì)應(yīng)引腳的位無(wú)效。GPIO的基本寄存器:(1) 端口數(shù)據(jù)方向寄存器(DDR):若為0,則為輸入,若為1,則為輸出。(2) 端口數(shù)據(jù)寄存器:存放要輸入或輸出的數(shù)據(jù)。第4章 基于硬件構(gòu)件的嵌入式系統(tǒng)開發(fā)方法1. 嵌入式系統(tǒng)開發(fā)主要存在以下兩大問(wèn)題:硬件設(shè)計(jì)缺乏重用支持驅(qū)動(dòng)程序可移植性差 2. 根據(jù)接口之間的生產(chǎn)消費(fèi)關(guān)系,接口可分為兩類:提供接口和需求接口。根據(jù)所擁有接口類型的不同,硬件構(gòu)件分為三類:核心構(gòu)件、中間構(gòu)件、終端構(gòu)件。第5章 串行

9、通信接口SCI1. 串行通信的概念:SCI(standard non-return-zero mark/space data format) “標(biāo)準(zhǔn)不歸零傳號(hào)/空號(hào)數(shù)據(jù)格式,通常采用NRZ數(shù)據(jù)格式?!安粴w零”的最初含義是:用正、負(fù)電平表示二進(jìn)制值,不使用零電平。“mark/space”即“傳號(hào)/空號(hào)”分別是表示兩種狀態(tài)的物理名稱,邏輯名稱記為“1/0”。下圖給出了8位數(shù)據(jù)、無(wú)校驗(yàn)情況的傳送格式2. 奇偶校驗(yàn):字符奇偶校驗(yàn)檢查(character parity checking)稱為垂直冗余檢查(vertical redundancy checking,VRC),它是每個(gè)字符增加一個(gè)額外位使字符

10、中“1”的個(gè)數(shù)為奇數(shù)或偶數(shù)。奇校驗(yàn):如果字符數(shù)據(jù)位中“1”的數(shù)目是偶數(shù),校驗(yàn)位應(yīng)為“1”,如果“1”的數(shù)目是奇數(shù),校驗(yàn)位應(yīng)為“0”。偶校驗(yàn):如果字符數(shù)據(jù)位中“1”的數(shù)目是偶數(shù),則校驗(yàn)位應(yīng)為“0”,如果是奇數(shù)則為“1”。3. 串行通信的傳輸方式:?jiǎn)喂ぃ⊿implex)、全雙工(Full-duplex)、半雙工(Half-duplex)。4. AW60的SCI模塊的編程結(jié)構(gòu):從程序員角度看,涉及SCI的有8個(gè)8位寄存器,其中2個(gè)波特率寄存器,1個(gè)數(shù)據(jù)寄存器,3個(gè)控制寄存器,2個(gè)狀態(tài)寄存器。SCI波特率計(jì)算公式:SCI波特率= fBUSCLK/(16BR),其中fBUSCLK為內(nèi)部總線頻率SCI控制

11、寄存器1(SCIxC1)用于設(shè)置SCI的工作模式,可選擇運(yùn)行模式、喚醒模式、空閑類型檢測(cè)以及奇偶校驗(yàn)。SCI控制寄存器2(SCIxC2)用于收/發(fā)及相關(guān)中斷控制的設(shè)置。5. SCI模塊的編程結(jié)構(gòu):(1) SCI構(gòu)件的初始化功能函數(shù):void SCIInit(uint8 SCINo, uint8 sysclk, uint16 baud)uint16 ubgs = 0;if(SCINo 2)SCINo = 2;/ 若傳進(jìn)的通道號(hào)大于2,則按照2來(lái)處理/ 計(jì)算波特率并設(shè)置:ubgs=fsys/(波特率*16)(其中fsys=sysclk*1000000)ubgs = sysclk *(10000/(

12、baud/100)/16;/ 理解參考上一行,此處便于CPU計(jì)算SCI_BDH(SCINo) = (uint8)(ubgs & 0xFF00)8);SCI_BDL(SCINo) = (uint8)(ubgs & 0x00FF);/ 無(wú)校驗(yàn),正常模式(開始信號(hào)+8位數(shù)據(jù)(先發(fā)最低位)+ 停止信號(hào))SCI_C1(SCINo) = 0b00000000;/ 允許發(fā)送,允許接收,中斷方式收發(fā)SCI_C2(SCINo) = 0b00001100;(2) SCI構(gòu)件的單字節(jié)發(fā)送功能函數(shù):void SCISend1(uint8 SCINo, uint8 ch)if(SCINo2)SCINo = 2;/ 若傳

13、進(jìn)的通道號(hào)大于2,則按照2來(lái)處理while(!SCI_S1(SCINo) & 0b1000000);/ 判斷發(fā)送緩沖區(qū)是否為空SCI_D(SCINo) = ch;(3) SCI構(gòu)件的單字節(jié)接收功能函數(shù):uint8 SCIRe1(uint8 SCINo, uint8 *p)uint16 k;uint8 i;if(SCINo2)SCINo = 2;/ 若傳進(jìn)的通道號(hào)大于2,則按照2來(lái)處理for(k=0;k=0xFBBB)/ 接收失敗i = 0xFF;*p = 0x01;return i;6. 中斷向量表:中斷向量表是一個(gè)指針數(shù)組,其中每一項(xiàng)都存放了中斷處理函數(shù)的入口地址。7. 中斷的處理過(guò)程一般為

14、: 關(guān)中斷、保護(hù)現(xiàn)場(chǎng)、 執(zhí)行中斷服務(wù)程序、 恢復(fù)現(xiàn)場(chǎng)、開中斷。8. AW60中斷源:AW60有26個(gè)中斷源,按優(yōu)先級(jí)從高到低的順序分別是:復(fù)位中斷(1個(gè))、SWI指令中斷(1個(gè))、 引腳中斷(1個(gè))、低電壓檢測(cè)中斷(1個(gè))、ICG中斷(1個(gè))、定時(shí)器中斷(10個(gè))、SPI中斷(1個(gè))、SCI中斷(6個(gè))、鍵盤輸入中斷(1個(gè))、ADC轉(zhuǎn)換完成中斷(1個(gè))、I2C中斷(1個(gè))和實(shí)時(shí)中斷(1個(gè))。26個(gè)中斷源只有18個(gè)中斷向量,有的是幾個(gè)中斷源使用同一個(gè)中斷向量。第6章 GPIO的應(yīng)用實(shí)例鍵盤、LED與LCD1. 鍵盤(1) AW60的鍵盤中斷模塊:AW60單片機(jī)上的PTG0 PTG4、PTD2 P

15、TD3、PTD7共8個(gè)引腳與鍵盤中斷模塊(KBI)的引腳復(fù)用。鍵盤中斷矢量地址:$FFD2$FFD3。鍵盤中斷初始化順序:先設(shè)置鍵盤中斷狀態(tài)和控制寄存器(KBI1SC),后設(shè)置鍵盤中斷引腳使能寄存器(KBI1PE)。(2) 鍵盤編程掃描一次4X4鍵盤并返回掃描鍵值:uint8 KBScan1()uint8 line,i,tmp,tmp1,tmp2;line = 0b11111110;/ 是第一根行線為0(低電平)for(i = 0;i4;i+)/ 當(dāng)前掃描的一行,輸出低電平KB_GP = line;/ 輸出開始掃描asm(“NOP”);asm(“NOP”);/ 讀取鍵盤口數(shù)據(jù)寄存器tmp1 =

16、 KB_DP;/ 輸入掃描結(jié)果tmp2 = KB_GP;/ 整合掃描結(jié)果,即鍵盤輸入引腳的4位tmp = (tmp1 & 0x80);tmp1 &= 0x0C;tmp1 = (tmp13);tmp |= tmp1;tmp |= (tmp2 & 0x1F);/ 通過(guò)觀察4根列線中是否出現(xiàn)低電平來(lái)判斷當(dāng)前行有無(wú)按鍵if(tmp & 0xF0) != 0xF0)/ 當(dāng)前行有按鍵按下break;line = (line 1) | 0x01;return tmp;2. 數(shù)碼管LED編程實(shí)例:(1) LED的引腳使用:利用MCU的PTB口控制8個(gè)位段(數(shù)據(jù)),PTB7 PTB0分別接h-a位段,PTD0,

17、PTD1,PTD4,PTD5作為片選端(位控制)。(2) LED編程結(jié)構(gòu):void LEDInit()/ LED初始化LEDdata_D = 0xFF;LEDcs_D = 0x33;void LEDshow1(uint8 I,uint8 c)/ 在LED上的第i位顯示數(shù)字LEDcs = CStablei;LEDdata = Dtablei;void LEDshow(uint8 *Buf)/ 在LED上顯示4個(gè)十進(jìn)制數(shù)uint8 i,j,c;for(i=0;i4;i+)c = Bufi-0;LEDshow(3-I,c);/ 延時(shí)for(j=0;j100;j+);3. 液晶LCD編程實(shí)例(1) L

18、CD的基本特點(diǎn)和分類方法1)低電壓微功耗,2)平板型結(jié)構(gòu),3)使用壽命長(zhǎng),4)被動(dòng)顯示,5)顯示信息量大且易于彩色化,6)無(wú)電磁輻射LCD的分類:1) 按電光效應(yīng)分類,LCD可分為電場(chǎng)效應(yīng)類,電流效應(yīng)類,電熱效應(yīng)類和熱效應(yīng)類。2) 按現(xiàn)實(shí)內(nèi)容分類,LCD可分為字段型,點(diǎn)陣字符型,點(diǎn)陣圖形型。3) 按LCD的采光方式分類,分為帶背光源與不帶背光源兩大類。(2) HD44780:HD44780的外部引腳一般有14條,其中有8條數(shù)據(jù)線,3條控制線。HD44780指令集:(要求RS = 0)1) R/W = 0,DATA = 0000 0001 ,清屏2) R/W = 0,DATA = 0000 00

19、1* ,歸位3) R/W = 1,讀忙操作。(3) LCD的引腳使用在實(shí)驗(yàn)板上LCD數(shù)據(jù)線7-14引腳分別MCU的PTA0-PTA7連接,LCD的控制線RS,R/W,E(4,5,6引腳)分別與MCU的PTC4,PTC6,PTF6連接。(4) LCD編程結(jié)構(gòu):void LCDinit(void)uint16 i;/ 定義數(shù)據(jù)口(PTA0-PTA7)為輸出LCDdata_D = 0b11111111;/ 定義控制口(PTC4,PTC6)為輸出LCDctrlD1 |= (1LcdRS);LCDctrlD1 |= (1LcdRW);LCDctrl1 &= (1LcdRS);/ RS,R/W=00,寫指

20、令LCDctrl1 &= (1LcdRW);/ 定義控制口(PTF6)為輸出LCDctrlD2 |= (1LcdE);LCDctrl2 |= (1LcdE);/ E=1/ 1功能設(shè)置LCDcommand(0b00111000);/ 5*7點(diǎn)陣模式,2行顯示,8位數(shù)據(jù)總線/ 2顯示開關(guān)控制LCDcommand(0b00001000);/ 不閃爍,關(guān)光標(biāo)顯示,關(guān)顯示/ 3清屏并等待結(jié)束LCDcommand(0b00000001);for(i=0;i40usfor(i =0;i1000;i+)asm(“NOP”);/ 2數(shù)據(jù)送到LCD數(shù)據(jù)線上LCDdata = cmd;/ 3給出E信號(hào)的下降沿,將數(shù)

21、據(jù)寫入LCD中LCDctrl2 |= (1LcdE);asm(“NOP”);asm(“NOP”);asm(“NOP”);LCDctrl2 &= (140usfor(i =0;i2)TPMNo=2;else if(TPMNo= 60)/ 秒溢出*(p+1) += 1;/ 分加1*(p+2) = 0;/ 清秒if(*(p+1) = 60)/ 分溢出*p += 1;/ 時(shí)加1*(p+1) = 0;/ 清秒if(*p = 24)/ 時(shí)溢出*p = 0;/ 清時(shí)5. AW60定時(shí)器的脈寬調(diào)制(PWM):分為兩種模式,邊沿對(duì)齊PWM和中心對(duì)齊PWMvoid PWM(uint8 TPMNo, uint8 C

22、HNo, uint16 Period, uint8 Duty)uint16 j;TPM_CSTR(TPMNo) = 0x00;/ 計(jì)數(shù)寄存器初值 = 0x0000TPM_CNTH(TPMNo) = 0x00;TPM_CNTL(TPMNo) = 0x00;/ 設(shè)置PWM波的周期 = PeriodTPM_MODH(TPMNo) = (uint8)(Period8);TPM_MODL(TPMNo) = (uint8)Period;if(Duty100)Duty = 100;else if(Duty0)Duty = 0;j = (Period/100)*Duty;if(TPMNo 5)CHNo = 5

23、;/ 根據(jù)占空比,設(shè)置相應(yīng)通道數(shù)值寄存器TPM1_CHVH(CHNo) = (uint8)(j8);TPM1_CHVL(CHNo) = (uint8)j;/ 設(shè)置定時(shí)器1通道狀態(tài)和控制寄存器TPM1_CHSCSTR(CHNo) = 0b00101000;else/ 定時(shí)器2if(CHNo2)CHNo = 2;/ 根據(jù)占空比,設(shè)置相應(yīng)通道數(shù)值寄存器TPM2_CHVH(CHNo) = (uint8)(j8);TPM2_CHVL(CHNo) = (uint8)j;/ 設(shè)置定時(shí)器1通道狀態(tài)和控制寄存器TPM2_CHSCSTR(CHNo) = 0b00101000;第8章 串行外設(shè)接口SPI1. 串行外

24、設(shè)概念:一種同步串行通訊接口,用于微處理器和外圍擴(kuò)展芯片之間的串行連接,現(xiàn)已發(fā)展成為一種工業(yè)標(biāo)準(zhǔn)。時(shí)鐘極性(CPHA):表示時(shí)鐘信號(hào)在空閑時(shí)是高電平還是低電平。時(shí)鐘相位(CPOL):決定數(shù)據(jù)是在SPSCK的上升沿采樣還是在SPSCK的下降沿采樣。2. SPI模塊的時(shí)序:確保發(fā)送數(shù)據(jù)在一周期開始的時(shí)刻上線,接收方在1/2周期的時(shí)刻從線上取數(shù),這樣是最穩(wěn)定的通信方式。3. AW60 SPI模塊編程SPI模塊有5個(gè)8位寄存器,分別是2個(gè)控制寄存器,1個(gè)波特率寄存器,1個(gè)狀態(tài)寄存器和1個(gè)數(shù)據(jù)寄存器。void SPIInit()SPI_CR1 = 0b01010000;/ 不產(chǎn)生中斷,主機(jī)方式,時(shí)鐘空閑

25、低電平SPI_CR2 = 0b00000000;SPI_BR = 0b01000001;void SPISendOntByte(uint8 data)SPI_DR = data;while(0=(SPI_SR & (1SPI_SendEmyptBit);/ 查詢SPI狀態(tài)寄存器是否發(fā)送成功void SPIRecvOneByte()while(0=(SPI_SR & (1SPI_ReceiveFullBit);/ 判斷接收緩沖區(qū)是否滿return SPI_DR;第9章 Flash存儲(chǔ)器在線編程1. Flash存儲(chǔ)器編程方法有:寫入器模式(監(jiān)控模式)和在線編程模式(用戶模式)2. Flash存儲(chǔ)器

26、的基本特點(diǎn):固有不揮發(fā)性;易更新性;成本低、密度高、可靠性好。3. Flash編程的基本操作有兩種: 擦除(Erase):將存儲(chǔ)單元的內(nèi)容由二進(jìn)制的0變成1寫入(Program):將存儲(chǔ)單元的內(nèi)容由二進(jìn)制的1變成0擦除和寫入操作都是通過(guò)設(shè)置或清除Flash存儲(chǔ)器的控制寄存器(FLCR)的某個(gè)或某些位來(lái)完成的。4. Flash存儲(chǔ)器的編程寄存器:6個(gè),對(duì)應(yīng)地址為$1820-$1826Flash時(shí)鐘分頻寄存器(FCDIV)、Flash選項(xiàng)寄存器(FOPT)、Flash配置寄存器(FCNFG)、Flash保護(hù)寄存器(FPROT)、Flash狀態(tài)寄存器(FSTAT)、Flash命令寄存器(FCMD)5

27、. 在運(yùn)行flash擦除及寫入程序時(shí),flash區(qū)會(huì)被加上高于普通工作電壓的編程電壓,導(dǎo)致flash區(qū)讀取不穩(wěn)定,應(yīng)該怎么解決此問(wèn)題?答:為了使擦除,寫入程序正常執(zhí)行,需將擦除,寫入子程序移入RAM中并轉(zhuǎn)入RAM區(qū)執(zhí)行。為此需在RAM區(qū)開辟一個(gè)緩沖區(qū),供程序移入使用。6. Flash在線編程,開發(fā)擦除與寫入子程序時(shí),應(yīng)該注意哪些問(wèn)題?1) RAM中要留有足夠的緩沖區(qū)。2) 擦除及寫入子程序中要調(diào)用的延時(shí)子程序均隨其后。3) 擦除及寫入子程序中對(duì)延時(shí)子程序的調(diào)用必須使用“BSR 子程序名”。4) 擦除及寫入子程序中及其中的延時(shí)子程序,若含有跳轉(zhuǎn)語(yǔ)句,只能使用“BRA 地址”。5) 使用不同型號(hào)芯

28、片,延時(shí)時(shí)間應(yīng)該根據(jù)芯片手冊(cè)予以變動(dòng)。6) 寫入程序運(yùn)行之前必須有擦除動(dòng)作。7) 由于擦除是每次擦除一頁(yè),所以數(shù)據(jù)應(yīng)該合理安排,避免誤擦。8) 頁(yè)首地址的定義須遵照保護(hù)寄存器FLBPR定義的規(guī)則。9) 在線編程時(shí)使用的Flash存儲(chǔ)區(qū)域應(yīng)在程序Flash存儲(chǔ)區(qū)域之前。第10章 集成電路互連總線IIC1. IIC總線:主要用于同一電路板內(nèi)各集成電路模塊之間的連接。2. IIC總線的特點(diǎn):1) 在硬件上,二線制的I2C串行總線使得各IC只需最簡(jiǎn)單的連接,而且總線接口都集成在IC中,不需另加總線接口電路 2) I2C總線還支持多主控(multi-mastering) 3) 串行的8位雙向數(shù)據(jù)傳輸位速

29、率在標(biāo)準(zhǔn)模式下可達(dá)100kbps,快速模式下可達(dá)400kbps,高速模式下可達(dá)3.4Mbps4) 連接到相同總線的IC數(shù)量只受到總線最大電容(400pf)的限制。但如果在總線中加上82B715總線遠(yuǎn)程驅(qū)動(dòng)器可以把總線電容限制擴(kuò)展十倍,傳輸距離可增加到15m 3. AW60的IIC模塊相關(guān)寄存器:寄存器名稱縮寫地址基本功能地址寄存器I2C1A 0x00000058設(shè)置從機(jī)地址分頻寄存器I2C1F 0x00000059設(shè)置I2C模塊的工作頻率等控制寄存器I2C1C 0x0000005A設(shè)置傳輸格式、中斷使能等狀態(tài)寄存器I2C1S 0x0000005B表明I2C模塊的工作狀態(tài)數(shù)據(jù)I/O寄存器I2C1

30、D 0x0000005C收發(fā)數(shù)據(jù)第11章 模數(shù)轉(zhuǎn)換模塊1. A/D轉(zhuǎn)換的基本問(wèn)題:(1) 采樣精度:數(shù)字量變化一個(gè)最小量時(shí)模擬信號(hào)的變化量,即我們通常所說(shuō)的采樣位數(shù)。(2) 采樣速率:完成一次A/D采樣所要花費(fèi)的時(shí)間。(3) 濾波:為了使采樣的數(shù)據(jù)更準(zhǔn)確,必須對(duì)采樣的數(shù)據(jù)進(jìn)行篩選去掉誤差較大的毛刺。(4) 物理量回歸:在實(shí)際應(yīng)用中,得到穩(wěn)定的A/D采樣值以后,還需要把A/D采樣值與實(shí)際物理量對(duì)應(yīng)起來(lái),這一步稱為物理量回歸。2. AW60的A/D轉(zhuǎn)換結(jié)構(gòu):AW60芯片內(nèi)部集成了一個(gè)8位/10位精度的逐次逼近式的A/D轉(zhuǎn)換模塊,最多可支持28路獨(dú)立的模擬輸入(AD0AD27),但在64引腳封裝中,只引出16個(gè)通道供用戶使用(AD0AD15),這些通道與I/O引腳復(fù)用。 3. AW60的A/D轉(zhuǎn)換模塊編程寄存,8個(gè)寄存器:2個(gè)狀態(tài)和控制寄存器,1個(gè)數(shù)據(jù)結(jié)果寄存器,1個(gè)比值寄存器,1個(gè)配置寄存器,3個(gè)引腳控制寄存器4. AD構(gòu)件的函數(shù)原型:(1) AD轉(zhuǎn)換模塊初始化void ADCinit (void)ADC_ADC1CFG = 0b10110011;ADC_ADC1SC1 = 0b00000000;ADC

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論