标题: 74HC595控制流水灯灯数怎么增减 [打印本页]

作者: PEB188    时间: 2021-9-25 19:41
标题: 74HC595控制流水灯灯数怎么增减
用74HC595做了流水灯,卡在增减灯数上了,temp=0xffff,用限制循环次数得方式减灯,假如减掉4个灯,从左往右会在右边空出减掉得灯数temp=0xf000,反过来又是左边空出来 减掉得灯数temp=0x000f。
有没有好的加减灯的方法


作者: 188610329    时间: 2021-9-25 20:25
做一个数组, 对应:  unsigned short Led[16] = {0x8000, 0xc000,0xe000,0xf000,0xf800,…………}
根据你需要的量灯数, 调用这个数组就好了。
作者: 188610329    时间: 2021-9-25 20:40
刚才有疏忽, 包括全灭状态,应该17个状态,
unsigned short Led[17] = {0x0000,0x8000, 0xc000,0xe000,0xf000,0xf800,…………}

还有个非常不推建的方法:
LED_Buff |= _iror_ (LED_Buff, 1);            //加一个灯
LED_Buff &= _iror_ (LED_Buff, 1);            //减一个灯
此方法,在全亮或全灭时无效。需要额外语句处理。

作者: lkc8210    时间: 2021-9-25 23:15
for(i = 0;i<12;i++)
  temp = 0xFFFF << i;
for(i = 0;i<12;i++)
  temp = 0xFFFF >> i;
作者: xianfajushi    时间: 2021-9-26 08:09
什么玩艺,亮灯就送亮灯的值就好了,发送次数不变.




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1