- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
温度的测量与控制.
温度的测量与控制
一、课题任务与要求
1、课题任务
设计并制作一套能在30℃到80℃范围内实现温度测量与控制的电路系统。系统中采用20Ω/30W的空心瓷管电阻或水泥电阻做为电热元件,用直流稳压电源(30V/2A)做为供电电源,用PT100做为温度传感器。
2、基本要求
设计一个温度测量电路,其输出电压能随电热元件温度的变化而变化;记录在30℃~80℃范围内每变化5℃对应的模拟电压值;
以数字方式显示温度值
先将电热元件温度稳定地控制在40℃(至少保持一分钟);然后快速升温到60℃,并将温度稳定地控制在60℃(至少保持两分钟);并分别让LED指示升温中、温度达到40℃和温度达到60℃。
二、应用前景和背景知识
温度的测量与控制在工业生产的各个过程中都有广泛应用,例如在材料的加工中就需要温度的测量与控制。这个课题所涉及的背景知识主要有lpc1700,Altium Designer Summer09以及C语言。
三、结构框图
1、总体方案
2、硬件方案
四、器件选择
1、LPC1700
LPC1700系列Cortex-M3微控制器用于处理要求高度集成和低功耗的嵌入式应用。ARM Cortex-M3是下一代新生内核,它可提供系统增强型特性,例如现代化调试特性和支持更高级别的块集成。
LPC1700系列Cortex-M3微控制器的操作频率可达100MHz。ARM Cortex-M3 CPU具有3级流水线和哈佛结构,带独立的本地指令和数据总线以及用于外设的稍微低性能的第三条总线。ARM Cortex-M3 CPU还包含一个支持随机跳转的内部预取指单元。
LPC1700系列Cortex-M3微控制器的外设组件包含高达512KB的Flash存储器、64KB的数据存储器、以太网MAC、USB主机/从机/OTG接口、8通道的通用DMA控制器、4个UART、2条CAN通道、2个SSP控制器、SPI接口、3个I2C接口、2-输入和2-输出的I2S接口、8通道的12位ADC、10位DAC、电机控制PWM、正交编码器接口、4个通用定时器、6-输出的通用PWM、带独立电池供电的超低功耗RTC和多达70个的通用I/O管脚。
温度传感器
PT100温度感测器是一种以白金(Pt)作成的电阻式温度检测器,属于正电阻系数,其电阻和温度变化的关系式如下:R=Ro(1+αT) 其中α=0.00385,Ro为100Ω(在0℃的电阻值),T为摄氏温度, PT后的100即表示它在0℃时阻值为100欧姆。
五、程序流程图
1、系统流程图
2、中断程序流程图
3、PID流程图
六、程序
1、ADC功能程序
#include LPC17xx.H
#include ADC.h
extern uint32_t CuT;
#ifndef FPCLK
#define FPCLK 250000
#endif
uint32_t adr ;
uint8_t ADC_Num ;
void ADC_INIT(void)
{
adr = 0;
ADC_Num=0;
LPC_PINCON-PINSEL3 = ~(3UL28);
LPC_PINCON-PINSEL3 |= (3UL28);
LPC_SC-PCONP |= (112);
LPC_ADC-ADCR = (1 4) |
(4 8) |
(121);
NVIC_EnableIRQ(ADC_IRQn);
NVIC_SetPriority(ADC_IRQn, 4);
}
void ADC_StopCnv (void) {
LPC_ADC-ADCR = ~(724);
}
void ADC_IRQHandler (void)
{
ADC
文档评论(0)