新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > AVR單片機-流水燈1

AVR單片機-流水燈1

作者: 時間:2016-11-29 來源:網(wǎng)絡(luò) 收藏
今天開始進入AVR單片機的學習,剛拿到學習板沒多久,開始我的第一課----流水燈

  原理圖如下:

本文引用地址:http://m.butianyuan.cn/article/201611/323496.htm

  





源代碼:

/*
* LED.c
*

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

#include <avr/io.h>

void delay(void) //延時函數(shù)
{
unsignedint j;
j=60000;
while(j--);
}

int main(void) //主函數(shù)
{
char temp;
DDRF=0b11111111; //PF口設(shè)置為輸出
PORTF=0b00001000;//PF3位設(shè)置為1,使能74hc573鎖存器
DDRA=0xff; //PA口設(shè)置為輸出

while(1)       //流水燈循環(huán)
{
int i;
temp=0b00000001; //初始化

for(i=0;i<8;i++)
{
PORTA=~temp; // 輸出流水燈狀態(tài)
delay();
delay();
delay();
temp<<=1; //狀態(tài)左移

}
}
}

程序效果圖:


寫完這個程序才發(fā)現(xiàn),AVR的確要比51的速度快啊。

void delay(void) //延時函數(shù)
{
int j;
j=60000;
while(j--);
}

這個延時函數(shù)在51需要大約1秒左右;而AVR大約在100ms多左右。



關(guān)鍵詞: AVR單片機流水

評論


技術(shù)專區(qū)

關(guān)閉