當(dāng)前位置:首頁 > 嵌入式 > 嵌入式教程
[導(dǎo)讀]基于單片機和CAN控制器的嵌入式系統(tǒng)

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

500)this.style.width=500;" border="0" />

圖1 系統(tǒng)總體結(jié)構(gòu)圖

系統(tǒng)總體結(jié)構(gòu)如圖1所示,CAN采用雙絞線,信號以差分電壓傳送。SJA1000一端與單片機相連,另一端與CAN總線相連。為了提高單片機對CAN總線的驅(qū)動能力,把PCA82C250作為CAN控制器和物理總線間的接口,以提高對總線的差動發(fā)送能力和對CAN控制器的差動接收能力,其工作方式(高速方式和斜率方式)由引腳RS控制,RS接地為高速,RS串接一個電阻后再接地,用于控制上升和下降斜率,可以減少射頻干擾。系統(tǒng)從功能上分為兩個主要部分:測控子模塊和通信子模塊。測控子模塊主要功能是根據(jù)命令啟動系統(tǒng)并完成參數(shù)提取、數(shù)據(jù)處理、存儲及發(fā)送等操作,為了滿足探測系統(tǒng)多路數(shù)據(jù)的快速采集與分析的特殊要求,該模塊以EPSON公司的S1C33209為核心,擴展信號調(diào)理電路及與CAN總線的接口;通信子模塊的功能是完成水下測控系統(tǒng)與上位機的通信,此模塊主要是Philips公司的SJA1000型CAN控制器。
SJA1000是一款獨立的CAN控制器,主要用于移動目標(biāo)和一般工業(yè)環(huán)境中的區(qū)域網(wǎng)絡(luò)控制,它是PCA82C200型CAN控制器的替代產(chǎn)品,增加了PeliCAN操作模式,支持CAN2.0B協(xié)議。在本文中它與單片機的接口比較簡單,單片機可以以訪問外部存儲器的方式來訪問SJA1000,由于SJA1000內(nèi)部寄存器分布在連續(xù)的地址內(nèi),所以完全可以把SJA1000當(dāng)作外部RAM。[!--empirenews.page--]

3. 軟件設(shè)計
在32位機系統(tǒng)中,由于軟件較復(fù)雜,基于操作系統(tǒng)的軟件開發(fā)占有重要地位。操作系統(tǒng)的作用是負責(zé)整個系統(tǒng)的任務(wù)調(diào)度、存儲分配、時鐘管理和中斷管理,并提供文件管理等基本服務(wù),S1C33 32位芯片使用EPSON公司的ROS33操作系統(tǒng),其核心為廣泛應(yīng)用于各種嵌入式系統(tǒng)的iTron 3.0 OS Kernel,ROS33 Kernel具有:支持µITRON 3.0標(biāo)準(zhǔn)、內(nèi)核優(yōu)化并緊湊(最小可為1.7k)、響應(yīng)快(CPU主頻為33MHz時,最快調(diào)度響應(yīng)時間為7.8 µs)、支持基于ANSI 標(biāo)準(zhǔn)的C語言等特點。本設(shè)計的主應(yīng)用程序框架如下:
#include “ros33.h”
void main()
{
sys_ini();  //用于初始化ROS33所用的參數(shù)和資源
vcre_tsk(task ID, task startup address, priority, initial address of stack); //定義被執(zhí)行的任務(wù)

sta_tsk(task ID, task startup code);  //激活執(zhí)行

sys_sta();
}
該系統(tǒng)通信協(xié)議采用“ID+命令+數(shù)據(jù)+校驗”的形式,其中,ID為網(wǎng)絡(luò)設(shè)備標(biāo)識符,采用ID.18~ID.20。標(biāo)識符ID.21~ID.28作為固定命令,不參與驗收濾波。數(shù)據(jù)表示通信的具體內(nèi)容,校驗采用校驗和的形式,為1個字節(jié)。由于CAN總線本身有15位CRC校驗,并且本系統(tǒng)節(jié)點數(shù)較少,競爭不會十分激烈,所以通信可靠性較高。
軟件設(shè)計思路如下:系統(tǒng)上電后,S1C33209先對自身和SJA1000初始化,以確定工作主頻、波特率及輸出特性等,然后接收來自上位機的控制命令,同時將獲取的采用數(shù)據(jù)通過SJA1000傳送到CAN總線上或備份到Flash存儲器中。其中對SJA1000初始化是設(shè)計的重點,必須對寫入每個寄存器的內(nèi)容進行仔細和全面考慮,否則系統(tǒng)將無法正常工作。設(shè)上位機SJA1000適配卡的ACR為xx20,AMR為FF00,下位機測控中心SJA1000的ACR為xx40,AMR為FF00。下面是初始化程序:
Void CAN_Init(viod)
{ CANMODE=ox09;  //進入復(fù)位模式,單項驗收濾波,對SJA1000初始化
CANCDR=0x88;    //選擇PeilCAN模式
CANIER=0x1A;    //開放接收中斷、超載中斷和錯誤中斷
CANAMR0=0xFF;   //接收屏蔽寄存器內(nèi)容在單片機RAM中的值
CANACR1=0x40; 
CANBTR0=0x03;   //總線定時寄存器
CANBTR1=0xFF;
CANOCR=0xAA;  //輸出控制寄存器
CANMODE=0x08; //返回工作狀態(tài)
由于測控系統(tǒng)對通信實時性要求較高,一旦接收到來自上位機的控制命令必須及時響應(yīng),為此CAN總線上接收信息采用中斷方式,即SJA1000無錯地接收到信息后使INT變?yōu)榈碗娖?,下降沿觸發(fā)S1C33209外部中斷0,使其進入中斷服務(wù)程序,其流程如圖2所示。
500)this.style.width=500;" border="0" />

圖2 接收流程圖[!--empirenews.page--]

如果要向CAN控制器發(fā)送數(shù)據(jù),則必須將符合PeiCAN幀格式的一組數(shù)據(jù)寫入SJA1000的發(fā)送緩沖區(qū),然后調(diào)用發(fā)送子程序,我們采用查詢方式實現(xiàn)發(fā)送,如圖3流程所示。
500)this.style.width=500;" border="0" />

圖3 發(fā)送流程圖

4. 結(jié)束語
為了進行資源開發(fā),對海洋油田進行探測及對污染進行監(jiān)測和預(yù)防,本文采用EPSON公司的32位單片機S1C33209和SJA1000型控制器設(shè)計了一個探測系統(tǒng),該系統(tǒng)具有高速、功耗低、體積小、易于擴展的特點,實驗表明,系統(tǒng)與上位機通信可靠,基本可以滿足實際需要。

本文作者創(chuàng)新點:本文結(jié)合EPSON公司的32位單片機S1C33209功耗低、豐富的周邊電路、開發(fā)方便等特點,以S1C33209和SJA1000型控制器為核心,實際開發(fā)了一種探測系統(tǒng)。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