找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 954|回复: 1
打印 上一主题 下一主题
收起左侧

中微MCU SC8F6770程序调试问题

[复制链接]
跳转到指定楼层
楼主
ID:895643 发表于 2023-4-3 01:27 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
        各位大神,我崩溃了,请教一下,我下面这段代码      
                  tmp=0x81;//receive_byte[4];
                ///if(Crc8_table[tmp-0x08]==0xA8&&tmp==receive_byte[4])/*OK*/
                 if(Crc8_table[receive_byte[4]-0x08]==0xA8)//
                   {
                       send_buf[0]=receive_byte[0];//Crc8_table[signature];
                       send_buf[1]=receive_byte[1];
                       send_buf[2]=receive_byte[2];
                       send_buf[3]=receive_byte[3];
                       send_buf[4]=receive_byte[4];
                       send_buf[5]=Check_Receive_CRC();
                    }
      其中变量类型
       const  BYTE  Crc8_table[256] = {……};
        unsigned char tmp=0;


       那个变量tmp是我添加的来测试的, 如果我用
         if(Crc8_table[tmp-0x08]==0xA8&&tmp==receive_byte[4]),它的结果为真,
      但是我改成
          if(Crc8_table[receive_byte[4]-0x08]==0xA8),它的结果为假。
      我也尝试过 tmp=receive_byte[4];这样Crc8_table[tmp-0x08]也是假,为什么这样?         
      这是为什么?因为我没有调试工具,程序是什么跑的。按理两个条件结果应该一样的。请大神指教

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:301191 发表于 2023-4-3 22:21 | 只看该作者
顶一下
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表