日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁(yè) > 單片機(jī) > 單片機(jī)
[導(dǎo)讀]在工程中,常采用Modem通過(guò)模擬線路進(jìn)行數(shù)據(jù)的遠(yuǎn)程傳輸。我們用工業(yè)級(jí)PIC16F87系列單片機(jī)控制Modem完成串行異步/同步通信,在較低速率的線路上實(shí)現(xiàn)了數(shù)據(jù)的實(shí)時(shí)傳輸,收到了很好的效果。 本文就系統(tǒng)中PIC單片機(jī)

在工程中,常采用Modem通過(guò)模擬線路進(jìn)行數(shù)據(jù)的遠(yuǎn)程傳輸。我們用工業(yè)級(jí)PIC16F87系列單片機(jī)控制Modem完成串行異步/同步通信,在較低速率的線路上實(shí)現(xiàn)了數(shù)據(jù)的實(shí)時(shí)傳輸,收到了很好的效果。

      本文就系統(tǒng)中PIC單片機(jī)控制Modem的串行通信技術(shù),在硬件、軟件兩方面進(jìn)行了分析。

       1 PIC單片機(jī)及其同步/異步串行接口USART模塊功能簡(jiǎn)介
        PIC16F877A單片機(jī)內(nèi)部有8K*14的FLASH程序存儲(chǔ)器和512字的RAM數(shù)據(jù)存儲(chǔ)器:不僅采用哈佛體系結(jié)構(gòu),而且還采用哈佛總線結(jié)構(gòu),流水線操作,PIC16F877A大大提高了指令執(zhí)行速度,PIC單片機(jī)的系統(tǒng)時(shí)鐘可以工作在DC- 20MHz的頻率范圍之內(nèi)。優(yōu)化的CPU結(jié)構(gòu),加上精簡(jiǎn)指令集(RISC)技術(shù),更加快了指令執(zhí)行速度,這為復(fù)雜控制算法的實(shí)現(xiàn)提供了良好的條件。
       本系統(tǒng)采用的是PIC16F87系列單片機(jī),其內(nèi)部集成了同步/異步串行接口USART模塊,適合同單片機(jī)外部擴(kuò)展獨(dú)立的外設(shè)部件進(jìn)行串行通信。并且可以定義三種工作方式:全雙工異步、半雙工同步主控和半雙工同步從動(dòng)方式。

       2 PIC單片機(jī)控制Modem 實(shí)現(xiàn)異步串行通信
       利用PIC單片機(jī),可實(shí)現(xiàn)對(duì)Modem的控制,從而進(jìn)行異步通信。USART模塊在單片機(jī)的RX引腳上接收,在TX引腳上發(fā)送,串行信息的編碼方式采用1 位起始位、8位數(shù)據(jù)位和1位停止位。片內(nèi)提供了一個(gè)專用的8位波特率發(fā)生器BRG,利用來(lái)自時(shí)基振蕩器的系統(tǒng)時(shí)鐘信號(hào),產(chǎn)生標(biāo)準(zhǔn)的波特率時(shí)鐘。USART 模塊的接收和發(fā)送數(shù)據(jù)順序是地位在前。即首先發(fā)送最低位(LSB)。USART模塊的接收器和發(fā)送器在功能上是相互獨(dú)立的,但是它們所用的數(shù)據(jù)格式與波特率是相同的。

        2.1異步串行通信硬件連接
       PIC控制Modem串行通信的原理圖如圖1。

         PIC將要發(fā)送的數(shù)據(jù)通過(guò)串口送給本端Modem,將數(shù)字信號(hào)調(diào)制成可在模擬線路上傳輸?shù)哪M信號(hào),并通過(guò)模擬線路傳給遠(yuǎn)方的Modem。遠(yuǎn)方的 Modem將收到的模擬信號(hào)還原為數(shù)字信號(hào)送給與其相連的PIC,PIC通過(guò)異步串口發(fā)送AT(請(qǐng)求)命令來(lái)實(shí)現(xiàn)對(duì)Modem控制進(jìn)行串行通信,與 Modem接口按RS-232標(biāo)準(zhǔn)設(shè)計(jì)。PIC的輸入輸出電平為TTL電平,我們通過(guò)電平轉(zhuǎn)換芯片MAX232,實(shí)現(xiàn)與RS-232接口的匹配。系統(tǒng)中對(duì) Modem的初始化、呼叫(應(yīng)答)、傳輸數(shù)據(jù)及掛機(jī)等都由PIC發(fā)送的AT命令通過(guò)存于Modem的Flash ROM中的程序控制完成。

          2.2 異步串行通信軟件設(shè)計(jì)

         2.2.1 PIC單片機(jī)與USART模塊相關(guān)的寄存器
  

         PIC單片機(jī)USART模塊的兩條外接引腳是與輸入/輸出端口RC模塊公用的RC7/RX/DT和RC6/TX/CK兩條口線,與USART模塊有關(guān)的寄存器共有9個(gè)。
  

        在此.就PIC工作于USART模式時(shí),所涉及的一些位進(jìn)行介紹,詳見(jiàn)表1。

       中斷控制寄存器INTCON,第一外圍設(shè)備中斷標(biāo)志寄存器PIR1。第一外圍設(shè)備中斷屏蔽寄存器PIE1,端口C方向寄存器TRISC,發(fā)送狀態(tài)和控制寄存器TXSTA,接收狀態(tài)和控制寄存器RCSTA,發(fā)送寄存器TXREG,接收寄存器RCREG,波特率寄存器SPBRG。

       2.2.2 USART模塊波特率設(shè)置
  

        USART模塊帶一個(gè)8位的波特率發(fā)生器(BRG),BRG支持USART的同步方式和異步方式。用波特率寄存器SPBRG控制一個(gè)獨(dú)立的8位定時(shí)器周期。波特率發(fā)生器可以根據(jù)BRGH位(發(fā)送狀態(tài)和控制寄存器TXSTA的位2)的設(shè)置,產(chǎn)生兩種不同的移位速度,分別是對(duì)于系統(tǒng)時(shí)鐘16分頻和64分頻得到的波特率時(shí)鐘。用波特率寄存器SPBRG控制一個(gè)獨(dú)立的8位定時(shí)器周期。在異步方式下,BRGH位也被用來(lái)控制波特率;在同步方式下。不用BRGH位。表2給出了在主控方式下,不同USART工作方式的波特率計(jì)算公式(x為寫入SPBRG寄存器的值)。

   2.2.3 通信程序設(shè)計(jì)
       要實(shí)現(xiàn)系統(tǒng)的正常數(shù)據(jù)傳輸,正確設(shè)置PIC異步串口USART至關(guān)重要。在此,以異步接收方式為例,編寫程序應(yīng)遵循以下幾個(gè)步驟:

       (1)選擇合適的波特率,然后根據(jù)表2計(jì)算出SPBRG寄存器的值(x),并將其寫入SPBRG寄存器;
       (2)設(shè)置SYNC=0,SPEN=1,使USART工作于異步方式;
       (3)如需中斷功能,將中斷控制寄存器的中斷屏蔽GIE和PEIE置1,同時(shí)置第一外圍設(shè)備中斷屏蔽寄存器的RCIE=1;
       (4)如需接收9位數(shù)據(jù),置接收狀態(tài)和控制寄存器的RX9=1;
       (5)置接收狀態(tài)和控制寄存器的CREN=1,激活接收器;
       (6)當(dāng)一個(gè)字節(jié)接收完后,產(chǎn)生中斷請(qǐng)求,如果RCIE=1,便產(chǎn)生中斷;
       (7)讀RCSTA寄存器以便獲得第9位數(shù)據(jù)(如果選擇了接收9位數(shù)據(jù)),并且判斷是否在接收過(guò)程中發(fā)生了錯(cuò)誤;
       (8)讀RCREG寄存器中已經(jīng)收到的8位數(shù)據(jù);
       (9)如果發(fā)生了接收錯(cuò)誤,通過(guò)置CREN=0以清除錯(cuò)誤標(biāo)志。
  

       下面給出了串口的初始化程序:
       bsf STATUS,RP0 ;選擇存儲(chǔ)體1
       bcf STATUS,RP1
       bsf TRISC,7 ;設(shè)置RC7腳為輸入狀態(tài)
       bcf TRISC,6 ;設(shè)置RC6腳為輸出狀態(tài)
       movlw 25H ;設(shè)置波特率
       movwf SPBRG
       movlw 20H ;設(shè)定8位發(fā)送/接收
       movwf TXSTA ;設(shè)定異步方式。低速方式
       bsf PIE1,TXI ;使能發(fā)送器中斷
       bsf PIE1,RCIE ;使能接收器中斷
       bcf STATUS,RP0 ;選擇存儲(chǔ)體0
       movlw 0x90 ;設(shè)定8位接收,使能接收器
       movwf RCSTA ;使能串口
  異步串行通信主程序框圖如圖2,中斷服務(wù)子程序框圖如圖3?!            ?/p>

                    

