基于單片機和CAN控制器的嵌入式系統設計
1. 引言
單片機作為嵌入式設備的心臟,在從消費電子到工業(yè)應用等廣泛的領(lǐng)域中得到應用。從單片機的歷史來(lái)看,隨著(zhù)嵌入式設備對單片機功能和性能的要求提高,其經(jīng)歷了從4位機到8位機的發(fā)展過(guò)程。目前嵌入式產(chǎn)品的不斷發(fā)展,8bit單片機的處理能力面對越來(lái)越多的挑戰。而32bit單片機在嵌入式領(lǐng)域得到越來(lái)越多的應用。根據市場(chǎng)的發(fā)展,EPSON 公司專(zhuān)為高級數據處理的便攜式設備推出了32位MCU(Microcontroller Unit )S1C33 系列,下面簡(jiǎn)單介紹一下EPSON 32 位單片機的特點(diǎn):
A. 強大的CPU內核:S1C33采用RISC(精簡(jiǎn)指令集)結構,三級流水線(xiàn),105條16位長(cháng)指令,其大多數指令在一個(gè)時(shí)鐘周期內執行,大大提高了指令的執行效率。
B. 豐富的周邊電路:除了強大的CPU內核外,S1C33的周邊電路也很有特色,考慮到對嵌入式芯片SOC(System On Chip)的要求,EPSON 公司在設計中在單片機內集成了許多周邊電路,用戶(hù)在開(kāi)發(fā)中,基本不需增加許多外部器件就可構成完整的系統,大大減少了系統成本和設計復雜度。以本文將要用到的S1C33209為例,它包括8KSRAM、直接內存存取控制器DMAC、 中斷控制器ITC、可編程定時(shí)器計數器Programmable Timer、脈寬調制電路PWM、串行接口電路SIO、A/D 轉換器等等,還包含高速的晶振電路OSC3、鎖相環(huán)(PLL)、低速晶振電路和一個(gè)實(shí)時(shí)時(shí)鐘。
C. 低功耗:功耗是很多嵌入式系統設計必須考慮的問(wèn)題,S1C33 CPU支持三種類(lèi)型的省電模式:兩種HALT模式和一種SLEEP模式;此外,S1C33 中時(shí)鐘電路設計有一個(gè)預分頻器(PSC),時(shí)鐘信號經(jīng)預分頻器分頻輸出合適的工作頻率到Timer、SIO、AD等,這樣芯片每個(gè)功能模塊都工作在合適的頻率上,系統功耗可降到最低。
D. 良好的性?xún)r(jià)比:S1C33 CPU核非常小,邏輯門(mén)數在100K左右,并采用0.35um及以上加工工藝,使CPU core占用的芯片的面積較小,以達到良好的性?xún)r(jià)比。
E. 獨特的ASIC Micro(門(mén)陣結構CPU):S1C33 Core CPU和周邊電路都是用與非門(mén)單元組成的ASIC宏單元,這樣的設計使S1C33在芯片設計上有很大的靈活性,S1C33209芯片內部有20K用戶(hù)可以自定義的門(mén)陣列(Gate Array)電路。
下面我們采用S1C33209,設計一個(gè)探測系統。
2. 系統描述及組成
我們的目標是設計一個(gè)功耗低、易于擴展、體積小的便攜設備,探測系統需要測量參數包括PH值、溶解氧、化學(xué)元素、深度等。測控系統工作時(shí)需要接收來(lái)自上位機控制中心的命令,要求將采集到的數據傳送到上位機,兩者的最大通信距離大于5Km。由于CAN總線(xiàn)具有較高的可靠性、實(shí)時(shí)性和靈活性,其最大通信距離可到達10Km,受干擾概率低,因此我們采用CAN總線(xiàn)作為通信方式。
圖1 系統總體結構圖
系統總體結構如圖1所示,CAN采用雙絞線(xiàn),信號以差分電壓傳送。SJA1000一端與單片機相連,另一端與CAN總線(xiàn)相連。為了提高單片機對CAN總線(xiàn)的驅動(dòng)能力,把PCA82C250作為CAN控制器和物理總線(xiàn)間的接口,以提高對總線(xiàn)的差動(dòng)發(fā)送能力和對CAN控制器的差動(dòng)接收能力,其工作方式(高速方式和斜率方式)由引腳RS控制,RS接地為高速,RS串接一個(gè)電阻后再接地,用于控制上升和下降斜率,可以減少射頻干擾。系統從功能上分為兩個(gè)主要部分:測控子模塊和通信子模塊。測控子模塊主要功能是根據命令啟動(dòng)系統并完成參數提取、數據處理、存儲及發(fā)送等操作,為了滿(mǎn)足探測系統多路數據的快速采集與分析的特殊要求,該模塊以EPSON公司的S1C33209為核心,擴展信號調理電路及與CAN總線(xiàn)的接口;通信子模塊的功能是完成水下測控系統與上位機的通信,此模塊主要是Philips公司的SJA1000型CAN控制器。
SJA1000是一款獨立的CAN控制器,主要用于移動(dòng)目標和一般工業(yè)環(huán)境中的區域網(wǎng)絡(luò )控制,它是PCA82C200型CAN控制器的替代產(chǎn)品,增加了PeliCAN操作模式,支持CAN2.0B協(xié)議。在本文中它與單片機的接口比較簡(jiǎn)單,單片機可以以訪(fǎng)問(wèn)外部存儲器的方式來(lái)訪(fǎng)問(wèn)SJA1000,由于SJA1000內部寄存器分布在連續的地址內,所以完全可以把SJA1000當作外部RAM。
評論