PIC單片機的特點及應用
1 概述
本文引用地址:http://cafeforensic.com/article/78549.htmMicrochip公司生產的PIC16C72是一款基于EPROM的8位高性能微控制器。與其它價格相當的微控制器相比,它在執(zhí)行速度和代碼壓縮方面都有很大的改進。由于隨時可以買到需要的OPT(一次性編程)產品,因而縮短了利用PIC16C73進行產品設計開發(fā)的周期。
PIC16C73微控制器所具有的優(yōu)越性能主要歸功于它的精簡指令集(RISC)和所采用的哈佛(Harvard)結構,它具有分離的程序儲器空間(12位寬指令)和數據存儲器空間(8位寬數據)。同時可運用兩級流水線指令進行取數和執(zhí)行,除了跳轉指令需要兩個周期外,其余所有的指令都可在單周期內執(zhí)行。
PIC16C73分離的程序和數據空間可使指令字優(yōu)化為任意寬度,從而使指令具有單字長的特性,且允許指令碼的數據位數多于8位,這樣,就可達到2:1的代碼壓縮和4:1的速度。
2 結構特點及工作原理
PIC16C73 PIC16xx系列微控制器中的一種,它由高性能RISC結構的CPU、存儲器、I/O接口和復位電路等組成。
2.1 外部結構特點
PIC16C73是28腳雙列直插式大規(guī)模集成芯片。
各引腳功能如下:
OSC1/CLKIN:為晶體振蕩器輸入/外部時鐘源輸入引腳。
OSC2/CLKOUT:晶體振蕩器輸出/外部時鐘源輸出引腳。在晶體振蕩器方式下,接晶體或陶瓷振蕩器;在RC振蕩方式,輸出1/4fosc。
MCLR/Vpp:芯片復位/編程電壓輸入腳,復位時,低電平有效。
RA0/AN0~RA5/AN4/SS:復用引腳,RA0~RA5為雙向數據線;AN0~AN4為A/D輸入輸出通道;RA5~AN4/SS還可作為同步串口使用。
RB0~RB7:B口雙向數據信號線,其引腳含有可控的弱上拉電阻。其中,RB4/INT可作為外部中斷輸入端;RB4~RB7可產生變化中斷;RB6可作為串行編程的時鐘端;RB7可作為串行編程的數據端。
RC0~RC7:復用引腳,為C口雙向數據信號線,C口引腳均為多功能復用引腳。
RC0/T1OS0/T1CK1可選擇TMR1振蕩器輸出或TMR1時鐘輸入;
RC1/T1OS1/CCP2可作為TMR1振蕩器輸入或捕捉器2輸入/比較器輸出/PWH2輸出;
RC2/CCP1可作為捕捉器1輸入/比較器輸出/PWH1輸出;
RC3/SCK/SCL可作為同步串行時鐘輸入/SPI的I2C方式輸入;
RC4/SDI/SDA可作為SPI數據輸入(SPI)或數據I/O(I2C);
RC6/SDO可作為SPI數據輸出(SPI);
RC6/TX/CK可以作為異步發(fā)送或SCI同步時鐘線;
RC7/RX/DT可以作為異步接收或SCI同步數據線。
2.2 內部結構特點
a.高性能CPU
●僅35條單字指令,采用的時鐘頻率為20MHz,指令周期為200ns;
●具有8級深度的硬件堆棧;
●具有中斷能力,有11個中斷源;
●帶有片內RC振蕩器的看門狗(WDT);
●具有程序保密位,可防止非法拷貝;
●具有低功耗SLEEP方式,功率低,采用高速CMOS EPROM工藝制造;
●可選擇不同的振蕩器方式;
●工作電壓為3.0V~6.0V。
b.分離的程序和數據空間
該PIC器件帶有13位程序存儲器,最大尋址能力為8k×14位,用戶存儲空間(0000~0FFFh)共4k×14位。當訪問大于以上地址范圍的物理存儲空間時,可采用滾動循環(huán)訪問方式。
數據存儲區(qū)分為每個存儲體Bank0和Bank1,每個存儲體又由通用寄存器和專用寄存器構成。當狀態(tài)寄存器中的RP0位為0時,選中Bank0;RP0為1時選中Bank1。每個存儲體最大可以擴展到7Eh(128個字節(jié))。在每個存儲體中,專用寄存器被安排在低空間,用SRAM實現的通用寄存器被安排在高地址空間。專用寄存器中含有A/D的寄存器。
c.完善的串行通信接口(SCI)
SCI利用RC6和RC7兩個引腳來作為通信線的二線制串行通信接口。它們可被定義為三種方式:全雙工異步方式、半雙工同步主控方式和半雙工同步從動方式。
SIC部件含有兩個8位的可讀寫狀態(tài)和控制寄存器,分別為發(fā)送和控制寄存器TXSTA、接收和控制寄存器RCSTA。
d.片內器件模塊
●有3個定時/計數器和3個雙向I/O口。
●含有16位捕捉/比較/PWM模塊。其中捕捉器的最大分辨率為12.5ns;而比較器的最大分辨率為200ns;PWM的分辨率為10位。
●帶有5路A/D轉換器和A/D中斷功能。
3 基于PIC16C73的智能售電系統
筆者在開發(fā)智能電表售電系統時,采用PIC16C73單片機設計了一個PIC通信通道來作為遙控器和PC機間的數據通信通道。將紅外遙控器插入通信通道即可與PC機進行數據交換。首先,PIC通信通道取紅外線遙控器中的用戶識別碼并送入PC機,由PC機的數據庫管理模塊完成用戶的注冊、注銷和售電等工作;然后,再由PIC通信通道將PC機的RS232C串行通信接口輸出的用戶識別碼及所售電量送入紅外線遙控制中,最后再由紅外線遙控器將售電量送入智能電表。該智能電表售電系統的功能結構框圖如圖3所示。
3.1 PIC通信通道的硬件系統設計
該智能電表售電系統的PIC通信通道的硬件電路結構如圖4所示。
PC機與PIC通信通道采用異步串行通信方式,但由于PC機的RS-232C串行通信接口傳輸的信號為CMOS電平,而PIC16C73的串行通信接口傳輸的信號為TTL電平,因而通信通道采用MAX-232芯片來完成信號電平的自動轉換;而PIC通信通道與紅外線遙控器則采用并行通信方式進行信息傳輸,此時,PIC16C73單片機使用RB口作為并行I/O口。為了能讓用戶認可售電信息,筆者專門設計了由MC14499芯片來完成7段顯示器的硬件驅動顯示電路。
3.2 PIC通信通道的軟件設計
為確保PIC單片機與PC機之間以及PIC單片機與紅外線遙控器之間能夠準確的進行信息通信,雙方制定了一個合理的、可行的通信協議。
a.PIC16C73與PC機之間的通信協議
PIC16C73通信波特率為9600bps;通信采用查詢方式,差錯控制采用奇偶校驗法;數據的幘格式為1位起止位、8位數據位、1位奇偶位、1位停止位;雙方設置的握手信號如下:
“FFH”:為PC機請求接收信號;
“01H”:為PC機接收信號完畢;
b.PIC16C73與紅外線遙控器的通信協議
PIC16C73與紅外遙控器設置的握手信號為:
“00H”為紅外線遙控器發(fā)送數據準備就緒;單片機接收數據準備就緒;
“FFH”為單片機發(fā)送數據準備就緒;紅外線遙控器接收數據準備就緒;
“$”為數據傳送結束標志。
4 結束語
Microchip公司的PIC系列單片機具有實用、低價、易學、省電、高速和體積小等特點。該系列單片機不是單純的功能堆積,而是以多型號來滿足不同層次的需要,并可提供低價的OTP芯片。另外,該系列單片機還具有低功耗睡眠功能、掉電復位鎖定、上電復位電路、看門狗電路等功能,而且外圍器件少、占用空間?。怀杀镜?,保密技術也十分可靠,可最大限度地保護開發(fā)者的利益。因此,在工業(yè)控制、儀器儀表、計算機、家電等諸多領域具有極其廣闊的發(fā)展前景。
萬能遙控器相關文章:萬能遙控器代碼
評論