標(biāo)題: 單片機(jī)+藍(lán)牙模塊發(fā)送接收數(shù)據(jù)程序問題 [打印本頁(yè)]

作者: 以及他,    時(shí)間: 2022-5-11 05:10
標(biāo)題: 單片機(jī)+藍(lán)牙模塊發(fā)送接收數(shù)據(jù)程序問題
jdy-10m組網(wǎng)成功的情況下,使用單片機(jī)發(fā)送廣播數(shù)據(jù)(只發(fā)廣播數(shù)據(jù))串口助手看得到有數(shù)據(jù)再發(fā)送,但是接收模塊用串口工具打開沒有接收到數(shù)據(jù),我個(gè)人認(rèn)為是單片機(jī)發(fā)送的數(shù)據(jù)沒有給到藍(lán)牙模塊改如何解決呢?代碼驗(yàn)證過它是一直在發(fā)數(shù)據(jù)的。
單片機(jī)源程序如下:
#include <STC89C5xRC.H>#include <intrins.h>
#include <string.h>
#define FOSC 11059200L      //System frequency
#define BAUD 28800           //UART baudrate
unsigned char send[7]={0xAA,0xFB,0xFF,0xFF,0x31,0x32,0x33};//?òGB·¢êy?Y373839£?2¢′ó′??úê?3?
unsigned char i;
void delay(long t)
{
  while(t--);
}
void main()
{    SCON = 0x50;            //8-bit variable UART
//3?ê??ˉ
    TMOD = 0x20;            //Set Timer1 as 8-bit auto reload mode
    TH1 = TL1 = -(FOSC/12/32/BAUD); //Set auto-reload vaule
    TR1 = 1;                //Timer1 start run
    ES = 1;                 //Enable UART interrupt
    EA = 1;                 //Open master interrupt switch
//ᢐy?Y


        while(1)
        {
                for(i = 0;i < 7;i++)
                {
                SBUF = send[ i];
                while(TI == 0);
                TI = 0;
                }
                delay(50000);
        }
}

作者: munuc_w    時(shí)間: 2022-5-11 08:21
藍(lán)牙應(yīng)用基本是透?jìng),只要RX,TX,GND接線正確就不會(huì)有問題的。
作者: lkc8210    時(shí)間: 2022-5-11 09:28
0 單片機(jī)串口接電腦,用電腦看看發(fā)出的數(shù)據(jù)是否正確
1 手機(jī)連接藍(lán)牙發(fā)射端,發(fā)射端串口接電腦,用手機(jī)藍(lán)牙串口助手看看電腦發(fā)出的數(shù)據(jù)是否正確
2 手機(jī)連接藍(lán)牙接收端,接收端串口接電腦,用電腦看看手機(jī)發(fā)出的數(shù)據(jù)是否正確
3 發(fā)射端串口接電腦,發(fā)射端藍(lán)牙連接接收端藍(lán)牙,接收端串口短接(RxD<->TxD),用電腦看看發(fā)出的數(shù)據(jù)是否正確傳回
4 發(fā)射端串口接單片機(jī),發(fā)射端藍(lán)牙連接接收端藍(lán)牙,接收端串口接電腦,用電腦看看發(fā)出的數(shù)據(jù)是否正確




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1