[센서개론] 기능성 알람시계 설계

 1  [센서개론] 기능성 알람시계 설계-1
 2  [센서개론] 기능성 알람시계 설계-2
 3  [센서개론] 기능성 알람시계 설계-3
 4  [센서개론] 기능성 알람시계 설계-4
 5  [센서개론] 기능성 알람시계 설계-5
 6  [센서개론] 기능성 알람시계 설계-6
 7  [센서개론] 기능성 알람시계 설계-7
 8  [센서개론] 기능성 알람시계 설계-8
 9  [센서개론] 기능성 알람시계 설계-9
 10  [센서개론] 기능성 알람시계 설계-10
 11  [센서개론] 기능성 알람시계 설계-11
 12  [센서개론] 기능성 알람시계 설계-12
 13  [센서개론] 기능성 알람시계 설계-13
 14  [센서개론] 기능성 알람시계 설계-14
 15  [센서개론] 기능성 알람시계 설계-15
 16  [센서개론] 기능성 알람시계 설계-16
 17  [센서개론] 기능성 알람시계 설계-17
 18  [센서개론] 기능성 알람시계 설계-18
 19  [센서개론] 기능성 알람시계 설계-19
 20  [센서개론] 기능성 알람시계 설계-20
※ 미리보기 이미지는 최대 20페이지까지만 지원합니다.
  • 분야
  • 등록일
  • 페이지/형식
  • 구매가격
  • 적립금
자료 다운로드  네이버 로그인
소개글
[센서개론] 기능성 알람시계 설계에 대한 자료입니다.
목차
Ⅰ. General Features

1. 시계 기능
1) 시간 수정
2) 시, 분, 초 출력

2. 스누즈 알람 기능
1) 15분 단위로 설정 가능
2) 최대 2시간 30분까지 가능

3. 알람 해제 문제 기능
1) 곱셈, 덧셈한 값의 십의 자리 이하를 입력하여 알람 해제
2) 답안 숫자 입력 기능

4. 알람 소리
1) Modulated 사이렌 음향
2) 주변 조도 감소 시 음량 증폭
Ⅱ. 세부 기능 설명

1. 총 세 가지 Mode, LED State Indicate 기능 지원
2. 네 가지 기능 버튼 지원

3. 세부 사용 설명

Snooze Mode

Alarm Alert Mode

Ⅲ. 회로 구성
1. Display
2. D-Flip Flop
3. External Interrupt
4. State Indicator
5. Light_Sensor
6. Amp
7. Siren Circuit
Ⅳ. 소스 코드
Ⅴ. Designing Features

1. 각 기능별 모듈화

2. D-Flip Flop

3. 전원 회로 일원화

4. 전원 전압 선택 가능

5. 가변 저항 활용

6. 케이블 단자


Ⅵ. Disscussion

1. 디지털 회로

2. 납땜의 기술

3. PWM을 이용한 서보 제어

Ⅶ. Appendix

본문내용
8) int Light(int *li)
//CdS 센서로부터 ADC 입력 받아 Truth Value 생성 함수.

9) int main(void)
//메인 함수, 시스템 구동 유지용 함수. Vacant While Loop로 이루어져있다.

3. Parameters

int i=0,j=0,k=0,inter_0=0,inter_1=0,inter_2=1,inter_3=0,alarm=0,alert=0;//Interrupt
int sec_1=0,sec_2=0,min_1=0,min_2=0,hour_1=0,hour_2=0,sec_bit,min_bit,hour_bit,pause=0;//Time
int digit_1=0,digit_2=0,digit_bit;//Digits
int min15_al=1,hour_al=0,remain=0,d_hour_al,d_min_al=0x15;//Alarm_Time
int num_1=0,num_2=0,op=0,ans=-1,prob_ans,seed=0;//Alert
int a=0,li=1;//Light

각 Function별 변수 설정. 총 35개의 변수가 사용됨.

1) Interrupt : Internal, External Interrupt에 관한 변수. i, j, k는 PWM Count 변수, inter_n은 외부 인터럽트에 관한 함수, alarm, alert는 스누즈 알람 카운트 진행, Alarm Alert Mode에 관한 변수.

2) Time : Timer 함수에 관련한 함수. 시계 알고리즘(sec_n, min_n, hour_n, sec_bit, min_bit, hour_bit)과 시간 수정(pause)에 관련한 변수.

3) Digits : 답안 입력과 관련한 변수.
Alarm_Time : 스누즈 시간 설정과 관련한 함수. x_al은 알람 설정시 사용되는 변수이고 d_x_al은 알람 카운트다운 시 변하는 변수로 이 값이 Display unit에 표기됨.

4) Alert : 두 개의 무작위 두 자리 Decimal Number (num_n)과 Answer match 판정, Random 함수 seeder 선택과 관련된 변수.

5) Light : CdS로부터 ADC 입력받은 값을 통해 OP-AMP on/off를 결정하는 데 사용되는 변수.

4. Interrupt Vectors

전반적인 알람 메커니즘은 if statement를 기반으로 작성되었으며, 각 모드별 상황에 대해 state parameter가 설정되어 각 Interrupt가 발생할 때마다 Logic Value를 변경한다.

1) ISR(TIMER0_OVF_vect)

Timer/Counter 0을 이용한 시계 시스템 구동용 Internal Interrupt Sub Routine. 이 서브루틴에서 알람의 대부분의 기능이 구현된다. 15625Hz의 주파수로 PWM Overflow Interrupt가 발생한다.

2) ISR(INT0_vect), ISR(INT1_vect), ISR(INT2_vect), ISR(INT3_vect)

External Interrupt의 기능을 설정하는 Interrupt Sub Routine. 네 개의 Schmitt Trigger로부터 받은 신호로 Interrupt 기능을 작동시킨다.

◆ Proteus VSM Circuit Simulator의 활용

소프트웨어 상으로 ATmega 128을 포함한 각종 디지털&아날로그 소자 시뮬레이션이 가능하여 빠른 코드 디버깅과 최적 설계가 용이하다. 또한 Oscilloscope 기능도 지원하여 파형을