新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 學習方法與實踐 > PIC單片機的特點及應用

        PIC單片機的特點及應用

        作者:黃麗雯 時間:2008-02-01 來源:<<國外電子元器件 >> 收藏

               1 概述

        本文引用地址:http://www.104case.com/article/78549.htm

               Microchip公司生產(chǎn)的PIC16C72是一款基于EPROM的8位高性能微控制器。與其它價格相當?shù)奈⒖刂破飨啾龋趫?zhí)行速度和代碼壓縮方面都有很大的改進。由于隨時可以買到需要的OPT(一次性編程)產(chǎn)品,因而縮短了利用PIC16C73進行產(chǎn)品設計開發(fā)的周期。

               PIC16C73微控制器所具有的優(yōu)越性能主要歸功于它的精簡指令集(RISC)和所采用的哈佛(Harvard)結構,它具有分離的程序儲器空間(12位寬指令)和數(shù)據(jù)存儲器空間(8位寬數(shù)據(jù))。同時可運用兩級流水線指令進行取數(shù)和執(zhí)行,除了跳轉指令需要兩個周期外,其余所有的指令都可在單周期內執(zhí)行。

               PIC16C73分離的程序和數(shù)據(jù)空間可使指令字優(yōu)化為任意寬度,從而使指令具有單字長的特性,且允許指令碼的數(shù)據(jù)位數(shù)多于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為雙向數(shù)據(jù)線;AN0~AN4為A/D輸入輸出通道;RA5~AN4/SS還可作為同步串口使用。

               RB0~RB7:B口雙向數(shù)據(jù)信號線,其引腳含有可控的弱上拉電阻。其中,RB4/INT可作為外部中斷輸入端;RB4~RB7可產(chǎn)生變化中斷;RB6可作為串行編程的時鐘端;RB7可作為串行編程的數(shù)據(jù)端。

               RC0~RC7:復用引腳,為C口雙向數(shù)據(jù)信號線,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數(shù)據(jù)輸入(SPI)或數(shù)據(jù)I/O(I2C);

               RC6/SDO可作為SPI數(shù)據(jù)輸出(SPI);

               RC6/TX/CK可以作為異步發(fā)送或SCI同步時鐘線;

               RC7/RX/DT可以作為異步接收或SCI同步數(shù)據(jù)線。

               2.2 內部結構特點

               a.高性能CPU

               ●僅35條單字指令,采用的時鐘頻率為20MHz,指令周期為200ns;

               ●具有8級深度的硬件堆棧;

               ●具有中斷能力,有11個中斷源;

               ●帶有片內RC振蕩器的看門狗(WDT);

               ●具有程序保密位,可防止非法拷貝;

               ●具有低功耗SLEEP方式,功率低,采用高速CMOS EPROM工藝制造;

               ●可選擇不同的振蕩器方式;

               ●工作電壓為3.0V~6.0V。

               b.分離的程序和數(shù)據(jù)空間

               該PIC器件帶有13位程序存儲器,最大尋址能力為8k×14位,用戶存儲空間(0000~0FFFh)共4k×14位。當訪問大于以上地址范圍的物理存儲空間時,可采用滾動循環(huán)訪問方式。

               數(shù)據(jù)存儲區(qū)分為每個存儲體Bank0和Bank1,每個存儲體又由通用寄存器和專用寄存器構成。當狀態(tài)寄存器中的RP0位為0時,選中Bank0;RP0為1時選中Bank1。每個存儲體最大可以擴展到7Eh(128個字節(jié))。在每個存儲體中,專用寄存器被安排在低空間,用SRAM實現(xiàn)的通用寄存器被安排在高地址空間。專用寄存器中含有A/D的寄存器。

               c.完善的串行通信接口(SCI)

               SCI利用RC6和RC7兩個引腳來作為通信線的二線制串行通信接口。它們可被定義為三種方式:全雙工異步方式、半雙工同步主控方式和半雙工同步從動方式。

               SIC部件含有兩個8位的可讀寫狀態(tài)和控制寄存器,分別為發(fā)送和控制寄存器TXSTA、接收和控制寄存器RCSTA。

               d.片內器件模塊

               ●有3個定時/計數(shù)器和3個雙向I/O口。

               ●含有16位捕捉/比較/PWM模塊。其中捕捉器的最大分辨率為12.5ns;而比較器的最大分辨率為200ns;PWM的分辨率為10位。

               ●帶有5路A/D轉換器和A/D中斷功能。

               3 基于PIC16C73的智能售電系統(tǒng)

               筆者在開發(fā)智能電表售電系統(tǒng)時,采用PIC16C73單片機設計了一個PIC通信通道來作為遙控器和PC機間的數(shù)據(jù)通信通道。將紅外遙控器插入通信通道即可與PC機進行數(shù)據(jù)交換。首先,PIC通信通道取紅外線遙控器中的用戶識別碼并送入PC機,由PC機的數(shù)據(jù)庫管理模塊完成用戶的注冊、注銷和售電等工作;然后,再由PIC通信通道將PC機的RS232C串行通信接口輸出的用戶識別碼及所售電量送入紅外線遙控制中,最后再由紅外線遙控器將售電量送入智能電表。該智能電表售電系統(tǒng)的功能結構框圖如圖3所示。

               3.1 PIC通信通道的硬件系統(tǒng)設計

               該智能電表售電系統(tǒng)的PIC通信通道的硬件電路結構如圖4所示。

               PC機與PIC通信通道采用異步串行通信方式,但由于PC機的RS-232C串行通信接口傳輸?shù)男盘枮镃MOS電平,而PIC16C73的串行通信接口傳輸?shù)男盘枮門TL電平,因而通信通道采用MAX-232芯片來完成信號電平的自動轉換;而PIC通信通道與紅外線遙控器則采用并行通信方式進行信息傳輸,此時,PIC16C73單片機使用RB口作為并行I/O口。為了能讓用戶認可售電信息,筆者專門設計了由MC14499芯片來完成7段顯示器的硬件驅動顯示電路。

               3.2 PIC通信通道的軟件設計

               為確保PIC單片機與PC機之間以及PIC單片機與紅外線遙控器之間能夠準確的進行信息通信,雙方制定了一個合理的、可行的通信協(xié)議。

               a.PIC16C73與PC機之間的通信協(xié)議

               PIC16C73通信波特率為9600bps;通信采用查詢方式,差錯控制采用奇偶校驗法;數(shù)據(jù)的幘格式為1位起止位、8位數(shù)據(jù)位、1位奇偶位、1位停止位;雙方設置的握手信號如下:

               “FFH”:為PC機請求接收信號;

               “01H”:為PC機接收信號完畢;

               b.PIC16C73與紅外線遙控器的通信協(xié)議

               PIC16C73與紅外遙控器設置的握手信號為:

               “00H”為紅外線遙控器發(fā)送數(shù)據(jù)準備就緒;單片機接收數(shù)據(jù)準備就緒;

               “FFH”為單片機發(fā)送數(shù)據(jù)準備就緒;紅外線遙控器接收數(shù)據(jù)準備就緒;

               “$”為數(shù)據(jù)傳送結束標志。

               4 結束語

               Microchip公司的PIC系列單片機具有實用、低價、易學、省電、高速和體積小等特點。該系列單片機不是單純的功能堆積,而是以多型號來滿足不同層次的需要,并可提供低價的OTP芯片。另外,該系列單片機還具有低功耗睡眠功能、掉電復位鎖定、上電復位電路、看門狗電路等功能,而且外圍器件少、占用空間小;成本低,保密技術也十分可靠,可最大限度地保護開發(fā)者的利益。因此,在工業(yè)控制、儀器儀表、計算機、家電等諸多領域具有極其廣闊的發(fā)展前景。

        linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

        萬能遙控器相關文章:萬能遙控器代碼




        關鍵詞: PIC 單片機 嵌入式

        評論


        相關推薦

        技術專區(qū)

        關閉
        主站蜘蛛池模板: 梁平县| 图木舒克市| 宜章县| 宜兰市| 喀喇| 宜丰县| 商洛市| 密云县| 永和县| 诸城市| 卫辉市| 政和县| 锡林浩特市| 松溪县| 上虞市| 南和县| 拜城县| 瑞丽市| 班玛县| 临清市| 大化| 思南县| 太和县| 凤翔县| 于都县| 图木舒克市| 威远县| 诸暨市| 青海省| 深圳市| 九龙城区| 铅山县| 白河县| 清河县| 罗源县| 沅陵县| 增城市| 德保县| 大姚县| 黄平县| 河源市|