1.引言
在微控制器(Microcontroller)應用領域日益廣泛的今天,各個領域的應用也向微控制器廠商提出了更高要求,希望速度更快、功耗更低、體積更小、價格更廉以及組成系統(tǒng)時所需要的外圍器件更少;隨著越來越多的各種非電子工程技術人員的應用需求,他們想把微控制器作為嵌入式部件應用到自己熟悉的領域中,還提出簡單易學易用的要求。用戶的需求就是廠商的市場和動力,老的半導體廠商順應潮流不斷推出新品種,新的半導體廠商則后來居上,把越來越多的外圍接口器件集成到片內,功能越來越強、性能越來越高。迄今至少也有35家國外半導體廠商的微控制器進入中國市場。在這眾多的五彩繽紛的微控制器中,美國Microchip技術公司的PIC系列微控制器則異軍突起,獨一幟。它率先推出采用精簡指令集計算機(RISC--Reduced Instruction Set Computer)、哈佛(Harvard)雙總線和兩級指令流水線結構的高性能價格比的8位嵌入式控制器(Embedded Controller)。其高速度(每條指令最快可達160ns)、低工作電壓(最低工作電壓可為3V)、低功耗(3V,32kHz時15μA)、較大的輸入輸出直接驅動LED能力(灌電流可達25mA)、一次性編程(OTP--One Time Programmable)芯片的低價位、小體積、指令簡單易學易用(35--37條指令)等,都體現了微控制器工業(yè)發(fā)展的新趨勢。
這個系列的微控制器在市場上極具強勁的競爭力,在全球都可以看到PIC微控制器在從辦公自動化設備、消費電子產品、電訊通信、智能儀器儀表到汽車電子、金融電子、工業(yè)控制等不同領域的廣泛應用。PIC系列微控制器在世界微控制器市場份額排名中逐年提前,以至已成為一種新的8位微控制器的世界標準和最有影響力的主流嵌入式控制器。大家會發(fā)現,在國內目前仍然是Intel的MCS-51系列及其兼容的單片機占絕對主流地位,原因是該系列單片機引進歷史最長,在國內應用一直繁榮而面廣,參考資料相對豐富,使用慣性使然。
2.PIC系列微控制器系統(tǒng)擴展技術
系統(tǒng)擴展有兩類不同的方法,一類是并行擴展,另一類是串行擴展。
對于并行擴展,目前使用的微處理器和微控制器絕大部分都采用總線結構,無論進行存儲器擴展還是I/O接口擴展,都是利用數據總線、地址總線和控制總線這三總線來擴展。因為這個系列的微控制器的設計是基于真正的單片機應用,芯片引腳并未安排三總線。但是可以利用接口電路仿真三總線。任何一種微控制器,只要有足夠多的I/O接口可用,就可以用一個8位I/O口作為8位I/O口仿真16位的地址線(實際上還可以根據需要擴展成任意位數據線和地址線)。當然這種方法占用I/O口資源太多,顯得不經濟。另外一種可用的方法就是模仿Intel的8031擴展方法,占用一個8位鎖存器將地址信號分離出來;再根據需要擴展器件尋址范圍的大小,用另外一個I/O口的若干位作為高位地址線。需要擴展的器件就可以與這三總線相應信號相連。當需要對擴展器件進行訪問時,即可以在高8位地址線的I/O口先輸出高位地址,再從分時復用的I/O口輸出低8位地址,并用另外一個I/O線作為地址鎖存允許信號線ALE去控制鎖存器,鎖存住8位的低位地址。這時就可對尋址單元進行訪問。下面的并行擴展都采用這個方案。
對于串行擴展,比較簡單,因為在PIC16CXX系列芯片中已有同步串行口部件SSP,可以直接進行I2C方式、SPI方式串行通信,另外還有異步通信接口USART。在PIC16C5X系列芯片中沒有串行通信部件,但是可以用軟件仿真實現。
PIC系列微控制器系統(tǒng)擴展技術有:1、數據存儲器擴展,(1)并行數據存儲器擴展(2)串行數據存儲器擴展,例如,二總線EEPROM和三總線EEPROM同串行EEPROM,PIC16C5X與24XXXX系列串行EEPROM的接口,擴展I2C總線協(xié)議所規(guī)定地址空間技術-16C54與24LC65的接口方法和編程,16C5X與四線制串行EEPROM芯片93LC46的接口方法和編程,16CXX SPI接口和93LCXX的接口。2、PIC系列微控制器的I/O口擴展(1)74系列TTL集成電路芯片擴展技術(2)可編程并行接口擴展技術(3)用PIC16C5X實現數字電位器的功能(4)人機對話的鍵盤、LED數碼顯示、LCD驅動擴展,用PIC16C57直接擴展LED數碼管和鍵盤,用PIC16C54/56擴展LED數碼管和鍵盤,用PIC系列微控制器直接驅動LCD顯示器。3、中斷系統(tǒng)的擴展和實現,(1)軟件中斷技術(2)PORTB口作外部中斷。4、I2C總線接口與串行通信,(1)I2C總線軟件設計及其子程序(2)異步串行通信的軟件實現(3)PIC16CXX系列異步串行通信中斷驅動的軟件實現
3、PIC系列微控制器應用系統(tǒng)開發(fā)及其常用工具
單片機應用系統(tǒng)的開發(fā),用單片機開發(fā)設計制作的應用系統(tǒng)或產品,與純粹用硬件電路實現的裝置不一樣。這是因為除了相應的硬件電路外,其關鍵在于應用系統(tǒng)軟件的開發(fā),而單片機本身并沒有軟件開發(fā)功能。編寫的應用程序如何調試和修改?怎么能高效率地找出應用系統(tǒng)硬件和軟件中的錯誤?又如何把最后調試好的程序固化到單片機片內程序存儲器中?這些需要相應的開發(fā)工具,稱