在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用單片機與數字電臺實現串行通信的資料概述

Wildesbeast ? 來源:單片機教程網 ? 作者:單片機教程網 ? 2020-07-18 11:02 ? 次閱讀

介紹無線數據傳輸系統的組成、AT89C51單片機串行口的工作方式及其與無線數字電臺接口的軟硬件設計與實現方法。

一般的數字采集系統,是通過傳感器將捕捉的現場信號轉換為電信號,經模/數轉換器ADC采樣、量化、編碼后,為成數字信號,存入數據存儲器,或送給微處理器,或通過無線方式將數據發送給接收端進行處理。無線數據傳輸系統就是 樣一套利用無線手段,將采集的數據由測量站發送到主控站的設備。

PTR2000是一種短程無線通信技術。本文給出了一種基于PTR2000技術的溫度檢測系統的硬件電路原理框圖和通信程序流程圖。本文以一遠程溫度檢測系統為例,詳細講解了基于單片機無線數據傳輸技術的應用。本系統由溫度檢測單元,發送單元和接收單元構成,發送單元的MCU連接溫度傳感器,檢測遠程溫度,處理后,通過無線數據收發模塊PTR 2000發送給接收單元的PTR 2000;通過無線數據收發模塊PTR 2000接受發送單元發送過來的溫度數據,傳送給PC機,并在PC機上顯示當前溫度。本文詳細分析了上述實現原理,并給出了主要程序代碼,并通過了測試,有較強的實用價值。

系統由測量站和主控站兩部分組成。測量站主要完成對現場信號的采集、存儲,接收遙控指令并發送數據。主控站的主要工作是發送遙控指令、接收數據信息、進行數據處理和數據管理、隨機顯示打印等。

2 AT89C51與數字電臺的串行通信

Atmel公司的AT89C51單片機,是一種低功耗、高性能的、片內含有4KB Flash ROM的8位CMOS單片機,工作電壓范圍為2.7~6V(實際使用+5V供電),8位數據總線。它有一個可編程的全雙工串行通信接口,能同時進行串行發送和執著收。通過RXD引腳(串行數據接收端)和TXD引腳(串行數據發送端)與外界進行通信。

2.1 通信協議與波特率

數字電臺與單片機、終端主控機的通信協議為:

通信接口——標準串行RS232接口,9線制半雙工方式;

通信幀格式——1位起始位,8位數據位,1位可編程數據位,1位停止位;

波特率——1200 baud。

數字電臺選用Motorola公司的GM系列車載電臺,工作于VHF/UHF頻段,可進行無線數傳(9線制標準串行RS232接口),也可進行話音通信;采用二進制移頻鍵控(2FSK)調制解調方式,符合國際電報電話咨詢委員會CCITT.23標準。在話帶內進行數字傳輸時,推薦在不高于1200b/s數據率時使用。實際使用時,電臺工作于220~240MHz頻率范圍,采用半雙工方式(執行收、發操作,但不能同時進行)即可滿足系統要求。

2.2 AT89C51串行口工作方式

AT89C51串行口可設置四種工作方式,可有8位、10位和11位幀格式。本系統中,AT89C51串行口工作于方式3,即鳘幀11位的異步通信格式:1位起始位,8位數據位(低位在前),1位可編程數據位,1位停止位。

發送前,由軟件設置第9位數據(TB8)作奇偶校驗位,將要發送的數據寫入SBUF,啟動發送過程。串行口能自動把TB8取出,裝入到第9位數據的位置,再逐一發送出去。發送完畢,使TI=1。

