深入解析Microchip PIC16F8X系列微控制器
在電子工程領(lǐng)域,微控制器是眾多項(xiàng)目的核心組件,其性能和特性直接影響著整個(gè)系統(tǒng)的表現(xiàn)。今天,我們將深入探討Microchip的PIC16F8X系列微控制器,全面了解它的特點(diǎn)、架構(gòu)、應(yīng)用以及開發(fā)支持等方面。
文件下載:PIC16LF83-04/P.pdf
一、產(chǎn)品概述
PIC16F8X屬于PIC16CXX家族,是低成本、高性能、CMOS、全靜態(tài)的8位微控制器。該系列包含PIC16F83、PIC16F84、PIC16CR83、PIC16CR84等型號(hào),還有擴(kuò)展電壓范圍的PIC16LF8X和PIC16LCR8X。它采用先進(jìn)的RISC架構(gòu),具有增強(qiáng)的核心功能、八級(jí)深堆棧和多個(gè)內(nèi)外部中斷源。與同類型的8位微控制器相比,PIC16F8X通常能實(shí)現(xiàn)2:1的代碼壓縮和高達(dá)4:1的速度提升(在20 MHz時(shí))。
二、設(shè)備類型與特性
2.1 設(shè)備類型
根據(jù)設(shè)備編號(hào),有以下四種類型:
- F型:如PIC16F84,具有Flash程序內(nèi)存,在標(biāo)準(zhǔn)電壓范圍下工作。
- LF型:如PIC16LF84,有Flash程序內(nèi)存,可在擴(kuò)展電壓范圍下工作。
- CR型:如PIC16CR83,采用ROM程序內(nèi)存,工作于標(biāo)準(zhǔn)電壓范圍。
- LCR型:如PIC16LCR84,具備ROM程序內(nèi)存,能在擴(kuò)展電壓范圍運(yùn)行。
2.2 特性亮點(diǎn)
- Flash設(shè)備優(yōu)勢:Flash設(shè)備可擦除和重新編程,且采用低成本塑料封裝,適用于原型開發(fā)、試點(diǎn)項(xiàng)目和生產(chǎn)階段。還能通過電路內(nèi)或設(shè)備編程器進(jìn)行擦除和重新編程。
- QTP和SQTP服務(wù):Microchip提供QTP編程服務(wù),適用于代碼模式穩(wěn)定且不希望自行編程大量單元的用戶;SQTP服務(wù)則可在每個(gè)設(shè)備的特定位置編程不同的序列號(hào)。
- ROM設(shè)備特點(diǎn):部分設(shè)備的程序內(nèi)存為ROM,相比傳統(tǒng)的用戶可編程設(shè)備(如EPROM、EEPROM)能節(jié)省成本,但ROM設(shè)備(PIC16CR8X)的程序內(nèi)存空間不允許存儲(chǔ)序列化信息,用戶可將其編程到數(shù)據(jù)EEPROM中。
三、架構(gòu)剖析
3.1 哈佛架構(gòu)
PIC16CXX采用哈佛架構(gòu),程序和數(shù)據(jù)從不同的內(nèi)存中訪問,擁有獨(dú)立的程序內(nèi)存總線和數(shù)據(jù)內(nèi)存總線,這提高了帶寬,并且允許指令和8位寬的數(shù)據(jù)字大小不同。PIC16CXX的操作碼為14位寬,可實(shí)現(xiàn)單字指令。
3.2 指令執(zhí)行
通過兩級(jí)流水線,指令的取指和執(zhí)行重疊,除程序分支外,所有指令都能在一個(gè)周期內(nèi)執(zhí)行。PIC16F83和PIC16CR83可尋址512 x 14的程序內(nèi)存,PIC16F84和PIC16CR84可尋址1K x 14的程序內(nèi)存,且所有程序內(nèi)存均為內(nèi)部存儲(chǔ)。
3.3 寄存器與ALU
PIC16CXX包含一個(gè)8位的ALU和工作寄存器,ALU能執(zhí)行算術(shù)和布爾函數(shù),操作數(shù)通常為工作寄存器(W寄存器)和文件寄存器或立即常量。W寄存器用于ALU操作,不可尋址。ALU的操作可能會(huì)影響STATUS寄存器中的Carry(C)、Digit Carry(DC)和Zero(Z)位。
四、內(nèi)存組織
4.1 程序內(nèi)存
PIC16FXX的13位程序計(jì)數(shù)器可尋址8K x 14的程序內(nèi)存空間。PIC16F83和PIC16CR83實(shí)現(xiàn)了前512 x 14(0000h - 01FFh),PIC16F84和PIC16CR84實(shí)現(xiàn)了前1K x 14(0000h - 03FFh)。訪問超出物理實(shí)現(xiàn)地址的位置會(huì)導(dǎo)致回繞。
4.2 數(shù)據(jù)內(nèi)存
數(shù)據(jù)內(nèi)存分為特殊功能寄存器(SFR)區(qū)域和通用寄存器(GPR)區(qū)域。SFR控制設(shè)備的操作,部分?jǐn)?shù)據(jù)內(nèi)存采用分頁方式,通過STATUS寄存器中的控制位進(jìn)行銀行選擇。GPR區(qū)域允許超過116字節(jié)的通用RAM。
五、I/O端口
5.1 PORTA
PORTA是一個(gè)5位寬的鎖存器,RA4是施密特觸發(fā)器輸入和開漏輸出,其他RA端口引腳具有TTL輸入電平。所有引腳都有數(shù)據(jù)方向位(TRIS寄存器),可配置為輸入或輸出。
5.2 PORTB
PORTB是一個(gè)8位寬的雙向端口,每個(gè)引腳都有弱內(nèi)部上拉電阻,可通過單個(gè)控制位開啟。PORTB的四個(gè)引腳(RB7:RB4)具有變化中斷功能,可用于喚醒設(shè)備。
5.3 I/O編程注意事項(xiàng)
在使用雙向I/O端口時(shí),要注意讀寫操作的順序和引腳狀態(tài)的變化。連續(xù)對(duì)I/O端口進(jìn)行操作時(shí),要確保引腳電壓穩(wěn)定后再進(jìn)行下一次讀取操作,避免讀取到錯(cuò)誤的狀態(tài)。
六、定時(shí)器與中斷
6.1 Timer0模塊
Timer0模塊是一個(gè)8位的定時(shí)器/計(jì)數(shù)器,具有可讀可寫、8位軟件可編程預(yù)分頻器、內(nèi)部或外部時(shí)鐘選擇、溢出中斷等功能。定時(shí)器模式通過清除T0CS位選擇,計(jì)數(shù)器模式通過設(shè)置T0CS位選擇。
6.2 中斷系統(tǒng)
PIC16F8X有4個(gè)中斷源:外部RB0/INT引腳、TMR0定時(shí)器溢出、PORTB<7:4>變化中斷和數(shù)據(jù)EEPROM寫入完成中斷。中斷控制寄存器(INTCON)記錄中斷請(qǐng)求,并包含全局和單個(gè)中斷使能位。
七、特殊功能
7.1 配置位
配置位可用于選擇設(shè)備的各種配置,如程序內(nèi)存代碼保護(hù)、數(shù)據(jù)內(nèi)存代碼保護(hù)、上電定時(shí)器使能、看門狗定時(shí)器使能和振蕩器選擇等。
7.2 振蕩器配置
PIC16F8X可在四種不同的振蕩器模式下工作:LP(低功耗晶體)、XT(晶體/諧振器)、HS(高速晶體/諧振器)和RC(電阻/電容)。用戶可通過編程兩個(gè)配置位(FOSC1和FOSC0)來選擇。
7.3 復(fù)位機(jī)制
PIC16F8X有多種復(fù)位類型,包括上電復(fù)位(POR)、MCLR復(fù)位、WDT復(fù)位等。復(fù)位電路具有噪聲濾波器,部分寄存器在不同復(fù)位條件下有不同的復(fù)位狀態(tài)。
7.4 看門狗定時(shí)器(WDT)
WDT是一個(gè)獨(dú)立的片上RC振蕩器,無需外部組件。在正常操作中,WDT超時(shí)會(huì)產(chǎn)生設(shè)備復(fù)位;在SLEEP模式下,WDT喚醒會(huì)使設(shè)備繼續(xù)正常操作。WDT的超時(shí)周期可通過預(yù)分頻器進(jìn)行調(diào)整。
7.5 低功耗模式(SLEEP)
通過執(zhí)行SLEEP指令,設(shè)備可進(jìn)入低功耗模式。在SLEEP模式下,看門狗定時(shí)器被清除,振蕩器驅(qū)動(dòng)關(guān)閉,I/O端口保持之前的狀態(tài)。設(shè)備可通過外部復(fù)位、WDT喚醒或中斷事件從SLEEP模式中喚醒。
7.6 代碼保護(hù)與ID位置
代碼保護(hù)位可防止程序內(nèi)存被非法讀取,設(shè)備在代碼保護(hù)狀態(tài)下,CPU仍可讀寫數(shù)據(jù)EEPROM內(nèi)存。四個(gè)內(nèi)存位置(2000h - 2003h)被指定為ID位置,用于存儲(chǔ)校驗(yàn)和或其他代碼標(biāo)識(shí)號(hào)。
7.7 在線串行編程
PIC16F8X微控制器可在最終應(yīng)用電路中進(jìn)行編程,只需兩條線用于時(shí)鐘和數(shù)據(jù),以及另外三條線用于電源、接地和編程電壓。
八、指令集
PIC16CXX的指令集分為字節(jié)操作、位操作、文字和控制操作三類。所有指令通常在一個(gè)指令周期內(nèi)執(zhí)行,除非條件測試為真或程序計(jì)數(shù)器發(fā)生變化,此時(shí)需要兩個(gè)指令周期。
九、開發(fā)支持
Microchip為PIC16F8X提供了豐富的開發(fā)工具,包括PICMASTER實(shí)時(shí)在線仿真器、ICEPIC低成本在線仿真器、PRO MATE II通用編程器、PICSTART Plus入門級(jí)開發(fā)系統(tǒng)等,還有MPASM匯編器、MPLAB-SIM軟件模擬器、MPLAB-C17 C編譯器等軟件工具。
十、電氣特性
文檔詳細(xì)列出了PIC16F83/84和PIC16CR83/84的絕對(duì)最大額定值、DC特性、AC特性等,包括電源電壓范圍、電流消耗、輸入輸出電壓和電流等參數(shù),為工程師在設(shè)計(jì)電路時(shí)提供了重要的參考依據(jù)。
Microchip的PIC16F8X系列微控制器以其高性能、低功耗、豐富的功能和良好的開發(fā)支持,在眾多應(yīng)用領(lǐng)域具有廣泛的應(yīng)用前景。無論是高速汽車和家電電機(jī)控制,還是低功耗遠(yuǎn)程傳感器、電子鎖、安全設(shè)備和智能卡等應(yīng)用,PIC16F8X都能發(fā)揮出色的性能。作為電子工程師,深入了解和掌握這款微控制器的特性和使用方法,將有助于我們?cè)O(shè)計(jì)出更加優(yōu)秀的電子系統(tǒng)。你在使用PIC16F8X過程中遇到過哪些有趣的問題或挑戰(zhàn)呢?歡迎在評(píng)論區(qū)分享交流。
-
微控制器
+關(guān)注
關(guān)注
49文章
8671瀏覽量
165288
發(fā)布評(píng)論請(qǐng)先 登錄
深入解析Microchip PIC16F8X系列微控制器
評(píng)論