色偷偷男人天堂,激情影院a,在线男人天堂,亚洲国产成人久久99精品,天色综合,亚洲自拍图片区

南康家具網-南康家具行業領導者,南康家具批發首選網站,南康家具城最大的家具批發網
當前位置: 首頁 » 資訊 » 行業新聞 » 正文

基于串行通信的智能家居上位機設計

放大字體  縮小字體 發布日期:2012-09-15  瀏覽次數:333
  信息內容:
  第一字節,燈號字節10:不相關,1:相關,bit7~bit0分別對應本模塊8~1號燈
  第二字節,燈號字節10:不相關,1:相關,bit6~bit0分別對應本模塊15~9號燈
  第三字節,開度值0:關,1~63亮度值:開,128:突關,255:突關
  第四字節,變光時間0~255
  輸出模塊返回給主控器時,信息頭定義如下:
  MessageType53
  MessageSubType0/2
  ResultDependent on operation(1 or 0)
  系統的通信按照規定的各條協議來執行。
  3 計算機通信的實現
  計算機硬件上通過RS 232與RS 485接口轉換與下端模塊進行通信。而軟件的實現有多種方法,下面主要介紹在VB 6.0通過MSComm控件來實現通信的方法[5]。
  3.1 將MSComm控件引入到VB平臺
  MSComm 控件通過串行端口傳輸和接收數據,為應用程序提供串行通訊功能。MSComm控件在串口編程時非常方便,程序員不必去花時間去了解較為復雜的API函數[6],而且在VC,VB,Delphi等語言中均可使用。
  MSComm是Microsoft公司提供的簡化Windows下串行通信編程的ActiveX控件,它為應用程序提供了通過串行接口收發數據的簡便方法。具體的來說,它提供了兩種處理通信問題的方法:一是事件驅動(Event-driven)方法,一是查詢法。
  3.2 MSComm控件的設置
  3.2.1 MSComm控件的屬性
  MSComm控件有很多重要的屬性,正確設置其屬性是程序進行正常通信的保證,下面介紹幾個必須熟悉的屬性[7] 。
  CommPort:設置并返回通訊端口號。
  Settings:以字符串的形式設置并返回波特率、奇偶校驗、數據位、停止位。
  PortOpen:設置并返回通訊端口的狀態,也可以打開和關閉端口。
  Input:從接收緩沖區返回和刪除字符。
  InputMode:接收模式,取0值時,接收文本數據;取1時,接收二進制數據。
  Output:向傳輸緩沖區寫一個字符串。
  Rthrehold:響應模式,取整數。當接收字符后,若Rthrehold屬性設置為 0,則不產生OnComm 事件;若設置為1,則接收緩沖區收到每一個字符都會使 MSComm控件產生OnComm事件。
  Sthreshold:發送模式,設置0(缺省值),數據傳輸事件不會產生OnComm事件;設置為1,當傳輸緩沖區完全空時,MSComm控件產生OnComm 事件。如果在傳輸緩沖區中的字符數小于value,CommEvent 屬性設置為comEvSend,并產生OnComm 事件。
  Handshake:通信握手模式,取值為0時,無握手;取值為1時,表示XOn/Xoff握手;取值為2時,表示Request-to\\-send/clear-to-send握手;取值為3時,表示equest-to-send & clear-to-send握手皆可。
  3.2.2 MSComm控件兩種處理通訊的方式
  MSComm控件提供下列兩種處理通訊的方式:事件驅動方式和查詢方式[8]。
  (1) 事件驅動方式
  事件驅動通訊是處理串行端口交互作用的一種非常有效的方法。在許多情況下,在事件發生時需要得到通知,例如,在串口接收緩沖區中有字符,或者Carrier Detect(CD)或Request To Send(RTS)線上一個字符到達或一個變化發生時。在這些情況下,可以利用MSComm控件的OnComm事件捕獲并處理這些通訊事件。OnComm事件還可以檢查和處理通訊錯誤。所有通訊事件和通訊錯誤的列表,參閱CommEvent屬性。在編程過程中,就可以在OnComm事件處理函數中加入自己的處理代碼。這種方法的優點是程序響應及時,可靠性高。每個MSComm控件對應著一個串行端口。如果應用程序需要訪問多個串行端口,必須使用多個MSComm控件。
  (2) 查詢方式
  查詢方式實質上還是事件驅動,但在有些情況下,這種方式顯得更為便捷。在程序的每個關鍵功能之后,可以通過檢查CommEvent屬性的值來查詢事件和錯誤。如果應用程序較小,并且是自保持的,這種方法可能是更可取的。例如,如果寫一個簡單的電話撥號程序,則沒有必要對每接收一個字符都產生事件,因為惟一等待接收的字符是調制解調器的“確定”響應。
  3.3 計算機信息發送和接收的實現
  下面以智能照明系統中PC機與主控器的通信,說明計算機與單片機通信的實現方法。以下是實現的主要子程序。
  頁面裝載程序:
  Private Sub Form Load()
  com sl="com1"
  bauty=9600
  For i=0 To 59
  Text2(i).Text=""
  Next i
  Open "recieve.txt" For Output As #1
  End Sub
  MSComm控件的設置程序:
  Private Sub Command1 Click()
  com sl=Combo1.Text
  bauty=Combo2.Text
  convert=Check1.Value
  Form2.Hide
  Form1.Command6.Enabled=False
  Form1.Command4.Enabled=True
  End Sub
  通信口控制子程序:
  Private Sub Command4 Click()
  Select Case bauty
  Case 1200
  MSComm1.Settings="1200,n,8,1"
  Case 2400
  MSComm1.Settings="2400,n,8,1"
  Case 9600
  MSComm1.Settings="9600,n,8,1"
  Case 19200
  MSComm1.Settings="19200,n,8,1"
  …
  Case 57600
  MSComm1.Settings="57600,n,8,1"
  End Select
  If com sl="com1" Then MSComm1.CommPort=1
  …
  If com sl="com7" Then MSComm1.CommPort=7
  MSComm1.RThreshold=0
  If MSComm1.PortOpen=False Then
  MSComm1.PortOpen=True
  End If
  Command4.Enabled=False
  Command5.Enabled=True
  Command3.Enabled=False
  If convert Then MSComm1.RTSEnable=True
  End Sub
  通信建立后,計算機就可以與下端單片機通過設定的協議進行通信,可以測試下端模塊的響應。
  4 MSComm控件的問題和解決辦法
  在實際應用中,MSComm控件對于一問一答式的通信,效果還是可以的,所以用于單模塊的通信測試問題不大。但是,如果計算機作為單片系統的一個角色,要實時捕獲總線上的信息并響應,存在失幀和誤幀的問題[9],如果系統要求不高,還可以對付,而象智能照明這樣要求信息持續、實時、準確的系統,利用MSComm控件處理串口通信就難以勝任了[10]。
  摘 要:在智能家居系統設計中,串行通信是實現上位機與下端模塊通信的最主要的手段。為了提高上位機與下端模塊的通信效率,在上位機設計時通過使用Windows的MSComm控件和自編制的串口接收發送動態控件的比較,發現利用MSComm控件雖然可以方便快捷地編制出上位機程序,但其通信效率偏低,誤幀和失幀率較高,只適用于單模塊測試。對于多模塊實時通信系統,采用其他控件或自編制收發程序更為有效。
  關鍵詞:上位機; 單片機; 智能家居系統; 協議; 串行通信; MSComm控件
  中圖分類號:TP18 文獻標識碼:A
  文章編號:1004-373X(2010)13-0133-04
  
  Upper Computer Control in Intelligent Home System Based on Serial Communication
  JIANG Yong-chi
  (Shantou Polytechnic College, Shantou515078, China)
  Abstract: Serial communication is the most important communication method between upper computer control and lower model(MCU) in the design of intelligent home system. By comparison between MSComm control of Windows and self-written serial transcieving dynamic control during the design of the uppercomputer to improve the communication efficiency of the upper computer control and the model at lower end, it is found that the communication efficiency of the upper computer program written by MSComm control is low, and the rate of error-frame and lost-frame is high though the program can be written out quickly with MSComm control. Two different ways to test the serial port communication abbility and find the follow facts: MSComm control can only use in single model can′t use in a multi-model system.
  Keywords: upper computer control; MCU; intelligent home system; protocols; serial communication; MSComm control
  
  0 引 言
  上位機設計是智能家居系統的一個重要組成部分,擔負著管理、控制、維護和用戶界面操作的重任,高效可靠的上位機設計是整個系統正常運作的重要保障。上位機與系統的通信實際上是與下端單片機的通信[1]。單片機或單片機系統是智能家居控制的核心,當計算機作為單片系統的一個角色時,通常被稱為“工控機”或“上位機”,各獨立的單片機是系統中實現功能的一個模塊,所以有時也稱單片機為模塊。
  計算機與單片機是通過串口來實現通信的,本文著重討論計算機與單片機的串口通信的實現方法和MSComm控件技術。
  1 上位機在智能家居系統的角色
  首先,必須認識計算機在智能家居系統的作用,可以概括為以下幾個方面:
  1.1 通信測試工具
  傳統的單片機系統的通信測試通過示波器來監測,既不直觀又容易丟失信息。將計算機加入到系統中,可以實時監測到線路中的信息,并以數字化呈現,使各個單片機間的通信得到檢驗,及時解決系統存在的問題。所以計算機在加速系統的開發和保證系統的運行質量的作用就不言而喻了。
  1.2 系統維護
  一個單片機系統往往需要對系統中各個不同功能的模塊(單片機)進行參數的設置,以適應不同的運行環境,雖然可以通過各模塊的控制面板來調整,但操作通常比較麻煩,非專業人員不易掌握。同時對于一些需要定義其地理位置的參數難以實現,不夠直觀。計算機加入到系統中,不但可以解決操作上的問題,同時還可以讀取各模塊的參數,以便于調整[2]。
  1.3 單片機
  計算機可以作為單片機系統的一個模塊,完成相應的功能。計算機應答系統的請求、處理系統中的信息,一方面將信息呈現給用戶,另一方面計算機程序通過自動計算或用戶的輸入,將信息反饋到系統中,參與系統的控制。
  1.4 主控機
  在單片機系統中,往往存在一個主控機或主控模塊,負責對整個系統的統籌和設置。單片機系統通常是通過各功能模塊的輸入和響應來實現其功能的,因此必須有一個負責收集輸入任務并指定響應模塊的主控模塊。計算機系統中既可以是一個普通的模塊,又可以是負責總體協調的主控器。
  2 通信協議
  一個單片機系統是由硬件系統和軟件系統構成的。硬件是實現功能的前提,而系統功能則是通過軟件來實現的,為了保證各個模塊通信,實現系統信息交流,必須制訂系統的通信協議。
  從物理上來說,系統各模塊是以半雙工的模式來通信的,下文提及的智能照明系統下端模塊就是以半雙工的RS 485總路線為通信架構的。而計算機的RS 232串口是以全雙工的模式來實現通信的,因此,計算機要通過串口參與到單片機系統中必須增加一個RS 232和RS 485總線轉換的模塊[3]。
  從邏輯上講,要實現各模塊之間的通信,就必須在模塊間約定一個共同遵守的通信協議。單片機以位(b)為基本單位,傳輸時以8位1字節(B)來傳輸,單片機以毫秒間距發送若干個字節為一個數據包,也稱為一幀,幀之間又規定若干毫秒的間隙。通過計算機程序可以捕獲線路中每一幀信息。
  下面以智能照明系統為例,講述單片機系統的通信協議。
  本協議采用異步串行通信方式,字節幀格式:1個起始位+8個數據位+1個停止位,無校驗位。
  幀格式如下[4]:
  1幀=幀頭(F4H F5H)+數據包+幀尾(F4H FBH) <255 B
  數據包=有效字節數(1 B)+傳輸層數據+校驗和(1 B)<251 B
  幀數據的發送、接收過程中前后兩字節數據傳送延時不得超過0.5 s。
  各模塊分配兩個字節的地址碼,第一字節代表模塊類型,第二字節代表模塊在系統中分配的順序。各模塊獲取總線上的幀后,對自己的地址幀響應,其他的幀拋掉。
  以下是本協議中的關于“燈開停控制”的協議:
  描述:該信息是輸出子模塊的各路燈的開或關控制。
  構成:該信息發送時由信息頭和信息內容構成,返回時由信息頭構成。
  主控器或PC機發給輸出模塊時:
  MessageType53
  MessageSubType0/2
  Result0
 
 
