版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 微控制系统原理课程大作业作业题目 : 液晶显示温度计 学院名称 : 电气工程学院 专业班级 : 测控1002班 学生姓名 : 黄东旭 学 号 : 201048770202 完成时间 : 2013 06 27 任课教师 : 成绩评定表难度与强度20分硬件部分25分软件部分25分答辩及制作演示30分总评成绩100分目 录目 录1引言3第一章、总体分析51.1、功能和系统原理介绍51.2、元件清单6第二章、硬件设计62.1、msp430的参数介绍62.2、1602液晶显示器7第三章、电路设计83.1、系统原理图93.2、液晶显示电路图9第四章、软件设计114.1、系统流程图114.2、程序12第五
2、章、感悟12引言单片机诞生于20世纪70年代,象Fairchid公司研制的F8单片微型计算机。所谓单片机是利用大规模集成电路技术把中央处理单元(Center Processing Unit,也即常称的CPU)和数据存储器(RAM)、程序存储器(ROM)及其他I/O通信口集成在一块芯片上,构成一个最小的计算机系统,而现代的单片机则加上了中断单元,定时单元及A/D转换等更复杂、更完善的电路,使得单片机的功能越来越强大,应用更广泛。80年代,世界各大公司均竞相研制出品种多功能强的单片机,约有几十个系列,300多个品种,此时的单片机均属于真正的单片化,大多集成了CPU、RAM、ROM、数目繁多的I/O
3、接口、多种中断系统,甚至还有一些带A/D转换器的单片机,功能越来越强大,RAM和ROM的容量也越来越大,寻址空间甚至可达64kB,可以说,单片机发展到了一个全新阶段,应用领域更广泛,许多家用电器均走向利用单片机控制的智能化发展道路。1990年美国INTEL公司推出了80960超级32位单片机引起了计算机界的轰动,产品相继投放市场,成为单片机发展史上又一个重要的里程碑。单片机的应用越来越广泛,msp430更是拥有极低功耗的优点。而且430内部有温度传感器,还有ADC10模数转换模块,刚好可以用来显示温度。第一章、总体分析1.1、功能和系统原理介绍 功能介绍:本设计可以通过片内温度传感器采集温度,
4、然后用1602液晶显示器显示温度。原理:ADC10通过温度传感器采集温度值,然后输出到液晶显示器显示。 1.2、元件清单msp430芯片 1块 1602液晶显示器 1个滑动变阻器 1个杜邦线 19根第二章、硬件设计2.1、msp430的参数介绍1. msp430是一种低功耗性单片机。如(1)运行模式:230uA 在1MHZ频率和2.2V电压条件下。(2)待机模式:0.5uA。(3)关闭模式:0.1uA。2. 工作电压:1.8V3.6V 3. 基本的时钟模块配置:(1)内部具有超低功耗低频振荡器。(2)具有四种校准频率并达到16MHz的内部频率。(3)32kHz晶体。(4)外部数字时钟。4. 具
5、有快速的唤醒功能。5. 两个16的timer_A,分别具有三个捕获/比较寄存器。6. 20个支持触摸感应的I/O引脚。7. 通用串行通信接口(USCI)。(1)支持自动波特率检测增强型通用异步收发器(UART)(2)lrDA编译器和解码器。(3)同步SPI和I2C.8. 用于模拟信号比较功能或者斜率模数(AD)转换的片载比较器。9. 具有看门狗功能 10.带内部基准、采样与保持以及自动扫描功能的ADC10。11. 工作温度范围:-40+85(工业级)/075(商业级)2.2、1602液晶显示器介绍1.1602字符型液晶显示器实物如图: 1602字符型液晶显示器实物图2.1602LCD的基本参数
6、及引脚功能1602LCD分为带背光和不带背光两种,基控制器大部分为HD44780,带背光的比不带背光的厚,是否带背光在应用中并无差别,两者尺寸差别如下图所示:1602LCD尺寸图1602LCD主要技术参数:显示容量:16×2个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.95×4.35(W×H)mm引脚功能说明1602LCD采用标准的16脚(带背光)接口,各引脚接口说明如表所示:编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令
7、选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极表:引脚接口说明表第1脚:VSS为地电源。第2脚:VDD接5V正电源。第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当RS为低电平R/W为高电平时可以读忙信号,当RS为高
8、电平R/W为低电平时可以写入数据。第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。第714脚:D0D7为8位双向数据线。第15脚:背光源正极。第16脚:背光源负极第三章、电路原理图3.1、系统原理图 3.2、液晶图第四章、软件设计开始4.1、系统流程图系统初始化ADC读温度值液晶显示湿度值结束4.2、程序#include "msp430.h"#define uchar unsigned char#define uint unsigned int#define RS BIT0#define RW BIT1#define EN BIT2void lcd_b
9、usy(void); /测试LCD忙碌状态程序void lcd_wcmd(unsigned char cmd); /写入指令到LCD程序void lcd_wdat(unsigned char dat); /写入数据到LCD程序void lcd_init(void); /LCD初始化设定程序unsigned char mun="0123456789abcdef"static unsigned char wendu=0;/*延时1*/void delay_nms(unsigned int n) unsigned int i=0,j=0; for (i=n;i>0;i-)
10、for (j=0;j<800;j+); /800/*延时2*/void delay_mini(unsigned char n) while(n-) _NOP(); /*延时3*/void delay(unsigned int cnt) /延时 while(cnt) cnt-;/*-*/测试LCD忙碌状态void lcd_busy(void) unsigned char bz; do P2OUT&=(EN); /ep = 0; P2OUT&=(RS); /rs = 0; /指令 P2OUT|=RW; /rw = 1; /读出 P1OUT=0xff; /io = 0xff;
11、P2OUT|=EN; /ep = 1; delay_mini(10); /_nop_(); /高电平读出 1us P1DIR=0; bz=(P1IN&BIT7)>>7; / bz=0; P1DIR=0xff; while(bz); /bz=1表示忙,bz=0表示空闲 P2OUT&=(EN); /ep = 0; delay_mini(100);/*-*/写入指令到LCDvoid lcd_wcmd(unsigned char cmd) lcd_busy(); /检测忙 P2OUT&=(RS); /rs = 0; /指令 P2OUT&=(RW); /rw
12、= 0; /写入 P2OUT|=EN; /ep = 1; delay_mini(5); P1OUT = cmd; /指令 delay_mini(5); P2OUT&=(EN); /ep = 0; /下降沿有效 delay_mini(5);/*-*/写入数据函数void lcd_wdat(unsigned char Data) lcd_busy(); /检测忙 P2OUT|=RS; /rs = 1; /数据 P2OUT&=(RW);/rw = 0; /写入 P2OUT|=EN; /ep = 1; delay_mini(5); P1OUT = Data; /数据 delay_min
13、i(5); P2OUT&=(EN); /ep = 0; /下降沿有效 delay_mini(5);/*-*/LCD初始化设定void lcd_init() P1DIR=0xff; /设P6口为输入方式 P1SEL=0; /设P6口为一般I/O口 P2DIR|=BIT0; P2DIR|=BIT1; P2DIR|=BIT2; P2SEL=0; lcd_wcmd(0x38); /设置LCD为16X2显示,5X7点阵,八位数据接口 lcd_wcmd(0x06); /LCD显示光标移动设置(光标地址指针加1,整屏显示不移动) lcd_wcmd(0x0f); /LCD开显示及光标设置(光标不闪烁,
14、不显示"_") lcd_wcmd(0x01); /清除LCD的显示内容/*主函数*/void main(void) unsigned char i; unsigned short ADvalue; unsigned short temp; WDTCTL = WDTPW + WDTHOLD; / Stop WDT ADC10CTL1 = INCH_10 + ADC10DIV_3; / Temp Sensor ADC10CLK/4 ADC10CTL0 = SREF_1 + ADC10SHT_3 + REFON + ADC10ON + ADC10IE; /参考电压 CCTL0 =
15、 CCIE; /设置捕获/比较控制寄存器中CCIE位为1,CCR0捕获/比较功能中断为允许。 CCR0 = 50000; /捕获/比较控制寄存器CCR0初值为50000。 TACTL = TASSEL_2 + MC_2; /设置定时器A控制寄存器TACTL,使时钟源选择为SMCLK辅助时钟。 _EINT(); for (;) /转换5次 ADvalue=0; for(i=0;i<5;i+) ADC10CTL0 |= ENC + ADC10SC; / Sampling and conversion start ADvalue += ADC10MEM; temp =ADvalue/5; we
16、ndu = (unsigned char)( temp*211/512-278); delay(30000); delay(30000); delay(30000); delay(30000); /定时器A 中断服务程序区* #pragma vector=TIMER0_A0_VECTOR /固定的格式 _interrupt void Timer_A (void) /定时器A的CC0中断处理程序 必须是没有返回值的 unsigned char x; CCR0 += 1000; /重新载入CCR0捕获/比较数据寄存器数据/初始化并显示temp字样 uchar i; uchar s="we
17、ndu"lcd_init();lcd_wcmd(0x80);for(i=0;i<5;i+) lcd_wcmd(0x80+i); lcd_wdat(si); delay_nms(5); /显示十位 x = wendu/10; lcd_wcmd(0x80+0x06); lcd_wdat(munx); /显示个 x = wendu%10; lcd_wcmd(0x80+0x07); lcd_wdat(munx); /ADC10 interrupt service routine#pragma vector=ADC10_VECTOR_interrupt void ADC10_ISR (void) _bic_SR_regis
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年国家助学贷款大学生贷款合同解除服务合同3篇
- 采购合同管理心得3篇
- 2024年版:建筑项目基坑支护劳务外包合同
- 2024年度家政服务人员劳务合同范本3篇
- 采购合同模板准则3篇
- 采购合同思考3篇
- 采购合同流程的优化策略3篇
- 采购合同管理的策略与方法3篇
- 采购合同的履行与供应商选择3篇
- 采购合同协议签订的合同解除方式3篇
- 伴瘤内分泌综合征课件
- 妇科手术快速康复治疗
- 常州邻里中心课件
- 客车交通安全培训课件
- 某建筑公司项目部qc小组活动课题-《提高内墙抹灰质量》成果总结报告
- 辽宁省大连市2023-2024学年高二上学期期末考试数学试题(解析版)
- 南京市2023-2024学年八年级上学期期末道德与法治试卷(含答案解析)
- SJG 09-2024 建筑基桩检测标准
- 湖南师范大学学位英语历年考试真题
- 发运员工作总结汇报
- 露营餐厅经营方案
评论
0/150
提交评论