2301_79709601 2023-12-05 20:39 采纳率: 0%
浏览 24
已结题

困扰好久了,电脑的串口调试助手向单片机发送一个字符(如:字符‘1’到‘8’),单片机点亮对应的灯(如发送字符‘2’则点亮第2个灯)并给电脑回复信息:已点亮第x个灯(其中 x 要替换成对应的数字)

  1. 串口无法返还中文,会显示空的片段啥也没有,同时无法完成点灯

#include <REGX52.H>
#include "Delay.h"
#include "UART.h"
unsigned char receivedData;

void send_string(char *s)
{
while (*s!='\0')
{
UART_SendByte(*s);
s++;
}
}

void main()
{
UART_Init(); 
UART_SendByte(10);
while(1)
{

}
}

void UART_Routine() interrupt 4
{
if(RI==1)
{
RI=0; 
receivedData=SBUF;

 switch (receivedData) {
            case '1':
                P2_0 = 0;  
                send_string("已点亮第1个灯");
                UART_SendByte(10);
                break;
            case '2':
                P2_1 = 1;  
                send_string("已点亮第2个灯");
                UART_SendByte(10);
                break;
            case '3':
                P2_2 = 0;  
                send_string("已点亮第3个灯");
                UART_SendByte(10);
                break;
            case '4':
                P2_3 = 1;  
                send_string("已点亮第4个灯");
                UART_SendByte(10);
                break;
            case '5':
                P2_4 = 1;  
                send_string("已点亮第5个灯");
                UART_SendByte(10);
                break;
            case '6':
                P2_5 = 1;  
                send_string("已点亮第6个灯");
                UART_SendByte(10);
                break;
            case '7':
                P2_6 = 1; 
                send_string("已点亮第7个灯");
                UART_SendByte(10);
                break;
            case '8':
                P2_7 = 1;  
                send_string("已点亮第8个灯");
                UART_SendByte(10);
                break;
        }
    }

以上是我的解答思路,刚学习这块,弄了好久也不会发送中文给电脑,已经将两边都改成utf8编码了
用的是51单片机89c52系列,keil5软件 串口助手用的是uart assist

  • 写回答

17条回答 默认 最新

报告相同问题?

问题事件

  • 系统已结题 12月13日
  • 创建了问题 12月5日

悬赏问题

  • ¥55 AD844 howland电流源如何驱动大额负载
  • ¥15 C++ /QT 内存权限的判断函数列举
  • ¥15 深度学习GFnet理解问题
  • ¥15 单细胞小提琴堆叠图代码
  • ¥50 升级strust2版本到2.3.15.1后使用ognl3.0.6.jar windows环境中没有问题,但部署到linux环境报错
  • ¥15 vue页面,node封装接口
  • ¥15 求TMS320F280039C工程模板!
  • ¥15 delphi+fastreport实现分组补空打印问题
  • ¥15 使用python把两台mysql数据库服务器数据导出和导入
  • ¥15 NodeBB论坛配置Apache Solr中文搜索引擎的详细教程