<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è) > 嵌入式系統 > 設計應用 > 基于μC/OS-II和TCP/IP協(xié)議的多串口服務(wù)器

基于μC/OS-II和TCP/IP協(xié)議的多串口服務(wù)器

作者: 時(shí)間:2011-09-12 來(lái)源:網(wǎng)絡(luò ) 收藏
SC28L198的系統時(shí)鐘(SCLK)可同時(shí)作為主機接口和其他內部電路的基本時(shí)間基準。為了確保內部控制器的正確操作,提供的SCLK頻率必須大于X1晶體時(shí)鐘的2倍或任何外部的1X數據時(shí)鐘輸入。由于LM8962芯片本身沒(méi)有提供時(shí)鐘信號輸出引腳,若由定時(shí)器中斷產(chǎn)生7.3728MHz以上頻率的方波信號將使LM8962頻繁處理中斷程序,影響程序執行效率。當SC28L198工作在50MHz頻率下,其中的PWM硬件模塊最高可以產(chǎn)生25MHz輸出,且不產(chǎn)生任何中斷,因此LM8962將從頻繁的查詢(xún)和處理中斷中解脫出來(lái)。

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

  在該系統中,需根據不同的應用場(chǎng)合使用RS-232收發(fā)器或RS-422/485收發(fā)器及其外圍電路。使用RS-232收發(fā)器可以進(jìn)行近距離全雙工通信,使用RS-422/485收發(fā)器能夠進(jìn)行遠距離數據傳輸。由于整個(gè)系統工作于3.3V電壓下,為了匹配TTL電平和RS-232電平或RS-422/485電平,該電路采用MAX3232芯片或MAX3485芯片。

  LM8962內部集成的以太網(wǎng)控制器包含一個(gè)完整的MAC模塊和PHY接口器件,簡(jiǎn)化了硬件電路設計。該以太網(wǎng)控制器完全支持10BASE-T和100BASE-TX標準以及遵守IEEE802.3。整個(gè)系統連接以太網(wǎng)只需一個(gè)隔離變壓器,無(wú)需外接以太網(wǎng)控制芯片,簡(jiǎn)化了硬件設計。隔離變壓器能夠隔離模塊地和數字地,從而保證SC28L198能夠遠離外界的復雜信號。

  3 軟件設計

  在該系統中,用戶(hù)可以對的配置、狀態(tài)查詢(xún)和在計算機(客戶(hù)端)上通過(guò)以太網(wǎng)收發(fā)數據進(jìn)而操作該。在客戶(hù)端上,8個(gè)SC28L198的通道被虛擬成8個(gè)COM接口。操作這些虛擬COM接口就如同操作計算機上的物理COM接口,因此用戶(hù)不必知道數據是通過(guò)以太網(wǎng)進(jìn)行傳輸。實(shí)際上,用戶(hù)操作這些COM接口時(shí),產(chǎn)生的命令和數據將被打包成一幀數據并發(fā)往處理器LM8962,然后LM8962將數據通過(guò)SC28L198的相應通道發(fā)送到設備上。使用ARM處理器LM8962作為嵌入式設備的核心器件,在其上運行μ操作系統來(lái)打開(kāi)、關(guān)閉和管理8個(gè)串行通道的相應進(jìn)程。因此,8個(gè)串行通道能夠同時(shí)收發(fā)數據而不相互影響。

  3.1μ

  μ是免費開(kāi)源、專(zhuān)門(mén)為嵌入式系統設計的實(shí)時(shí)操作系統。它包括任務(wù)計劃、任務(wù)管理、時(shí)間管理、內存管理、任務(wù)間的通信以及其他一些基本功能。在該系統中采用μC/OS-II來(lái)實(shí)現以下功能:

  (1)建立一個(gè)消息隊列來(lái)存儲串口通道的消息和UDP消息;(2)控制SC28L198收發(fā)串口數據;(3)建立一個(gè)任務(wù)來(lái)管理UDP通信,并通過(guò)以太網(wǎng)收發(fā)數據;(4)建立一個(gè)任務(wù)來(lái)管理串口通道收發(fā)任務(wù)與UDP通信任務(wù)之間的通信。

  3.2模塊

  具有分層結構,能夠實(shí)現對以太網(wǎng)數據幀進(jìn)行打包和解包。UDP在的傳輸層,提供一種不可靠的數據傳輸服務(wù),但UDP相對簡(jiǎn)單,比起TCP協(xié)議更能夠提供實(shí)時(shí)和快速的數據傳輸。在正常的運行過(guò)程中,該TCP/IP程序模塊能夠從數據隊列中獲取串口通信的數據并將數據打包至UDP包中,然后將UDP包發(fā)送至IP層,最后形成一幀數據。該幀數據將會(huì )通過(guò)以太網(wǎng)發(fā)送到計算機中。與此同時(shí),該程序模塊還將從以太網(wǎng)接收到的數據解包出來(lái),將其中的串口通道號和串口數據發(fā)送到SC28L198中去。表1描述了收發(fā)一幀數據的格式。

  表1數據傳輸格式

  

tcp/ip相關(guān)文章:tcp/ip是什么




評論


相關(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>