PIC16C62X:低成本高性能8位CMOS微控制器的卓越之選
在電子工程師的設(shè)計(jì)世界里,選擇一款合適的微控制器至關(guān)重要。PIC16C62X系列微控制器憑借其低成本、高性能等諸多優(yōu)勢,成為眾多應(yīng)用場景的理想之選。今天,我們就來深入了解一下這款微控制器。
一、產(chǎn)品概述
PIC16C62X是PICmicro?家族中18和20引腳的基于ROM/EPROM的8位CMOS微控制器。它采用先進(jìn)的RISC架構(gòu),擁有增強(qiáng)的核心功能、8級深度堆棧以及多個(gè)內(nèi)部和外部中斷源。與傳統(tǒng)8位微控制器相比,PIC16C62X通常能實(shí)現(xiàn)2:1的代碼壓縮和4:1的速度提升。
產(chǎn)品特點(diǎn)
- 高性能RISC CPU:僅需學(xué)習(xí)35條指令,除程序分支為雙周期外,其余均為單周期指令(200 ns),工作速度范圍為DC - 40 MHz時(shí)鐘輸入,DC - 100 ns指令周期。
- 豐富的外設(shè)功能:具備4個(gè)用戶可編程ID位置、13個(gè)I/O引腳,每個(gè)引腳可單獨(dú)控制方向。還集成了兩個(gè)模擬比較器和可編程片上電壓參考模塊,適用于低成本模擬接口應(yīng)用。
- 低功耗設(shè)計(jì):采用CMOS技術(shù),具有高電流吸收/源能力,可直接驅(qū)動LED,功耗低,工作電壓范圍為2.5V - 5.5V,在5.0V、4.0 MHz條件下,功耗小于2.0 mA。
- 特殊功能:擁有上電復(fù)位(POR)、上電定時(shí)器(PWRT)、振蕩器啟動定時(shí)器(OST)、欠壓復(fù)位、看門狗定時(shí)器(WDT)、中斷功能、可編程代碼保護(hù)、16個(gè)特殊功能硬件寄存器、省電SLEEP模式、8級深度硬件堆棧、可選振蕩器選項(xiàng)以及直接、間接和相對尋址模式等。
產(chǎn)品型號差異
PIC16C62X系列包含多個(gè)型號,如PIC16C620、PIC16C620A、PIC16CR620A等。不同型號在程序內(nèi)存、數(shù)據(jù)內(nèi)存、時(shí)鐘頻率、電壓范圍和工藝技術(shù)等方面存在差異。例如,PIC16C620的程序內(nèi)存為512 x 14,數(shù)據(jù)內(nèi)存為80 x 8;而PIC16C622A的程序內(nèi)存為2K x 14,數(shù)據(jù)內(nèi)存為128 x 8。
二、架構(gòu)剖析
哈佛架構(gòu)優(yōu)勢
PIC16C62X采用哈佛架構(gòu),程序和數(shù)據(jù)通過獨(dú)立的總線從不同的內(nèi)存中訪問,與傳統(tǒng)的馮·諾依曼架構(gòu)相比,提高了帶寬。指令操作碼為14位寬,使得所有指令均為單字指令,14位寬的程序內(nèi)存訪問總線可在單周期內(nèi)獲取14位指令。雙階段指令流水線實(shí)現(xiàn)了指令的取指和執(zhí)行重疊,除程序分支外,所有35條指令均可在單周期內(nèi)執(zhí)行。
指令執(zhí)行流程
時(shí)鐘輸入(OSC1/CLKIN引腳)在內(nèi)部被4分頻,生成4個(gè)非重疊的正交時(shí)鐘Q1、Q2、Q3和Q4。程序計(jì)數(shù)器(PC)在Q1時(shí)遞增,指令在Q4時(shí)從程序內(nèi)存中取出并鎖存到指令寄存器,隨后在Q1 - Q4期間進(jìn)行解碼和執(zhí)行。
三、內(nèi)存組織
程序內(nèi)存
PIC16C62X擁有13位程序計(jì)數(shù)器,可尋址8K x 14的程序內(nèi)存空間,但不同型號實(shí)際實(shí)現(xiàn)的內(nèi)存大小不同。例如,PIC16C620(A)和PIC16CR620僅實(shí)現(xiàn)了前512 x 14(0000h - 01FFh),PIC16C621(A)實(shí)現(xiàn)了1K x 14(0000h - 03FFh),PIC16C622(A)實(shí)現(xiàn)了2K x 14(0000h - 07FFh)。復(fù)位向量位于0000h,中斷向量位于0004h。
數(shù)據(jù)內(nèi)存
數(shù)據(jù)內(nèi)存分為兩個(gè)存儲體,包含通用寄存器和特殊功能寄存器。Bank 0通過清除RP0位選擇,Bank 1通過設(shè)置RP0位(STATUS <5>)選擇。特殊功能寄存器位于每個(gè)存儲體的前32個(gè)位置,通用寄存器則根據(jù)不同型號有所不同。
四、I/O端口
PIC16C62X有PORTA和PORTB兩個(gè)端口,部分引腳與外設(shè)功能復(fù)用。
PORTA
PORTA是5位寬的鎖存器,RA4為施密特觸發(fā)器輸入和開漏輸出,與T0CKI時(shí)鐘輸入復(fù)用。所有RA端口引腳均具有施密特觸發(fā)器輸入電平,除RA4外,其他引腳具有完整的CMOS輸出驅(qū)動器。數(shù)據(jù)方向由TRISA寄存器控制,寫入PORTA寄存器會將值寫入端口鎖存器,讀取則讀取引腳狀態(tài)。
PORTB
PORTB是8位寬的雙向端口,數(shù)據(jù)方向由TRISB寄存器控制。每個(gè)PORTB引腳都有內(nèi)部弱上拉電阻,可通過清除RBPU(OPTION<7>)位開啟。PORTB的4個(gè)引腳(RB<7:4>)具有電平變化中斷功能,可用于喚醒設(shè)備。
I/O編程注意事項(xiàng)
在進(jìn)行I/O端口編程時(shí),需要注意讀寫操作的順序和方式。任何寫操作都是先讀再寫,因此在對既有輸入又有輸出的端口使用BCF和BSF等指令時(shí)要格外小心。同時(shí),在進(jìn)行連續(xù)的寫讀操作時(shí),要確保引腳電壓穩(wěn)定,避免讀取到舊狀態(tài)。
五、定時(shí)器模塊
Timer0模塊特點(diǎn)
Timer0模塊是一個(gè)8位定時(shí)器/計(jì)數(shù)器,可讀可寫,具有8位軟件可編程預(yù)分頻器,可選擇內(nèi)部或外部時(shí)鐘,溢出時(shí)會產(chǎn)生中斷。
定時(shí)器模式
通過清除T0CS位(OPTION<5>)選擇定時(shí)器模式,此時(shí)TMR0將在每個(gè)指令周期遞增(無預(yù)分頻器)。寫入TMR0時(shí),接下來的兩個(gè)周期內(nèi)遞增將被抑制。
計(jì)數(shù)器模式
通過設(shè)置T0CS位選擇計(jì)數(shù)器模式,此時(shí)Timer0將在RA4/T0CKI引腳的上升或下降沿遞增,遞增邊沿由T0SE控制位(OPTION<4>)決定。
預(yù)分頻器
預(yù)分頻器在Timer0模塊和看門狗定時(shí)器之間共享,由PSA控制位(OPTION<3>)分配。分配給Timer0模塊時(shí),可選擇1:2 - 1:256的預(yù)分頻值。
六、比較器模塊
比較器配置
比較器模塊包含兩個(gè)模擬比較器,輸入與RA0 - RA3引腳復(fù)用,片上電壓參考模塊也可作為輸入。通過CMCON寄存器選擇8種不同的操作模式,TRISA寄存器控制比較器引腳的數(shù)據(jù)方向。
比較器操作
當(dāng)模擬輸入VIN+小于VIN-時(shí),比較器輸出為數(shù)字低電平;當(dāng)VIN+大于VIN-時(shí),輸出為數(shù)字高電平。比較器輸出可通過CMCON寄存器讀取,也可直接輸出到RA3和RA4 I/O引腳。
比較器中斷
比較器輸出值發(fā)生變化時(shí),比較器中斷標(biāo)志位CMIF(PIR1<6>)會被置位。要啟用中斷,需設(shè)置CMIE位(PIE1<6>)、PEIE位(INTCON<6>)和GIE位。在中斷服務(wù)程序中,可通過讀取或?qū)懭隒MCON寄存器或清除CMIF位來清除中斷。
七、電壓參考模塊
配置與輸出
電壓參考模塊是一個(gè)16抽頭的電阻梯形網(wǎng)絡(luò),可提供16種不同的電壓參考。通過VRCON寄存器控制操作,根據(jù)VRR位的不同,輸出電壓的計(jì)算公式也不同。
精度與誤差
由于模塊的結(jié)構(gòu)限制,無法實(shí)現(xiàn)VSS到VDD的全范圍輸出。電壓參考由VDD派生,因此VREF輸出會隨VDD的波動而變化。
睡眠模式與復(fù)位影響
設(shè)備從睡眠模式喚醒時(shí),VRCON寄存器的內(nèi)容不變。為了降低睡眠模式下的電流消耗,應(yīng)禁用電壓參考。設(shè)備復(fù)位時(shí),會禁用電壓參考,斷開RA2引腳的連接,并選擇高電壓范圍。
八、CPU特殊功能
配置位
配置位位于程序內(nèi)存位置2007h,可通過編程或不編程來選擇不同的設(shè)備配置,包括代碼保護(hù)、欠壓復(fù)位、上電定時(shí)器、看門狗定時(shí)器和振蕩器選擇等。
振蕩器配置
PIC16C62X支持4種振蕩器選項(xiàng):LP低功耗晶體、XT晶體/諧振器、HS高速晶體/諧振器和RC電阻/電容。用戶可通過編程FOSC1和FOSC0配置位來選擇。
復(fù)位機(jī)制
PIC16C62X可區(qū)分多種復(fù)位類型,如上電復(fù)位(POR)、MCLR復(fù)位、看門狗定時(shí)器復(fù)位和欠壓復(fù)位等。不同復(fù)位類型對寄存器的影響不同,可通過STATUS和PCON寄存器中的位來確定復(fù)位的性質(zhì)。
中斷功能
PIC16C62X有4個(gè)中斷源:外部中斷RB0/INT、TMR0溢出中斷、PORTB變化中斷和比較器中斷。中斷控制寄存器(INTCON)記錄中斷請求,全局中斷使能位GIE(INTCON<7>)可啟用或禁用所有未屏蔽的中斷。
看門狗定時(shí)器
看門狗定時(shí)器是一個(gè)獨(dú)立的片上RC振蕩器,無需外部組件。在正常操作中,看門狗定時(shí)器超時(shí)會導(dǎo)致設(shè)備復(fù)位;在睡眠模式下,超時(shí)會使設(shè)備喚醒并繼續(xù)正常操作。可通過編程WDTE配置位永久禁用看門狗定時(shí)器。
睡眠模式
通過執(zhí)行SLEEP指令進(jìn)入睡眠模式,此時(shí)看門狗定時(shí)器會被清除但繼續(xù)運(yùn)行,振蕩器驅(qū)動關(guān)閉,I/O端口保持睡眠前的狀態(tài)。設(shè)備可通過外部復(fù)位、看門狗定時(shí)器喚醒或中斷喚醒。
代碼保護(hù)與ID位置
代碼保護(hù)位可對程序內(nèi)存進(jìn)行保護(hù),不建議對帶窗口的設(shè)備進(jìn)行代碼保護(hù)。四個(gè)內(nèi)存位置(2000h - 2003h)被指定為ID位置,可用于存儲校驗(yàn)和或其他代碼標(biāo)識號。
在線串行編程
PIC16C62X微控制器可在最終應(yīng)用電路中進(jìn)行串行編程,只需使用兩條線進(jìn)行時(shí)鐘和數(shù)據(jù)傳輸,以及另外三條線提供電源、接地和編程電壓。
九、指令集
PIC16C62X的指令集分為字節(jié)操作、位操作、文字和控制操作三類,所有指令均為14位字,除條件測試為真或程序計(jì)數(shù)器改變外,均在單指令周期內(nèi)執(zhí)行。指令集高度正交,易于編程和學(xué)習(xí)。
十、開發(fā)支持
Microchip為PIC16C62X提供了豐富的硬件和軟件開發(fā)工具,包括集成開發(fā)環(huán)境(MPLAB? IDE)、匯編器(MPASM?)、編譯器(MPLAB C17、MPLAB C18、MPLAB C30)、鏈接器(MPLINKTM)、模擬器(MPLAB SIM、MPLAB SIM30)、仿真器(MPLAB ICE 2000、MPLAB ICE 4000)、在線調(diào)試器(MPLAB ICD 2)、設(shè)備編程器(PRO MATE? II、PICSTART? Plus)以及各種演示板和評估套件。
十一、電氣規(guī)格
文檔詳細(xì)給出了PIC16C62X的絕對最大額定值、DC特性和AC特性,包括電壓、電流、頻率等參數(shù),為工程師在設(shè)計(jì)電路時(shí)提供了重要的參考依據(jù)。
十二、封裝信息
PIC16C62X提供多種封裝形式,如18引腳陶瓷雙列直插式封裝(CERDIP)、18引腳塑料雙列直插式封裝(PDIP)、18引腳塑料小外形封裝(SOIC)和20引腳塑料收縮小外形封裝(SSOP),滿足不同應(yīng)用場景的需求。
PIC16C62X微控制器以其高性能、低功耗、豐富的外設(shè)功能和良好的開發(fā)支持,為電子工程師提供了一個(gè)強(qiáng)大而靈活的設(shè)計(jì)平臺。在實(shí)際應(yīng)用中,工程師可根據(jù)具體需求選擇合適的型號和配置,充分發(fā)揮其優(yōu)勢,實(shí)現(xiàn)各種復(fù)雜的功能。你在使用PIC16C62X過程中遇到過哪些問題呢?歡迎在評論區(qū)分享你的經(jīng)驗(yàn)和見解。
-
微控制器
+關(guān)注
關(guān)注
49文章
8890瀏覽量
165890 -
PIC16C62X
+關(guān)注
關(guān)注
0文章
7瀏覽量
5282
發(fā)布評論請先 登錄
PIC16C62X:低成本高性能8位CMOS微控制器的卓越之選
評論