[마이프로프로세서] [졸업작품]TV리모콘으로 형광등 ON OFF 트라이액[PIC16F84A]
- 최초 등록일
- 2005.05.30
- 최종 저작일
- 2005.05
- 5페이지/ 압축파일
- 가격 6,300원
소개글
CPU는 PIC16F84 사용했으며 전체 시스템 구성은 PIC16F84 , 트라이엑 , 트라이엑 포토 커플러, 백열전구, 리모콘 수신 센서 등입니다.
자료 페이지수는 A4용지 24 장 이고
프로그램은 C 언어로 작성했습니다.
컴파일러는 CCS C이며, 컴파일후 hex파일도 제공합니다.
이작품은 TV리모콘으로 형광등이나 백열전구를 켜고 끄는 기능을 하는 작품 입니다.
회로도,프로그램,사진등 많은 자료를 제공합니다.
목차
1.작품명
2.작품 개요
3.목적
4.구성 블럭도
5.작동 설명
5.1회로도
5.2회로도 설명
5.3프로그램 설명
5.4소스프로그램
6.부품리스트
7.졸업작품 과정에서 느낀점
8.참고서적
9.데이터시트
10. 롬라이터 사용 주의 사항
본문내용
TV리모콘으로 형광등 제어 하는 작품입니다. 누워서 TV리모콘으로 형광등을 켜고 끌수 있습니다. TV리모콘은 가정에 있는 아무것이나 작동이 됩니다.
:
:
bit 7 의 GIE인 Global Interrupt Enable bit 를 1로 하여서 전체 인터럽트 이네이블 한다.
INTCON |= 0x80; //GIE 전체 인터럽트 이네이블
이렇게 설정하여서 TMR0 의 타이머 인터럽트 100usec 설정하였다.
이렇게 설정을 하면 TMR0 타이머 인터럽트 함수가 불려지며 1초에 675번 인터럽트가 걸린다.
반대로 말하면 TMR0 타이머 인터럽트 함수에서 675번 개수하면 1초가 되는 것이다.
프로그램은 1초 동안 리모콘의 키 입력이 없으면 준비 상태가 된다. 따라서 키를 누르고 있는 동안에는 한번의 명령으로 받아들이게 된다.
:
:
void init_port()
{
TRISB &= ~RELAY;
RELAY_OFF;
}
void init_interrupt()
{
//INT0 핀의 외부 인터럽트 설정
INTCON |= 0x10; //INTF 인터럽트 이네이블
OPTION &= ~0x40; //INTEDG 하강 에찌 검출모드
//
//TMR0 의 타이머 인터럽트 설정
//TOSC TMR0클럭을 내부 인스트럭션 사이클로 잡는다.
OPTION &= ~0x20;
OPTION &= ~0x08; //프리스케일러 설정 TMR0
OPTION &= ~0x07; // 1/2 분주비 (8M / 4) / 2 = 1M
TMR0 = 0x100 - 100; // 1M / 100 = 10khz (100usec)
INTCON |= 0x20; //TMR0 인터럽트 이네이블 설정
//
INTCON &= ~0x04; // TOIF = 0
INTCON |= 0x80; //GIE 전체 인터럽트 이네이블
}
:
:
5Volt 가 아닌 220 볼트를 제어하는 문제로 처음에
참고 자료
없음
압축파일 내 파일목록
TV리모콘으로형광등ONOFF.doc
회로도/pic16f84_tv.opj
회로도/PIC16F84_TV.DBK
회로도/PIC16F84_TV.DSN
회로도/pic16f84_tv.pdf
데이타시트/tlp561.pdf
데이타시트/2n6075.pdf
데이타시트/PIC16F84.pdf
데이타시트/1N4004.pdf
프로그램/remote_16f84.HEX
프로그램/remote_16f84.c