Transcript Buzzer 제어
컴퓨터 프로그래밍 Buzzer&LCD제어 SWITCH 제어 • 과제2 – 두 개의 스위치를 이용하여 SW1을 누르면 업카운트를 하고 SW2를 누르면 다운카운트 하여 7-Segment에 표시하는 프로그램 을 작성하시오. (단 이 때, 키를 계속 누르고 있어도 한번만 카운트 되어야 한다.) SW1 SW2 2 본체 LCD 단자 전원 On/Off Sw ATTiny2313 Enable Sw buzzer 3 Buzzer 제어 4 Buzzer 제어 5 Buzzer 제어 6 Buzzer 제어 7 Buzzer 제어 <buzzer 회로도> buzzer • PORTB의 3번에 연결 되어 있다. • 1 – on, 0 - off 으로 인식 8 Buzzer 제어 한 주기 내에서 On 이 되는 시간의 비율 조절하여 소리의 크기 조절 • 펄스의 폭을 조절 함으로 소리의 크기가 조절 가능하다. 9 Buzzer 제어 스위치를 누르면 펄스의 비율이 증가 한다. <프로그램 예> 10 Buzzer 제어 • 과제 – 스위치 두 개를 사용하여 부저의 소리세기(펄스 폭)를 조절 하는 프로그램을 작성하시오. SW1 SW2 11 LCD 제어 • LCD [liquid crystal display] • • 4비트와 8비트로 인터페이스 가능 최대 16글자씩 2줄을 표시 가능 • CodeVisionAVR을 사용하면 간단하게 초기화 및 출력이 가능 • alcd.h 헤더파일에 LCD제어에 유용한 함수가 존재 – • lcd_gotoxy() LCD 자리 이동 – • LCD의 x축과 y축 좌표의 이동하는 함수 lcd_puts(“문장”) 문장 출력 – • lcd_gotoxy(), lcd_puts()등 printf()함수와 비슷한 LCD출력 함수 lcd_clear() – LCD화면의 내용을 모두 지우는 함수 12 LCD 제어 13 LCD 제어 14 LCD 제어 <LCD 회로도> 15 LCD 제어 16 LCD 제어 welcome computer program <프로그램 예> 17 LCD 제어 • 과제1 – LCD를 이용하여 첫번째 줄에는 학번, 두번째 줄에는 자신 의 이름을 나타내는 프로그램을 작성하시오. xx471xxx so min hyeok LCD 제어 • • • • • 과제2 – 스위치를 이용하여 다음의 프로그램을 작성하시요 SW1을 누르면 학번과 이름 SW2를 누르면 생년월일 SW3를 누르면 0부터 숫자 업카운드 SW4를 누르면 9부터 숫자 다운 카운드 SW1 xx471xxx so min hyeok SW2 yymmdd SW3 0123456789 SW4 9876543210 19