位操作-通讯协议中读取数据信息

来源:互联网 发布:软件版本更新说明文档 编辑:程序博客网 时间:2024/06/12 14:45

     最近在维护一个高铁列车的项目,跟Hitachi合作的。

     在列车批量生产的时候,列车对需求有变动,要求将VIP车厢换成普通车厢,这个对与我们之前定义的设备及相关控制都需要做相应的变动。大环境就介绍到这,不罗嗦将技术细节。

     在这里由于行业因素,不便透露太多商业技术信息,只在技术层面讨论。写博客是为了做一个技术笔记而已,以免太久了忘记又要查资料翻阅一番。

     

      协议Hitachi,已经发文件过来,同意增加信息量了。但是信息的位置有区别但是没关系。地址不同而已,本质都一样。

 

     SO 09,  Byte: BIT8, 信息在 D0位

      D0    :0 means A, 1 means B; 

      D1     : reserve

      D2     : reserve

      D3     : reserve

      D4     : reserve

      D5     : reserve

      D6     : reserve

      D7     : reserve

 

      很显然,我需要读取这个SO09的D0位的值。。。

      翻了数字电子技术基础第二章逻辑代数中的三种基本运算,有一张与运算表。

     与逻辑  &

     运算真值表

     ——————————

     A             B        |       C

     ——————————

     0             0         |       0

     0             1         |       0

     1             0         |       0

     1             1         |       1

     ——————————

 

    Ok,最直接的方案:   SO09 & 0x01 == 1 ?

    用判断语句在执行信息分支的话

   if(SO09 & 0x01)

   {

        statement;

    }

   else

   {

       statement;

   }

   

   很基础的东西。。。呵呵呵,今天就到这里了,稍后遇到更复杂一点的取值,再往下写。。。

 

     

原创粉丝点击