新聞中心

AVR單片機(jī)-流水燈1

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

  原理圖如下:

本文引用地址: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í)函數(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)左移

}
}
}

程序效果圖:


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

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

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



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

評(píng)論


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

關(guān)閉