2.3 Modem設(shè)置
       在Modem安裝好開(kāi)通之前,須預(yù)先設(shè)置好Modem的初始狀態(tài)。PIC上電后,需對(duì)Modem進(jìn)行復(fù)位操作,發(fā)送命令設(shè)置Modem結(jié)果碼形式。
        Modem初始化服務(wù)程序執(zhí)行Modem初始化命令和呼叫(應(yīng)答)等。Modem的呼叫、應(yīng)答采用自動(dòng)方式。在進(jìn)行通信之前,呼叫PIC發(fā)出ATD (專線方式)命令,Modem監(jiān)測(cè)線路上的載波。如果檢測(cè)到載波,則返回連接成功結(jié)果碼;否則返回?zé)o載波結(jié)果碼。兩端Modem正確可靠地建立起數(shù)據(jù)鏈路后。就可以進(jìn)行數(shù)據(jù)通信了。通信完成以后,雙方Modem若要拆線掛機(jī).則Modem由數(shù)據(jù)狀態(tài)轉(zhuǎn)為命令狀態(tài),PIC發(fā)出ATH(掛機(jī)命令)實(shí)現(xiàn)掛機(jī)。掛機(jī)后要對(duì)Modem的自動(dòng)應(yīng)答和中斷等狀態(tài)進(jìn)行重新設(shè)置。

        3 PIC控制Modem 同步串行通信
        用PIC的同步串口USART控制Modem實(shí)現(xiàn)同步數(shù)據(jù)通信,保證了數(shù)據(jù)的高效率和實(shí)時(shí)傳輸。PIC的USART模塊工作于同步方式時(shí),RC7引腳被用做數(shù)據(jù)雙向傳輸通道DT,RC6引腳被用做時(shí)鐘發(fā)送/接收專線CK。線路上的數(shù)據(jù)格式可以是8位或者9位,由于利用時(shí)鐘專線進(jìn)行雙方同步,就不需要起始位和停止位了。同步數(shù)據(jù)是在一條線路上雙向傳輸?shù)?,而時(shí)鐘卻是在一條線路上固定從主機(jī)向從機(jī)單向發(fā)送的。
       同步串口的初始化與異步串口通信類似,程序設(shè)計(jì)可參照2.2,對(duì)Modem進(jìn)行相應(yīng)的初始化,使其工作于同步模式。

       4 結(jié)論
       本系統(tǒng)用PIC單片機(jī)控制Modem的同步/異步串行通信,實(shí)現(xiàn)了數(shù)據(jù)的遠(yuǎn)程傳輸,可方便提供多種速率,硬件構(gòu)成簡(jiǎn)單,軟件設(shè)計(jì)容易。在點(diǎn)對(duì)點(diǎn)的遠(yuǎn)程數(shù)字終端維護(hù)中,傳輸數(shù)據(jù)、話音及傳真收到了很好的效果。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

