单片机向pc发送数据,串口助手接收不到? #include “reg51.h” #include “intrins.h” #define FOSC UL//连接一个外部11.0592晶振 #define BRT (65536-FOSC/38400)//波特率为9600 sfr AUXR = 0x8e; sfr T2H = 0xd6; sfr T2L = 0xd7; typedef unsigned int u16; //对数据类型进行声明定义 typedef unsigned char u8 /******************************************************************************* * 函数名 :UsartInit() * 函数功能 :设置串口 * 输入 : 无 * 输出 : 无 *******************************************************************************/ void UartInit() { SCON=0X40; //设置为工作方式模式1,REN=0禁止串口接收数据 T2L = BRT; T2H = BRT >> 8; //设置波特率 AUXR = 0x15; //选用1T模式 重载值=65536-fosc/(波特率*4) ES=1; //打开接收中断 EA=1; //打开总中断 } /******************************************************************************* * 函 数 名 : main * 函数功能 : 主函数 * 输 入 : 无 * 输 出 : 无 *******************************************************************************/ void main() { UartInit(); // 串口初始化 while(1); } /******************************************************************************* * 函数名 : Usart() interrupt 4 * 函数功能 : 串口通信中断函数 * 输入 : 无 * 输出 : 无 *******************************************************************************/ void Usart() interrupt 4 { while(1) { u8 receiveData; receiveData=0X01;//出去接收到的数据 SBUF=receiveData;//将接收到的数据放入到发送寄存器 while(!TI); //等待发送数据完成 TI=0; //清除发送完成标志位 } } 建议先用示波器查看串口输出波形,再检查串口线,再检查串口助手波特率等通信参数是否正确。多试几个串口软件,格西调试精灵、SSCOM等。
2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/90590.html