欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 7559|回復: 13
收起左側

手機連接hc05藍牙后亂碼問題

[復制鏈接]
ID:687992 發(fā)表于 2020-3-2 16:39 | 顯示全部樓層 |閱讀模式
我用的時hc05想和stc15通訊,配置了
TMOD = 0X11;
TH0=0XD8;  //T0初值
TL0=0XF0;
TH1=0;   //T1初值
TL1=0;
EA=1;  //開啟總中斷
TR0=1;
ET0=1;  //允許T0中斷
ET1=1;  //允許T1中斷
ES=1;  //允許串口中斷
  SCON=0X50;   //藍牙
  PCON=0X80;  //藍牙
SM0=0;
SM1=1;




還弄了個中斷
void zhongduan() interrupt 4
{
i=SBUF;
RI=0;
}

但手機連接的時候卻接收到了很多亂碼,想知道咋回事,看了些帖子也沒有我這種情況的......
回復

使用道具 舉報

ID:88256 發(fā)表于 2020-3-2 17:19 | 顯示全部樓層
藍牙模塊發(fā)送接收的數(shù)值是hex的還是ASCII的?這兩個沒設置對的話絕對亂碼
回復

使用道具 舉報

ID:697917 發(fā)表于 2020-3-2 17:31 | 顯示全部樓層
波特率配置看看是否一致。
回復

使用道具 舉報

ID:481073 發(fā)表于 2020-3-2 17:37 | 顯示全部樓層
檢查下波特率錯了沒,波特率錯了是會亂碼的
回復

使用道具 舉報

ID:687992 發(fā)表于 2020-3-3 09:12 | 顯示全部樓層
黎明初至 發(fā)表于 2020-3-2 17:31
波特率配置看看是否一致。

我是用的手機藍牙串口,藍牙也是默認9600波特率
回復

使用道具 舉報

ID:687992 發(fā)表于 2020-3-3 09:12 | 顯示全部樓層
流星2019 發(fā)表于 2020-3-2 17:37
檢查下波特率錯了沒,波特率錯了是會亂碼的

我是用的手里藍牙串口,藍牙是默認9600波特率
回復

使用道具 舉報

ID:687992 發(fā)表于 2020-3-3 09:13 | 顯示全部樓層
hhdsdy 發(fā)表于 2020-3-2 17:19
藍牙模塊發(fā)送接收的數(shù)值是hex的還是ASCII的?這兩個沒設置對的話絕對亂碼

我想發(fā)的是16進制,發(fā)過去的也是0x01啥的
回復

使用道具 舉報

ID:687992 發(fā)表于 2020-3-3 09:41 | 顯示全部樓層
hhdsdy 發(fā)表于 2020-3-2 17:19
藍牙模塊發(fā)送接收的數(shù)值是hex的還是ASCII的?這兩個沒設置對的話絕對亂碼

額我在手機上設置的發(fā)送16進制,接收16進制
回復

使用道具 舉報

ID:687992 發(fā)表于 2020-3-3 09:46 | 顯示全部樓層
啊啊啊我知道為什么了,RXD和TXD接反了
回復

使用道具 舉報

ID:407089 發(fā)表于 2020-3-3 10:29 | 顯示全部樓層
檢查一下你代碼中下面兩組數(shù)據(jù),很可能不對,要不你把Focs提供一下。
TH0=0XD8;
TL0=0XF0;
回復

使用道具 舉報

ID:679425 發(fā)表于 2020-3-3 10:31 | 顯示全部樓層
藍牙模塊發(fā)送接收的數(shù)值是hex的還是ASCII的
回復

使用道具 舉報

ID:687992 發(fā)表于 2020-3-3 21:18 | 顯示全部樓層
brew9 發(fā)表于 2020-3-3 10:29
檢查一下你代碼中下面兩組數(shù)據(jù),很可能不對,要不你把Focs提供一下。
TH0=0XD8;
TL0=0XF0;

#include "REG51.h"
#include "oled.h"
#include "bmp.h"
unsigned char i;  //藍牙變量

int main(void)
{       
         
        TMOD = 0X11;
        TH0=0XD8;  //T0初值
        TL0=0XF0;
        TH1=0;   //T1初值
        TL1=0;
        EA=1;  //開啟總中斷
        TR0=1;
        ET0=1;  //允許T0中斷
        ET1=1;  //允許T1中斷
        ES=1;  //允許串口中斷
        SCON=0X50;   //藍牙
      PCON=0X80;         //藍牙
        SM0=0;
        SM1=1;
}

void zhongduan() interrupt 4
{
        i=SBUF;
        RI=0;
        SBUF=i;
        while(!TI);
        TI=0;
}
這是我的完整程序,前面多出來兩個頭文件是OLED的,TL1是超聲波的,沒用上
回復

使用道具 舉報

ID:407089 發(fā)表于 2020-3-7 10:57 | 顯示全部樓層
STC15單片機默認用T2做波特率發(fā)生器,你這程序寄存器配置不對。
要想把問題搞明白,你還得提供內(nèi)部晶振工作頻率(Focs)。

另外,
SCON=0X50;   //藍牙
上面這句已經(jīng)包含了SM0=0; SM1=1;
回復

使用道具 舉報

ID:691449 發(fā)表于 2020-3-7 15:41 | 顯示全部樓層
stc15單片機串口是默認用T2定時器的,用T0需要另外設置,這些手冊上都有,stc-isp軟件上也有例程,stc15的串口和以前的不太一樣。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表