在遠程監(jiān)控和工業(yè)自動化系統(tǒng)中,串口通信因其具有連接簡單、使用方便、可靠性高的優(yōu)點,得到越來越廣泛的應用。討論了采用WinCE嵌入式與MSP430單片機構(gòu)建串口多機通信系統(tǒng)的問題,在分析了WinCE操作系統(tǒng)與MSP430單片機串口模塊特性的基礎上,給出了進行串口通信的總體框圖,針對實際串口通信存在的問題制定串行通信協(xié)議,然后在該系統(tǒng)硬件基礎上根據(jù)需要定制WinCE系統(tǒng)內(nèi)核,最后實現(xiàn)串口通信設計。實驗結(jié)果表明:該系統(tǒng)能夠達到多串口通信的要求。
目前WinCE嵌入式與MSP430單片機在儀器儀表、工業(yè)控制、移動設備等有著廣泛的應用。在很多復雜的應用場合比如多點溫度采集、多點轉(zhuǎn)速采集,一個單片機不能滿足要求,需要多臺單片機協(xié)同工作,此時,多臺單片機通信是實現(xiàn)的關(guān)鍵。以基于WinCE嵌入式設備為核心,取代傳統(tǒng)意義上的PC機,采用TCP/IP通信機制搭建的串口通信系統(tǒng),結(jié)合嵌入式設備和網(wǎng)絡技術(shù)的優(yōu)點,將各獨立系統(tǒng)復雜的通信協(xié)議、數(shù)據(jù)格式進行統(tǒng)一的轉(zhuǎn)化,特別適用于遠程、多機串口通信,具有重要的使用價值和應用前景。
1 硬件平臺
1)WinCE嵌入式采用友善之臂mini2440開發(fā)板作為硬件平臺,mini2440開發(fā)板主要的硬件資源包括:SamsungS3C2440A,主頻400MHz,最高533 MHz;1個100 M以太網(wǎng)RJ-45接口(采用DM9000網(wǎng)絡芯片),1個通用異步串行口(UART);2個USB數(shù)據(jù)接口;1個LCD控制器;1個64MSDRA-M;1個SD卡接口;以及鍵盤接口和IDE接口等,利用上述的核心硬件資源,根據(jù)需要定制相關(guān)的內(nèi)核,在EVC集成開發(fā)環(huán)境中編寫應用程序。
2)MSP430F149單片機是TI公司芯片,它具有集成度高、外圍設備豐富、超低功耗、1.8~3.6 V的低電壓供電范圍,5種可選的低功耗模式,低于6μs的喚醒時間等優(yōu)點,是設計電池供電系統(tǒng)的極佳選擇。由于具有16位RISC結(jié)構(gòu),16位寄存器和常數(shù)寄存器,MSP430達到了最大的代碼效率。數(shù)字控制的振蕩器提供快速從所有低功耗模式蘇醒到活動模式的能力,時間少于6ms。MSP430F149帶有2個16位定時器(帶看門狗功能)、速度極快的8通道12位A/D轉(zhuǎn)換器(ADC)(帶內(nèi)部參考電壓、采樣保持和自動掃描功能)、1個內(nèi)部比較器和2個通用同步/異步發(fā)射接收器,硬件乘法器提高了單片機的性能并使單片機在編碼和硬件上可兼容,所以在很多領域得到了廣泛的應用。
3)PC機與WinCE嵌入式通過100 M/S以太網(wǎng)接口連接,WinCE嵌入式與MSP430F149通過RS232進行通信,串口通信總體框圖如下圖1所示。
2 WinCE嵌入式平臺定制
WinCE嵌入式操作系統(tǒng)是一個緊湊、高效、可擴展開放的、可裁減的、32位的實時嵌入式窗口操作系統(tǒng),其最大的特點是使用了分層結(jié)構(gòu)技術(shù),使系統(tǒng)具有更好的可擴展性和定制性,使應用程序和操作系統(tǒng)獨立于具體硬件,以適應各種特殊的應用環(huán)境。操作系統(tǒng)從邏輯上可以分為硬件層、OEM層、操作系統(tǒng)層、應用程序?qū)印;谇度胧絎inCE開發(fā)平臺的定制主要是對操作系統(tǒng)層和OEM層進行定制。
微軟提供了PB(Platform Builder)作為定制WinCE操作系統(tǒng)的集成開發(fā)環(huán)境。PB環(huán)境支持多種功能模塊和硬件接口,可以根據(jù)目標設備的具體硬件配置進行WinCE的裁剪和定制,定制WinCE平臺的流程如圖2所示。首先,通過安裝和創(chuàng)建設備驅(qū)動程序?qū)W(wǎng)卡、串口、顯示驅(qū)動、USB和電源驅(qū)動等硬件進行定制;然后,定制系統(tǒng)組件和服務,包括TCP/IP、FTP、MFC、Telnet等,并根據(jù)硬件配置和操作系統(tǒng)的應用特性修改配置文件;最后,生成操作系統(tǒng)映像文件,通過網(wǎng)口或串口將其下載到目標設備中運行。定制完成后,導出應用程序開發(fā)工具包SDK。
3 串口UART模塊
3.1 WinCE操作系統(tǒng)串口
在WinCE下運行的程序,一般是在Windows環(huán)境下開發(fā)的,然后下載到嵌入式設備中。系統(tǒng)中是在Windows環(huán)境下用EVC去開發(fā)應用軟件,然后下載到設備中去。串口在WinCE中屬于流接口設備,可以像對文件一樣對串口進行打開、關(guān)閉、讀寫等操作。WinCE下的串口函數(shù)和Win-dows下的串口函數(shù)基本相同,但在一些方面有所不同:1)WinCE只支持Unicode;2)WinCE中有一些自己特有的控件,可以方便編程;3)EVC不支持重疊I/O操作。
3.2 在WinCE下開發(fā)串口通信步驟
1)打開端口并進行初始化 在EVC中把設備當做文件來處理,故使用CreateFile來打開端口。如果打開成功,則會返回打開串口的句柄。成功打開一個端口之后,需要對端口進行初始化。調(diào)用串口通信函數(shù)SetupComm,設置COM的發(fā)送和接收緩沖區(qū)的大小。分配好緩沖區(qū)以后,調(diào)用CetCommTimeouts函數(shù)對讀寫串口進行超時設置。然后調(diào)用GetCommState函數(shù)獲取當前串口的默認參數(shù)并返回一個DCB結(jié)構(gòu)體地址,通過給這個DCB結(jié)構(gòu)體各成員賦值來重新設定串口狀態(tài)。最后調(diào)用PurgeComm函數(shù)清空串口的發(fā)送接收緩沖區(qū)。
2)對串口進行讀寫操作 成功配置好串口參數(shù)后即可調(diào)用函數(shù)ReadFile和WriteFile對串口進行讀寫操作。在通信的過程中可能出現(xiàn)通信錯誤導致程序無法繼續(xù)進行,一般需要調(diào)用ClearCommError清除這些錯誤。
3)關(guān)閉串口 使用完串口后必須關(guān)閉串口。串口不能像文件一樣被共享,不釋放別的應用程序不能使用。關(guān)閉串口只需使用CloseHandle即可。WinCE串口流程圖如圖3所示。
3.3 MSP430F149單片機UART模塊特點
MSP430單片機的UART模塊具有比普通51單片機更完善的特性,如可選擇奇偶校驗方式、波特率小數(shù)部分可編程、提供差錯控制及錯誤狀態(tài)位、串口中斷喚醒CPU等。將這些特點應用于串口通信中可以增強通信的可靠性,比如:UART硬件模塊可以被設置為若奇偶校驗出錯則不接收當前數(shù)據(jù),通過設定波特率調(diào)制值可使波特率更準確,通過休眠模式的應用可提高CPU工作的效率并降低系統(tǒng)的功耗。對于多機通信,MSP-430單片機內(nèi)置了空閑式(idle-line)和地址位式(address-bit)兩種多機通信模式,為提供可靠高效的多機通信提供了保證。兩種模式主要在如何確定地址幀方面存在差別:1)空閑模式:兩個數(shù)據(jù)塊之間的傳輸空閑時間大于或等于10 bit,也即用傳輸線上大于或等于10 bit空閑之后的第一個數(shù)據(jù)表示地址。2)地址位模式:通過字節(jié)幀中的地址位(1或0)指示該幀是地址幀還是數(shù)據(jù)幀。一由于空閑模式要求兩個數(shù)據(jù)塊之間一定要有大于或等于10 bit的時間間隔,所以在連續(xù)傳輸?shù)膱龊蟼鬏斔俾蕰鹊刂肺荒J铰蔷幊毯唵巍?p>
4 串口通信協(xié)議設計
在WinCE嵌入式和多臺MSP430單片機的通訊中,確定一個明確而合理的通訊協(xié)議是關(guān)鍵,包括對數(shù)據(jù)格式、通訊方式、傳送速度、傳送步驟、檢糾錯方式以及控制字符定義等問題做出統(tǒng)一規(guī)定。為了區(qū)別不同的分機,必須為每個分機分配一個唯一的地址,此地址唯一區(qū)別各單片機。數(shù)據(jù)格式采用數(shù)據(jù)包的形式,一次傳輸一組數(shù)據(jù)。數(shù)據(jù)包格式如表1所示。
數(shù)據(jù)格式中的地址位表示與PC機通訊的單片機地址。操作命令則表示此次通訊要完成的操作。在單片機發(fā)送上位機接收的時候,此時數(shù)據(jù)包中的數(shù)據(jù)長度、數(shù)據(jù)內(nèi)容、和檢驗3個域便填充實際發(fā)送數(shù)據(jù)的個數(shù)、數(shù)據(jù)及和校驗;操作命令域在PC機發(fā)送單片機接收的時候也有相似的協(xié)議規(guī)定。
5 TCP/IP數(shù)據(jù)通信
TCP/IP數(shù)據(jù)通信模塊用于完成WinCE嵌入式與PC機服務器之間的通信,其主要功能包括,接收下位機發(fā)來的信息、發(fā)送控制命令,控制程序的運行狀態(tài),為多機串口通信提供方便。數(shù)據(jù)通信模塊采用基于WinCE的TCP/IP協(xié)議,能夠保證在傳輸過程中數(shù)據(jù)的準確性和可靠性;嵌入式系統(tǒng)硬件抗干擾能力強,能夠保證系統(tǒng)長期穩(wěn)定運行。客戶進程建立連接及通信的程序流程如圖4所示。
在基于Wince的TCP/IP協(xié)議中,其通信實現(xiàn)流程為:TCP服務器首先調(diào)用socket()函數(shù)建立流式套接字,然后調(diào)用bind()綁定本地地址,調(diào)用listen()函數(shù)進行客戶終端連接,一旦與客戶終端連接后,服務器就調(diào)用accept()函數(shù)接收終端的連接請求,并建立連接,同時服務器端啟動一個新線程,建立單獨的套接字實例與客戶終端進行通訊。
TCP客戶端通信實現(xiàn)流程為:調(diào)用socket()函數(shù)建立流式套接字,然后調(diào)用connect()函數(shù),請求與WinCE服務器建立TCP連接,成功建立連接后,同服務器進行數(shù)據(jù)傳輸。
服務進程和客戶進程通過調(diào)用send()和recv()來交換數(shù)據(jù),服務器可向客戶端傳送所收集的數(shù)據(jù)。客戶端則向服務器反饋控制信息和參數(shù)調(diào)整信息:服務進程或客戶進程可通過調(diào)用close()來撤消套接字并中斷連接。
6 結(jié)論
串口通訊方式在計算機控制系統(tǒng)中有著廣泛的應用,通過WinCE嵌入式與多臺MSP430單片機串口通信研究開發(fā),運用嵌入式、單片機及網(wǎng)絡通信技術(shù)實現(xiàn)了多機串口通信。本文設計的通訊協(xié)議經(jīng)實踐證明穩(wěn)定可靠,保證了單片機與PC之間數(shù)據(jù)傳輸?shù)臏蚀_率。本文所采用的技術(shù)在遠程控制,工業(yè)控制等領域具有重要的實用價值和廣泛的應用前景。
上一篇:MSP430系列單片機的加密熔斷器設計
下一篇:基于自由擺的平板精確控制與激光追蹤系統(tǒng)
推薦閱讀
史海拾趣
隨著市場的不斷變化和客戶需求的升級,安美通意識到只有不斷創(chuàng)新才能在競爭中立于不敗之地。因此,公司加大了對研發(fā)的投入,積極引進高端人才,并與多所高校和研究機構(gòu)建立了緊密的合作關(guān)系。通過持續(xù)的技術(shù)創(chuàng)新,安美通成功推出了一系列具有自主知識產(chǎn)權(quán)的新產(chǎn)品,進一步鞏固了其在行業(yè)內(nèi)的領先地位。
隨著電子行業(yè)的快速發(fā)展和市場競爭的加劇,All Sensors面臨著越來越多的挑戰(zhàn)。然而,公司始終保持著敏銳的市場洞察力和創(chuàng)新精神。通過與客戶緊密合作,仔細聆聽客戶需求,All Sensors不斷開發(fā)出適應市場變化的新產(chǎn)品和技術(shù)。同時,公司還注重提升產(chǎn)品質(zhì)量和服務水平,贏得了客戶的廣泛認可和信賴。
這些故事只是All Sensors在電子行業(yè)發(fā)展歷程中的一部分縮影。作為一家全球領先的傳感器技術(shù)領軍企業(yè),All Sensors將繼續(xù)秉承創(chuàng)新精神,不斷推動電子行業(yè)的發(fā)展和進步。
隨著公司業(yè)務的不斷擴展,安森德對資金的需求也日益增加。在這個關(guān)鍵時刻,公司成功獲得了數(shù)千萬人民幣的戰(zhàn)略投資。這筆資金為公司的研發(fā)、生產(chǎn)和市場拓展提供了有力支持。在融資的助力下,安森德加快了規(guī)模擴張的步伐,先后在多個城市設立了研發(fā)中心和辦事處,進一步提升了公司的研發(fā)實力和市場覆蓋能力。
背景:進入21世紀后,霍尼韋爾繼續(xù)秉承多元化發(fā)展戰(zhàn)略,不斷拓展新的業(yè)務領域。
發(fā)展:公司通過一系列并購和投資活動,進入了石油化工、高性能材料、醫(yī)療、安防等多個領域。其中,2005年收購環(huán)球油品公司(UOP)和2007年收購碼捷科技(Metrologic Instruments)是公司多元化戰(zhàn)略的重要里程碑。
關(guān)鍵事件:這些并購不僅增強了霍尼韋爾的技術(shù)實力和市場競爭力,還為公司帶來了新的增長點和發(fā)展機遇。
背景:霍尼韋爾公司的歷史可以追溯到1885年,由發(fā)明家艾伯特·布茲在美國明尼阿波利斯創(chuàng)立布茲電子溫度調(diào)節(jié)器公司。
發(fā)展:布茲成功研發(fā)出了一種名為“風門擋板”的裝置,該裝置能夠自動調(diào)節(jié)室內(nèi)溫度,這是當時的一大技術(shù)突破。隨著業(yè)務的不斷發(fā)展,布茲電子溫度調(diào)節(jié)器公司被統(tǒng)一溫度控制公司收購,并在1893年更名為電子供熱調(diào)節(jié)器公司。
關(guān)鍵事件:1898年,電子供熱調(diào)節(jié)器公司被W.R. Sweatt收購,并于1916年更名為明尼阿波利斯熱調(diào)節(jié)器公司。這一系列的更名和收購奠定了霍尼韋爾在恒溫器領域的基礎。
DPA Components International公司自成立以來,一直將技術(shù)創(chuàng)新作為公司發(fā)展的核心動力。在電子行業(yè)的早期階段,該公司就投入大量資源研發(fā)新型電子元件,這些元件以其高精度和穩(wěn)定性迅速在市場上獲得了認可。隨著技術(shù)的不斷進步,DPA不斷推出具有創(chuàng)新性的產(chǎn)品,如智能傳感器和高效能集成電路,這些產(chǎn)品不僅滿足了客戶對性能的需求,也推動了整個電子行業(yè)的發(fā)展。通過不斷的技術(shù)創(chuàng)新,DPA Components International公司在市場上建立了良好的口碑,成為行業(yè)內(nèi)的領軍企業(yè)。
今天試了下PC通過串口發(fā)數(shù)據(jù)給51 (字符串,即多個字節(jié)) 有些問題, 以下是我的一些猜想 1.因為51的串口接收中斷是在收到一幀后將RI置位請求中斷,所以發(fā)送多字節(jié)至51時,51要產(chǎn)生多次中斷才能接收完. 2.在PC中,我所知道的是操作系統(tǒng)會為每個串口開一 ...… 查看全部問答∨ |
|
以前我用c#來做wince程序開發(fā),覺得好方便。 現(xiàn)在公司用c++來做,我新建了幾個項目(c++)發(fā)現(xiàn)和c#建立的有很大的差別, c#是基于net compack framework的,c++是基于mfc和win32的。 請問大家,是這樣的嗎?我第一次做,不太懂。 另外,wince現(xiàn) ...… 查看全部問答∨ |
|
那個C:\\WINCE500\\PLATFORM\\COMMON\\SRC\\COMMON\\INTR\\BASE\\map.c編譯生成了一個oal_intr.lib,在C:\\WINCE500\\PLATFORM\\SMDK2440A\\Src\\Inc\\oal_intr.h這個東西聲明了map.c里面的函數(shù),是不是表示包含了oal_intr.h這個文件就能調(diào)用map.c ...… 查看全部問答∨ |
|
100pin和48pin的stm32f103都能夠反復燒錄正常. 唯獨64pin的stm32f103fv8只能燒錄一次,第二次就不能進入boot. 試驗了2片都一樣.是不是這個批號的產(chǎn)品有問題. 激光打字如下: arm stm32f103 r8t6 2205v 93 mlt 22 925… 查看全部問答∨ |
設計資源 培訓 開發(fā)板 精華推薦
- 全主動懸架國產(chǎn)化落地,未來也能“人人買得起”?
- 第三方激光雷達ASIC方案,能改變行業(yè)格局嗎?
- 為何端到端成為各車企智駕布局的首要選擇?
- 智能網(wǎng)聯(lián)汽車組合駕駛輔助系統(tǒng)安全要求立項制定,東風、華為等參與起草
- 從高精地圖到VLA,一場技術(shù)路線的競速
- 韓國團隊開發(fā)自動駕駛軟件 透明障礙物識別準確率達96%
- OpenGMSL?聯(lián)盟宣告成立 推動未來車載連接技術(shù)變革
- 高通完成對V2X芯片企業(yè)Autotalks收購,強化車聯(lián)網(wǎng)通信
- “磷酸鐵鋰需求激增,寧德時代等電池巨頭鎖定未來五年大單”
- 面壁智能端側(cè)大模型首日上線,英特爾工程師聯(lián)合優(yōu)化實現(xiàn)2.2倍推理效率躍升
- Microchip最新SAM 以及 PIC32單片機軟件開發(fā)平臺-- MPLAB® Harmony V3介紹 ”
- 【下載有禮】利用泰克新MSO6示波器 Spectrum View功能演示多通道信號頻譜分析
- 免費申請測評 | 泰坦觸覺 TITAN Core開發(fā)套件
- Deyisupport博文閱讀季:推薦你喜歡的放大器博文,搶樓贏好禮!
- 力源&安森美有獎直播:RSL15 - 安森美更高效更智能更安全的 BLE 5.2 藍牙芯片
- 直播:TI SimpleLink MCU無線平臺及軟件介紹!豐富的提問禮在這里等你~
- 下載有好禮!超多精美禮品等您拿!
- 初夏TI電池管理與您邀約:曬樣片訂單 搶樓贏禮!
- 美國開發(fā)基于SiGeSn合金的下一代紅外成像技術(shù)
- 如何選擇一款合適的EMC 測試儀器? 了解EMI測試類型
- 大連理工研制出新型GaN納米線氣體傳感器
- 如何使數(shù)據(jù)采集系統(tǒng)測試速度最大化?
- 量子點光譜傳感器實時在線監(jiān)測河道污染源
- 貿(mào)澤電子聯(lián)手Molex推出定制電纜組裝器
- COVID-19將導致全球無線服務收益下降2.6%
- Lattice sensAI 3.0將功耗減半,使CrossLink-NX FPGA的性能加倍
- Akamai承諾捐贈110萬美元來滿足全球抗疫需求
- 2020全國兩會:盤點機器人產(chǎn)業(yè)提案,亮點頻出!