PIC16C925/926微控制器:設(shè)計(jì)中的利器
在電子設(shè)計(jì)的領(lǐng)域里,一款性能卓越、功能豐富的微控制器往往是項(xiàng)目成功的關(guān)鍵。今天,我們就來深入探討Microchip的PIC16C925/926微控制器,看看它有哪些獨(dú)特之處,能為我們的設(shè)計(jì)帶來怎樣的便利。
文件下載:PIC16LC925T-I/PT.pdf
1. 器件概述
PIC16C925/926系列屬于PIC16CXXX中低端系列的低功耗、高性能、全靜態(tài)8位微控制器,集成了LCD驅(qū)動(dòng)模塊。該系列有兩種類型,“C”型工作在標(biāo)準(zhǔn)電壓范圍,“LC”型則能適應(yīng)更寬的電壓范圍。它們有64引腳和68引腳封裝,以及裸片形式,不同配置在功能上基本一致,只是PIC16C926在EPROM程序內(nèi)存和數(shù)據(jù)內(nèi)存上更具優(yōu)勢(shì)。
1.1 主要特性
這兩款微控制器具備諸多出色特性。高性能RISC CPU僅需學(xué)習(xí)35條單字指令,除程序分支需兩個(gè)周期外,其余指令均為單周期執(zhí)行,工作速度范圍為DC - 20 MHz時(shí)鐘輸入,DC - 200 ns指令周期。內(nèi)存方面,PIC16C925有4K x 14位的EPROM程序內(nèi)存和176字節(jié)數(shù)據(jù)內(nèi)存,PIC16C926則達(dá)到8K x 14位的EPROM程序內(nèi)存和336字節(jié)數(shù)據(jù)內(nèi)存。
外設(shè)功能也十分強(qiáng)大,擁有25個(gè)I/O引腳,具備獨(dú)立的方向控制,還有25 - 27個(gè)僅用于輸入的引腳。具備多個(gè)定時(shí)器模塊,如8位的Timer0、16位的Timer1和帶預(yù)分頻器和后分頻器的8位Timer2。還有捕獲/比較/PWM模塊、同步串行端口模塊(支持SPI和I2C模式)、10位5通道的模數(shù)轉(zhuǎn)換器以及可編程的LCD時(shí)序模塊。
特殊功能同樣實(shí)用,包括上電復(fù)位、上電定時(shí)器、振蕩器啟動(dòng)定時(shí)器、看門狗定時(shí)器、可編程代碼保護(hù)、可選振蕩器選項(xiàng)和在線串行編程等。采用CMOS技術(shù),低功耗、高速,工作電壓范圍寬,適用于商業(yè)和工業(yè)溫度范圍。
2. 內(nèi)存組織
2.1 程序內(nèi)存組織
PIC16C925/926的程序計(jì)數(shù)器為13位,可尋址8K x 14的程序內(nèi)存空間。PIC16C925僅物理實(shí)現(xiàn)了前4K x 14(0000h - 0FFFh),超出部分會(huì)回繞。復(fù)位向量位于0000h,中斷向量在0004h。
2.2 數(shù)據(jù)內(nèi)存組織
數(shù)據(jù)內(nèi)存分為四個(gè)存儲(chǔ)體,包含通用寄存器和特殊功能寄存器。通過STATUS寄存器的RP1和RP0位進(jìn)行存儲(chǔ)體選擇。部分通用寄存器未物理實(shí)現(xiàn),用于跨存儲(chǔ)體的通用訪問。
2.3 特殊功能寄存器
特殊功能寄存器分為核心和外設(shè)兩類。核心相關(guān)的寄存器如STATUS、OPTION、INTCON等,用于控制CPU的狀態(tài)和操作;外設(shè)相關(guān)的寄存器則用于控制各個(gè)外設(shè)模塊的功能。
3. I/O端口
PIC16C925/926的I/O端口部分引腳與外設(shè)功能復(fù)用。當(dāng)外設(shè)啟用時(shí),對(duì)應(yīng)引腳不能作為通用I/O引腳。
3.1 PORTA和TRISA寄存器
RA4/T0CKI引腳為施密特觸發(fā)輸入和開漏輸出,其他RA端口引腳為TTL輸入電平和全CMOS輸出驅(qū)動(dòng)器。TRISA寄存器控制RA引腳的方向,RA4還可作為Timer0模塊的時(shí)鐘輸入,其他RA引腳可作為模擬輸入和模擬VREF輸入。
3.2 PORTB和TRISB寄存器
PORTB是8位雙向端口,TRISB寄存器控制其方向。PORTB引腳有內(nèi)部弱上拉,可通過OPTION寄存器的RBPU位控制。部分PORTB引腳(RB7 - RB4)具有電平變化中斷功能,可用于喚醒設(shè)備。
3.3 PORTC和TRISC寄存器
PORTC是6位雙向端口,每個(gè)引腳可通過TRISC寄存器獨(dú)立配置為輸入或輸出。PORTC引腳與多個(gè)外設(shè)功能復(fù)用,使用時(shí)需注意TRIS位的設(shè)置。
3.4 PORTD和TRISD寄存器
PORTD是8位端口,前五個(gè)引腳可配置為通用I/O引腳或LCD段驅(qū)動(dòng)器,RD5、RD6和RD7可作為數(shù)字輸入、LCD段或公共驅(qū)動(dòng)器。TRISD控制PORTD作為數(shù)字端口時(shí)引腳的方向。
3.5 PORTE、PORTF和PORTG
這三個(gè)端口均為僅數(shù)字輸入端口,每個(gè)引腳與LCD段驅(qū)動(dòng)器復(fù)用。要將引腳配置為數(shù)字端口,需清除LCDSE寄存器的相應(yīng)位。
3.6 I/O編程注意事項(xiàng)
在使用I/O端口時(shí),讀寫操作實(shí)際上是先讀再寫,因此在對(duì)既有輸入又有輸出的端口使用讀 - 修改 - 寫指令時(shí)需謹(jǐn)慎。連續(xù)對(duì)I/O端口進(jìn)行寫和讀操作時(shí),要確保引腳電壓穩(wěn)定,必要時(shí)可插入NOP指令。
4. 定時(shí)器模塊
4.1 Timer0模塊
Timer0是8位定時(shí)器/計(jì)數(shù)器,可讀可寫,具有8位軟件可編程預(yù)分頻器,可選擇內(nèi)部或外部時(shí)鐘源,溢出時(shí)可產(chǎn)生中斷。在定時(shí)器模式下,每指令周期遞增;計(jì)數(shù)器模式下,根據(jù)RA4/T0CKI引腳的邊沿變化遞增。預(yù)分頻器可在Timer0和看門狗定時(shí)器之間共享。
4.2 Timer1模塊
Timer1是16位定時(shí)器/計(jì)數(shù)器,由TMR1H和TMR1L兩個(gè)8位寄存器組成??晒ぷ髟诙〞r(shí)器或計(jì)數(shù)器模式,通過TMR1CS位選擇。在定時(shí)器模式下,每指令周期遞增;計(jì)數(shù)器模式下,在外部時(shí)鐘輸入的上升沿遞增。還可通過T1OSCEN位啟用內(nèi)部振蕩器,該振蕩器在SLEEP模式下可繼續(xù)運(yùn)行。
4.3 Timer2模塊
Timer2是8位定時(shí)器,帶有預(yù)分頻器和后分頻器,可作為CCP模塊PWM模式的時(shí)基,也可作為主模式SPI時(shí)鐘的時(shí)基。TMR2寄存器可讀可寫,在設(shè)備復(fù)位時(shí)清零。
5. 捕獲/比較/PWM(CCP)模塊
CCP模塊包含一個(gè)16位寄存器,可作為捕獲寄存器、比較寄存器或PWM主/從占空比寄存器。
5.1 捕獲模式
在捕獲模式下,CCPR1H:CCPR1L捕獲TMR1寄存器的16位值,可選擇不同的觸發(fā)邊沿。捕獲時(shí),中斷請(qǐng)求標(biāo)志位CCP1IF置位,需軟件清除。
5.2 比較模式
比較模式下,16位CCPR1寄存器值與TMR1寄存器對(duì)的值不斷比較,根據(jù)CCP1M3:CCP1M0位的設(shè)置,對(duì)RC2/CCP1引腳進(jìn)行相應(yīng)操作,并產(chǎn)生比較中斷。
5.3 PWM模式
PWM模式下,CCP1引腳可產(chǎn)生最高10位分辨率的PWM輸出。PWM周期由PR2寄存器設(shè)置,占空比由CCPR1L寄存器和CCP1CON<5:4>位指定。
6. 同步串行端口(SSP)模塊
SSP模塊可用于與其他外設(shè)或微控制器通信,支持SPI和I2C兩種模式。
6.1 SPI模式
SPI模式可同步傳輸和接收8位數(shù)據(jù),通常使用三個(gè)引腳(SDO、SDI、SCK),在從模式下還可使用第四個(gè)引腳(SS)。通過配置SSPCON和SSPSTAT寄存器的控制位,可指定主/從模式、時(shí)鐘極性、時(shí)鐘邊沿、時(shí)鐘速率和從選擇模式。
6.2 I2C模式
I2C模式采用兩線串行接口,遵循全面的協(xié)議確保數(shù)據(jù)可靠傳輸。設(shè)備有地址,主設(shè)備發(fā)起數(shù)據(jù)傳輸,產(chǎn)生時(shí)鐘信號(hào)。SSP模塊實(shí)現(xiàn)了除通用調(diào)用支持外的所有從功能,并在硬件上提供START和STOP位中斷,方便實(shí)現(xiàn)主功能。
7. 模數(shù)轉(zhuǎn)換器(A/D)模塊
A/D轉(zhuǎn)換器模塊有五個(gè)輸入,通過逐次逼近產(chǎn)生10位數(shù)字結(jié)果。可在SLEEP模式下工作,但A/D時(shí)鐘需來自內(nèi)部RC振蕩器。通過ADCON0和ADCON1寄存器控制操作和端口引腳功能。
8. LCD模塊
LCD模塊可驅(qū)動(dòng)靜態(tài)或多路復(fù)用LCD面板,支持最多32段和4個(gè)公共端。通過LCDCON、LCDSE和LCDPS控制寄存器定義LCD面板的時(shí)序要求,通過LCDD00 - LCDD15寄存器控制像素?cái)?shù)據(jù)。
9. 特殊功能
9.1 配置位
配置位可選擇設(shè)備的各種配置,如振蕩器類型、是否啟用上電定時(shí)器、看門狗定時(shí)器和欠壓復(fù)位等。
9.2 振蕩器配置
支持四種振蕩器模式:LP(低功耗晶體)、XT(晶體/諧振器)、HS(高速晶體/諧振器)和RC(電阻/電容)。不同模式下,需根據(jù)晶體或諧振器的特性選擇合適的外部元件。
9.3 復(fù)位
PIC16C925/926可區(qū)分多種復(fù)位類型,如上電復(fù)位、MCLR復(fù)位、看門狗定時(shí)器復(fù)位和欠壓復(fù)位。部分寄存器在復(fù)位時(shí)不受影響,部分寄存器會(huì)復(fù)位到特定狀態(tài)。
9.4 中斷
該系列有九個(gè)中斷源,包括外部中斷、定時(shí)器溢出中斷、端口變化中斷等。中斷控制寄存器記錄中斷請(qǐng)求,通過全局中斷使能位GIE控制所有未屏蔽的中斷。
9.5 看門狗定時(shí)器(WDT)
WDT是片上自由運(yùn)行的RC振蕩器,可在設(shè)備正常運(yùn)行時(shí)產(chǎn)生復(fù)位,在SLEEP模式下喚醒設(shè)備。可通過配置位WDTE永久禁用。
9.6 掉電模式(SLEEP)
執(zhí)行SLEEP指令進(jìn)入掉電模式,此時(shí)看門狗定時(shí)器清零但繼續(xù)運(yùn)行,PD位清零,TO位置位,振蕩器驅(qū)動(dòng)器關(guān)閉。設(shè)備可通過外部復(fù)位、看門狗定時(shí)器喚醒或中斷喚醒。
9.7 程序驗(yàn)證/代碼保護(hù)
未編程代碼保護(hù)位時(shí),可讀取片上程序內(nèi)存進(jìn)行驗(yàn)證。
9.8 ID位置
四個(gè)內(nèi)存位置(2000h - 2003h)可用于存儲(chǔ)校驗(yàn)和或其他代碼標(biāo)識(shí)號(hào),正常執(zhí)行時(shí)不可訪問,編程/驗(yàn)證時(shí)可讀可寫。
9.9 在線串行編程
PIC16CXXX微控制器可在最終應(yīng)用電路中進(jìn)行串行編程,只需兩條時(shí)鐘和數(shù)據(jù)線,以及電源、地和編程電壓線。
10. 開發(fā)支持
Microchip為PIC微控制器提供了豐富的硬件和軟件開發(fā)工具,包括集成開發(fā)環(huán)境、匯編器/編譯器/鏈接器、模擬器、仿真器、在線調(diào)試器、設(shè)備編程器和低成本演示板等,方便開發(fā)者進(jìn)行開發(fā)和調(diào)試。
PIC16C925/926微控制器憑借其豐富的功能、高性能和低功耗等特點(diǎn),在電子設(shè)計(jì)中具有廣泛的應(yīng)用前景。無論是工業(yè)控制、消費(fèi)電子還是其他領(lǐng)域,它都能為我們的設(shè)計(jì)帶來更多的可能性。作為電子工程師,我們可以充分利用其特性,開發(fā)出更加優(yōu)秀的產(chǎn)品。大家在使用過程中有什么問題或者經(jīng)驗(yàn),歡迎在評(píng)論區(qū)分享交流。
-
微控制器
+關(guān)注
關(guān)注
49文章
8779瀏覽量
165342 -
電子設(shè)計(jì)
+關(guān)注
關(guān)注
42文章
2526瀏覽量
49906
發(fā)布評(píng)論請(qǐng)先 登錄
PIC16C925/926微控制器:設(shè)計(jì)中的利器
評(píng)論