• <del id="qqie6"><sup id="qqie6"></sup></del>
  • <tfoot id="qqie6"></tfoot>
  • <ul id="qqie6"></ul>
  • 產(chǎn)品推薦:水表|流量計(jì)|壓力變送器|熱電偶|液位計(jì)|冷熱沖擊試驗(yàn)箱|水質(zhì)分析|光譜儀|試驗(yàn)機(jī)|試驗(yàn)箱


    儀表網(wǎng)>技術(shù)中心>應(yīng)用設(shè)計(jì)>正文

    歡迎聯(lián)系我

    有什么可以幫您? 在線咨詢

    基于C8051F040的CAN總線智能節(jié)點(diǎn)的設(shè)計(jì)

       2012年04月11日 17:09  
      控制器局域網(wǎng)CAN(ControllerAeraNetwork)是德國Bosch公司在80年代初為解決現(xiàn)代汽車中大量的控制與測試儀器之間的數(shù)據(jù)交換而提出的一種串行數(shù)據(jù)通信協(xié)議。他是多主總線,通信介質(zhì)可以是雙絞線,通信速率可達(dá)1M/s,zui遠(yuǎn)通信距離可達(dá)10km。CAN具有*的可靠性,高實(shí)時(shí)性特點(diǎn)特別適合工業(yè)過程監(jiān)控設(shè)備的互連,已被*是zui有前途的現(xiàn)場總線之一。CAN總線的高速采集系統(tǒng)具備DCS(分布式控制系統(tǒng))的主要特征,可代替DCS。
      
      Cygnal公司的51系列單片機(jī)C8051F040是集成在一塊芯片上的混合信號系統(tǒng)級單片機(jī),在一個(gè)芯片內(nèi)集成了構(gòu)成一個(gè)單片機(jī)數(shù)據(jù)采集或控制的智能節(jié)點(diǎn)所需要的幾乎所有模擬和數(shù)字外設(shè)以及其他功能部件,代表了目前8位單片機(jī)控制系統(tǒng)的發(fā)展方向。芯片上有1個(gè)12位多通道ADC,2個(gè)12位DAC,2個(gè)電壓比較器,1個(gè)電壓基準(zhǔn),1個(gè)32kB的FLASH存儲器,與MCS-51指令集*兼容的高速CIP-51內(nèi)核,峰值速度可達(dá)25MIPS,并且還有硬件實(shí)現(xiàn)的UART串行接口和*支持CAN2.0A和CAN2.0B的CAN控制器。本文將介紹帶有在片CAN的Cygnal公司的混合信號片上系統(tǒng)(SoC)級單片機(jī)C8051F040作為微處理器的CAN智能節(jié)點(diǎn)設(shè)計(jì)的硬件和軟件方案。
      
      1、典型C8051F404的CAN總線網(wǎng)絡(luò)結(jié)構(gòu)
      
      典型C8051F404的CAN總線網(wǎng)絡(luò)結(jié)構(gòu)如圖1所示。一個(gè)典型的CAN節(jié)點(diǎn)由帶有CAN控制器的微處理器和CAN收發(fā)器構(gòu)成。CAN收發(fā)器建立CAN控制器和物理總線之間的連接,控制邏輯電平信號從CAN控制器到達(dá)物理總線的物理層,反之也一樣。CAN控制器執(zhí)行CAN協(xié)議,用于信息緩沖和濾波。F040的CAN控制器支持*的CAN2.0A和CAN2.0B。
      
      上位機(jī)通過CAN適配卡與各個(gè)CAN節(jié)點(diǎn)通訊。在應(yīng)用中,上位機(jī)可以發(fā)送命令到節(jié)點(diǎn),收集數(shù)據(jù),修改過程參數(shù),各節(jié)點(diǎn)可以將采集到的數(shù)據(jù)送到上位機(jī)進(jìn)行復(fù)雜的數(shù)學(xué)計(jì)算或是保存打印,實(shí)現(xiàn)更加*的信息處理功能。
      
      2、C8051F040的CAN控制器結(jié)構(gòu)
      
      F040的所有CAN協(xié)議功能都由獨(dú)立的CAN控制器而不是由51處理器來完成。因此,CAN通信占用CPU帶寬很小,51處理器只需要通過特殊功能寄存器(SFR)配置CAN控制器,數(shù)據(jù)過濾器就可以了。
      
      2.1CAN控制器各部分功能
      
      CANCore:CAN協(xié)議控制器和發(fā)送/接收轉(zhuǎn)換寄存器;
      
      MessageRAM:存儲MessageObjects和標(biāo)志碼,CAN控制器共有32個(gè)MessageObject可供配置來用于發(fā)送或接收數(shù)據(jù);
      
      Registers:用于控制和配置C_CAN模塊的所有寄存器;
      
      MessageHandler:控制數(shù)據(jù)在CANCore的接收/發(fā)送轉(zhuǎn)換寄存器和MessageObject之間的傳輸,以及中斷的產(chǎn)生。
      
      2.2CAN寄存器分類
      
      CAN寄存器可分為以下4類:
      
      (1)CAN控制器協(xié)議寄存器:用于CAN控制、中斷、錯(cuò)誤控制、總線狀態(tài)控制和測試模塊;
      
      (2)信息目標(biāo)(MessageObject)接口寄存器:配置32個(gè)信息目標(biāo)(MsgObj),從目標(biāo)接收和發(fā)送數(shù)據(jù)。8051處理器通過他來讀寫CANMessageRAM;
      
      (3)信息處理寄存器:只讀寄存器。為51CPU提供信息目標(biāo)的狀態(tài),如信息有效標(biāo)志,發(fā)送請求狀態(tài),新數(shù)據(jù)標(biāo)志和中斷標(biāo)志;
      
      (4)C8051處理器特殊功能寄存器(SFR):C8051處理器控制的5個(gè)寄存器,直接讀寫CAN協(xié)議寄存器,通過CAN數(shù)據(jù)寄存器(CAN0DATH和CAN0DATL)和CAN地址寄存器(CAN0ADR)間接讀寫其他CAN控制器。
      
      3、CAN節(jié)點(diǎn)的硬件設(shè)計(jì)
      
      設(shè)計(jì)采用的接口芯片使用TI公司的3.3VCAN收發(fā)器SN65HVD230,他與PCA82C250的引腳兼容。SN65HVD230有3種工作模式:高速,傾斜和低功耗模式,由Rs腳的連接方式來確定。由于F040自帶了CAN控制器,外圍電路極為簡潔。
      
      4、CAN通訊軟件設(shè)計(jì)
      
      為避免51CPU讀寫MessageRAM與CAN信息收發(fā)之間產(chǎn)生沖突,CPU不直接讀寫MessageObject,而是通過專門的寄存器(IFxInterfaceRegisters)來配置信息目標(biāo)。
      
      一個(gè)完整的信息目標(biāo)的結(jié)構(gòu)如表1所示。

      
      CAN通訊協(xié)議的zui大特點(diǎn)之一就是廢除了傳統(tǒng)的站地址編碼,而使用信息塊標(biāo)志碼。ID28-0,Xtd和Dir用來定義信息標(biāo)志碼,以及定義即將發(fā)送數(shù)據(jù)幀的類型(遠(yuǎn)程幀或標(biāo)準(zhǔn)幀),并且與Mask28-0,MXtd和Mdir一起用來作為將要接收數(shù)據(jù)幀的過濾器。一個(gè)已接收到的信息被放在有效的(MsgVal=1)、具有匹配標(biāo)志碼的MessageObject里。只有當(dāng)Xtd=1時(shí),遠(yuǎn)程幀才被放入MessageObject,Xtd=0時(shí),標(biāo)準(zhǔn)幀被放入MessageObject。當(dāng)多于一個(gè)的有效Messageobject與收到的信息匹配,則該條信息被放入號碼zui小的Messageobject里。Data0-Data7是8個(gè)數(shù)據(jù)字節(jié)。CAN通訊初始化和法數(shù)據(jù)幀的軟件流程如圖4所示。
      
      CAN通訊軟件設(shè)計(jì)主要包括3個(gè)模塊:CAN通訊初始化、接收數(shù)據(jù)和發(fā)送數(shù)據(jù)模塊。信息目標(biāo)的初始化程序代碼(C語言)如下:
      
      當(dāng)微處理器接收數(shù)據(jù)采用中斷方式,接收MessageObject初始化時(shí)將RxIE位置1。當(dāng)程序進(jìn)入到CAN中斷服務(wù)子程序時(shí),先判斷CAN狀態(tài)寄存器的RxOK位是否已置位,若已置位,則說明CAN控制器已經(jīng)成功接收到一個(gè)數(shù)據(jù)幀(因?yàn)镃AN通訊有多個(gè)中斷源,而中斷向量只有一個(gè)),這時(shí)再調(diào)用相應(yīng)的函數(shù),取出數(shù)據(jù)幀中有用的字節(jié)進(jìn)行處理或執(zhí)行相應(yīng)的操作。源程序代碼如下:
      
      5、結(jié)語
      
      C8051F040是*集成的混合信號系統(tǒng)級單片機(jī),具有與8051指令集*兼容的CIP-51內(nèi)核,代表了8位單片機(jī)的發(fā)展方向。他不但集成了構(gòu)成監(jiān)控系統(tǒng)的常用外設(shè),而且還集成了高可靠性、高性能的CAN總線控制模塊。本文使用該芯片設(shè)計(jì)的CAN節(jié)點(diǎn)模塊集成度高、性能穩(wěn)定,實(shí)時(shí)性好、軟件設(shè)計(jì)簡潔,在工業(yè)生產(chǎn)和儀器開發(fā)領(lǐng)域具有廣泛的應(yīng)用前景。本文給出的硬件和軟件設(shè)計(jì)方案均已通過實(shí)際測試,并成功運(yùn)用于大洋協(xié)會(huì)“十五”攻關(guān)項(xiàng)目:小型底棲生物標(biāo)本自動(dòng)分離系統(tǒng)的通訊模式中。

    免責(zé)聲明

    • 凡本網(wǎng)注明“來源:儀表網(wǎng)”的所有作品,均為浙江興旺寶明通網(wǎng)絡(luò)有限公司-儀表網(wǎng)合法擁有版權(quán)或有權(quán)使用的作品,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用上述作品。已經(jīng)本網(wǎng)授權(quán)使用作品的,應(yīng)在授權(quán)范圍內(nèi)使用,并注明“來源:儀表網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其相關(guān)法律責(zé)任。
    • 本網(wǎng)轉(zhuǎn)載并注明自其它來源(非儀表網(wǎng))的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)或和對其真實(shí)性負(fù)責(zé),不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)轉(zhuǎn)載時(shí),必須保留本網(wǎng)注明的作品第一來源,并自負(fù)版權(quán)等法律責(zé)任。
    • 如涉及作品內(nèi)容、版權(quán)等問題,請?jiān)谧髌钒l(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。
    聯(lián)系我們

    客服熱線: 15267989561

    加盟熱線: 15267989561

    媒體合作: 0571-87759945

    投訴熱線: 0571-87759942

    關(guān)注我們
    • 下載儀表站APP

    • Ybzhan手機(jī)版

    • Ybzhan公眾號

    • Ybzhan小程序

    企業(yè)未開通此功能
    詳詢客服 : 0571-87759942
    主站蜘蛛池模板: 成人午夜18免费看| 久久久久久亚洲精品成人| 亚洲精品成人av在线| 国产精品成人无码久久久| 成人综合激情另类小说| 成人区人妻精品一区二区不卡网站 | 成人无遮挡毛片免费看 | 成人女人a毛片在线看| 国产成人tv在线观看| 亚洲人成人77777网站| 成人毛片18女人毛片免费| 国产精品成人va在线观看入口| 国产精品成人无码视频| 一级成人生活片免费看| 国产成人无码区免费内射一片色欲| 四虎影院成人在线观看 | 成人漫画免费动漫y| 免费成人激情视频| 国产成人福利免费视频| 成人国产在线24小时播放视频| 亚洲国产精品无码成人片久久| 在线视频免费国产成人| 成人浮力影院免费看| 毛片基地看看成人免费| 亚洲色成人网站WWW永久| 成人国产欧美精品一区二区| 欧美成人看片黄a免费看| 亚洲国产成人久久一区二区三区| 国产成人精品动图| 成人a视频片在线观看免费| 日韩成人免费在线| 日韩国产欧美成人一区二区影院 | 成人国产午夜在线视频| 国产美女主播一级成人毛片| 亚洲AV无码成人精品区在线观看| 成人国产经典视频在线观看| 国产成人亚洲精品无码青青草原| 亚洲av无码成人精品区日韩| 成人免费无码大片a毛片软件| 欧美成人国产精品高潮| 久久怡红院亚欧成人影院|