Freescale MC68HC11A8微控制器:功能剖析與應(yīng)用指南
在嵌入式系統(tǒng)設(shè)計領(lǐng)域,微控制器(MCU)的選擇至關(guān)重要,它直接影響著系統(tǒng)的性能、功能和成本。Freescale的MC68HC11A8作為一款先進(jìn)的8位MCU,憑借其豐富的片上外設(shè)功能和低功耗特性,在眾多應(yīng)用場景中展現(xiàn)出強大的競爭力。本文將深入剖析MC68HC11A8的各項特性,為電子工程師們提供全面的設(shè)計參考。
文件下載:MC68HC11A1CFNE3.pdf
一、MC68HC11A8概述
MC68HC11A8采用HCMOS工藝制造,具有靜態(tài)設(shè)計和低功耗的優(yōu)勢,可在3 MHz至直流的頻率范圍內(nèi)穩(wěn)定運行。它集成了多種片上外設(shè),包括ROM、EEPROM、RAM、定時器、串行通信接口等,為開發(fā)者提供了豐富的功能選項。
1.1 硬件特性
- 內(nèi)存配置:擁有8 Kbytes的ROM、512 Bytes的EEPROM和256 Bytes的RAM,其中RAM可在待機期間保存數(shù)據(jù),并可重新定位到任何4K邊界。
- 定時器系統(tǒng):配備增強型16位定時器系統(tǒng),包括四級可編程預(yù)分頻器、三個輸入捕獲功能和五個輸出比較功能,可滿足各種定時和計數(shù)需求。
- 通信接口:支持增強型NRZ串行通信接口(SCI)和串行外設(shè)接口(SPI),方便與其他設(shè)備進(jìn)行數(shù)據(jù)通信。
- A/D轉(zhuǎn)換器:具備8通道、8位模擬 - 數(shù)字轉(zhuǎn)換器,可實現(xiàn)高精度的模擬信號采集。
- 其他特性:還集成了實時中斷電路、計算機運行正常(COP)看門狗系統(tǒng)等,提高了系統(tǒng)的可靠性和穩(wěn)定性。
1.2 軟件特性
- 指令集:增強型M6800/M6801指令集,支持16 x 16整數(shù)和分?jǐn)?shù)除法功能,以及位操作指令,提高了編程的靈活性。
- 低功耗模式:提供WAIT和STOP兩種軟件控制的低功耗模式,可有效降低系統(tǒng)功耗。
二、信號描述與操作模式
2.1 信號引腳描述
- 電源引腳:(V{DD})為正電源輸入,(V{SS})為接地引腳。由于MC68HC11A8是CMOS設(shè)備,其引腳存在快速信號轉(zhuǎn)換,因此需要在MCU處提供良好的電源旁路電容,以確保電源穩(wěn)定。
- 復(fù)位引腳:RESET為低電平有效雙向控制信號,用于將MC68HC11A8初始化為已知的啟動狀態(tài),同時也可作為開漏輸出,指示時鐘監(jiān)視器或COP看門狗電路檢測到內(nèi)部故障。
- 晶體驅(qū)動和外部時鐘輸入引腳:XTAL和EXTAL提供晶體或CMOS兼容時鐘接口,用于控制內(nèi)部時鐘發(fā)生器電路。輸入頻率應(yīng)為所需E時鐘速率的四倍。
- E時鐘輸出引腳:E為內(nèi)部生成的E時鐘輸出,可作為定時參考。其頻率為XTAL和EXTAL引腳輸入頻率的四分之一。
- 中斷請求引腳:IRQ為異步中斷請求輸入,可通過OPTION寄存器選擇負(fù)邊沿觸發(fā)或電平觸發(fā)方式。
- 非屏蔽中斷引腳:XIRQ為非屏蔽中斷輸入,在復(fù)位初始化后可請求非屏蔽中斷。
- 模式選擇引腳:MODA/LIR和MODB/(V{STBY})用于在復(fù)位時選擇四種操作模式之一,同時LIR可作為開漏輸出,指示指令開始;(V{STBY})用于提供RAM待機電源。
- A/D轉(zhuǎn)換器參考電壓引腳:(V{RL})和(V{RH})為模擬 - 數(shù)字轉(zhuǎn)換器提供參考電壓。
- strobe和讀寫控制引腳:STRB/R/W和STRA/AS根據(jù)操作模式的不同,分別作為選通信號或總線控制信號。
- 端口信號引腳:端口A、B、C、D和E具有多種功能,可根據(jù)操作模式和控制寄存器的數(shù)據(jù)進(jìn)行配置。
2.2 操作模式
- 單芯片操作模式:MC68HC11A8作為獨立的微控制器運行,無需外部地址或數(shù)據(jù)總線。端口B、C、選通A和選通B作為通用I/O和握手信號。
- 擴展復(fù)用操作模式:MC68HC11A8可訪問64 Kbyte的地址空間,包括片上內(nèi)存和外部外設(shè)及內(nèi)存設(shè)備。擴展總線由端口B和C以及控制信號AS和R/W組成。
- 特殊引導(dǎo)操作模式:通過SCI端口將256字節(jié)的程序加載到片上RAM中,并在加載完成后自動執(zhí)行該程序。在此模式下,中斷向量指向RAM,方便用戶使用中斷。
- 特殊測試操作模式:主要用于工廠測試,與擴展復(fù)用操作模式類似,但復(fù)位和中斷向量從外部內(nèi)存位置(BFC0 - BFFF)獲取。
三、片上內(nèi)存
3.1 內(nèi)存映射
MC68HC11A8的內(nèi)存映射包括ROM、RAM和EEPROM,不同操作模式下的內(nèi)存布局有所不同。
- 單芯片操作模式:不生成外部地址,內(nèi)部ROM始終啟用。
- 擴展復(fù)用操作模式:內(nèi)存位置基本與單芯片操作模式相同,但EXT區(qū)域用于外部尋址的內(nèi)存和I/O。
- 特殊引導(dǎo)操作模式:與單芯片操作模式類似,但在(BF40 - BFFF)位置啟用引導(dǎo)程序,復(fù)位和中斷向量位于該區(qū)域。
- 特殊測試操作模式:與擴展復(fù)用操作模式相同,但復(fù)位和中斷向量位于外部內(nèi)存位置(BFC0 - BFFF)。
3.2 RAM和I/O映射寄存器(INIT)
INIT寄存器用于在初始化期間重新定位RAM和64個控制寄存器的位置,可在復(fù)位后的前64個E時鐘周期內(nèi)寫入一次,之后變?yōu)橹蛔x寄存器。
3.3 ROM
內(nèi)部8K ROM位于內(nèi)存映射的最高8K位置((E000 - FFFF)),可通過CONFIG寄存器中的ROMON位禁用。此外,還有一個192字節(jié)的引導(dǎo)ROM,用于特殊引導(dǎo)操作模式。
3.4 RAM
256字節(jié)的內(nèi)部RAM可通過INIT寄存器重新定位,默認(rèn)位置為(0000 - 00FF)。在WAIT和STOP模式下,RAM內(nèi)容可保持不變,也可通過(MODB / V_{STBY})引腳提供備用電源來保存數(shù)據(jù)。
3.5 EEPROM
512字節(jié)的EEPROM位于(B600 - B7FF),讀寫周期時間與內(nèi)部ROM相同。其編程和擦除由PPROG寄存器控制,可通過CONFIG寄存器中的EEON位禁用。
四、并行I/O
MC68HC11A8具有40個I/O引腳,分為五個8位端口。這些引腳根據(jù)操作模式和控制寄存器的數(shù)據(jù)具有多種功能。
4.1 通用I/O(端口C和D)
端口C和D作為通用輸入/輸出引腳,由各自的數(shù)據(jù)方向寄存器控制。當(dāng)輸出線被讀取時,返回引腳驅(qū)動器輸入的值;當(dāng)配置為輸入時,引腳變?yōu)楦咦杩馆斎搿?/p>
4.2 固定方向I/O(端口A、B和E)
端口A、B和E(除端口A的第7位外)具有固定的數(shù)據(jù)方向。端口A的部分引腳可用于定時器功能,也可作為通用I/O;端口B在單芯片操作模式下為通用輸出端口,在擴展復(fù)用操作模式下為高地址信號輸出;端口E可作為通用數(shù)字輸入或A/D輸入通道。
4.3 簡單選通I/O
通過并行I/O控制寄存器(PIOC)選擇簡單選通模式,端口C作為選通輸入端口,端口B作為選通輸出端口。
4.4 全握手I/O
全握手模式涉及端口C和選通信號STRA和STRB,分為輸入和輸出兩種模式,還支持端口C的三態(tài)操作。
4.5 并行I/O控制寄存器(PIOC)
PIOC寄存器用于控制并行握手I/O功能,僅在單芯片操作模式下可用。通過設(shè)置不同的位,可以實現(xiàn)不同的握手操作。
五、串行通信接口(SCI)
SCI是一個全雙工異步串行通信接口,支持標(biāo)準(zhǔn)NRZ格式和多種波特率。
5.1 概述和特性
- 兩線系統(tǒng)特性:采用標(biāo)準(zhǔn)NRZ格式,具有先進(jìn)的錯誤檢測方法,支持全雙工操作,可軟件編程選擇32種不同的波特率和字長。
- 接收器特性:具備喚醒功能、空閑線檢測、幀錯誤檢測、噪聲檢測和溢出檢測等功能。
- 發(fā)送器特性:提供發(fā)送數(shù)據(jù)寄存器空標(biāo)志、發(fā)送完成標(biāo)志和發(fā)送中斷功能。
5.2 數(shù)據(jù)格式
采用非歸零(NRZ)數(shù)據(jù)格式,包括一個起始位、8或9個數(shù)據(jù)位和一個停止位。
5.3 喚醒特性
接收器喚醒功能可降低SCI服務(wù)開銷,可通過SCCR1寄存器中的WAKE控制位選擇空閑線喚醒或地址標(biāo)記喚醒方式。
5.4 接收數(shù)據(jù)
接收數(shù)據(jù)通過輸入線和串行通信接口傳輸?shù)絻?nèi)部總線,接收器電路以16倍波特率的時鐘對輸入進(jìn)行采樣。
5.5 起始位檢測
當(dāng)檢測到RxD輸入為低電平時,進(jìn)行三次采樣以驗證起始位。如果至少兩次采樣檢測到邏輯零,則認(rèn)為檢測到有效起始位。
5.6 發(fā)送數(shù)據(jù)
發(fā)送數(shù)據(jù)從內(nèi)部總線通過串行通信接口傳輸?shù)捷敵鼍€,發(fā)送器使用RT時鐘的派生時鐘生成位時間。
5.7 功能描述
SCI由多個寄存器控制,包括SCDR、SCCR1、SCCR2、SCSR和BAUD。數(shù)據(jù)傳輸通過寫入SCDR寄存器啟動,接收數(shù)據(jù)通過讀取SCDR寄存器獲取。
六、串行外設(shè)接口(SPI)
SPI是一個同步接口,允許多個SPI微控制器或SPI類型的外設(shè)相互連接。
6.1 概述和特性
- 全雙工、三線同步傳輸:支持主從操作,主設(shè)備的最大位頻率為1.5 MHz,從設(shè)備的最大位頻率為3 MHz。
- 可編程特性:具有四個可編程的主位速率,可選擇時鐘極性和相位,提供傳輸完成中斷標(biāo)志和寫沖突標(biāo)志保護(hù)。
6.2 SPI信號描述
- MISO:主設(shè)備中為輸入,從設(shè)備中為輸出,用于傳輸串行數(shù)據(jù)。
- MOSI:主設(shè)備中為輸出,從設(shè)備中為輸入,用于傳輸串行數(shù)據(jù)。
- SCK:用于同步數(shù)據(jù)傳輸,由主設(shè)備生成,從設(shè)備作為輸入。
- SS:用于選擇從設(shè)備,主設(shè)備的SS引腳必須拉高,從設(shè)備的SS引腳在數(shù)據(jù)傳輸期間必須為低電平。
6.3 功能描述
SPI采用雙緩沖讀取,寫入時不緩沖。主設(shè)備通過MOSI線向從設(shè)備發(fā)送數(shù)據(jù),從設(shè)備通過MISO線向主設(shè)備返回數(shù)據(jù)。傳輸完成后,SPSR寄存器中的SPIF標(biāo)志位被設(shè)置。
6.4 SPI寄存器
包括串行外設(shè)控制寄存器(SPCR)、串行外設(shè)狀態(tài)寄存器(SPSR)和串行外設(shè)數(shù)據(jù)I/O寄存器(SPDR),用于控制、狀態(tài)監(jiān)測和數(shù)據(jù)存儲。
七、模擬 - 數(shù)字轉(zhuǎn)換器(A/D)
MC68HC11A8集成了8通道、多路復(fù)用輸入、逐次逼近型A/D轉(zhuǎn)換器,具有采樣和保持功能,可減少快速變化輸入信號引起的轉(zhuǎn)換誤差。
7.1 轉(zhuǎn)換過程
A/D轉(zhuǎn)換器采用比例轉(zhuǎn)換方式,輸入電壓等于(V{RL})時轉(zhuǎn)換為(00),等于(V{RH})時轉(zhuǎn)換為(FF)。轉(zhuǎn)換過程在寫入A/D控制/狀態(tài)寄存器(ADCTL)后的一個E時鐘周期開始,每個轉(zhuǎn)換需要32個MCU E時鐘周期。
7.2 通道分配
通過多路復(fù)用器選擇16個模擬信號之一,其中8個通道對應(yīng)端口E的輸入線,4個通道用于內(nèi)部參考點或測試功能,4個通道保留供未來使用。
7.3 單通道操作
分為兩種模式:SCAN = 0時,對選定通道進(jìn)行四次連續(xù)轉(zhuǎn)換;SCAN = 1時,對選定通道進(jìn)行連續(xù)轉(zhuǎn)換。
7.4 多通道操作
同樣分為兩種模式:SCAN = 0時,對選定的四個通道各進(jìn)行一次轉(zhuǎn)換;SCAN = 1時,對選定的四個通道進(jìn)行連續(xù)轉(zhuǎn)換。
7.5 停止和等待模式操作
在停止或等待模式下,如果轉(zhuǎn)換序列正在進(jìn)行,當(dāng)前通道的轉(zhuǎn)換將暫停。恢復(fù)正常操作后,該通道將重新采樣并繼續(xù)轉(zhuǎn)換序列。
7.6 A/D控制/狀態(tài)寄存器(ADCTL)
用于控制A/D轉(zhuǎn)換,包括轉(zhuǎn)換完成標(biāo)志、連續(xù)掃描控制、多通道/單通道控制和通道選擇等功能。
7.7 A/D結(jié)果寄存器
包括ADR1、ADR2、ADR3和ADR4,用于存儲A/D轉(zhuǎn)換結(jié)果。
7.8 A/D電源和時鐘選擇
通過OPTION寄存器中的ADPU位控制A/D電源,CSEL位選擇A/D時鐘源。當(dāng)E時鐘頻率低于750 kHz時,建議使用內(nèi)部R - C振蕩器。
八、可編程定時器、實時中斷和脈沖累加器
8.1 可編程定時器
定時器具有一個16位自由運行計數(shù)器,由四級預(yù)分頻器驅(qū)動。輸入捕獲功能用于記錄計數(shù)器的值,輸出比較功能用于在計數(shù)器與輸出比較寄存器匹配時觸發(fā)輸出動作。
8.2 實時中斷
通過PACTL寄存器中的RTR1和RTR0位選擇四種中斷速率之一,RTII位啟用中斷功能。
8.3 脈沖累加器
脈沖累加器是一個8位讀寫計數(shù)器,可工作在外部事件計數(shù)或門控時間累積模式。通過PACTL寄存器控制其工作模式和相關(guān)參數(shù)。
九、復(fù)位、中斷和低功耗模式
9.1 復(fù)位
MC68HC11A8具有四種復(fù)位類型:外部復(fù)位引腳、上電復(fù)位、COP看門狗定時器復(fù)位和時鐘監(jiān)視器復(fù)位。復(fù)位后,CPU從指定位置獲取重啟向量并開始執(zhí)行指令。
9.2 中斷
共有17個硬件中斷和1個軟件中斷,可分為可屏蔽和不可屏蔽兩類。中斷優(yōu)先級由硬件電路確定,可通過HPRIO寄存器將一個I位相關(guān)中斷源提升到最高I位優(yōu)先級。
9.3 低功耗模式
- WAIT指令:將MCU置于低功耗模式,保持振蕩器運行,可通過未屏蔽的中斷或RESET退出。
- STOP指令:將MCU置于最低功耗模式,停止所有時鐘,可通過RESET、XIRQ或未屏蔽的IRQ退出。
十、CPU、尋址模式和指令集
10.1 CPU寄存器
包括累加器A和B、索引寄存器X和Y、堆棧指針SP、程序計數(shù)器PC和條件代碼寄存器CCR。這些寄存器用于存儲操作數(shù)、地址和指令執(zhí)行結(jié)果。
10.2 尋址模式
支持立即尋址、直接尋址、擴展尋址、索引尋址、固有尋址和相對尋址六種尋址模式,部分指令需要預(yù)字節(jié)來擴展操作碼映射。
10.3 指令集
MC68HC11A8的CPU可執(zhí)行所有M6800和M6801指令,并新增91個操作碼。主要功能包括16位索引寄存器、16 x 16除法指令、STOP和WAIT指令以及位操作指令。
總結(jié)
Freescale的MC68HC11A8微控制器以其豐富的片上外設(shè)功能、低功耗特性和靈活的編程選項,為電子工程師提供了一個強大的開發(fā)平臺。在實際應(yīng)用中,工程師們可以根據(jù)具體需求選擇合適的操作模式和功能,充分發(fā)揮MC68HC11A8的優(yōu)勢,設(shè)計出高效、穩(wěn)定的嵌入式系統(tǒng)。同時,通過合理配置寄存器和使用相應(yīng)的開發(fā)工具,能夠進(jìn)一步提高開發(fā)效率和系統(tǒng)性能。希望本文對電子工程師們在使用MC68HC11A8進(jìn)行設(shè)計時有所幫助。
-
微控制器
+關(guān)注
關(guān)注
49文章
8744瀏覽量
165317 -
嵌入式系統(tǒng)
+關(guān)注
關(guān)注
41文章
3804瀏覽量
133813
發(fā)布評論請先 登錄
Freescale MC68HC11A8微控制器:功能剖析與應(yīng)用指南
評論