新聞中心

        EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于16位單片機(jī)的家電信息監(jiān)測系統(tǒng)方案設(shè)計(jì)的

        基于16位單片機(jī)的家電信息監(jiān)測系統(tǒng)方案設(shè)計(jì)的

        作者: 時(shí)間:2012-05-29 來源:網(wǎng)絡(luò) 收藏

        圖2系統(tǒng)硬件電路框圖

        圖2系統(tǒng)硬件電路框圖

          該硬件結(jié)構(gòu)主要包括兩部分:1.反映信息家電工作狀態(tài)的信息采集2.數(shù)據(jù)經(jīng)過TCP/IP協(xié)議壓縮后,通過以太網(wǎng)控制芯片輸出到internet,或接收來自internet的控制數(shù)據(jù)并進(jìn)行解包。該系統(tǒng)基于IEEE1451.2和TCP/IP協(xié)議構(gòu)建,具有標(biāo)準(zhǔn)化的網(wǎng)絡(luò)接口,允許與Internet或Ethernet網(wǎng)絡(luò)進(jìn)行即時(shí)連接,從而實(shí)現(xiàn)了家電設(shè)備和外部網(wǎng)絡(luò)的直接通訊,解決了監(jiān)控設(shè)備和通訊網(wǎng)絡(luò)的接口問題,為實(shí)現(xiàn)基于WEB的遠(yuǎn)程監(jiān)控提供了底層的硬件互聯(lián)。

        單片機(jī)控制以太網(wǎng)卡進(jìn)行數(shù)據(jù)傳輸

          單片機(jī)接入以太網(wǎng)必須嵌入TCP/IP協(xié)議,其加載TCP/IP協(xié)議控制以太網(wǎng)卡進(jìn)行數(shù)據(jù)傳輸,并通過TCP/IP協(xié)議連接到互聯(lián)網(wǎng)的基本思路是:在遠(yuǎn)程控制端進(jìn)行的操作首先通過路由器尋找到目標(biāo),再通過網(wǎng)卡的ISA接口傳入單片機(jī)。在單片機(jī)中加載的驅(qū)動(dòng)程序?qū)⒅D(zhuǎn)換成物理幀格式,最后由TCP/IP協(xié)議將之轉(zhuǎn)換為應(yīng)用層控制命令。因?yàn)閱纹瑱C(jī)內(nèi)部資源有限,要完成上網(wǎng)任務(wù)必須精簡TCP/IP協(xié)議,本系統(tǒng)中使用了ARP、RARP、IP、UDP等部分協(xié)議,即可保證單片機(jī)接入以太網(wǎng),亦保證足夠小的代碼量。單片機(jī)主要完成網(wǎng)絡(luò)數(shù)據(jù)的解包和串口數(shù)據(jù)的打包,當(dāng)以太網(wǎng)有數(shù)據(jù)到達(dá)該設(shè)備,單片機(jī)采用查詢方式讀取網(wǎng)絡(luò)數(shù)據(jù)并分析,如果是ARP(物理地址解析協(xié)議)數(shù)據(jù)包,則轉(zhuǎn)入ARP處理程序,并發(fā)送RARP數(shù)據(jù)包,將IP地址和物理地址加入到局域網(wǎng)中建立映射。如果是UDP數(shù)據(jù)包且IP地址和端口號(hào)正確,則接收數(shù)據(jù)包,數(shù)據(jù)解包后,將數(shù)據(jù)部分通過串口輸出,控制現(xiàn)場設(shè)備。反之,如果現(xiàn)場設(shè)備通過串口發(fā)送數(shù)據(jù)到單片機(jī),單片機(jī)將數(shù)據(jù)按照UDP協(xié)議格式打包,送入,由將數(shù)據(jù)輸出到局域網(wǎng)中。根據(jù)需要還可以在收到串口數(shù)據(jù)時(shí),先完成數(shù)據(jù)預(yù)處理,再將處理好的數(shù)據(jù)送到局域網(wǎng)。

        軟件實(shí)現(xiàn)部分

          軟件設(shè)計(jì)主要包括:以太網(wǎng)控制器初始化程序、驅(qū)動(dòng)程序、TCP/IP協(xié)議棧程序、系統(tǒng)網(wǎng)絡(luò)配置程序。以太網(wǎng)控制器驅(qū)動(dòng)程序用于設(shè)置以太控制芯片的工作狀態(tài)即工作方式,分配收發(fā)數(shù)據(jù)的緩沖區(qū);系統(tǒng)網(wǎng)絡(luò)配置程序用于給監(jiān)測系統(tǒng)分配IP地址及域名。限于篇幅,下面僅給出了采用匯編語言編寫的初始化的部分代碼。

        .includehardware.inc;//配置單元定義
        .public_init//RTL8019AS初始化子程序
        _init:
        R1=0xffff;//初始化A口為輸出
        [P_IOA_Attrib]=R1;
        [P_IOA_Dir]=R1;
        R1=0xfc07;//將IOB0~IOB2,IOB10~IOB15設(shè)置為輸出,其他為輸入
        [P_IOB_Attrib]=R1;
        [P_IOB_Dir]=R1;
        R1=0x0001;//選中00H寄存器
        [P_IOB_Data]=R1;
        R1=0x0021;//選擇寄存器頁面0,芯片不工作
        [P_IOA_Data]=R1;
        [P_IOB_Data]=R1;
        R1=0x004c;//設(shè)置接收緩沖區(qū),頁地址為0x4c~0x7f
        [P_IOA_Data]=R1;
        R1=0x0001;//選中02H寄存器
        [P_IOB_Data]=R1;
        R1=0x0080;
        [P_IOA_Data]=R1;
        ...
        R1=0x0801;//選中01H寄存器
        R1=0x0001;//選中00H寄存器
        [P_IOB_Data]=R1;
        R1=0x0061;//選擇寄存器頁面1
        [P_IOA_Data]=R1;
        ...
        R1=0x0001;
        [P_IOB_Data]=R1;
        R1=0x0022;//選擇寄存器頁面0,芯片進(jìn)入工作狀態(tài)
        [P_IOA_Data]=R1;
        retf;//程序返回

          利用SPCE061A驅(qū)動(dòng)以太控制芯片RTL8019AS,實(shí)現(xiàn)信息家電經(jīng)由嵌入式網(wǎng)關(guān)接入internet的方式,可以方便、低廉地將信息家電的工作狀態(tài)送往遠(yuǎn)程PC進(jìn)行監(jiān)控。這種低成本、高性能的方案,具有可靠靈活的特點(diǎn),適用于通信速率不大,允許延時(shí)的家庭自動(dòng)化設(shè)備。用戶可根據(jù)需要,按上述方法,為傳統(tǒng)的家電賦予接入internet的能力。


        上一頁 1 2 下一頁

        評(píng)論


        相關(guān)推薦

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

        關(guān)閉
        主站蜘蛛池模板: 兴业县| 东阿县| 双峰县| 长宁县| 平潭县| 宣恩县| 二手房| 金湖县| 温州市| 来安县| 汽车| 巴塘县| 潮州市| 乐清市| 黎城县| 黑水县| 平原县| 巴彦淖尔市| 宿迁市| 台南县| 浦北县| 景宁| 诸城市| 堆龙德庆县| 遂溪县| 商洛市| 泉州市| 揭东县| 临泽县| 军事| 汾阳市| 晋江市| 汤原县| 娄底市| 平度市| 东乡族自治县| 元氏县| 天峻县| 谢通门县| 隆回县| 广水市|