音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

再問TC35I的波特率

作者:wimhy 欄目:通信技術(shù)
再問TC35I的波特率
昨天明明用2400bps波特率和TC35I模塊連接好了,本想今天測(cè)試下模塊的返回?cái)?shù)據(jù),以便下一步的編程.

結(jié)果,今天一大早就來實(shí)驗(yàn)室,和模塊的通信一直不正常,發(fā)送AT指令給模塊,模塊沒有任何回應(yīng).將各個(gè)波特率300-56000都試遍了,就是不行.

給模塊打電話,電話打通了,單片機(jī)程序接受到模塊的返回?cái)?shù)據(jù),卻不是RING的ASCII碼(也沒有0x0D,0x0A),同樣用各個(gè)波特率測(cè)試了,都沒有收到正確的數(shù)據(jù).

將論壇上所有關(guān)于TC35I的帖子看了個(gè)遍,試了好些方法,都還沒有搞定.

各位朋友,支支招啊.


2樓: >>參與討論
wimhy
ding
我的測(cè)試程序:
/*****************************************************************
** 函數(shù)名: Send_char
** 輸 入: ch
** 輸 出: 無
** 功能描述:通過串口發(fā)送字符ch.
****************************************************************/

void Send_char(uchar ch)
{
    SBUF = ch;
    while(TI==0);
    TI = 0;
}
/*****************************************************************
** 函數(shù)名: Send_string
** 輸 入: *str,strlen
** 輸 出:
** 功能描述:通過串口發(fā)送字符串*str,
****************************************************************/

void    Send_string(uchar *str)
{
        do
        {
        Send_char(*str);//發(fā)送字符串.
        str++;          //地址指向下一個(gè).        
        }while(*(str)!='\0');//已經(jīng)指向字符串末尾.
}  
/******************************************************************
主程序
******************************************************************/
main()
{
     uchar    Rec[6];
    TMOD = 0x20;  /*定時(shí)器1產(chǎn)生波特率*/
    SCON = 0x50;  /*串口工作方式1(10位異步收發(fā))*/
    PCON = 0x00;  /*使用1倍速波特率*/

         TH1 = 0xF3;
    TL1 = 0xF3; /*波特率2400*/

          TR1 = 1;

    IGT = 0;         
    Delay_ms(100);     
    IGT = 1;         /*點(diǎn)火*/
    while(1)
    {
        Send_string("AT\r");
        Rec[0] = Rec_char();
        Rec[1] = Rec_char();
        Rec[2] = Rec_char();
             while(1)
}
在Rec[0]處程序就死了,接收不到串口返回的數(shù)據(jù).
接線檢查幾便了,沒有錯(cuò).
即使關(guān)閉回顯,發(fā)送AT之后也該返回一個(gè)OK啊.


3樓: >>參與討論
chunyang
可能是你的MCU系統(tǒng)波特率誤差太大或連線出了問題
能收到數(shù)但不正確,前者可能性較大。模塊的波特率是自適應(yīng)的,上電后要發(fā)個(gè)AT指令以令其自適應(yīng)你的波特率,但你的波特率要夠準(zhǔn)。

4樓: >>參與討論
wimhy
感謝斑竹
給模塊撥電話可以打通,用各種波特率接收到的數(shù)據(jù)都不正確.
斑竹自適應(yīng)波特率的意義我明白了.

我再找個(gè)11.0592的晶體試一試.


5樓: >>參與討論
wimhy
分析了下數(shù)據(jù)
在9600bps條件下,電話進(jìn)來時(shí)候接收到的數(shù)據(jù)是:
0x0D,0x0A,0xB2,0x89,0x8E,0x87,0x0D,0x0A

而正常數(shù)據(jù)因該是:
0x0D,0x0A,0x52,0X49,0X4E,0x47,0x0D,0x0A(RING)

目前使用晶體是12M,從數(shù)據(jù)上來看因該確實(shí)是晶體的問題.可惜現(xiàn)在手邊沒有11.0592的晶體,等下午買回來再看.








6樓: >>參與討論
liulicat
我是新手
我現(xiàn)在也在做用模塊通過入網(wǎng)的計(jì)算機(jī)發(fā)短信
但是還不太清楚

7樓: >>參與討論
wimhy
問題解決了
剛才從電子市場(chǎng)購(gòu)買了元件回來(這里落后,跑一趟老遠(yuǎn)了),換上11.0592的晶體,問題解決了.

回想起來整個(gè)過程,由于使用2400bps的時(shí)候在12M晶體下誤差0.16%,較小;而9600bps的時(shí)候誤差就是8.51%了,因此在2400bps下和模塊能建立正常的數(shù)據(jù)交換.但后來由于我通過指令將撥特率修改成9600了,并通過指令將9600的撥特率保存了,難怪后來就再也聯(lián)系不上了.
呵呵,加緊時(shí)間做接下來的工作吧.

特別感謝chunyang斑竹的熱心幫助!



8樓: >>參與討論
wimhy
特別感謝chunyang斑竹的熱心幫助!
 
9樓: >>參與討論
chunyang
也算“吃一塹長(zhǎng)一智”
 
10樓: >>參與討論
weidian
`
這種鉆研精神是成功的保障,值得提倡


W5360手機(jī)短信透明收發(fā)模塊AT指令中文

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
請(qǐng)教 一下最便宜的以太網(wǎng)交換芯片
學(xué)習(xí)USB
請(qǐng)教高手:什么是共道抑制,鄰道抑制?詳細(xì)一點(diǎn),有什么表達(dá)式?jīng)]有?
求助:關(guān)于串口隔離的問題
大家看這方案300米,好做么?
免費(fèi)注冊(cè)為維庫(kù)電子開發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號(hào)