고작 16MHz AVR CPU에 4kbyte 램밖에 안되는 CPU로

통신때문에 14.7456MHz로 속도제한해서 동작중인데

(명령 하나당 대략 67.8nS 소요)






led패널에 화면 뿌리는 루틴을 실행하게 하면






실제 적용된 곳..


이 느린속도의 cpu와 저용량 램으로 전광판에 64컬러 수준의 화면을 만들어냄...


심지어 화면을 뿌리면서 시리얼통신, SD카드 엑세스, 외부 메모리엑세스 다 처리해냄..



당연히 컴퓨터 화면은 더 넓고 많은 그래픽을 처리하니까 높은성능이 필요하지만

어쨋든 내 머릿속으로는 사칙연산도 몇초 걸릴때도 있고 심지어 틀릴때도 있는데

MCU는 여러 연산과 명령을 짧게 오류 없이 100% 정확하게 처리해낸다.


기계는 거짓말은 안함 ㅋㅋ









작년 말 새로 만든 기판...

이번에는 ARM프로세서를 사용했다.





AVR로는 풀컬러를 구현하지는 못하니 ARM Cortex로 넘어왔더니

FPGA없이도 웬만한 그래픽은 다 표현될 수준임 ㅋㅋ


AVR에서는 램 확보차원에서 어셈블리어를 사용해야 했지만

ARM에서는 내장 램이 넘쳐나니 C로 대충 짜도 저정도 성능이 나온다.



도트 하나하나를 순식간에 밀어내고

여러색감을 구현하기 위해 여러번 밀어내면서

순차주사(실제론 어느한 시점에 한줄씩 표현되므로 한줄씩 빠르게 스캔해야 함)까지 빠르게 해내서

사람 눈에 떠있는것 처럼 보이게 하는데

그 수많은 명령의 반복(한 프레임)을 몇ms 이내에 처리해낸다는게 가끔 재미있고 기분 좋음 ㅎㅎ