[중앙대 마이크로프로세서 응용회로 설계실습] 5주차 결과 보고서
- 최초 등록일
- 2021.04.05
- 최종 저작일
- 2020.03
- 8페이지/ MS 워드
- 가격 1,000원
목차
1. 실습절차 및 내용
본문내용
이번실습에서는 led와 dot matrix 두가지를 제어하기 위한 프로그램에서 main.c와 dot.c의 함수들을 이해하고 미완성인 코드를 완성해보았다. 그리고 makefile을 통해 ximulator 실행파일을 만들어 ximulator를 통해 실제로 어떤 결과가 나오는지 확인해보았다.
3. dot.c 의 화면의 숫자가 50ms 마다 내려가는 함수 void dot_down_shift(int decimal)을 완성하고, 결과화면과 코드를 설명하시오. (void dot_up_shift(int decimal)을 참고하시면 작성 하시는데 도움 될 것 같습니다)
위 코드에서 for 루프는 *dot[i] = dot_decimal[decimal][i] 이라는 작업을 수행하는데 shift=0 일때는 입력인 decimal에 해당하는 숫자가 dot matrix에 입력되고, shift=1 일때는 각 열의 7bit data인 *dot[i]가 한비트씩 right shift된다. 이렇게 shift가 7까지 증가하면서 50ms 마다 한비트씩 right shift되어 내려가는 작업을 수행한다.
입력을 ‘25’로 했을 때 결과 화면은 다음과 같다.
4. dot.c의 화면을 0.3초 간격으로 흑백 반전하고 지우는 함수 void dot_inverse(int decimal) 을 완성하고, 결과화면과 코드를 설명하시오.
위 코드에서 shift=0일 때 먼저 입력 decimal에 해당하는 숫자가 dot matrix에 입력되고
0.3초 후에 ~연산을 이용하여 입력되었던 숫자에서 흑백반전이 일어난다. 다시 0.3초 후에 shift=1이 되어 이 작업을 반복한다. shift=3이되면 for루프를 빠져나오고 dot_clear를 이용해 dot matrix의 내용을 지운다.
입력을 ‘30’으로 했을 때 결과화면은 다음과 같다.
참고 자료
없음