900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 串口通信——串口接收数据 发送数据

串口通信——串口接收数据 发送数据

时间:2018-10-02 02:17:18

相关推荐

串口通信——串口接收数据 发送数据

十六进制HEX/hexadecimal /ˌheksəˈdesɪml/

十进制DEC/decimalism/'desiməlizəm/

二进制BIN/binary/ˈbaɪnəri/

八进制OCT/octonary /ˈɒktənəri/

波特率计算:

串口向电脑发送数据:

#include <REGX52.H>void Delayms(unsigned int time);void UartInit(void);void UART_SendByte(unsigned char Byte);main(){unsigned char Sec;UartInit();while(1){UART_SendByte(Sec);Sec++;Delayms(1000);}}

#include <REGX52.H>/*** @brief 串口初始化,4800bps@11.0592MHz* @param * @retval */void UartInit(void)//4800bps@11.0592MHz{PCON |= 0x80;//使能波特率倍速位SMODSCON = 0x40;//8位数据,可变波特率TMOD &= 0x0F;//清除定时器1模式位TMOD |= 0x20;//设定定时器1为8位自动重装方式TL1 = 0xF4;//设定定时初值TH1 = 0xF4;//设定定时器重装值ET1 = 0;//禁止定时器1中断TR1 = 1;//启动定时器1}/*** @brief 像串口发送一个字节的数据* @param Byte要发送的数据* @retval */void UART_SendByte(unsigned char Byte){SBUF=Byte;//写入即可自动发出; while(TI==0);//检测是否发出,发出则为1;TI=0;//重置;}

串口接收数据,并返回

#include <REGX52.H>void UartInit(void);void UART_SendByte(unsigned char Byte);main(){UartInit();while(1){}}void Uart_Routine() interrupt 4{if(RI==1){//保证当单片机接收数据时执行P2=SBUF; UART_SendByte(SBUF);//单片机返回接收的数据RI=0;}}

串口接收数据

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。