《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于單片機和CAN控制器的嵌入式系統
基于單片機和CAN控制器的嵌入式系統
微計算機信息
彭禹皓
摘要: 為了進行資源開發,對海洋油田進行探測及對污染進行監測和預防,本文采用EPSON公司的32位單片機S1C33209和SJA1000型控制器設計了一個探測系統,該系統具有高速、功耗低、體積小、易于擴展的特點,實驗表明,系統與上位機通信可靠,基本可以滿足實際需要。本文結合EPSON公司的32位單片機S1C33209功耗低、豐富的周邊電路、開發方便等特點,以S1C33209和SJA1000型控制器為核心,實際開發了一種探測系統。
Abstract:
Key words :

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


2. 系統描述及組成
    我們的目標是設計一個功耗低、易于擴展、體積小的便攜設備,探測系統需要測量參數包括PH值、溶解氧、化學元素、深度等。測控系統工作時需要接收來自上位機控制中心的命令,要求將采集到的數據傳送到上位機,兩者的最大通信距離大于5Km。由于CAN總線具有較高的可靠性、實時性和靈活性,其最大通信距離可到達10Km,受干擾概率低,因此我們采用CAN總線作為通信方式。

圖1 系統總體結構圖

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

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

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

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

圖2 接收流程圖

    如果要向CAN控制器發送數據,則必須將符合PeiCAN幀格式的一組數據寫入SJA1000的發送緩沖區,然后調用發送子程序,我們采用查詢方式實現發送,如圖3流程所示。