今天,小編將在這篇文章中為大家?guī)?lái)調(diào)制解調(diào)器的有關(guān)報(bào)道,通過(guò)閱讀這篇文章,大家可以對(duì)調(diào)制解調(diào)器具備清晰的認(rèn)識(shí),主要內(nèi)容如下。

關(guān)鍵字: 調(diào)制解調(diào)器 MODEM 多路復(fù)用

摘要:介紹了一種使用3G手機(jī)短信(SMS)進(jìn)行家電遠(yuǎn)程控制的物聯(lián)網(wǎng)系統(tǒng)的設(shè)計(jì)方法,該方法的主要思路是3GMODEM和紅外線遙控的結(jié)合應(yīng)用,可在3GMODEM收到短信并通過(guò)系統(tǒng)控制平臺(tái)處理后發(fā)送控制數(shù)據(jù)給單片機(jī)控制器,然后...

關(guān)鍵字: SMS 3G MODEM 紅外線遙控 家電控制

說(shuō)到通信設(shè)計(jì)院,相信很多人都聽(tīng)說(shuō)過(guò)。平常我們?cè)谛侣剤?bào)道中,經(jīng)常會(huì)看到各家設(shè)計(jì)院的名字出現(xiàn),例如聯(lián)通設(shè)計(jì)院、中移設(shè)計(jì)院,等等。最近各地校招啟動(dòng),有一些同學(xué)收到了設(shè)計(jì)院的offer,于是問(wèn)我,設(shè)計(jì)院到底是干啥的?今天,我就給...

