BASIC4MCU | 질문게시판 | 선생님 문제하나만좀알려주세여 ㅠ
페이지 정보
작성자 goat 작성일2020-04-21 12:02 조회21,749회 댓글2건본문
1. 다음은 7-seg LED 병렬 입출력 실습에 관한 내용이다. Common Anode 7-seg LED 대신에 Common Cathode 7-seg LED를 사용하려 한다.
(a) 프로그램의 다른 부분은 변경하지 않고 아래 부분만 바꾸어서 사용하려 한다. 어떻게 바뀌어야 하는지 [ ]에 쓰시오.
⓵ unsigned char pattern[10] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92,
0x82, 0xF8, 0x80, 0x90 };
→ unsigned char pattern[10] = {[ ], [ ], [ ], [ ],
[ ], [ ], [ ], [ ], [ ], [ ]};
⓶ PORTB = ~(0x01 << j); → [ ];
(b) 이때 하드웨어 연결 한 곳을 수정하여야 한다. 어느 곳을 수정하여야 하는가?
댓글 2
조회수 21,749master님의 댓글
master 작성일
비트반전 시켜서 변경하세요
⓵ unsigned char pattern[10] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90 };
⓵ unsigned char pattern[10] = {0x3F,
하나만 적어드렸습니다. 나머지는 직접 만들어보시고
https://www.basic4mcu.com/bbs/board.php?bo_table=gesiyo10&wr_id=191
이런 예제에는 애노드와 캐소드 선언이 모두 있으니 참고하시면 더 편합니다만
2진 16진 변환이라든가, 비트 반전 정도는 모두 외우고 있어야 합니다.
//
~는 비트 반전 연산자이므로 비트반전 연산자만 제거하면 됩니다.
⓶ PORTB = ~(0x01 << j);
⓶ PORTB = 0x01 << j;
goat님의 댓글
goat 작성일아하 감사합니다. 선생님 ㅠ참고해서 해보겠습니당! 근데 (b) 문제좀 알려주세여ㅠ