有没有大佬会单片机的编程编程的

该楼层疑似违规已被系统折叠 

51的指令执行周期并不全是15指令的12倍6倍 4倍 3倍 8倍 24倍 非整数倍的都有


}

首先从括号最里面分析i++意味着i嘚值一直在变大,直至溢出由于这些值最终赋予P0,所以判断i为8位char型变量

那么i的值从0~255变化。i++%8是拿i的值取其除以8的余数所以i++%8的值是0~7变化。

1<<XX的式子表示的是把1(即二进制状态下的)左移XX位那么1<<(i++%8)的值就是1<<0到1<<7之间变化。到这里代码是干嘛的已经见端倪了没想明白?我列个表給你

这样就清楚了这就是个流水灯的程序。从P00依次点亮到P07

那么最后还剩符号~的用处,这是按位取反指令最终成为这样:

你会发现所囿的1变成0,0变成1。这就说明电路中LED的接法是低电平点亮的

归根结底,这就是流水灯的程序

}

我要回帖

更多关于 单片机的编程 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信