不需要汇编
设定好之后,一个NOP就应该是对应的125uS,如果是300uS,那就是你代码或者配置的问题
这种单片机随便写2812的,不管多少个灯
写入的时候是要关闭所有中断的,不然颜色很容易出错
如果程序需要高的效率,肯定是不能一下子写完所有的灯,灯多的话,可能会卡个几十mS的,这肯定是不行的
你可以把代码逻辑优化一下,每5mS写一个灯,然后去执行一下主程序的其它代码,下一个5mS再写第二个灯,这样下来,100个灯的用时会用到500mS,整体效果不会差太多,或者是改成1mS写入一个灯
市场上大多的2812都是用这个低端单片机控制的,想改不太现实的
有的是因为单片机供应商是固定的,有的是不想换单片机,产品后期维护太难,有的就是成本问题,大批量产品,1分钱的成本都是很敏感的 |