<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于A(yíng)RM44B0x的信號發(fā)射機控制器設計

基于A(yíng)RM44B0x的信號發(fā)射機控制器設計

作者:黃勇亮 時(shí)間:2008-05-29 來(lái)源:微計算機信息 收藏

[摘要]文章選用了處理器作為控制器內核,開(kāi)發(fā)完成了約定鍵盤(pán)、菜單操作及LCD顯示程序數據采集及處理實(shí)現軟件PC通訊協(xié)議及實(shí)現軟件,在其控制下完成數據地采集和處理并實(shí)現對廣播發(fā)射機的工作狀態(tài)進(jìn)行監控,同時(shí)具有人機交互的功能。
關(guān)鍵詞:; ;;

本文引用地址:http://dyxdggzs.com/article/83305.htm

1.前言

       船舶上使用的信號發(fā)射機是連續工作的,所以需要一個(gè)控制器對發(fā)射機的工作狀態(tài)進(jìn)行監控,常見(jiàn)的是用單片機作控制器的內核,但由于32位微處理器具有更好的精度和可靠性且低成本低功耗,所以在工業(yè)控制領(lǐng)域的應用日益廣泛。采用的32位微處理ARM作為控制器的內核,設計的控制器將比用單片機作內核的處理器具有更全面的功能和更好的使用性能。

  發(fā)射機控制器的主要功能是對多路模擬量和開(kāi)關(guān)量的數據采集和處理監控發(fā)射機的工作狀態(tài);控制器控制發(fā)射機同時(shí)控制器又受上位機的控制,它要能在任意時(shí)刻準備好接收從上位機串口、網(wǎng)口發(fā)來(lái)的數據,它們之間的相對關(guān)系如圖:

 

圖1   控制器系統結構圖

  上位機向控制器發(fā)送數據從而實(shí)現對控制器的控制,首先上位機送出機號,再送命令字;控制器也要向上位機上傳數據完成通訊應答,它首先解析機號是否與自己的機號一致,若一致則再解析命令字,根據命令字來(lái)送出上傳的數據完成應答;若不一致則不再作進(jìn)一步的數據解析。它們的通訊方式有串口通訊和以太網(wǎng)通訊兩種;控制器和發(fā)射機的數據傳輸主要有模擬量的采集和開(kāi)關(guān)量的輸入輸出;另外,模塊實(shí)現發(fā)射機工作過(guò)程中的參數的實(shí)時(shí)顯示和參數修改和查詢(xún)。實(shí)時(shí)采集的數據是由AD采樣得到的,需要注意的是S3c44B0沒(méi)有采樣保持電路所以通道的切換頻率不能超過(guò)100Hz,在A(yíng)DC開(kāi)啟路時(shí)都需要一個(gè)延時(shí),利用這段時(shí)間來(lái)對上一路進(jìn)行濾波而提高程序的效率。整個(gè)采樣的過(guò)程可以描述為開(kāi)啟當前通道,然后濾波上次采樣的通道(中位值平均濾波法)。

2.開(kāi)關(guān)機描述及軟件設計

 

圖2 傳口通訊流程圖

  項目的開(kāi)發(fā)首先要完成開(kāi)關(guān)機功能、功能模塊、通訊模塊的程序設計和調試,先討論開(kāi)關(guān)機的程序設計;用戶(hù)要求控制器上鍵的功能是能編輯的即每一個(gè)鍵的功能不固定,可以通過(guò)PC機修改;開(kāi)機時(shí)要按優(yōu)先級順序由高到低輸出一系列的動(dòng)作,每個(gè)動(dòng)作都有可編輯的優(yōu)先級(通過(guò)PC機編輯),一個(gè)動(dòng)作輸出后可能會(huì )引起其它同一優(yōu)先級水平動(dòng)作的發(fā)生,這就是動(dòng)作的關(guān)聯(lián)。在開(kāi)當前優(yōu)先級動(dòng)作時(shí)必須要檢測更高優(yōu)先級動(dòng)作的狀態(tài),遇到故障需要進(jìn)行故障處理。針對上述的較復雜的需求設計如下數據結構:www.51kaifa.com

     圖3 開(kāi)機流程

typedef struct{

char   *pName;        //動(dòng)作名稱(chēng)

char  FunctionID; //動(dòng)作(功能)編號

char   Priority;      //動(dòng)作優(yōu)先級

short KeepTime1;  //等待前一個(gè)輸出動(dòng)  作穩定需要的時(shí)間

short     DelayTime1;//下一動(dòng)作執行前的延時(shí)

short  DelayTime2;    //當檢測模擬量或開(kāi)關(guān)量不正常時(shí)需要重復檢測的延時(shí)

short  RepeatNum;//有故障重新檢測的次數

}OutputAction;

  把所有的功能依次編號,把這個(gè)編號賦給某個(gè)鍵則該鍵就具備了該功能,功能的編輯通過(guò)修改OutputAction.FunctionID的值實(shí)現;每個(gè)鍵最多有16個(gè)功能,最少沒(méi)有功能;在每一個(gè)鍵的所有功能都是輪循有效的,用一個(gè)循環(huán)鏈表來(lái)存放功能編號,始終是處于表頭位置編號對應的功能有效,每個(gè)功能(動(dòng)作)只能歸屬于一個(gè)鍵,在每次開(kāi)機時(shí)首先由串口把已定義好的鍵功能送到控制器并燒寫(xiě)到固定位置的ROM中;動(dòng)作優(yōu)先級的編輯是通過(guò)修改結構體中OutputAction.Priority的值實(shí)現;開(kāi)機時(shí)再從ROM中把這些數據讀出來(lái),若上位機沒(méi)有進(jìn)行鍵功能編輯就按默認形式進(jìn)行,需要指出的是關(guān)機時(shí),按和開(kāi)機向反的順序依次關(guān)閉所有的輸出動(dòng)作.開(kāi)機時(shí)根據固定位置ROM中的內容或按默認的定義獲取動(dòng)作的屬性,①首先搜索優(yōu)先級最高的動(dòng)作編號,然后根據不同的延時(shí)把這些動(dòng)作依次送出;②把優(yōu)先級降一級,檢測比當前優(yōu)先級更高的所有的輸入、輸出的狀態(tài)是否正常如果正常則送出當前優(yōu)先級的動(dòng)作,再重復②的過(guò)程,否則進(jìn)入故障處理程序,如果處理故障成功則繼續重復②的過(guò)程,否則關(guān)機并返回開(kāi)機失敗信息。開(kāi)機流程圖如圖3所示。www.51kaifa.com

  在軟件設計中的一個(gè)特色就是利用I/O端口來(lái)模擬IIC總線(xiàn)來(lái)讀取鍵值,其總體思路是用兩個(gè)端口一個(gè)模擬IIC的時(shí)鐘信號,另一個(gè)模擬IIC的數據線(xiàn)。需要注意的是在配制I/O端口時(shí),時(shí)鐘線(xiàn)始對應的端口終是輸出口而數據線(xiàn)端口是不確定的。通過(guò)給端口置位和清零結合延時(shí)來(lái)模擬IIC的數據傳輸協(xié)議。在調試的過(guò)程中發(fā)現,這種方法能很好的完成鍵值的獲取和對CPLD器件的訪(fǎng)問(wèn)。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 嵌入式 S3C44B0x 人機接口 通信

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>