소개글
써미스터의 온도값을 ADC0809(AD Converter)를 통해서 디지털 값으로 변환하고 그 값을 8051로 처리하는 프로그램을 작성하는 자료 입니다( 회로도 포함)
목차
없음
본문내용
8051호환 칩셋인 at89s52를 이용하여 써미스터에서 받아온 아날로그 신호를 ADC0809로 디지털로 변환하여 8051의 시리얼 통신으로 PC의 하이퍼터미널 창에 온도 값을 뿌리는 하드웨어를 제작하였다.
그 하드웨어를 기반으로 정상 작동을 하는 소스를 만들었다.
소스를 보면.
#include <regx52.h> //비트 제어 하기 위한 헤더파일
#include delay_h.h
#include converter.h
#define EN 0x0A //커서를 내려준다.
#define TER 0x0D //커서를 젤 앞으로 보내준다.
unsigned char position = 0;
code char ADC_temp[206] = {
0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 , 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0,
0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 , 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0,
0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 , 0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0 ,0,
0 ,1 ,1 ,2 ,2 ,2 ,3 ,3 ,4 ,4 , 4 ,5 ,5 ,6 ,6 ,6 ,7 ,7 ,7 ,8,
8 ,9 ,9 ,9 ,10,10,10,11,11,12, 12,12,13,13,13,14,14,14,15,15,
15,16,16,16,17,17,17,18,18,19, 19,19,20,20,20,21,21,21,22,22,
22,23,23,24,24,24,25,25,25,26, 26,26,27,27,27,28,28,29,29,29,
30,30,30,31,31,32,32,32,33,33, 33,34,34,35,35,35,36,36,37,37,
37,38,38,38,39,39,40,40,41,41, 42,42,43,43,44,44,45,45,46,46,
47,47,48,48,49,49,50,50,51,51, 52,52,53,53,53,55,55,56,56,57,
58,58,59,59,60
};
# 결과 예측
이 소스를 보면 ADC0809의 IN0로 써미스터의 아날로그 신호가 들어 옴을 알수 있다.
GET_ADC_DATA가 실행됨으로서 디지털신호로의 변환이 일어 나고 소스에 따라 시리얼로 값을 뿌리는 것을 알수 있다.
하이퍼터미널 창에 온도 값이 실시간으로 변화면서 계속적으로 출력 될 것이다.
참고 자료
없음