[ 資訊搜索 ]  [ 加入收藏 ]  [ 告訴好友 ]  [ 打印本文 ]  [ 關閉窗口 ]

 
0條 [查看全部]  相關評論

 
推薦圖文
推薦資訊
點擊排行
 
網站首頁 | 關于我們 | 聯系方式 | RSS訂閱 | 贛ICP備13007224號-5
南康家具批發網-南康家具行業領導者,南康家具批發首選網站,南康家具城最大的家具批發網
 
主站蜘蛛池模板: 亚洲欧美一区二区视频| 午夜成a人片在线观看| 欧美精品久久久亚洲| 中文精品久久久久国产网址| 亚洲人人精品| 亚洲毛片在线免费观看| 亚洲一级毛片免费观看| 在线免费观看亚洲视频| 久久久久久久免费视频| 日韩视频专区| 男女羞羞羞视频午夜视频| 亚洲性图视频| 综合五月天婷婷丁香| 在线色网站| 欧美性色黄在线视频| 99在线精品免费视频九九视| 中文字幕久久综合| 四虎永久网站| 国产视频亚洲| 五月一区二区久久综合天堂| 激情综合网五月婷婷| 久久精品国产波多野结衣| 亚洲人成77777在线观看网| 久久免费精品视频| 高清欧美不卡一区二区三区| 波多野结衣网站| 亚洲午夜精品久久久久久抢| 美女私密视频网站| 曰本一区二区| 日本波多野结衣字幕久久| 欧美综合图区亚欧综合图区| 亚洲精品福利视频| 亚洲成电影在线观看青青| 草综合| 亚洲国内精品自在线影视| 成人羞羞视频国产| 欧美精品v国产精品v日韩精品| 伊人久久婷婷丁香六月综合基地| 久久久91精品国产一区二区三区| 婷婷综合五月天| 午夜成a人片在线观看|