교수님께서 이번과제안하면 F라하셔서 꼭해야하는데 진짜 무엇을 어찌해야할지 모르겠습니다... 라즈베리파이는 사정떄매 수업을 못들어서 설치해보고 LED 키는거밖에못했습니다. 살려주십시오...
다중 입력 다중 출력 인터럽트로 처리하기
1.라즈베리파이보드의 3번 핀으로 버튼 입력을 받는 회로 |
2.라즈베리파이보드의 0번 핀으로 제어하는 LED 회로 |
3.라즈베리파이보드의 2번 핀으로 제어하는 LED 회로 |
4.라즈베리파이보드의 4번 핀으로 제어하는 LED 회로 |
5.라즈베리파이보드의 24번 핀으로 제어하는 서보모터 회로를 구성하시오 |
>>프로그래밍(1항:5점,2항:10점) |
1.키보드 입력을 받아 24번 핀에 연결된 서보모터의 각도를 0도,90도,180도 제어 |
조건:키보드 ‘q’ 누르면 서보모터 0도 ‘w’ 누르면 90도 ‘e’ 누르면 180도 |
2.버튼 입력을 3번 핀으로 받아 0번 2번 4번에 연결된 각각의 LED를 차례대로 켜기 |
조건:1.버튼입력은 인터럽트로 처리합니다. |
조건:2.버튼을 첫번째 누르면 0번 LED 켜기, 두번째 누르면 2번 LED 켜기 |
버튼을 세번째 누르면 4번 LED 켜기, 네번째 누르면 모든 LED 끄기 |
1.라즈베리파이보드의 3번 핀으로 버튼 입력을 받는 회로 |
2.라즈베리파이보드의 0번 핀으로 제어하는 LED 회로 |
3.라즈베리파이보드의 2번 핀으로 제어하는 LED 회로 |
4.라즈베리파이보드의 4번 핀으로 제어하는 LED 회로 |
5.라즈베리파이보드의 5번 핀으로 제어하는 LED 회로 |
6.라즈베리파이보드의 1번 핀으로 제어하는 LED 회로 |
7.라즈베리파이보드의 24번 핀으로 제어하는 서보모터 회로를 구성하시오 |
>>프로그래밍(조건1:10점, 조건2:10점) |
동작결과 |
3번 핀에 연결된 버튼을 첫번째 누르면 0번 LED 켜지고, 두번째 누르면 2번 LED켜지고 세번째 누르면 4번 LED 켜지고 네번째 누르면 0,2,4번 LED 를 모두 끄기. 동시에 5번에 연결된 LED는 1초 주기로 깜박이고, 1번에 연결된 LED는 2048초 주기로 1024 단계로 밝아지고 어두워지기를 반복하기. 또한,키보드 입력을 받아 24번에 연결된 서보모터의 각도를 0도 90도 180도 제어하기 |
조건1. 버튼입력은 인터럽트 처리를 합니다. |
첫번째 버튼 누르면 0번 LED 켜기 메시지를 주쓰레드로 보내기 두번째 버튼 누르면 2번 LED 켜기 메시지를 주쓰레드로 보내기 세번째 버튼 누르면 4번 LED 켜기 메시지를 주쓰레드로 보내기 네번째 버튼 누르면 0,2,4 번 LED 끄기 메시지를 주쓰레드로 보내기 |
메인함수를 처리하는 주쓰레드 |
버튼인터럽트 처리함수에서 보내는 메시지를 기다리다가 0번 LED 켜기,2번 LED 켜기,4번 LED 켜기, 모든 LED 끄기 메시지를 받아서 처리하기 |
조건2. 3개의 쓰레드를 생성합니다. |
첫번째 하위 쓰레드-5번 LED 1초 주기로 깜박이기 두번째 하위 쓰레드-1번 LED 2048초 주기로 1024단계로 밝아지고 어두워지기 세번째 하위 쓰레드는 키보드 입력(q,w,e)을 받아 서보모터 (0,90,180)도 제어하기 |
도와주시면 사례라도 꼭하겠습니다
파이썬 짜서 하면 될것 같은데 라즈베리파이 GPIO랑 인터럽트 예제 찾아봐