回答

收藏

[每日一帖] 之11__收发中的数据格式转换

#线上活动 #线上活动 1780 人阅读 | 0 人回复 | 2016-08-18

在串行通讯的收发过程中,为了方便是按字符的方式来进行信息交换的,而这些信息要想要想影响计时器,则相应转换为计时器的相应参数值。
收发过程中涉及的转换代码如下:
  1. while(1)
  2.                   {                               
  3.                 if(p)    //接收后从字符串中提取时、分、秒参数
  4.                         {
  5.                         p=0;
  6.                         for(j=0;j<10;j++)        send_char_com(cs[j]);
  7.             //     获取初始值
  8.             hh=(cs[0]-'0')*10+(cs[1]-'0');
  9.             mm=(cs[3]-'0')*10+(cs[4]-'0');
  10.             rtc=(cs[6]-'0')*10+(cs[7]-'0');
  11.             //  启动计时器
  12.             TR0 = 1;       
  13.             }
  14.                 else
  15.             {
  16.                                 if(f)   //  出现秒计时变化时,将计时值转换为字符串方式发送
  17.                                 {
  18.                          cs[0]=hh/10+'0';
  19.                          cs[1]=(hh%10)+'0';
  20.                          cs[3]=mm/10+'0';
  21.                          cs[4]=(mm%10)+'0';
  22.                          cs[6]=rtc/10+'0';
  23.                          cs[7]=(rtc%10)+'0';
  24.                          for(j=0;j<10;j++)        send_char_com(cs[j]);
  25.                               f=0;  //  防重复发送标志
  26.                                 }
  27.             }
复制代码
分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条