基于W5100的遠程控制器設計
1.2 控制器的軟件設計
本系統(tǒng)基于ADS 1.2平臺開發(fā),采用C語言和匯編語言混合編程完成固件程序的編寫,并完成了在現場環(huán)境下的調試,最終實現了基于W5100的遠程控制器軟件設計。系統(tǒng)軟件采用模塊化的設計思想,把程序化繁為簡,便于程序的設計、調試及維護。整個軟件系統(tǒng)主要包括初始化模塊、TCP/IP模塊和RS 232/RS 485接口處理模塊等。
1.2.1 初始化模塊
初始化模塊主要對控制器LPC2131和W5100進行初始化。LPC2131初始化主要包括啟動初始化、時鐘、I/O、串口以及SPI接口的初始化設置等,使LPC2131工作在SPI主設備狀態(tài),W5100工作在從設備狀態(tài)。W5100初始化包括W5100工作模式、中斷向量、IP地址、網關地址、子網掩碼、物理地址、超時值等相關設置,并通過對套接字寄存器初始化來設置W5100的4個獨立的網絡通道。在該控制器設計中,采用的是客戶端/服務器模式,通過初始化設置,使W5100工作在服務器模式下,等待遠端控制終端的連接。
所以,通過設置W5100內部的控制寄存器,完全可以像在局域網中配置IP地址一樣簡單地配置設計的系統(tǒng),通過靈活創(chuàng)建和選擇TCP或者UDP套接字來完成網上的數據交換。
1.2.2 TCP/IP網絡模塊
TCP服務器模式程序流程圖如圖3所示。首先通過初始化模塊初始化W5100,并創(chuàng)建一個socket,把socket和本機的IP地址和TCP端口綁定,然后偵聽端口;下一步進入循環(huán)等待狀態(tài),如有客戶端連接請求,則接受客戶端連接要求;同時接受客戶機發(fā)來的數據,產生系統(tǒng)中斷,進入到接收中斷處理進程;如果在發(fā)送緩沖區(qū)有數據要發(fā)送,則在客戶端連接成功后,進入發(fā)送數據處理進程;最后如果接收和發(fā)送數據均已經完成,就進入關閉端口進程,關閉socket,通信終止;在整個的TCP網絡通信過程中,如果產生超時中斷,則直接關閉通信端口。 TCP/IP模塊的主要功能是對網絡數據的接收和發(fā)送。通過初始化模塊的設置,將W5100設置為服務器模式,通過socket編程,實現了遠程控制器的客戶端/服務器工作模式。本文引用地址:http://butianyuan.cn/article/162209.htm
1.2.3 RS 232/RS 485接口處理模塊
RS 232/RS 485接口處理模塊由數據編碼/解析子模塊和RS 232/RS 485接口子模塊組成。數據編碼/解析子模塊的主要任務是完成對網絡接收來的數據進行解析并按設備通信格式進行編碼,同時將從RS 232/RS 485接口設備獲得的數據解析并編碼成為標準的TCP/IP信息包,傳送給遠程的控制終端。RS 232/RS 485接口模塊實現了與本地RS 232標準接口設備數據的交換功能以及完成了TCP/IP協議與現場RS 485接口總線之間的協議轉換。
依托W5100完善的TCP/IP協議處理功能,使LPC2131在沒有操作系統(tǒng)的支持下可介入Internet網絡,實現了對RS 232接口和RS 485接口總線數據轉換的功能。
2 結語
基于LPC2131微控制器和W5100網絡芯片設計的帶有標準RS 232/RS 485接口和標準以太網接口的遠程設備控制器,它通過標準RS 232/RS 485接口與被控設備進行連接,并通過以太網接口接入到控制網絡中去,從而實現了分布式控制系統(tǒng)的網絡遠程控制。采用該控制器構建的分布式控制系統(tǒng)具有靈活、廉價、穩(wěn)定、可靠、且容易進行系統(tǒng)擴展的特點。
tcp/ip相關文章:tcp/ip是什么
評論