본문 바로가기

Computer Science/Embedded Software

(14)
[Embedded Software] Interrupt + 한국항공대학교 최차봉 교수님의 임베디드 SW 과목 내용을 정리한 글입니다. Polling vs Interrupt Polling 이전 실습에서 사용된 방식으로 지정한 구간에서만 이벤트가 발생했는지 체크하는 방식이다. (메인 프로그램 안에서만 체크한다.) => 즉 항상 체크할 수 없으므로, 이벤트가 발생했더라도 확률에 따라 놓칠 수 있다. + 이전 실습에서 잘 작동하지 않았던 이유: Polling방식의 코드 + 스위치 바운싱 Interrupt Polling과 달리 언제나 이벤트가 발생했는지 체크한다. ex) OS에서의 마우스 움직임 Interrupt Setting attachInterrupt(digitalPinToInterrupt(GPIO), function, mode); - attachinterrupt..
[Embedded Software] Embedded System 개발 실습 + 한국항공대학교 최차봉 교수님의 임베디드 SW 과목 내용을 정리한 글입니다. TinkerCad를 이용하여 "Morning Alarm"을 제작하라 - 아침이 밝아 빛의 양이 일정한 수치 이상이 될 때 음악을 재상한다. - 스위치를 누르면 반복 재생되던 알람이 꺼진다. // Morning Alarm // Brighter than DAWN: paly music while checking button //press button -> Stop playing music #define DAWN 7 // alram point #define LONGTIME 60000 int val; int butPressed = 0; int note[] = {262, 294, 3..
[Embedded Software] Embedded System 개발 (example) + 한국항공대학교 최차봉 교수님의 임베디드 SW 과목 내용을 정리한 글입니다. Embedded System 개발 프로세스 1. 시스템 요구 정의 - 사용자 관점에서 생각하며 시스템 개발에서 요구되는 것들을 정의한다. ex) User Interface, Scenario, QCD(Quality, Cost, Delivery) 등 2. 시스템 아키텍처 설계 - 구조 설계 - HW와 SW의 역할과 기능을 분담하고, 구성과 동작을 구체화하며 기능간 연동과 제한사항을 기술한다. 3. 소프트웨어 개발 - 상세 설계 - HLD(High Level Description, 크게 설계) => LLD(Low Level Description, 보고 바로 구현할 수 있을 정도의 설계) => 구현 ex) Unit Test(단위 테스..
[Embedded Software] Shell Script 실습 + 한국항공대학교 최차봉 교수님의 임베디드 SW 과목 내용을 정리한 글입니다. 터미널이 시작될 때마다 다음과 같이 표시되도록 환경을 설정하라. => vi .bashrc : 터미널이 시작될 때마다 실행되는 .bashrc 파일을 수정한다. echo ${LOGNAME^^} '!!!' # !를 사용할 때는 ''사용할 것 echo $(pwd) 끝 부분에 위 내용을 추가한다. $PATH 값을 읽어서 한 줄에 한 PATH씩 출력하라 (cut 명령어와 while 반복문을 이용) #!/bin/bash # display path one by one from $PATH i=1 a=$(echo $PATH | cut -d ':' -f..
[Embedded Software] Shell Script + 한국항공대학교 최차봉 교수님의 임베디드 SW 과목 내용을 정리한 글입니다. Shell Script 사용법 1. vi [Shell Script] : Shell Script 생성 2. vi로 Shell Script 작성- 상단에 #!을 작성하여 실행할 Interpreter 지정 #!/bin/bash 3. chmod u(a)+x [Shell Script] : 실행 파일로 변경 4. [Shell Script] : Shell Script 실행 echo $PATH : PATH 변수 확인 PATH 변수를 변경하여 PATH 수정 ex) PATH="$PATH:." 터미널 시작 시 자동 실행 ~/.bashrc : bash가 수행될 때 함수를 제어하는 지역 환경설정 => .bashrc 파일의 하단에 echo $LOGNA..
[Embedded Software] Linux Commands 실습 + 한국항공대학교 최차봉 교수님의 임베디드 SW 과목 내용을 정리한 글입니다. vi test 를 실행하여 임의의 문서를 작성하라. vi test ZZ 로 저장하고 끝내야 하는데 ctrl + z를 잘못 눌렀다. 이때 입력한 모든 내용을 복구하고 정상적으로 종료하기 위해 해야할 작업은 무엇인가? 사용된 명령과 용어에 대해 설명하라. bg 를 통해 Backgrouud에서 실행되고 있는 프로세스와 job번호를 확인한다. bg fg %[job번호] 를 통해 job번호에 해당하는 프로세스를 Frontground로 옮긴다. fg %1 Esc를 누르고 ZZ로 저장하고 종료한다. free 명령을 실행하여 RAM과 S..