關(guān)鍵字: 通信設(shè)計(jì)

1 前言   近年來(lái),數(shù)字化電視技術(shù)迅猛發(fā)展,特別是遙控系統(tǒng)的面市,各廠商在電視機(jī)中加人微處理器(MCU),各種人工智能化彩電完全替代了老式電視手動(dòng)(機(jī)械式)控制和記憶方式。隨著電視專用

關(guān)鍵字: eeprom 串行通信 i2c總線

  無(wú)論任何產(chǎn)品,品質(zhì)的好壞主要取決于性能的優(yōu)劣,而性能優(yōu)劣的關(guān)鍵跟產(chǎn)品結(jié)構(gòu)和工作原理又有著較大的關(guān)系,CCD和CMOS也既如此。   基本組成   CCD是在MOS晶體管的基礎(chǔ)

關(guān)鍵字: 串行通信 多線程 動(dòng)態(tài)鏈接庫(kù) vc開(kāi)發(fā)環(huán)境

  當(dāng)前,軟件定義網(wǎng)絡(luò)(SDN)成為業(yè)界一個(gè)時(shí)髦的話題,SDN技術(shù)及其可能帶來(lái)的影響受到了學(xué)術(shù)界和產(chǎn)業(yè)界的高度重視,同時(shí)也存在著對(duì)SDN不同的理解和認(rèn)識(shí)。近日,從一知名的社交新聞?wù)军c(diǎn)&mdash

關(guān)鍵字: sdn 通信設(shè)計(jì)

  隨著計(jì)算機(jī)網(wǎng)絡(luò)化和微機(jī)分級(jí)分布式應(yīng)用系統(tǒng)的發(fā)展,通信的功能越來(lái)越重要。通信是指計(jì)算機(jī)與外界的信息傳輸,既包括計(jì)算機(jī)與計(jì)算機(jī)之間的傳輸,也包括計(jì)算機(jī)與外部設(shè)備,如終端、打印機(jī)和磁盤等設(shè)備之間的

關(guān)鍵字: mipi 串行通信 時(shí)鐘

1、引言 隨著微處理器、計(jì)算機(jī)和數(shù)字通信技術(shù)的飛速發(fā)展,計(jì)算機(jī)控制已經(jīng)擴(kuò)展到了幾乎所有的工業(yè)領(lǐng)域。其中,PLC和單片機(jī)在小規(guī)??刂葡到y(tǒng)中獲得了廣泛的應(yīng)用。 在塑料擠出機(jī)溫度自動(dòng)控

關(guān)鍵字: pic16f877 plc 串行通信

引言 計(jì)算機(jī)串行通信是計(jì)算機(jī)與控制設(shè)備(如變頻器)進(jìn)行數(shù)據(jù)傳送的一種通信方式,也是實(shí)現(xiàn)工業(yè)自動(dòng)控制經(jīng)常用到的通信模式。每一種通信方式都嚴(yán)格約定了與其對(duì)應(yīng)的通信協(xié)議。要確保計(jì)算機(jī)與變頻器之

關(guān)鍵字: 串行通信 變頻器

串行通信技術(shù),是指通信雙方按位進(jìn)行,遵守時(shí)序的一種通信方式。串行通信中,將數(shù)據(jù)按位依次傳輸, 每位數(shù)據(jù)占據(jù)固定的時(shí)間長(zhǎng)度,即可使用少數(shù)幾條通信線路就可以完成系統(tǒng)間交換信息,特別適用于計(jì)算機(jī)與計(jì)算

關(guān)鍵字: 串行通信 光電耦合器

單片機(jī)

21600 篇文章

關(guān)注

發(fā)布文章

編輯精選

技術(shù)子站

關(guān)閉