熱門: 51單片機(jī) | 24小時(shí)必答區(qū) | 單片機(jī)教程 | 單片機(jī)DIY制作 | STM32 | Cortex M3 | 模數(shù)電子 | 電子DIY制作 | 音響/功放 | 拆機(jī)樂園 | Arduino | 嵌入式OS | 程序設(shè)計(jì)
![]() |
發(fā)布時(shí)間: 2020-6-22 17:40
正文摘要:有大哥幫我看看這程序嗎?電腦通過串口控制led。問題:為什會(huì)有91發(fā)出來 #include <REGX52.H> #include "Delay.h" #include "UART.h" void main() { UART_Init(); & ... |
已經(jīng)解決是我的板子晶振是11.0592MHZ我配了12MHZ導(dǎo)致配錯(cuò)了波特率 |
#include "reg52.h" typedef unsigned char u8; typedef unsigned int u16; u8 x=0xff; void Uart1_Timer1_Init() { PCON |= 0x80; SCON=0x50; TMOD &= 0x0F; TMOD |= 0x20; TL1 = 0xF3; TH1 = 0xF3; ET1 = 0; TR1 = 1; ES=1; EA=1; } void main() { Uart1_Timer1_Init(); while(1) { P2=x; } } void Uart1_Interrupt() interrupt 4 { x=SBUF; RI=0; SBUF=x; while(!TI); TI=0; } |
請(qǐng)問你的晶振是否對(duì)應(yīng)的波特率,設(shè)置是否正確, 我仿真的結(jié)果是沒有問題的。沒時(shí)間幫你試試實(shí)際的電路是否正確。 |
波特率有問題,串口通信最好用外部晶振11.0592Mhz。 |
你這代碼寫的好魔性,都在中斷里處理數(shù)據(jù)???? |
Powered by 單片機(jī)教程網(wǎng)