日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁(yè)|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開(kāi)發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開(kāi)發(fā)
培訓(xùn)信息
贊助商
LON總線的USB2.0接口卡的研制
LON總線的USB2.0接口卡的研制
 更新時(shí)間:2008-8-4 4:10:53  點(diǎn)擊數(shù):18
【字體: 字體顏色


3.3 LonWorks接口卡的軟件設(shè)計(jì)
    該接口卡的程序包含兩大部分:一是存儲(chǔ)在CY7C68013中的USB驅(qū)動(dòng)程序和與3150的并口通信程序:二是存儲(chǔ)在3150外部Flash中的并口通信程序以及LonTalk協(xié)議轉(zhuǎn)換程序。USB驅(qū)動(dòng)程序在開(kāi)發(fā)套件CY368 1中已有支持用戶,只要調(diào)用即可。而與31 50的并口通信程序則采用Keil C51語(yǔ)言編寫,并通過(guò)usB口下載到CY7C68013的8051內(nèi)核中。3150外部Flash中的并口通信程序以及LonTalk協(xié)議轉(zhuǎn)換程序采用Neuron C語(yǔ)言編寫,并采用LonWorks開(kāi)發(fā)工具——LonBuilder中的Neuron C編譯器對(duì)程序進(jìn)行編譯,生成ROM映像文件,最后下載到片外Flash中。
    在8051的并口通信程序中,需要模擬3150的并口通信從A方式。以下為并口通信程序中主要模塊的C51程序,包括同步模塊(sync—loop());握手模塊(hndshkO);并口數(shù)據(jù)傳送接收模塊(pio read();pio write(void));令牌傳遞模塊(pass token())。
void sync-loop(void)
{unsigned char rb;
do{RW=0;hndshk();PB=CMD RESYNC;CS=0;CS=I;hndshk();
PB=EOM;CS=0;CS=1;hndshk();PB=0xff;RW=I;CS=0;rb=PB;
CS=I;}while(rb!=CMD ACKSYNC);token=MASTER;}
void hndshk(void)
{while((hs=INTO)==1);}
void pio_read(void)
{unsigned char cmd;unsigned char i;
PB=0xff;hndshk();RW=1;cmd=PB;CS=0;CS=1;
if(cmd==CMD—XFER){hndshk();pio.1en=PB;CS=0;CS=1;}
else pio.1en=o=pass—token();}
void pio-write(void)
{unsigned char sd;
hndshk();RW=0;PB=CMD—XFER;CS=0;CS=1;hndshk0;PB=pio.
1en;CS=0;CS=1:
for(sd=0;sd<pio.1en;sd++){hndshk();PB=pio.dat[sd];CS=0;CS=l;}
pass_token();RW=1;}
void pass_token(void)
{ifftoken==MASTER){hndshk();RW=0;PB=EOM;CS=0;CS=1:
token=SLAVE;}
else token=MASTER;}
    根據(jù)硬件設(shè)計(jì),將3150芯片的I/O定義為并行(parallel)I/O對(duì)象類型。定義并行I/O對(duì)象的Neuron C源代碼為IO 0 parallel slave P BUS,其中,P BUS為所定義的I/O對(duì)象名稱。Neuron將從并口得到的報(bào)文解析,再利用Neuron C的消息傳送機(jī)制,將解析的消息傳送給適配器下層的應(yīng)用節(jié)點(diǎn)。讀取數(shù)據(jù)的Neuron C函數(shù)為io_in(),其格式如下:io in(P BUS,addressl);
其中,P_BUS為并口IO對(duì)象名稱,addressl為接收并口數(shù)據(jù)的地址。發(fā)消息的Neuron C函數(shù)為msg send()。
    值得注意的是,Neuron芯片的應(yīng)用CPU在執(zhí)行該io_in()函數(shù)時(shí)會(huì)處于等待狀態(tài),也就是說(shuō)等待數(shù)據(jù)時(shí)應(yīng)用CPU不能處理其它I/O事件、定時(shí)器終止、網(wǎng)絡(luò)變量更新或報(bào)文到達(dá)事件。如果2 0字符時(shí)間內(nèi)尚沒(méi)有接收到數(shù)據(jù),則可能使Wat Chdog定時(shí)器產(chǎn)生超時(shí)錯(cuò)。在10MHz的輸入時(shí)鐘下,watchdog的超時(shí)時(shí)間是0.84s(該時(shí)間隨輸入時(shí)鐘而改變)。通常情況下,調(diào)度程序(scheduler)會(huì)周期性地對(duì)watchdog定時(shí)器進(jìn)行復(fù)位,但當(dāng)程序處理一個(gè)較長(zhǎng)的任務(wù)(task)如io in()時(shí),則有可能終止watChdog定時(shí)器,這將導(dǎo)致整個(gè)節(jié)點(diǎn)的復(fù)位。為避免產(chǎn)生這種情況,同時(shí)使程序盡可能多地接收到達(dá)的數(shù)據(jù),本節(jié)點(diǎn)程序在接收數(shù)據(jù)這個(gè)任務(wù)中周期性地調(diào)用函數(shù)watchdog update()。

4 結(jié)論
    本文所設(shè)計(jì)接口卡的主要目的是為帶有USB接口的便攜設(shè)備進(jìn)行現(xiàn)場(chǎng)數(shù)據(jù)測(cè)量和現(xiàn)場(chǎng)監(jiān)測(cè)提供高速、安全的通信接口。解決了令工程師頭痛的便攜設(shè)備與現(xiàn)場(chǎng)設(shè)備采用通用串口通信時(shí)傳輸速率低、經(jīng)常掉線、連接不可靠的問(wèn)題。



  • 上一篇: 液晶顯示溫度計(jì)的制作
  • 下一篇: 采用SPC3協(xié)議芯片設(shè)計(jì)PROFIBUS-DP智能從站
  • 發(fā)表評(píng)論   告訴好友   打印此文  收藏此頁(yè)  關(guān)閉窗口  返回頂部
    熱點(diǎn)文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評(píng)論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會(huì)員助手 | 免費(fèi)鏈接

    點(diǎn)擊這里給我發(fā)消息66821730(技術(shù)支持)點(diǎn)擊這里給我發(fā)消息66821730(廣告投放) 點(diǎn)擊這里給我發(fā)消息41031197(編輯) 點(diǎn)擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實(shí)性、準(zhǔn)確性和合法性。
    機(jī)電之家對(duì)此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請(qǐng)聯(lián)系機(jī)電之家,機(jī)電之家將及時(shí)作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會(huì)
    中國(guó)行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營(yíng)許可證:浙B2-20080178-1