数字温度计的设计说明
- 格式:doc
- 大小:1.00 MB
- 文档页数:37
实验六数字温度计的设计
一、设计目的
通过电子技术的综合设计,熟悉一般电子电路综合设计过程、设计要求、应完成的工作容和具体的设计方法。通过设计有助于复习、巩固以往的学习容,达到灵活应用的目的。设计完成后在实验室进行自行安装、调试,从而加强学生的动手能力。在该过程中培养从事设计工作的整体概念。
二、设计要求
1、利用所学的知识,通过上网或到图书馆查阅资料,完成数字温度计的设计;要求写出实验原理,画出原理功能框图,描述其功能。
2、需采用单片机STC15W404AS、NTC热敏电阻、共阳数码管等元器件进行设计,试确定设计方案详细工作原理,计算出参数。
3、技术指标:
1)温度围: 0 --- +100℃; 误差≤± 2 ℃;
2)选择设计方案;
3)根据设计方案分析设计原理及写出详细的硬件电路设计过程;
方案概要
本设计是利用NTC热敏电阻MF52E-10K(B=3950)1%精度,作为温度传感器,其输出的信号通过STC15W404AS部AD进行模数转换,然后STC15W404AS对该温度数据进行处理,并由一个4位一体共阳数码管显示显示温度值。
实验报告要求原理、计算等)
1、根据设计要求确定数字温度计方案,并完成电路设计,分别说明设计方案、电路工作原理:
2、完成电路连接并进行数字温度计测试:
参考设计电路
图1 参考电路图
表1元器件清单
图2 参考电路图
表2元器件清单
图3 数码管引脚图
参考程序:
******************************************/
#define MAIN_Fosc 22118400L //定义主时钟
#include "STC15Fxxxx.H"
/****************************** 用户定义宏***********************************/
#define Timer0_Reload (65536UL -(MAIN_Fosc / 1000)) //Timer 0 中断频率, 1000次/秒
/*****************************************************************************/
#define DIS_DOT 0x20
#define DIS_BLACK 16
#define DIS_ 17
#define AD_Cha 2 //0-4通道
/************* 本地常量声明**************/
u8 code t_display[]={ //标准字库共阳
// 0 1 2 3 4 5 6 7 8 9 A B C D E F 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e,
//black - H J K L N o P U t G Q r M y 0xff,0xBF,0x76,0x1E,0x70,0x38,0x37,0x5C,0x73,0x3E,0x78,0x3d,0x67,0x50,0x37,0x6e,
0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x46}; //0. 1. 2. 3. 4. 5. 6. 7. 8. 9. -1
/*
u8 code t_display[]={ //标准字库
// 0 1 2 3 4 5 6 7 8 9 A B C D E F 0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71,
//black - H J K L N o P U t G Q r M y 0x00,0x40,0x76,0x1E,0x70,0x38,0x37,0x5C,0x73,0x3E,0x78,0x3d,0x67,0x50,0x37,0x6e, 0xBF,0x86,0xDB,0xCF,0xE6,0xED,0xFD,0x87,0xFF,0xEF,0x46}; //0. 1. 2. 3. 4. 5. 6. 7. 8. 9. -1
*/
u8 code T_COM[]={0xEF,0xDF,0xBF,0x7F,0xEF,0xDF,0xBF,0x7F}; //位码
/************* IO口定义**************/
sbit P_HC595_SER = P4^0; //pin 14 SER data input
sbit P_HC595_RCLK = P5^4; //pin 12 RCLk store (latch) clock
sbit P_HC595_SRCLK = P4^3; //pin 11 SRCLK Shift data clock
/************* 本地变量声明**************/
u8 LED8[8]; //显示缓冲
u8 display_index; //显示位索引
bit B_1ms; //1ms标志
u8 offled;
u16 msecond;
/************* 本地函数声明**************/
u16 get_temperature(u16 adc);
u16 Get_ADC10bitResult(u8 channel); //channel = 0~7