AVR ATmega16 流水灯C程序
/**************************************************************************/
#include //包含单片机型号头文件
#include //包含"位"操作头文件
void delay(void) //自定义延时函数
{
unsigned char i,j;
for(i=0;i<255;i++)
for(j=0;j<10;j++)
;
}
void cpu_init(void) //单片机初始化函数
{
PORTA = 0x00; //PA口输出值都定义为0
DDRA = 0x00; //PA口输出允许关
PORTB = 0x00; //PB口输出值都定义为0
DDRB = 0x00; //PB口输出允许关
PORTC = 0x00; //PC口输出值都定义为0
DDRC = 0x00; //PC口输出允许关
PORTD = 0x00; //PD口输出值都定义为0
DDRD = 0x00; //PD口输出允许关
}
void main(void)
{
cpu_init(); //初始化单片机
while(1)
{
PORTA=0X00; /*点亮led灯,由系统的外部电路决定单片机输出
低电平时流水灯点亮*/
DDRA=0XFF; /*允许输出,此时PORTA的赋值才有效,这事AVR比51的地方*/
//由于其他端口没有接外围设备先不用定义
delay();
DDRA=0X00; //关闭led灯
delay();
}
}
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。