BASIC4MCU | 질문게시판 | 답변 : Atmega328p 7segment 입출력제어
페이지 정보
작성자 master 작성일2019-04-13 20:59 조회3,054회 댓글0건
https://www.basic4mcu.com/bbs/board.php?bo_table=gac&wr_id=8214
본문
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2019-04-13 오후 9:02:07// by Ok-Hyun Park//#define F_CPU 16000000L#include <avr/io.h>#include <util/delay.h>//uint8_t seg[16]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x08,0x03,0x27,0x21,0x06,0x0E,};//int main(void){DDRD=0xFF;while(1){if ((PINB&0x01)==0x01)PORTD=seg[1];else if((PINB&0x02)==0x02)PORTD=seg[2];else if((PINB&0x04)==0x04)PORTD=seg[4];else if((PINB&0x08)==0x08)PORTD=seg[8];}}이 코드로는 스위치 1개에 대한 코드밖에 출력하지 못합니다.
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2019-04-13 오후 9:05:29// by Ok-Hyun Park//#define F_CPU 16000000L#include <avr/io.h>#include <util/delay.h>//uint8_t seg[16]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x08,0x03,0x27,0x21,0x06,0x0E,};//int main(void){char c;DDRD=0xFF;while(1){c=0;if(PINB&1)c|=1;if(PINB&2)c|=2;if(PINB&4)c|=4;if(PINB&8)c|=8;PORTD=seg[c];}}변수를 하나 사용해서 출력할 수도 있고
// MCU BASIC: https://www.basic4mcu.com// DateTime : 2019-04-13 오후 9:06:08// by Ok-Hyun Park//#define F_CPU 16000000L#include <avr/io.h>#include <util/delay.h>//uint8_t seg[16]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x08,0x03,0x27,0x21,0x06,0x0E,};//int main(void){DDRD=0xFF;while(1){PORTD=seg[PINB&0x0F];}}변수를 사용하지 않고도 가능합니다.
댓글 0
조회수 3,054등록된 댓글이 없습니다.