深入解析Microchip PIC16C5X系列8位CMOS微控制器
引言
在電子工程師的日常工作中,微控制器無疑是設計中頻繁使用的核心組件。Microchip的PIC16C5X系列8位CMOS微控制器以其低成本、高性能和豐富的特性脫穎而出。本文將深入探討PIC16C5X系列微控制器的各項特性,為電子工程師在實際項目設計中提供全面的參考。
文件下載:PIC16C56A-20I P.pdf
一、PIC16C5X系列概述
1.1 高性能RISC CPU架構
PIC16C5X系列采用高性能RISC架構,僅需學習33條單字指令,大部分指令單周期執行,僅程序分支為雙周期。這種架構使其執行效率大幅提升,相比同價位競品性能更優。其12位寬指令高度對稱,代碼壓縮比達2:1,顯著減少開發時間。
1.2 豐富外設特性與應用場景
該系列具備如實時時鐘/計數器(TMR0)、上電復位(POR)、看門狗定時器(WDT)等多種外設特性。適用于從高速汽車、家電電機控制到低功耗遙控收發器等廣泛應用場景。EPROM技術使應用程序定制快速便捷,小尺寸封裝適合空間受限應用。
1.3 產品類型多樣
PIC16C5X系列有多種設備類型,如含EPROM的C類型、擴展電壓范圍的LC類型、含ROM的CR類型以及擴展電壓且含ROM的LCR類型。還有UV可擦除設備用于原型開發,一次性可編程(OTP)設備適用于頻繁更改代碼或小批量應用,快速周轉生產(QTP)和序列化快速周轉生產(SQTP)設備適用于工廠生產,以及只讀存儲器(ROM)設備用于大批量成熟產品。
二、架構剖析
2.1 哈佛架構優勢
PIC16C5X采用哈佛架構,程序和數據通過獨立總線訪問,相比傳統馮·諾伊曼架構,顯著提高帶寬。程序和數據內存分離,使指令和數據字長可不同,12位寬指令實現單字指令,單周期完成12位指令提取。兩級流水線使指令提取和執行重疊,除程序分支外,所有指令單周期執行。
2.2 內存組織
2.2.1 程序內存
不同型號PIC16C5X程序內存容量不同,如PIC16C54/CR54和PIC16C55尋址512 x 12,PIC16C56/CR56尋址1K x 12,PIC16C57/CR57和PIC16C58/CR58尋址2K x 12。所有程序內存均為內部內存,訪問超出物理地址會回繞。
2.2.2 數據內存
數據內存由寄存器和RAM組成,分為特殊功能寄存器和通用寄存器。特殊功能寄存器包括TMR0、程序計數器(PC)、狀態寄存器等,用于控制設備操作;通用寄存器用于數據和控制信息存儲。不同型號數據內存組織有差異,部分型號采用存儲體方案擴展通用寄存器尋址范圍。
2.3 指令執行與流水線
指令周期由四個Q周期(Q1、Q2、Q3和Q4)組成。指令提取和執行采用流水線方式,提取占一個指令周期,解碼和執行占另一個指令周期,實際每條指令單周期執行。程序分支指令因需刷新流水線,需兩個周期完成。
三、振蕩器配置
3.1 振蕩器類型選擇
PIC16C5X可在四種振蕩器模式下工作,通過配置FOSC1:FOSC0兩位選擇:
- LP(低功耗晶體):適用于對功耗要求高的應用。
- XT(晶體/諧振器):標準晶體/諧振器模式,穩定性好。
- HS(高速晶體/諧振器):用于高速應用場景。
- RC(電阻/電容):成本低,適用于對定時精度要求不高的應用。
3.2 晶體振蕩器與陶瓷諧振器
在XT、LP或HS模式下,需將晶體或陶瓷諧振器連接到OSC1/CLKIN和OSC2/CLKOUT引腳。使用平行切割晶體,避免使用串聯切割晶體導致頻率超出規格。也可使用外部時鐘源驅動OSC1/CLKIN引腳。同時,不同頻率的晶體或諧振器需選擇合適的外部電容,可參考相關電容選擇表。
3.3 外部晶體振蕩器電路
可使用預封裝振蕩器或帶TTL門的簡單振蕩器電路作為外部晶體振蕩器。預封裝振蕩器工作范圍寬、穩定性好;設計良好的晶體振蕩器搭配TTL門也能提供良好性能,有并聯諧振和串聯諧振兩種電路類型。
3.4 RC振蕩器
RC振蕩器適用于對定時不敏感的應用,可節省成本。其頻率受電源電壓、電阻(REXT)、電容(CEXT)值和工作溫度影響,不同封裝的引腳框架電容差異也會影響頻率。建議REXT在3 kΩ - 100 kΩ之間,CEXT大于20 pF以保證穩定性。
四、復位機制
4.1 復位方式
PIC16C5X可通過多種方式復位:
- 上電復位(POR):芯片內置POR電路,多數上電情況提供內部復位,將MCLR/VPP引腳連接到VDD即可使用。
- MCLR復位:正常操作和從SLEEP喚醒時可使用MCLR引腳復位。
- 看門狗定時器復位(WDT):正常操作和從SLEEP喚醒時,WDT超時會觸發復位。
4.2 上電復位細節
POR電路與設備復位定時器(DRT)密切相關。上電時,復位鎖存器置位,DRT復位并開始計數,約18 ms超時后復位鎖存器復位,結束內部復位信號。若VDD上電過慢,可能需外部RC電路延長POR延遲時間。
4.3 欠壓復位
設備電源(VDD)下降但未到零又恢復時,需進行復位。可構建外部欠壓保護電路,如使用齊納二極管、晶體管或Microchip的MCP809微控制器監控器。
五、I/O端口
5.1 I/O端口概述
I/O寄存器可通過程序控制讀寫,復位時所有I/O端口設為輸入。PORTA為4位I/O寄存器,PORTB為8位I/O寄存器,PORTC在部分型號為I/O寄存器,部分為通用寄存器。
5.2 TRIS寄存器
TRIS寄存器用于控制I/O端口輸出驅動。執行TRIS f指令將W寄存器內容加載到TRIS寄存器,'1'使對應輸出驅動為高阻態(輸入模式),'0'使輸出數據鎖存器內容輸出到選定引腳。
5.3 I/O編程注意事項
5.3.1 雙向I/O端口
部分指令為讀-修改-寫操作,應用于雙向I/O端口時需謹慎。如對PORTB某位置位操作,會讀取整個PORTB到CPU,修改后寫回,可能覆蓋其他引腳輸入信號。
5.3.2 連續操作
對I/O端口寫操作在指令周期結束時發生,讀操作需數據在指令周期開始時有效。因此,寫后讀操作需確保引腳電壓穩定,可插入NOP指令。
六、Timer0模塊
6.1 Timer0模塊特性
Timer0模塊具有8位定時器/計數器寄存器TMR0,可讀可寫;8位軟件可編程預分頻器;可選擇內部或外部時鐘源,外部時鐘源可選擇上升或下降沿觸發。
6.2 外部時鐘使用
使用外部時鐘源時,需滿足一定要求。無預分頻器時,T0CKI需高、低電平至少2TOSC(含20 ns RC延遲);有預分頻器時,T0CKI周期至少為4TOSC(含40 ns RC延遲)除以預分頻值,且高、低電平不低于10 ns。
6.3 預分頻器操作
預分頻器可分配給Timer0模塊或看門狗定時器(WDT),但不能同時使用。通過PSA和PS<2:0>位控制預分頻器分配和分頻比。分配給Timer0模塊時,寫TMR0寄存器會清除預分頻器;分配給WDT時,CLRWDT指令會清除預分頻器和WDT。
七、CPU特殊特性
7.1 配置位
配置位用于選擇設備配置,包括振蕩器類型選擇和看門狗定時器使能位,部分設備還有代碼保護位。
7.2 看門狗定時器(WDT)
WDT是獨立的片上RC振蕩器,即使主時鐘停止仍可運行。可通過配置位WDTE永久禁用。無預分頻器時,WDT標稱超時周期為18 ms,可通過預分頻器延長超時周期。CLRWDT指令可清除WDT和預分頻器,SLEEP指令會復位WDT和預分頻器。
7.3 掉電模式(SLEEP)
執行SLEEP指令進入掉電模式,WDT清零但繼續運行,TO位置位,PD位清零,振蕩器驅動關閉,I/O端口保持原有狀態。可通過外部復位或WDT超時喚醒,喚醒時WDT清零。
7.4 程序驗證與代碼保護
未編程代碼保護位時,可讀取片上程序內存進行驗證。不建議對開窗設備進行代碼保護。
7.5 ID位置
四個內存位置作為ID位置,可存儲校驗和或代碼識別號,正常執行時不可訪問,編程/驗證時可讀可寫。
八、指令集
8.1 指令分類
PIC16C5X指令集分為字節操作、位操作、立即數和控制操作。所有指令單周期執行,條件測試為真或程序計數器改變時需兩個周期。
8.2 指令示例
以ADDWF指令為例,將W寄存器和指定寄存器內容相加,結果可存儲在W寄存器或指定寄存器中,影響C、DC、Z狀態位。
九、開發支持
9.1 開發工具
PIC16C5X系列有豐富的開發工具,包括集成開發環境(MPLAB IDE)、匯編器/編譯器/鏈接器(MPASM、MPLAB C17和C18)、模擬器(MPLAB SIM)、仿真器(MPLAB ICE、ICEPIC)、在線調試器(MPLAB ICD)、設備編程器(PRO MATE II、PICSTART Plus)和低成本演示板(PICDEM 1、2、3、17)等。
9.2 MPLAB IDE
MPLAB IDE是基于Windows的應用程序,提供調試工具接口、全功能編輯器、項目管理器等,支持編輯、編譯、下載和調試代碼,方便開發者在不同調試工具間切換。
十、電氣特性
10.1 絕對最大額定值
不同型號PIC16C5X有相應的絕對最大額定值,包括環境溫度、存儲溫度、電壓、功耗、電流等限制,超出這些限制可能導致設備永久損壞。
10.2 DC特性
不同溫度范圍(商業、工業、擴展)下,PIC16C5X的DC特性不同,包括電源電壓、RAM數據保留電壓、上電復位電壓和上升速率、電源電流、掉電電流等。
10.3 交流特性
交流特性包括外部時鐘頻率、周期、時鐘高低時間、上升下降時間等,不同振蕩器模式下要求不同。
十一、封裝信息
PIC16C5X有多種封裝類型,如18引腳PDIP、28引腳PDIP、18引腳SOIC、28引腳SOIC、20引腳SSOP、28引腳SSOP、18引腳CERDIP窗口封裝和28引腳CERDIP窗口封裝等,每種封裝有詳細的尺寸和引腳信息。
總結
Microchip的PIC16C5X系列8位CMOS微控制器憑借其高性能RISC架構、豐富的外設特性、多樣的設備類型和全面的開發支持,成為電子工程師在各種應用場景中的理想選擇。在實際設計中,工程師需根據具體需求選擇合適的型號和配置,充分發揮其優勢,同時注意各項電氣特性和編程注意事項,確保設計的穩定性和可靠性。你在使用PIC16C5X系列微控制器過程中遇到過哪些問題呢?歡迎在評論區分享交流。
-
微控制器
+關注
關注
48文章
8543瀏覽量
165205 -
電子設計
+關注
關注
42文章
2289瀏覽量
49902
發布評論請先 登錄
8位微控制器 -MCU ?PIC16F1503-I/SL
深入解析Microchip PIC16C5X系列8位CMOS微控制器
評論