Hardware/실습
                
              LED 조작 1
                Sean(slay)
                 2022. 9. 27. 09:48
              
              
                    
        반응형
    
    
    
  1. 3개 on - 1개 off - 2개 on - 1개 off - 1개 on
#include <mega128.h>
#include <delay.h>
void main(void)
{
	DDRC = 0xFF;
    
    while(1)
    {
    	PORTC = 0b11111000;
        delay_ms(1000);
        
        PORTC = 0b11001111;
        delay_ms(1000);
        
        PORTC = 0b01111111;
        delay_ms(1000);
    }
}
2. 3개 On - 1개 Off - 2개 On - 1개 Off - 1개 On - 전부다 Off
#include <mega128.h>
#include <delay.h>
void main(void)
{
	DDRC = 0xFF;
    
    while(1)
    {
    	PORTC = 0xFF;
        delay_ms(1000);
    
    	PORTC = 0b11111000;
        delay_ms(1000);
        
        PORTC = 0b11001111;
        delay_ms(1000);
        
        PORTC = 0b01111111;
        delay_ms(1000);
    }
}
3.
#include <mega128.h>
#include <delay.h>
void main(void)
{
	unsigned char LED_Data = 0xFF;
    
    while(1)
    {
		DDRC = 0xFF;
		
		PORTC = LED_Data;
		
		LED_Data--;
		
        delay_ms(1000);
    }
}
4.
#include <mega128.h>
void main(void)
{
	unsigned char sw;
	
	DDRC = 0xFF;	// 포트 C 출력 설정
	DDRE = 0x0;		// 포트 E 입력 설정
	PORTC = 0xFF;	// LED 모두 off
    
    while(1)
    {
		sw = PINE & 0b00100000;		// PE4 비트 추출
		
		if(!(PINE & 0b01000000)) PORTC = 10111111;
		if(!(PINE & 0b00100000)) PORTC = 11011111;
		if(!(PINE & 0b00010000)) PORTC = 11101111;
		if(!(PINE & 0b10000000)) PORTC = 01111111;
		else PORTC = 0xFF;
    }
}
반응형