• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 數(shù)字化小區(qū)信息發(fā)布系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    數(shù)字化小區(qū)信息發(fā)布系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

    作者: 時(shí)間:2009-06-18 來源:網(wǎng)絡(luò) 收藏

    2.2.2 用戶機(jī)硬件
    在用戶機(jī)中,需要著重提到的是液晶顯示模塊,它是區(qū)顯示載體。液晶模塊與CPU三線連接,采用串行方式通信,節(jié)約了CPU的資源。存儲(chǔ)在串行EEPROM中,當(dāng)用戶按下按鍵查看信息時(shí),CPU從存儲(chǔ)器中讀取信息,并在液晶模塊上顯示。
    存儲(chǔ)器中除了存儲(chǔ)信息的信息外,還有一些固定的參數(shù),比如:層號、房間號、撤布防的密碼、振鈴時(shí)間、主碼等,這些參數(shù)均可以通過鍵盤進(jìn)行軟設(shè)定。采用設(shè)置的辦法,避免了采用跳線或撥碼開關(guān)進(jìn)行參數(shù)設(shè)置的傳統(tǒng)做法。用戶機(jī)框圖如圖2所示。

    本文引用地址:http://www.czjhyjcfj.com/article/173702.htm

    鍵盤完成的功能主要有:呼叫、開鎖、設(shè)定參數(shù)、信息翻屏、撤布防等。報(bào)警輸入模塊接收來自傳感器的信號。CPU接收到報(bào)警信號后通過上傳,最終到達(dá)上位機(jī)。用戶機(jī)的其它功能模塊比較簡單,限于篇幅,這里就不再做過多敘述了。
    2.3 智能管理
    2.3.1 打開串口
    使用函數(shù)CreateFile()打開串口。其聲明如下:
    HANDLE CreateFile(
    LPCTSTR lpFileName, //指向文件或串口的指針
    DWORD dwDesiredAccess, //讀寫模式
    DWORD dwShareMode, //共享方式
    LPSECURITY_ATTRIBUTES lpSecurityAttributes,//安全屬性
    DWORD dwCreationDistribution,//創(chuàng)建方式
    DWORD dwFlagsAndAttributes, //文件屬性
    HANDLE hTemplateFile); // 用于拷貝文件屬性的句柄
    2.3.2 關(guān)閉串口
    關(guān)閉串口比打開串口要簡單得多,只需要調(diào)用CloseHandle()函數(shù)關(guān)閉由CreateHandle()函數(shù)返回的句柄即可。CloseHandle函數(shù)的聲明如下:
    BOOL CloseHandle(
    HANDLE hObject;) //指向串口的句柄
    2.3.3 異步操作
    異步(重疊)I/O操作是指應(yīng)用程序可以在后臺(tái)讀或者寫數(shù)據(jù),而在前臺(tái)做其他事件。首先介紹一個(gè)結(jié)構(gòu)OVERLAPPED,這個(gè)結(jié)構(gòu)對于執(zhí)行串口的異步操作來說是必需的。其定義如下:
    typedef struct _OVERLAPPED{
    DWORD Internal;
    DWORD InternalHigh;
    DWORD Offset;
    DWORD OffsetHigh;
    HANDLE hEvent;
    } OVERLAPPED;
    在這個(gè)結(jié)構(gòu)中,前兩個(gè)參數(shù)為操作所保留。接下來的兩個(gè)參數(shù)在對串口操作時(shí)是無效的。對于串行口而言僅hEvent成員有效,其余成員必須為0。在設(shè)置了異步I/O操作后,I/O操作和函數(shù)返回有以下兩種情況:當(dāng)函數(shù)返回時(shí)I/O操作已經(jīng)完成,此時(shí)結(jié)果好像是同步執(zhí)行的,但實(shí)際上這是異步執(zhí)行的結(jié)果。當(dāng)函數(shù)返回時(shí)I/O操作還沒有完成,此時(shí)一方面,函數(shù)返回值為零,并且GetLastError()函數(shù)返回ERROR_IO_PENDING;另一方面,將OVERLAPPED中的信號事件設(shè)為無信號狀態(tài)。I/O操作完成時(shí),系統(tǒng)要把它設(shè)置為有信號狀態(tài)。異步I/O操作的結(jié)果可以由GetOverLappedResult()函數(shù)來獲取,也可以使用Windows的信號函數(shù)來處理。
    3 結(jié)束語
    通過對系統(tǒng)進(jìn)行詳細(xì)分析和功能,采用 和C++ 技術(shù),縮短了系統(tǒng)的開發(fā)周期,提高了開發(fā)者的效率,了功能強(qiáng)大而又比較靈活的信息系統(tǒng)。本系統(tǒng)經(jīng)過測試,包括仿真和系統(tǒng)聯(lián)機(jī)調(diào)試,結(jié)果證明這種信息發(fā)布的方案是可行的。相信隨著社區(qū)的不斷發(fā)展,其應(yīng)用前景也將越來越廣泛。
    4 創(chuàng)新點(diǎn)總結(jié)
    本文的創(chuàng)新點(diǎn)在于提出了一種新的信息發(fā)布的方案。通信速率高、通信距離遠(yuǎn)、可靠性高,可以滿足的通信要求。將CAN總線技術(shù)應(yīng)用于信息發(fā)布,改變了以往電子公告牌靜態(tài)的發(fā)布模式,具有高度的靈活性和廣泛的實(shí)適用性。


    上一頁 1 2 下一頁

    評論


    相關(guān)推薦

    技術(shù)專區(qū)

    關(guān)閉
    主站蜘蛛池模板: 库尔勒市| 宜君县| 金阳县| 泗洪县| 宜川县| 达孜县| 永顺县| 来凤县| 吉木萨尔县| 来宾市| 富源县| 昌宁县| 孟州市| 东丰县| 讷河市| 稷山县| 隆安县| 吉水县| 南京市| 江华| 高要市| 罗江县| 通化县| 安多县| 贵南县| 和静县| 宁乡县| 灌云县| 毕节市| 石首市| 桂林市| 邯郸市| 小金县| 习水县| 筠连县| 广灵县| 利川市| 镇雄县| 高密市| 孝昌县| 吉木萨尔县|