课程设计温度采集与显示.doc
《课程设计温度采集与显示.doc》由会员分享,可在线阅读,更多相关《课程设计温度采集与显示.doc(15页珍藏版)》请在咨信网上搜索。
目 录 1 课程设计目的 1 2 课程设计正文 1 2.1系统分析 1 2.1.1 设计的任务及环节 1 2.1.2 技术规定 2 2.1.3设计思绪 2 2.2 总体设计 2 2.2.1硬件设计 2 2.2.2 系统框图设计 3 2.3 元器件的选择 3 2.3.1 单元电路设计 3 2.3.2 单元模块分析 4 2.4 程序流程图与源程序 5 2.4.1 软件系统流程图 5 3 运营结果 5 4 课程设计总结 6 5 参考文献 7 附录 7 1 课程设计目的 通过我们对DSP控制器及其应用课程的学习和理解,综合运用课本中所学到的理论知识完毕一个温度采集与显示的课程设计。通过这次实践锻炼我们查阅资料、方案比较、团结合作的能力。在这个过程我们必须掌握温度采集技术的硬件设计、熟悉A/D转换技术和DSP液晶显示功能的软件设计。学会采用简朴电路的实验调试和整机指标测试方法,增强我们的动手能力,为以后学习和工作打下坚实基础。 2 课程设计正文 2.1系统分析 2.1.1 设计的任务及环节 (1)熟悉MC1403(低压基准芯片)芯片的应用; (2)根据实验测得热敏电阻和温度的一些数据,设计温度——电阻公式; (3)设计外部硬件电路; (4)软件完毕程序流程图设计和编程,其中涉及A/D转换和液晶显示部分; (5)软硬件联合调试; (6)书写设计说明书。 2.1.2 技术规定 此系统运用热敏电阻测得电阻—温度之间的关系,找到电阻和温度之间的代数关系,从而检测温度,设计硬件外扩电路,同时设计软件程序,涉及A/D程序设计,进行软硬件联系调试,能在液晶显示屏上显示温度。 2.1.3设计思绪 系统一方面设计温度采集硬件电路,在多次实验运算拟合出热敏电阻输出电压值与温度之间的函数关系,热敏电阻的输出的电压值随温度的上升而下降,呈现出负系数,从而运用于实验中检测温度;然后将采集的温度送入DSP TMS320F2812模数转换模块将电压信号变为数字信号,再编写函数来控制LCD来显示相应的温度及相关文字。 2.2 总体设计 2.2.1硬件设计 TMS320F2812作为使用的DSP芯片。它包含33个电源引脚(为使器件正常运营,所有电源引脚必须对的连接且不能悬空)时钟源模块,DSP有六种信号可以使DSP控制器复位,即电源复位、复位引脚~RS、软件复位、非法地址复位、看门狗定期器溢出、欠压复位六种复位信号。所以在设计的初期,把它提成了五个模块。其中复位采用电源复位的方式,由引脚PCRESET引起。为了可靠复位,其中低电平的有效时间至少6个CPU时钟周期。DSP最小系统组成框图如图1所示。 图1 DSP最小系统 其中:开关SW-PB、电容C1、两个反相器及其电阻电源构成了复位电路,晶振与两个并联电容接XTAL1与XTAL2构成振荡电路,PWM1与PWM7构成了调制信号的输入与输出,旁路引脚接地,请求控制信号MP/MC与GND接地。 2.2.2 系统框图设计 该系统涉及温度采集电路模块、DSPF2812芯片、A/D转换部分和LCD液晶显示,一方面要初始化A/D转换模块,然后等待中断,当产生中断后对采集到的模拟信号进行解决,为保证转换精度要进行多次取值求平均,转换结果放在结果寄存器的高12位上,通过编程将解决后的温度值送到LCD上进行显示。 温度采集电路 DSPF2812 A/D转换电路 液晶显示模块 图2 系统设计流程图 2.3 元器件的选择 2.3.1 单元电路设计 (1)设计方案 MC1403芯片为数模转换提供基准电压,且输入端接+5V电源后再并联一个去噪声的电容,运用热敏电阻进行温度采集,采集后的输出电压(不得大于3.3v)与DSP的P2端口23引脚相连。 (2)外扩电路设计图 图3 温度采集电路原理图 2.3.2 单元模块分析 (1)MC1403芯片的引脚结构如下图所示。 图4 MC1403芯片 Vin端口输入一个4.5~5.0V的模拟电压值(接P2口的1引脚),在输入端接一个电容滤除其他频率分量,在Vout端输出了一个稳定的电压值(接P2口的23引脚),该电压值不得大于3.3V,GND端接模拟地(接P2口的33引脚)。 (2) A/D转换模块 当模/数转换完毕后,读取结果寄存器前,最佳先读取模/数转换控制寄存器ADCRL2的ADCFIF01或ADCFIF02,以拟定当前结果寄存器的状态,保证读取的结果是对的。此外,要注意12位的转换结果放在结果寄存器中的高12位上,该12位数据与外部模拟输入电压的关系为: 12位数字结果=4095*(输入电压/基准电压) 2.4 程序流程图与源程序 2.4.1 软件系统流程图 软件系统流程图如图5所示。 开 始 初始化DSP时钟 初始化CTR 初始化AD采样时钟 中断采集数据存入Voltagel中 数据解决后的温度值送到LCD显示 清楚并显示相关文字 启动AD0通道采集 图5 程序流程图 3 运营结果 (1)运营描述 M1403芯片作为模数转换提供基准电压,运用热敏电阻进行采集,采集后的输出电压与DSP的P2口23引脚相连。将采集到的电压送入A/D转换模块,编写程序实现A/D转换,转换结果放在结果寄存器的高12位上,编写函数获取A/D转换结果,将解决的温度值的各个相应显示到LCD上。 (2)系统调试 MC1403 芯片Vin 端输入一个+5V的模拟电压值;在输入端接一个电容滤除其它频率分量;在 Vout 端输出了一个稳定的电压值;GND端直接接模拟地;给实验箱供电,打开 Setup CCS2(‘C2023), 在弹出的对话框中选择ICETEK-5100 USB Emulator for TMS320F2812 导入,进行配置设立然后进入 CCS2(‘C2023),打开工程文献进行编译生成 .out 文献下载到硬盘中然后调试,观测液晶显示屏,第一行显示“温度显示”,第二行显示“ 温度值 ℃”,当用手触摸时,温度显示不断变化,实现了温度的采集与现实。 4 课程设计总结 通过学习DSP课程我们都知道,DSP事实上也是一种单片机,它同样是将中央解决单元、控制单元和外围设备集成到一块芯片上。但DSP有别于普通的单片机,它采用了多组总线技术实现并行运营机制,从而极大地提高了运算速度,也提供了非常灵活的指令系统。 通过这次课程设计,不仅是我进一步加深对课本知识的理解,更让我学会了团结合作的精神,不仅锻炼了我们动手动脑的能力,还提高了我们分析问题、解决问题的能力,在这次设计中我也学会了遇事要冷静,团结合作,虚心请教,没有任何事情解决不了,最后衷心的感谢始终支持我们的老师们,你们辛劳了! 5 参考文献 [1] 万山明.TMS320F281x DSP原理及应用实例.北京航空航天大学出版社,2023 [2] 郑红,王鹏,董云凤,吴冠.DSP应用系统设计实践.北京航空航天大学出版社,2023 [3] 徐科军,张瀚,陈智渊.TMS320F281xDSP 原理与应用.北京航空航天大学出版社,2023 附录 #include "DSP281x_Device.h" // DSP281x Headerfile Include File #include "DSP281x_Examples.h" // DSP281x Examples Include File // Prototype statements for functions found within this file. interrupt void adc_isr(void); // Global variables used in this example: #define LCDDELAY 1 #define LCDCMDTURNON 0x3f #define LCDCMDTURNOFF 0x3e #define LCDCMDSTARTLINE 0xc0 #define LCDCMDPAGE 0xb8 #define LCDCMDVERADDRESS 0x40 #define ADC_usDELAY 8000L #define ADC_usDELAY2 20L Uint16 ZhengshuT,XiaoshuT,Zhongjian1,Zhongjian2; float temp1=0; unsigned char lcdkey[5][32]; unsigned char ledkey[12][8]; Uint16 LoopCount; Uint16 ConversionCount; float temp; Uint16 i,j; Uint16 Voltage1[1024]; Uint16 Voltage2[1024]; void Delay(int nDelay); void TurnOnLCD(); void LCDCLS(); void LCDWrite(unsigned int x,unsigned int y,unsigned int LR,unsigned int n); void main(void) { InitSysCtrl(); EALLOW; GpioMuxRegs.GPFMUX.all=0x0000; //I/O:0 特殊功能:1 GpioMuxRegs.GPFDIR.all=0x000f; // output EDIS; DINT; InitPieCtrl(); IER = 0x0000; //CPU中断允许寄存器 IFR = 0x0000;//CPU中断标志寄存器 InitPieVectTable(); EALLOW; SysCtrlRegs.HISPCP.all = 0x3; // HSPCLK = SYSCLKOUT/6给AD转换时钟提供一个6分频 EDIS; EALLOW; // This is needed to write to EALLOW protected register PieVectTable.ADCINT = &adc_isr; EDIS; // This is needed to disable write to EALLOW protected registers InitAdc(); // 初始化AD PieCtrlRegs.PIEIER1.bit.INTx6 = 1; IER |= M_INT1; // Enable CPU Interrupt 1 EINT; // Enable Global interrupt INTM ERTM; // Enable Global realtime interrupt DBGM LoopCount = 0; ConversionCount = 0; // Configure ADC AdcRegs.ADCMAXCONV.all = 0x0001; // Setup 2 conv's on SEQ1 AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0x0; // Setup ADCINA3 as 1st SEQ1 conv. AdcRegs.ADCCHSELSEQ1.bit.CONV01 = 0x1; // Setup ADCINA2 as 2nd SEQ1 conv. AdcRegs.ADCTRL2.bit.EVA_SOC_SEQ1 = 1; // Enable EVASOC to start SEQ1 AdcRegs.ADCTRL2.bit.INT_ENA_SEQ1 = 1; // Enable SEQ1 interrupt (every EOS) // Configure EVA // Assumes EVA Clock is already enabled in InitSysCtrl(); EvaRegs.T1CMPR = 0x0080; // Setup T1 compare value EvaRegs.T1PR = 0x0fff; // Setup period register EvaRegs.GPTCONA.bit.T1TOADC = 1; // Enable EVASOC in EVA EvaRegs.T1CON.all = 0x1042; // Enable timer 1 compare (up TurnOnLCD(); //打开显示 LCDCLS(); //清除显示内存 *(int *)0x108000=0x80; // 初始化ICETEK-CTR Delay(LCDDELAY); *(int *)0x108000=0x0; Delay(LCDDELAY); *(int *)0x108000=0x80; Delay(LCDDELAY); *(int *)0x108001=LCDCMDSTARTLINE; // 设立显示起始行 Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for(;;) { Wendu(temp); LCDWrite(2,0,0,0); LCDWrite(2,16,0,1); LCDWrite(2,32,1,2); LCDWrite(2,48,1,3); LCDWrite(6,48,1,4);//在液晶屏上显示相应的汉字及符号 WriteNb(6,6,ledkey[ZhengshuT&0x000f],0,0); WriteNb(6,5,ledkey[(ZhengshuT&0x00f0)>>4],0,0); WriteNb(6,2,ledkey[XiaoshuT&0x000f],0,1); WriteNb(6,1,ledkey[(XiaoshuT&0x00f0)>>4],0,1); WriteNb(6,7,ledkey[11],0,0);//在液晶屏上显示温度值 } } void Delay( int nDelay) { int ii,jj,kk=0; for ( ii=0;ii<nDelay;ii++ ) { for ( jj=0;jj<1024;jj++ ) { kk++; } } } //打开显示子程序 void LCDCLS() { int i,j; *(int *)0x108001=LCDCMDSTARTLINE; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for ( i=0;i<8;i++ ) { *(int *)0x108001=LCDCMDPAGE+i; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for ( j=0;j<64;j++ ) { *(int *)0x108003=0; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); } *(int *)0x108001=LCDCMDPAGE+i; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); for ( j=0;j<64;j++ ) { *(int *)0x108004=0; Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); } } } if(LR==0) { int j; int k=n; *(int *)0x108001=LCDCMDPAGE+x; Delay(1); *(int *)0x108002=0; Delay(1); *(int *)0x108001=LCDCMDVERADDRESS+y; Delay(1); *(int *)0x108002=0; Delay(1); for(j=0;j<16;j++) { *(int *)0x108003=lcdkey[k][j]; Delay(10); *(int *)0x108002=0; Delay(1); for(j=16;j<32;j++) { *(int *)0x108003=lcdkey[k][j]; Delay(100); *(int *)0x108002=0; Delay(100); } } else { int j; int k=n; *(int *)0x108002=0; Delay(1); *(int *)0x108001=LCDCMDVERADDRESS+y; Delay(1); for(j=0;j<16;j++) { *(int *)0x108004=lcdkey[k][j]; Delay(100); *(int *)0x108002=0; Delay(100); } Delay(100); } } } void WriteNb(unsigned int x,unsigned int y,unsigned char *No,unsigned f,unsigned int LR) { int i; y*=8; *(int *)0x108001=LCDCMDPAGE+x; // 设立操作页=1 Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); *(int *)0x108001=LCDCMDVERADDRESS+y; // 起始列=8 Delay(LCDDELAY); *(int *)0x108002=0; Delay(LCDDELAY); if(f==1) *(int*)0x108003=~No[i]; else *(int*)0x108003=No[i]; Delay(LCDDELAY); *(int*)0x108002=0; Delay(LCDDELAY); } }- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 温度 采集 显示
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文