既然你要用到尽可能多的LED,推荐使用译码芯片,这样子的话,8个端口可以控制256个灯。51的话,开定时器,定时一到就启动一个中断函数,在这个中断函数里面随便点亮一个灯,并且让喇叭响一下。这个缺点就是一次只能亮一个灯。如果不用译码芯片,就是一个脚对应一个灯的话,你可以开2个定时器,一个频率快一点的,随机选取某几个灯,做一个类似缓冲区的东西,然后另外一个定时器就是久一点,这个定时就把上次缓冲区选取的灯全部点亮。其他的话,就是如何写随机选灯的环节了,使用随机数函数就可以了,这个在资料http://wenku.baidu.com/view/2c310122482fb4daa58d4b68.html里面有更加详尽的介绍就不多说了。
如果你有固定的灯数要亮,你可以选择“你要的灯数”这个多个译码芯片,每个芯片都可以选择一个灯亮,这么就好一点点
渐变正如楼下所说,调节占空比就可以实现了,选完灯之后就让他占空比从0到100,然后再到0这样子
渐变 ,那肯定要用到PWM. 一个定时器就可以实现了。
蛋疼, 给点票子,给你做好全部