【单片机】位运算示例二,用stc89c52单片机实现流水灯效果

序言

还记得我们之前实现的流水灯吧,点这里查看,通过位运算,我们可以轻易的实现流水灯效果,本篇文章,我们对上次的效果进行升级,将实现LED两边往中间点亮的效果。
注:本文位运算用到了左移、右移、取反,如果对位运算不了解,可以看【信奥赛·算法基础】CSP-J 位运算一文

实现

为了实现LED由两边往中间点亮的效果,我们先来分析每一组的二进制数据:

轮数 二进制数
1 0111 1110
2 1011 1101
3 1101 1011
4 1110 0111
  • 接下来针对第一轮数据进行分析
    1. 先对 0111 1110取反,得到 1000 0001
    2. 将第一步得到的数据右移,得到 0100 0000
    3. 将第一步得到的数据左移,得到 0000 0010
    4. 将第二步第三步得到的数据进行与运算得到 0100 0010
    5. 显然,到了第4步,就已经能正常计算出第二轮的二进制数据
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值