圖3 發送流程圖

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

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

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
亚洲一区二区在线播放| 亚洲黄色免费电影| 亚洲国产乱码最新视频| 国产一区导航| 国产午夜精品理论片a级探花| 国产精品成人观看视频国产奇米| 欧美女同在线视频| 欧美全黄视频| 欧美日韩国产一级片| 欧美激情精品久久久| 欧美国产在线电影| 欧美寡妇偷汉性猛交| 欧美成人日韩| 欧美精品久久99| 欧美日本在线看| 欧美日韩一区二区在线观看视频| 欧美精品一区二区三区蜜臀| 欧美激情中文字幕一区二区| 欧美激情视频给我| 欧美日韩不卡在线| 欧美日韩四区| 国产精品露脸自拍| 国产欧美日韩在线播放| 国产在线拍偷自揄拍精品| 激情另类综合| 亚洲激情六月丁香| 亚洲最新在线视频| 亚洲一区二区三区中文字幕在线| 亚洲欧美日韩国产中文在线| 午夜国产精品视频| 亚洲第一中文字幕| 日韩一级片网址| 亚洲一区二区在线播放| 亚洲欧美在线看| 久久国内精品自在自线400部| 久久躁狠狠躁夜夜爽| 免费在线欧美黄色| 欧美日韩成人综合在线一区二区| 欧美性做爰毛片| 国产区精品在线观看| 影音国产精品| 9色精品在线| 亚洲欧美一级二级三级| 亚洲国产精品成人| 中文在线资源观看网站视频免费不卡 | 欧美激情精品久久久久久大尺度| 欧美日韩国产在线播放网站| 国产精品外国| 亚洲黄色高清| 亚洲一区二区三区免费视频| 亚洲国产精品久久久久秋霞不卡 | 久久尤物视频| 欧美午夜片在线免费观看| 国内成+人亚洲+欧美+综合在线| 亚洲片在线观看| 欧美亚洲在线视频| 99精品视频免费| 久久精品人人爽| 欧美日韩精品一二三区| 国产一区二区久久| 一本一本a久久| 亚洲国产老妈| 亚洲欧美在线x视频| 牛牛影视久久网| 国产欧美日本| 亚洲精品一级| 久久高清免费观看| 亚洲综合三区| 欧美精品久久一区| 国产一区二区观看| 亚洲色在线视频| 亚洲精品美女| 久久理论片午夜琪琪电影网| 欧美涩涩视频| 亚洲国产日韩一区| 欧美在线不卡| 亚洲天堂成人在线观看| 麻豆精品传媒视频| 国产午夜精品久久| av成人免费观看| 亚洲精品裸体| 久久天堂成人| 国产手机视频一区二区| 亚洲图片激情小说| 99国产精品久久久久老师 | 欧美性大战久久久久久久蜜臀| 精品不卡一区| 午夜欧美不卡精品aaaaa| 亚洲色图自拍| 欧美大胆人体视频| 韩国女主播一区| 欧美亚洲一区| 亚洲欧美在线aaa| 欧美日韩免费观看一区三区| 亚洲成人影音| 亚洲黑丝一区二区| 久久精品久久99精品久久| 国产精品久久久久9999吃药| 亚洲精品一区二| 99精品国产福利在线观看免费| 久热re这里精品视频在线6| 国产亚洲福利社区一区| 亚洲欧美日韩国产中文在线| 亚洲一区二区影院| 欧美婷婷六月丁香综合色| 亚洲美女性视频| 99精品视频网| 欧美精品久久99| 亚洲理论在线观看| 夜夜嗨av一区二区三区四季av| 女主播福利一区| 亚洲成色777777女色窝| 亚洲国产婷婷| 欧美成人乱码一区二区三区| 亚洲福利在线看| 性欧美1819性猛交| 久久精品欧美| 国产精品久久久久一区二区| 99国产精品自拍| 亚洲视频导航| 欧美性色aⅴ视频一区日韩精品| 久久欧美肥婆一二区| 国产精品高潮呻吟久久av黑人| 一本色道久久综合亚洲精品高清| 亚洲视频专区在线| 欧美午夜电影完整版| 亚洲性视频h| 欧美一区二区久久久| 国产欧美日韩亚州综合| 欧美在线观看网站| 久久综合网色—综合色88| 在线播放日韩欧美| 亚洲美女av黄| 欧美日韩在线一二三| 亚洲无限乱码一二三四麻| 欧美一区二区久久久| 国产一区视频网站| 亚洲国内自拍| 欧美日韩另类国产亚洲欧美一级| 一本到高清视频免费精品| 亚洲免费影视第一页| 国产日韩欧美精品| 久久精品国产免费看久久精品| 欧美91大片| 99视频精品在线| 欧美在线观看www| 精品成人在线视频| 一区二区成人精品| 国产精品香蕉在线观看| 久久精品视频在线播放| 欧美国产视频日韩| 亚洲性xxxx| 久久深夜福利免费观看| 最近中文字幕mv在线一区二区三区四区| 亚洲视频在线观看一区| 国产精品欧美经典| 亚洲电影免费观看高清完整版| 欧美日韩国产一级| 性刺激综合网| 欧美精品在线一区| 亚洲欧美日韩在线播放| 美国十次成人| 99精品国产福利在线观看免费| 欧美在线网站| 亚洲精品美女免费| 久久成人这里只有精品| 91久久在线观看| 欧美一区二区在线播放| 91久久精品www人人做人人爽| 午夜精品99久久免费| 亚洲高清免费在线| 亚洲欧美一区在线| 亚洲电影av在线| 欧美一区二区三区视频在线| 最近看过的日韩成人| 欧美在线影院| 亚洲美女福利视频网站| 久久噜噜噜精品国产亚洲综合| 亚洲美女精品成人在线视频| 久久久久9999亚洲精品| 一区二区不卡在线视频 午夜欧美不卡' | 久久天天躁狠狠躁夜夜av| 日韩午夜在线| 麻豆成人在线观看| 亚洲欧美国产一区二区三区| 欧美激情一区二区三区四区 | 久久一区免费| 亚洲一区二区三区视频| 欧美韩日一区二区| 欧美一区成人| 欧美日韩一区在线观看| 亚洲黄色免费网站| 国产日韩欧美在线| 亚洲小视频在线观看| 1024成人网色www| 久久久久国产精品一区二区| 亚洲午夜电影网| 欧美日韩国产页| 亚洲精品久久久蜜桃| 含羞草久久爱69一区|