您现在的位置: 主页 > MCU > 单片机应用 > ATmega8535L跑马灯程序(ICC编译) -
本文所属标签:
为本文创立个标签吧:

ATmega8535L跑马灯程序(ICC编译) -

来源: 网络用户发布,如有版权联系网管删除 2018-09-09 

[导读]
ATmega8535L跑马灯程序//*********************ICCAVRV6.30编译*******************//#include//头文件,AT90S8535单片机的寄存器定义#defineucharunsignedchar//数据类型说明#defineuintunsignedint//

ATmega8535L跑马灯程序

本文引用地址: http://www.21ic.com/app/mcu/201809/765371.htm

//*********************ICCAVRV6.30编译*******************//

#include//头文件,AT90S8535单片机的寄存器定义

#defineucharunsignedchar//数据类型说明
#defineuintunsignedint//数据类型说明

voidDelayMs(uinti)//Ms级延时函数,参数i:延时时间
{uintj;
for(;i!=0;i--)
{for(j=8000;j!=0;j--);}
}

voidHorse(uchari)//跑马灯程序,通过步判断点亮相应的LED
{switch(i)//高电平点亮LED
{case1:PORTA=0x01;break;//00000001B点亮LED1
case2:PORTA=0x03;break;//00000011B点亮LED1~LED2
case3:PORTA=0x07;break;//00000111B点亮LED1~LED3
case4:PORTA=0x0f;break;//00001111B点亮LED1~LED4
case5:PORTA=0x1f;break;//00011111B点亮LED1~LED5
case6:PORTA=0x3f;break;//00111111B点亮LED1~LED6
case7:PORTA=0x7f;break;//01111111B点亮LED1~LED7
case8:PORTA=0xff;break;//11111111B点亮LED1~LED8
default:break;}
}

voidmain(void)
{uchari;
DDRA=0xff;//端口设置:PA口设置为推挽1输出
PORTA=0xff;
PORTA=0x00;//PORTA初始值为0,灭掉所有的LED
DelayMs(1000);
while(1)//程序无条件执行
{for(i=0;i<9;i++)//依次点亮LED1~LED8
{Horse(i);
DelayMs(1000);}//点亮时间约1秒
for(i=7;i!=0;i--)//依次熄灭LED8~LED1
{Horse(i);
DelayMs(1000);}//熄灭时间约1秒
}
}




              查看评论 回复



嵌入式交流网主页 > MCU > 单片机应用 > ATmega8535L跑马灯程序(ICC编译) -
 

"ATmega8535L跑马灯程序(ICC编译) -"的相关文章

网站地图

围观()