#include <REGX52.H>
#include <INTRINS.H>
void Delay1ms(int t) //@11.0592MHz
{
while(t --) {
unsigned char i, j;
_nop_(); //需要添加头文件
i = 2;
j = 199;
do
{
while (--j);
} while (--i);
}
}//延时1ms执行t次
void main()
{
while(1)
{
P2 = 0xFE; //1111 1110
Delay1ms(500);
P2 = 0xFD; //1111 1101
Delay1ms(500);
P2 = 0xFB; //1111 1011
Delay1ms(500);
P2 = 0xF7; //1111 0111
Delay1ms(500);
P2 = 0xEF; //1110 1111
Delay1ms(500);
P2 = 0xDF; //1101 1111
Delay1ms(500);
P2 = 0xBF; //1011 1111
Delay1ms(500);
P2 = 0x7F; //0111 1111
Delay1ms(500);
}
}
延时代码可通过软件生成,系统频率要和开发板的晶振频率相对应。
文章来源:https://www.toymoban.com/news/detail-594072.html
文章来源地址https://www.toymoban.com/news/detail-594072.html
到了这里,关于51单片机学习--LED流水灯的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!