森狼藤野 2024-07-15 11:43 采纳率: 66.7%
浏览 3
已结题

关于#c语言#的问题:函数test2()的形参是有符号类型,但是电脑端接受的数据最大是255(相关搜索:51单片机串口通信)



```c
void test()
{
    SCON=0x40;          //01000000   设置串口通信模式
    PCON=0;
  TMOD &= 0x0F;          //设置定时器模式
    TMOD |= 0x20;    
    TL1 = 0xFA;            //设置定时初始值
    TH1 = 0xFA;            
    TR1=1;            //定时器1启动
}

void test2(char Byte)
{
    SBUF=Byte;         //单片机发送信号
    while(TI==0);  //如果发送8位至1,随后软件置0 没有发送完毕就一直等待
    TI=0;
}

 int a=129;
void main()
{
                
     test();
//    test2(128);
    Delay(2000);
    while(1)
    {
        test2(a);
        a++;
        Delay(100);
    }
    
    
    
    
}


img


函数test2()的形参是有符号类型,能存储的数据最大是128,但是电脑端接受的数据最大是255,为什么是这样?

  • 写回答

4条回答 默认 最新

  • 老皮芽子 2024-07-15 12:06
    关注

    电脑接收RS232数据,是8位无符号的数,只能是 0 - 255
    你发出 -1 ,电脑接收 255
    你发出 -127 ,电脑接收 129

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 7月23日
  • 已采纳回答 7月15日
  • 创建了问题 7月15日

悬赏问题

  • ¥15 系统 24h2 专业工作站版,浏览文件夹的图库,视频,图片之类的怎样删除?
  • ¥15 怎么把512还原为520格式
  • ¥15 MATLAB的动态模态分解出现错误,以CFX非定常模拟结果为快照
  • ¥15 求高通平台Softsim调试经验
  • ¥15 canal如何实现将mysql多张表(月表)采集入库到目标表中(一张表)?
  • ¥15 wpf ScrollViewer实现冻结左侧宽度w范围内的视图
  • ¥15 栅极驱动低侧烧毁MOSFET
  • ¥30 写segy数据时出错3
  • ¥100 linux下qt运行QCefView demo报错
  • ¥50 F1C100S下的红外解码IR_RX驱动问题