日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機電之家資源網(wǎng)
單片機首頁|單片機基礎(chǔ)|單片機應(yīng)用|單片機開發(fā)|單片機文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
[轉(zhuǎn)載]基于Atmega8及MSM7512的嵌入式Modem設(shè)計
[轉(zhuǎn)載]基于Atmega8及MSM7512的嵌入式Modem設(shè)計
 更新時間:2008-8-17 16:45:48  點擊數(shù):9
【字體: 字體顏色
前導(dǎo)碼 目的地址 源地址 數(shù)據(jù)幀 CRC校驗碼
前導(dǎo)碼使通信雙方保持同步,目的地址和源地址就是各設(shè)備所對應(yīng)的電話號碼,當PC機發(fā)送數(shù)據(jù)時,先發(fā)送目的地址給所有下位機,如果某個從機被上位機尋址,它將接收主機接下來發(fā)出的數(shù)據(jù)幀,而其它的從機則將忽略數(shù)據(jù)幀;當PC機接收數(shù)據(jù)時,同樣地,下位機先發(fā)送源地址再發(fā)數(shù)據(jù)幀給上位機。同樣時,下位機先發(fā)送源地址再發(fā)數(shù)據(jù)幀給上位機。CRC校驗碼是為了防止傳輸出錯而設(shè)計的。為設(shè)計方便,規(guī)定數(shù)據(jù)幀為32位,其中功能碼為4位,參數(shù)為28位。功能碼為0000時,參數(shù)表示的是設(shè)備傳輸數(shù)據(jù);功能碼為1111時,參數(shù)表示設(shè)備自檢數(shù)據(jù)。


    2.2 上位機軟件的編寫

上位機是一個數(shù)據(jù)發(fā)送與接收的終端,上位機軟件的功能是:選擇并發(fā)送要呼叫的電話號碼;使計算機與嵌入式Modem能夠通過RS232接口標準收發(fā)數(shù)據(jù)。由于Delphi是一種易學(xué)易用的面向?qū)ο蟮某绦蛟O(shè)計工具,因而采用它來編寫上位機程序。在上位機程序中要能夠?qū)τ嬎銠C串行口的硬件進行操作。然而Delphi本身不提供串行通信組件,因此需要調(diào)用Windows API函數(shù)建立一個串行通信組件Tcomm來對串口硬件實現(xiàn)控制,進而使用該組件完成串行通信功能。在設(shè)計中還需要使用其它一些組件如Button、Memo、RadioGroup等來完成軟件界面的設(shè)計。

2.3 單片機程序設(shè)計

根據(jù)設(shè)計中單片機的任務(wù)設(shè)置一個全局變量TransOrReceFlag(規(guī)定值為0時,表示Modem處于接收狀態(tài);為1時,Modem處于發(fā)送狀態(tài)),主程序根據(jù)它的值跳轉(zhuǎn)到相應(yīng)的子程序中。下面分別介紹子程序的編寫過程。

嵌入式Modem發(fā)送數(shù)據(jù):上位機按照通信協(xié)議通過串口向Atmega8先后發(fā)送目的地址(電話號碼)和數(shù)據(jù)幀。單片機在USART接收完成中斷服務(wù)程序中,將MSM7512設(shè)置為調(diào)制模式并使MSM7512與電話線連通,再控制雙音多頻信號發(fā)生器HT9200產(chǎn)生目的地址所對應(yīng)的DTMF信號,送入MSM7512的外部信號輸入端EAI,經(jīng)內(nèi)部放大后從AO輸出端向電話線上發(fā)送所呼叫的電話號碼,待與遠方Modem建立起聯(lián)系后,就可以通過模擬串口向MSM7512傳送接下來所收到的數(shù)據(jù)幀。

嵌入式Modem接收數(shù)據(jù):Atmega8外部計數(shù)口T1上有下降沿出現(xiàn)時,表明電話線上有振鈴信號,可能有遠方Modem要求和本地Modem進行數(shù)據(jù)傳輸。為防止誤撥,規(guī)定了振鈴信號需要連續(xù)出現(xiàn)的次數(shù)。當達到計數(shù)設(shè)定值時,單片機確認有遠方Modem要進行數(shù)據(jù)傳輸,于是將MSM7512設(shè)置為調(diào)解模式,接通電話線,再通過模擬串口接收MSM7512傳來的數(shù)據(jù),經(jīng)USART把數(shù)據(jù)傳給上位機。

單片機程序中一個重要的部分是模擬UART串口的實現(xiàn)部分。在設(shè)計中用定時/計數(shù)器0產(chǎn)生合適的波特率,使接收和發(fā)送的數(shù)據(jù)符合異步串行通信數(shù)據(jù)幀的格式;一個普通I/O口作為TXD’,外部中斷0口T0作為RXD’;在內(nèi)存中開辟一塊緩沖區(qū)模擬串口的數(shù)據(jù)接收/發(fā)送緩沖器。規(guī)定模擬串口中數(shù)據(jù)幀為1起始位,8個數(shù)據(jù)位,1個停止位,波特率為9600bps。下面就接收和發(fā)送兩個過程介紹模擬串口的實現(xiàn)。

模擬串口接收數(shù)據(jù):串行通信中數(shù)據(jù)幀都是從一個下降沿開始的。當T0口上有下降沿出現(xiàn)并觸發(fā)中斷時,表明MSM7512已經(jīng)接收到遠方傳來的數(shù)據(jù),單片機需要對所接收到的數(shù)據(jù)進行采樣。在中斷服務(wù)程序中初始化數(shù)據(jù)位計數(shù)器和定時/計數(shù)器0,設(shè)定其第一次定時時間為1.5位,因為從起始位需要延時1.5位才能進行數(shù)據(jù)位D0的采樣(1.5位=1起始位+0.5D0位),如圖4所示。接下來的8次采樣的間隔一樣,所以在定時器第一次計時溢出后,在每次溢出中斷服務(wù)程序中重新裝載的定時時間均為1位。采樣后將所得數(shù)據(jù)存入緩沖區(qū)再送給上位機。圖5是模擬串口接收數(shù)據(jù)的程序流程圖。

模擬串口發(fā)送數(shù)據(jù):與接收數(shù)據(jù)過程相比,發(fā)送數(shù)據(jù)要簡單些。因為不需要采樣,幀中所有位的時間長度是一樣的,所以定時/計數(shù)器0的定時時間為固定值,即1位的時間。送出的第一位數(shù)據(jù)是起始位,通過接收方準備接收數(shù)據(jù),然后從最低有效位LSB支最高有效位MSB,數(shù)據(jù)被一位一位地移出,在最末的是停止位(即邏輯1),用來讓接收方區(qū)分發(fā)送的數(shù)據(jù)字節(jié)。

由于在上位機程序中集成了選擇發(fā)送電話號碼的功能,所以本文所介紹的嵌入式Modem能夠靈活方便地與遠方設(shè)備進行數(shù)據(jù)傳輸。它還具有體積小、外圍電路簡單、易維護、成本低廉等特點,具有較大的應(yīng)用價值。

  • 上一篇: 單片機在USB設(shè)計中的應(yīng)用
  • 下一篇: 用單片機設(shè)計A/D、D/A轉(zhuǎn)換器
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機電設(shè)備,機電供求等信息由機電企業(yè)自行提供,該企業(yè)負責(zé)信息內(nèi)容的真實性、準確性和合法性。
    機電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機電之家,機電之家將及時作出處理。
    Copyright 2007 機電之家 Inc All Rights Reserved.機電之家-由機電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1