LED 순차 소등 하기 PORTC.0 => PORTC.7 순서로
1초 간격으로 LED 를 PORTC.0 부터 PORTC.7까지 OFF 하고, 모두 OFF 된 후에는 처음상태로 돌아간 후 반복합니다.
전체 소스 Codevision 용
/********************************************* LED 순차소등하기PORTC.0 => PORTC.7 순서로 PORTC ==> LED 연결
Tools : Codevision http://watsim.tistory.com *********************************************/
#include <mega128.h>
// time delay for 20us void Delay_20us(char time_us) { register char i; for(i = 0; i < time_us; i++) // 4 cycle + { #asm PUSH R0 ; // 2 cycle + POP R0 ; // 2 cycle + #endasm } }
// time delay for ms void Delay_1ms(unsigned int time_ms) { register unsigned int i; for(i = 0; i < time_ms; i++) { Delay_20us(50); } }
void main(void) { char chTemp=0;
DDRC=0xFF;
while (1) { PORTC = 0x00; Delay_1ms(1000);
for( chTemp = 0;chTemp<8;chTemp++) { PORTC |=(1<<chTemp); Delay_1ms(1000); } } } |
주요 부품
ATMEGA128 - 1EA LED – 8EA Register – 8EA POWER 5V/1A |
'CodeVision 용 소스' 카테고리의 다른 글
Switch 4개의 상태에 따른 LED ON/OFF 변화 (0) | 2011.02.21 |
---|---|
Character LCD Control (0) | 2011.02.18 |
LED 순차 점등 하기 PORTC.0 => PORTC.7 순서로 (2) | 2011.02.05 |
1초마다 1칸씩 LED 시프트하기 (0) | 2011.01.28 |
스위치 누를 때마다 1 증가하는 카운터 (0) | 2011.01.28 |