1024手机基地看电影,午夜福利视频导航,国产精品福利在线一区,亚洲欧美日韩另类成人,在线观看午夜日本理论片,成年超爽免费网站,国产精品成人免费,精品动作一级毛片,成人免费观看网站,97精品伊人久久大香蕉

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2615|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

52單片機(jī)串口發(fā)送問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
我通過(guò)52單片機(jī)串口發(fā)送數(shù)據(jù)0x7E,0x04,0x41,0x00,0x01,0xEF后接收緩沖區(qū)第一次顯示 80 28 81 07 ,第二次顯示84 28 81 0F,第三次顯示80 28 81 07(因?yàn)槲沂歉粢欢螘r(shí)間發(fā)送一次,但是為什么顯示的會(huì)不一樣,而且每次都不同),但是我用串口助手直接發(fā)送 7E,04,41,00,01,EF,接收緩沖區(qū)中顯示AA 02 41 EF,因?yàn)槲疫@個(gè)是要發(fā)給一個(gè)音樂(lè)播放模塊,直接用串口助手發(fā),可以播放音樂(lè),但是在代碼里面寫發(fā)送的數(shù)據(jù)卻不能播放音樂(lè),請(qǐng)問(wèn)是為什么
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:7485 發(fā)表于 2018-7-17 20:18 | 只看該作者
晶振是多少的?波特率誤差大嗎?
回復(fù)

使用道具 舉報(bào)

板凳
ID:305486 發(fā)表于 2018-7-18 08:36 | 只看該作者
ahshmj 發(fā)表于 2018-7-17 20:18
晶振是多少的?波特率誤差大嗎?

晶振11.0592,波特率誤差應(yīng)該不大
回復(fù)

使用道具 舉報(bào)

地板
ID:373922 發(fā)表于 2018-7-18 11:15 | 只看該作者
首先你JDQdata8數(shù)組你定義大小為7,但是你初始化的只有6個(gè),JDQdata8[6] 可能系統(tǒng)隨機(jī)定義
回復(fù)

使用道具 舉報(bào)

5#
ID:373922 發(fā)表于 2018-7-18 11:16 | 只看該作者
其次for循環(huán)i應(yīng)該從0開(kāi)始加,不然你永遠(yuǎn)打印不了JDQdata8[0]
回復(fù)

使用道具 舉報(bào)

6#
ID:373922 發(fā)表于 2018-7-18 11:17 | 只看該作者
你這個(gè)應(yīng)該就是波特率的問(wèn)題,波特率配置
回復(fù)

使用道具 舉報(bào)

7#
ID:373565 發(fā)表于 2018-7-18 12:19 | 只看該作者
/*-----------------------------------------------   名稱:串口通信   編寫:LZM   日期:2015.05   修改:無(wú)   內(nèi)容:連接好串口波特率設(shè)置為9600,無(wú)奇偶校驗(yàn)         晶振11.0592MHz                 接上串口,可以接收到自己發(fā)送的字符 ------------------------------------------------*/  #include<reg52.h> //包含頭文件,一般情況不需要改動(dòng),頭文件包含特殊功能寄存器的定義                          /******************************************************************* 請(qǐng)?zhí)崆坝?jì)算一下所選晶振能達(dá)到的最高速度,波特率不能超過(guò)最高速度 (1) 波特率加倍(SMOD=1):  Max_Baud = FOSC/12/16 (2) 波特率不加倍(SMOD=0):Max_Baud = FOSC/12/32 例如:22.1184MHz晶振,波特率加倍時(shí),最大波特率=22118400/12/16=115200 *******************************************************************/ #define FOSC        11059200                //振蕩頻率 #define BAUD        9600                        //波特率 #define SMOD        1                        //是否波特率加倍 #if SMOD         #define TC_VAL        (256-FOSC/16/12/BAUD) #else         #define TC_VAL        (256-FOSC/32/12/BAUD) #endif  typedef unsigned char uint8; typedef unsigned int uint16;  code const char str1[] = "The string is 來(lái)自單片機(jī)!\r\n"; code const char str2[] = "Author: louis \r\n"; //const  限定一個(gè)變量不允許被改變。在一定程度上提高程序安全性和可靠性 //code 存儲(chǔ)區(qū)間為 程序存儲(chǔ)區(qū)  /***************函數(shù)聲明*******************/ void InitUART(void); void SendOneByte(uint8); void SendrStr(const uint8 *ptr);  /****************主函數(shù)********************/ void main(void) {     uint8 i=0;     InitUART();      while(str2[i]!='\0')     {         SendOneByte(str2[i++]);             }      SendrStr(str1);      while(1); }  /****************中斷服務(wù)函數(shù)***************/ void UART_ISR(void) interrupt 4 {     uint8 RX_Data;     //只響應(yīng)"接收"中斷,"發(fā)送"中斷來(lái)了就直接抹掉     if(RI)    {      RI = 0;        //串口中斷標(biāo)志不能自己清除,需要手動(dòng)清除      RX_Data=SBUF;      SendOneByte(RX_Data);    }    else      TI = 0;                //串口發(fā)中斷是發(fā)送完緩沖區(qū)數(shù)據(jù)之后產(chǎn)生 }  /****************串口初始化函數(shù)*************/ void InitUART(void) {     TMOD = 0x20;    //定時(shí)器1,模式2工作模式                SCON = 0x50;    //串口工作模式1,允許REN   /* SCON: 模式 1,  8-bit UART, 使能接收         */     TH1 = TC_VAL;     TL1 = TH1;     PCON = 0x80;         //發(fā)送速率加倍     ES = 1;     EA = 1;     TR1 = 1; } /**************串口發(fā)送字符函數(shù)*************/ void SendOneByte(uint8 c) {     ES = 0;                        //禁止中斷,讓串口安心工作啊     SBUF = c;     while(!TI);                //等待發(fā)送完畢     TI = 0;                        //清TI中斷     ES = 1;                        //打開(kāi)中斷 } /**************串口發(fā)送字符串函數(shù)*************/ void SendrStr(const uint8 *ptr) {     do     {         SendOneByte(*ptr);                //其實(shí)發(fā)送字符串也是在調(diào)用發(fā)送字符的函數(shù)~~     }while(*ptr++!='\0');        //要有結(jié)束判斷,否則串口發(fā)送 字符串 不知道什么時(shí)候停止 }
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表