打印

串口通信 发射数据如何保持为上一个数据?

[复制链接]
1358|7
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jin1song|  楼主 | 2012-5-10 11:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
沙发
ayb_ice| | 2012-5-10 11:47 | 只看该作者
记录上一个数据,简单的判断一下不就可以了

使用特权

评论回复
板凳
jin1song|  楼主 | 2012-5-10 11:57 | 只看该作者
怎么记录上一个数据呢?

使用特权

评论回复
地板
dengm| | 2012-5-10 12:21 | 只看该作者
本帖最后由 dengm 于 2012-5-10 12:23 编辑

MOV A, SBUF
          CJNE A, #55H, L_100
             SJMP L_80
L_100:CJNE A, #76H, L_110
             SJMP L_80
L_110: CJNE A, #88H, L_120
             SJMP L_80
L_120: CJNE A, #8H, L_200
L_80:
             MOV  30H, A
L_200:
             MOV SBUF, 30H

使用特权

评论回复
5
amwrdfe| | 2012-5-10 12:29 | 只看该作者
哎,这怎么会是问题呢~

static get_buf;

if (buf==0x55|buf==0x76|buf==0x88|buf==0x08) {
   get_buf=buf;
   return buf;
   }
else
   return get_buf;

使用特权

评论回复
6
jin1song|  楼主 | 2012-5-10 12:52 | 只看该作者
ls两位的程序看不太懂,

使用特权

评论回复
7
joyme| | 2012-5-10 16:59 | 只看该作者
确实太有必要提高了

使用特权

评论回复
8
jin1song|  楼主 | 2012-5-11 08:48 | 只看该作者
如果接收也要保持上一个状态呢
假如收到的是四个数据中的一个,分别执行一个操作,收到的不是四个中的一个,保持上一个状态,怎么办?
if(rec==0x55)
{P0=0x45;}
else if(rec==0x76)
{P0=0x47;}
else if(rec==0x88)
{P0=0x87;}
else if(rec==0x08)
{P0=0x07;}
else
{
保持上一个状态
}

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:在顺境中感恩,在逆境中依旧心存喜乐,认真的活在当下!

1

主题

250

帖子

2

粉丝