新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > AVR单片机-流水灯1

AVR单片机-流水灯1

作者: 时间:2016-11-29 来源:网络 收藏
今天开始进入AVR单片机的学习,刚拿到学习板没多久,开始我的第一课----流水灯

  原理图如下:

本文引用地址:https://www.eepw.com.cn/article/201611/323496.htm

  





源代码:

/*
* LED.c
*

* Created: 2011-6-24 12:00:23
* Author: ZYIN
*/

#include <avr/io.h>

void delay(void) //延时函数
{
unsignedint j;
j=60000;
while(j--);
}

int main(void) //主函数
{
char temp;
DDRF=0b11111111; //PF口设置为输出
PORTF=0b00001000;//PF3位设置为1,使能74hc573锁存器
DDRA=0xff; //PA口设置为输出

while(1)       //流水灯循环
{
int i;
temp=0b00000001; //初始化

for(i=0;i<8;i++)
{
PORTA=~temp; // 输出流水灯状态
delay();
delay();
delay();
temp<<=1; //状态左移

}
}
}

程序效果图:


写完这个程序才发现,AVR的确要比51的速度快啊。

void delay(void) //延时函数
{
int j;
j=60000;
while(j--);
}

这个延时函数在51需要大约1秒左右;而AVR大约在100ms多左右。



关键词: AVR单片机流水

评论


技术专区

关闭