早兩天在網上買了套AVR128開發板,功能著實強大,在線硬件仿真超級爽。網站的工程師很好說話,有問題發條短信過去,馬上從哈爾濱打電話過來給解決。AVR端口定義有點麻煩,剛從51過來,好不習慣,不過,會了C程序,基本上都沒什么問題。
這是LED逐個點亮程序。采用WIN-GCC編譯器。
#include <string.h>
#include <stdio.h>
#define F_CPU 7372800 /* 單片機主頻為7.3728MHz,用于延時子程序 */
#include <util/delay.h>
#include <avr/io.h>
#define delay_us(x) _delay_us(x) //AVR GCC延時函數 x(us)
#define delay_ms(x) _delay_ms(x) //AVR GCC延時函數 x(ms)
void main()
{
PORTA=0xff; //關閉數碼管端口,以免數碼管出現亂碼
PORTB=0xfe; //設定PB端口的輸出值
DDRB=0xFF; //定義PB口為輸出方式
unsigned char i;
while(1)
{
i=PORTB;
for(i=0;i<8;i++)
{
PORTB=PORTB<<1;
delay_ms(500);
}
PORTB=0xff;
delay_ms(500);
}
}