接收時,置SCON中的REN為1,允許接收。當檢測到RXD(P3.0端有“1”到“0”的跳變(起始位)時,開始接收9位數據,送入移位寄存器(9位)。當滿足RI=0且SM2=0或接收到的9位數據為1時,前8位數據送入SBUF,第9位數據送入SCON中的RB8,置RI為1;否則,這次接收無效,不置位RI。

串口方式3的波特率由定時器T1的溢出率與SMOD值同時決定:

方式3波特率=T1溢出率/n

當SMOD=0時,n=32;SMOD=1時,n=16。T1溢出率取決于T1的計數速率(計數速率=fosc/12)和TI預置的初值。

定時器T1用作波特率發生器,工作于模式2(自動重裝初值)。設TH1和TL1定時計數初值為X,則每過“2 8-X”個機器周期,T1就會發生一次溢出。初值X確定如下:

X=256-fosc×(SMOD+1)/384×BTL

本系統中,SMOD=0,波行率BTL=1200,晶振fosc=6MHz,所以初值X=F3H。

2.3 AT89C51與數字電臺的硬件連接

AT89C51與數字電臺的硬件連接如圖3所示。

系統采用異步串行通信方式傳輸測量數據。利用單片機串口與數字電臺RS232數據口相連。電臺常態為收狀態(PPT=0,收狀態;PPT=1,發狀態),單片機P3.5腳輸出高電平。單片機使用TTL電平,電臺使用RS232電平,由MAX232完成TTL電平與RS232電平之間的轉換。3片光電耦合器6N137實現單片機與電臺之間的電源隔離,增強系統抗干擾性能。

單片機通過帶控制端的三態緩沖門74HC125、非門74HC14控制電臺的收發轉換,以及指令的接收和數據發送。接收時,P3.5=1,c2=1,74HC125B截止;P3.5經74HC14反相、光電隔離,使電臺PPT腳為低電平,將其置為接收狀態;同時c1=0,74HC125A導通,接收的指令由電臺的RXD端輸入,經MAX232電平變換、光電隔離、74HC125A緩沖門,送入單片機RXD腳。發射時,P3.5=0,經74HC14反相、光電隔離,使電臺PPT腳為高電平,將其置為發射狀態;同時c1=1,74HC125A截止,c2=0,74HC125B導通,數據由單片機TXD腳輸出,經74HC125B緩沖門、光電隔離、MAX232電平變換,通過電臺TXD端口將數據發送出去。

3 通信軟件設計

通信軟件至關重要,一旦出現問題,整個系統就會癱瘓。采取差錯控制與容錯技術是非常重要的。

*主控站發送的指令中包含一定數量的同步符55H和3字節的密碼。測量站在連續收到5個同步符后進行密碼驗證,驗證通過后正式接收指令字節;如未通過,則測量站發一信號讓主控站重發,三次驗證不過則停發該命令。測量站發/主控站收時,驗證方式與此相同。驗證通過后,測量站開始發送數據。

*一個指令由3字節構成,第二字節等于第一字節加上35H,第3字節等于第二字節加上36H。如果收到的指令不符合此規則,則重發該命令,連續三次錯誤時停發。

*主控站每發一個指令,測量站都回送一個應答信號。該應答信號中包含原指令樣本。

下面給出單片機串行口與電臺的基本通信程序。

初始化程序:

BTL EQU 2FH ;波特率放在內部RAM的2FH單元

MOV TMOD,#21H;T0方式1,16位計數器,T1方式2,串口用

SETB TR0 ;啟動T0

MOV BTL,#0F3H ;波特率設定為1200

MOV SCON,#0C0H;串口方式3,9位數據,禁止接收

接收及驗證程序:

NUM EQU 2BH ;同步符個數值存放在內部RAM的2BH單元

TEMP EQU 2CH

ROM-CH:DB 55H,55H,55H,55H,55H,55H,55H,55H,55H,55H

DB 55H,55H,55H,55H,55H,55H,55H,55H,55H,55H ;20字節同步符

MIM DB ‘WSC’:3字節密碼“WSC”

SETB P3.5 ;置電臺收狀態

SETB REN ;允許串口接收

A1:MOV NUM,#0 ;記錄連續到同步符55H的個數

A2:JB RI,A2 ;串口有數據轉A3

A3:CLR RI ;清接收中斷標志

MOV A,SBUF ;讀串口數據

CJNE A,#55H,A1;不是同步符轉A1

INC NUM ;收到的同步符個數加1

MOV A,NUM ;取收到的同步符個數

CJNE A,#5,A2 ;未收夠連續5個55H轉A2

A4:MOV NUM,#0 ;密碼驗證,記錄收到密碼字節數

A5:MOV DPTR,#MIM;密碼字符首址

MOV A,NUM

MOVC A,@A+DPTR;查表取密碼

MOV TEMP,A ;保存密碼

JB RI,A6 ;串口收完一個字節轉A6

A6:CLR RI ;清接收中斷標志

MOV A,SBUF ;讀串口數據

CJNE A,TEMP,A4;與密碼不符轉A4

INC NUM ;收到的密碼個數加1

MOV A,NUM ;取已收到的密碼字節數

CJNE A,#3,A5 ;密碼未收完轉A5

發送程序:

CLR P3.5 ;置電臺發狀態

MOV B,#23

MOV DPTR,#ROM-CH

B1:CLR A

MOVC A,@A+DPTR;查表發送同步符和密碼共24字節

INC DPTR

LCALL SEND-CH ;調發送單字節子程序

DJNZ B,B1

CLR A

MOV DPTR,#7000H;外部RAM數據首址,發送外部RAM中的數據到電臺

B2:CJNE R4,#0,B3

CJNE R3,#0,B3;R4R3=發送字節數

B3:MOVX A,@DPTR;取數據

INC DPTR

LCALL SEND-CH

CJNE R3,#0,B4

CJNE R4,#0,B5

B4:DEC R3

LJMP B2

DEC R3

DEC R4

LJMP B2

SEND-CH:SETB TB8

MOV SBUF,A

DB 0,0,0,0,0,0,0,0

JNB TI,$ ;延時4μs

CLR TI

RET

結語

無線數據傳輸系統建成后,已經使用了兩年多,運行結果表明,系統工作穩定可靠。由于采用了較完善的軟硬件設計和抗干擾措施,保證了系統工作的安全性和可靠性。測量站把采集的現場信號及時傳送到主控站,提高了數據處理的實時性。單片機和數字電臺接口的軟硬件設計具有很強的適用性,可廣泛應用于無線數傳設備

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6040

    文章

    44594

    瀏覽量

    636950
  • adc
    adc
    +關注

    關注

    98

    文章

    6525

    瀏覽量

    545232
  • 定時器
    +關注

    關注

    23

    文章

    3254

    瀏覽量

    115086
  • 串行通信
    +關注

    關注

    4

    文章

    576

    瀏覽量

    35490
收藏 人收藏

    評論

    相關推薦

    昂寶單片機相關資料

    昂寶單片機相關資料
    發表于 11-25 14:50 ?0次下載

    基于51單片機的手動數字時鐘

    按鍵,可實現秒復位。仿真演示視頻:基于51單片機的手動數字時鐘-仿真視頻設計介紹51單片機簡介51單片是一種低功耗、高性能CMOS-8位微控
    的頭像 發表于 10-22 14:12 ?277次閱讀
    基于51<b class='flag-5'>單片機</b>的手動<b class='flag-5'>數字</b>時鐘

    基于51單片機的遙控開關仿真(雙機通信)

    單片機最小系統、繼電器及LED燈構成;(4)由于仿真無法模擬無線模塊通信,故利用單片機RXD、TXD端口模擬,通過遙控器的開關實現對主機LED燈的控制,
    的頭像 發表于 10-22 14:12 ?340次閱讀
    基于51<b class='flag-5'>單片機</b>的遙控開關仿真(雙機<b class='flag-5'>通信</b>)

    如何實現51單片機與PC串行通信

    51單片機與PC串行通信是一種常見的通信方式,它允許單片機通過
    的頭像 發表于 10-21 11:35 ?1177次閱讀

    把esp8266加入到c51單片機單通道程序怎么寫

    要將ESP8266模塊加入到C51單片機的單通道程序中,您需要了解如何通過串行通信(UART)與ESP8266進行通信。以下是如何實現這一點
    的頭像 發表于 10-18 11:32 ?695次閱讀

    單片機SPI通信實現

    在深入探討單片機(如基于STM32、AVR、PIC等)如何通過SPI(Serial Peripheral Interface)進行通信之前,我們先概述SPI通信的基本原理,隨后以STM
    的頭像 發表于 09-09 17:00 ?658次閱讀

    單片機燒錄程序用什么軟件

    單片機燒錄程序是單片機開發過程中的一個重要環節,涉及到將編寫好的程序代碼通過燒錄器寫入單片機的ROM中,以實現單片機的控制。 燒錄器的類型
    的頭像 發表于 09-02 10:05 ?1475次閱讀

    藍牙模塊如何實現單片機和手機端數據互傳

    藍牙模塊實現單片機和手機端數據互傳的過程可以分為以下幾個步驟: 硬件準備 : 確保你有一個支持藍牙通信單片機開發板,如Arduino、Raspberry Pi等。 準備一個兼容的藍牙
    的頭像 發表于 07-24 17:59 ?2778次閱讀
    藍牙模塊如何<b class='flag-5'>實現</b><b class='flag-5'>單片機</b>和手機端數據互傳

    基于51單片機數字時鐘鬧鐘設計

    本資源內容概要:? ? ? ?這是基于51單片機數字時鐘鬧鐘設計包含了PDF版本電路圖、C語言程序源代碼(keil軟件打開)、proteus仿真。本資源適合人群:? ? ? 單片機愛好者、電子
    發表于 06-25 10:17 ?0次下載

    聊聊幾種常見的單片機通信方式

    在這個數字化和智能化的時代,單片機(MicrocontrollerUnits,MCUs)已經成為現代電子設備中不可或缺的核心組件。從簡單的家用電器如微波爐和洗衣,到復雜的工業控制系統,甚至是高科技
    的頭像 發表于 05-22 12:28 ?2083次閱讀
    聊聊幾種常見的<b class='flag-5'>單片機</b><b class='flag-5'>通信</b>方式

    數字電路仿真軟件單片機怎么用

    數字電路仿真軟件是一種用于模擬和測試數字電路設計的工具。其中,單片機仿真軟件是一種專門針對單片機進行仿真的工具。這種軟件能夠提供一個類似真實硬件環境的仿真平臺,讓用戶在計算機上進行
    的頭像 發表于 04-21 10:28 ?1113次閱讀

    ?51單片機串口通信詳細介紹-小白必看

    51單片機串口通信單片機與外部設備通信的重要方式,它基于串行通信的原理,以字節為單位進行數據傳
    的頭像 發表于 04-17 09:33 ?2092次閱讀
    ?51<b class='flag-5'>單片機</b>串口<b class='flag-5'>通信</b>詳細介紹-小白必看

    如何系統、科學地自學單片機

    的自學單片機呢?自學單片機需要一定的計劃和方法,以下是具體的步驟和建議。如何系統、科學地自學單片機?學習電子基礎知識:理解電路原理、數字電子技術、模擬電子技術等基礎
    的頭像 發表于 03-28 08:03 ?1141次閱讀
    如何系統、科學地自學<b class='flag-5'>單片機</b>?

    單片機是什么?單片機編程如何入門?

    單片機其實是一種很早的叫法了,最開始我們的前輩叫單板機或者叫單片機,因為那個時候單片機的處理能力還沒有很強,現在我們所用的基本都是微型處理單元,也叫為控制器也稱之為MCU
    的頭像 發表于 03-28 08:03 ?2047次閱讀
    <b class='flag-5'>單片機</b>是什么?<b class='flag-5'>單片機</b>編程如何入門?

    基于單片機控制的交通燈設計

    本課程設計是在學完單片機原理及課程之后綜合利用所學單片機知識完成一個單片機應用系統設計并在實驗室實現
    的頭像 發表于 01-22 15:31 ?2283次閱讀
    基于<b class='flag-5'>單片機</b>控制的交通燈設計
    主站蜘蛛池模板: 天堂在线中文字幕| 四虎免费影院4hu永久免费| 啪啪午夜视频| 亚洲精品91大神在线观看| 性欧美极品| 国产精品爱啪在线线免费观看| 欧洲三级网站| 亚洲一区二区三区网站| 美女扒开尿口给男人桶视频免费 | 都市激情 亚洲| 最新看片网址| 人人做人人看| 91久久人澡人人添人人爽| 一区视频在线| 一区二区三区四区国产精品| 四虎国产欧美成人影院| 欧美成人一区二区三区在线视频| 国内精品久久久久久久久野战| 美女黄色毛片| 亚洲毛片基地4455ww| 免费播放一区二区三区| 亚洲 欧美 自拍 卡通 综合| 四虎影视国产精品| 老色批视频| 69色综合| 国产大毛片| 欧美一区二区三区不卡免费观看| 亚洲四虎| 免费视频爱爱| 99r8这里精品热视频免费看| 免费一级特黄视频| 亚洲春色在线| 四虎永久免费在线| 狠狠狠| 手机在线看片国产| 成人啪啪免费视频| 亚洲成年网| 狠狠色狠狠色综合网| 日日操狠狠操| 亚洲成a人一区二区三区| 色视频网址|