基于DSP和Cygnal單片機的移動數據處理傳輸系統
CPU單元的任務比較多,主要要完成對由DSP單元送來的信號再處理分析。 CPU單元還分別控制鍵盤單元、時鐘單元、LCD單元、LED單元等輔助單元和GSM單元工作。對CPU單元的要求是高速和低功耗。這里選用美國 Cygnal公司的C8051F020。C8051F020單片機[8]是集成在一塊芯片上的混合信號系統級單片機(圖4),芯片上有8個8位數字I/O 端口,其中四個與標準的8051的端口(P0、P1、P2、P3)相同,與5V兼容。I/O端口在功能上有所增強,每個I/O端口都可獨立地設置為推挽輸出或開漏輸出和弱上拉,這為一些低功耗系統設計提供了節省電源的手段。C8051F020單片機除了具有51系列單片機的特點外還有如下的特點:
(1) 25MPIS高速流水線式8051微控制器內核;
(2) 12位、100KSPS、8通道帶可編程增益放大器的ADC,雙12位可程控更新的DAC;
(3) 雙模擬比較器,片內基準電源;
(4) 64KB系統內可編程FLASH存儲器,4352(4096+256)片內RAM;
(5) 各自獨立的SPI、SMBUS/I2C和兩個UART串行接口;
(6) 5個16位通用定時器;
(7) 片內看門狗定時器、VDD監視器和溫度傳感器;
(8) 工作電壓:2.7-3.6V,工作電流:10mA@20MHz。
C8051F020使用采用了流水線式結構,與標準的8051相比它的指令執行速度有極大的提高。在標準的8051中,除了MUL和DIV所有的指令都需要12或24個系統時鐘周期,最大的時鐘頻率12-24MHZ。相比較而言,C8051F020內核70%的指令執行時間為1或2個系統時鐘周期,只有4 條指令的執行 時間超過4個系統時鐘周期。C8051F020的MCU 在CIP-51內核的內部和外部有幾項關鍵性的改進,提高了整體性能,更易于在實際應用中使用。擴展的中斷系統為CIP-51提供22個中斷源,而標準的8051只有7個中斷源。C8051F020允許大量的模擬和數字外設中斷微控制器。由中斷驅動的系統需要較少的CPU干預,從而極大地提高系統的執行速度。特別是在多任務實時系統中,這些增加的中斷源非常有用。MCU內部有一個能獨立工作的時鐘發生器。另外,MCU可以關閉單個或全部外設以節省功耗。由于C8051F020單片機自身帶有64K+128B的 FLASH 程序存儲器,故不需再擴展程序存儲器。本文引用地址:http://www.j9360.com/article/155915.htm
圖4 C8051F020單片機
C8051F020的MCU具有4KB的RAM可映射在片內,也可映射在64KB外部數據存儲器地址空間,還可同時映射到片內和片外三種方式。對于后兩種存儲器工作模式需通過外部存儲器接口使用MOVX和DPTR或MOVX和R0(R1)指令訪問外部數據存儲器和存儲器映像的I/O設備。但是對于高8位地址必須由外部存儲器接口寄存器(EMI0CN)提供。而EMIF控制寄存器可將外部數據存儲器接口映射到低端口(P0-P3)或高端口(P4-P7),以及配置為復用模式或非復用模式等。
外部存儲器接口(EMI)映射為低端口(P0~3)即PRTSEL位(EMIOCH.5)置為0,此時如果EMIFLE位(XBR2.5)被設置為邏輯1,那么數字交*開關將不分配外部設備給 P0.7(/WR),P0.6(/RD),P0.5(ALE)(如果EMI設置為復用模式);如果EMIFLE位設為0,那么P0.7、P0.6、 P0.5的功能將由交*開關或端口鎖存器來決定。外部存儲器接口只在執行片外MOVX指令期間使用相關的端口引腳,一旦MOVX指令執行完畢,端口鎖存器或交*開關又重新恢復對端口引腳的控制(端口3、2、1、0)。對于外部存儲器接口的配置只有擴展外部存儲器或具有存儲器映像的I/O部件時,才配置 EMIF。
本數據處理傳輸系統使用512k*8bit的SRAM作為外部數據存儲器,使用高端口、復用模式(即P7端口數據D0-D7和地址A0-A7復用,P6端口輸出地址A8-A15)、片外存儲器方式(不使用片內存儲器)。DCM8512是512k*8bit自帶掉電保護的 SRAM,用于存放數據和VC5409用戶程序,需19條地址線(A0-A18),而C8051F020外部數據存儲器只支持64k Byte(A0-A15),故使用P5端口來擴充地址線(A16-A20)。
C8051F020最突出的優點之一就是使用交*開關網絡。交*開關網絡改進了可以控制片內數字資源與外部I/O引腳相連的。通過設置交*開關控制寄存器,將片內的數字資源如計數器/定時器、串行總線、硬件中斷、 ADC轉換啟動輸入、比較器輸出以及微控制器內部其他數字資源配置為端口I/O引腳,這就允許用戶根據自己的特定應用將通用I/O端口與所需要數字資源相結合。
CPU單元工作原理(見圖5)。C8051F020的工作頻率為11.0592MHz。模擬信號連接至C8051F020的 AIN0.0- AIN0.7腳,進行12位A/D轉換。由C8051F020中的時鐘單元產生可以變動的抽樣頻率。CPU單元通過HPI總線將A/D轉換后的心電信號送到DSP單元進行運算,運算的結果再通過HPI總線送入CPU單元。HPI總線內包括數據線D0-D7、地址線A0-A3、DSP片選線DSP- addr、讀寫線WR,RD、DSP復位線及中斷線INT0組成。地址線A0-A3選擇DSP的HPI寄存器;數據線D0-D7用于C8051F020和 DSP交換數據;當C8051F020向DSP寫數據時,將在DSP內部產生中斷,該中斷將DSP從IDLE狀態中喚醒,中斷服務程序還將從DSP特定地址的內部存儲器中讀CPU寫的數據;當DSP向C8051F020寫數據時,DSP置中斷線INT0=0,C8051F020的INT0中斷服務程序將從 DSP的HPI數據寄存器讀數據。
CPU單元通過RS232接口線TX0和RX0與GSM模塊進行硬件連接,用于通過無線移動網傳送數據信息。C8051F020單片機和GSM引擎之間采用AT指令實現互相之間的通信,更詳細的資料可以參考GSM07.05和GSM07.07規范。例如使用短信方式時,CPU單元發出短信的過程大體如下:用預先設置好的短信息中心地址、短信息的接受地址和要發售的報警數據,形成PDU格式短信;然后發出指令AT+CMGF=0r設置GSM引擎為 PDU方式;再發出指令AT+CMGS=r ,當受到回答信號后,發送已形成PDU格式短信。
5 小結
本文設計了一種基于 Ti公司低功耗DSP芯片和Cygnal低功耗的混合信號系統級單片機移動數據處理傳輸系統,它能夠采集、處理和通過無線移動網傳送和接收數據。
評論