- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
青 岛 科 技 大 学
本科综合课程设计报告
题 目 __________________________________
指导教师__________________________
学生姓名__________________________
学生学号__________________________
_______________________________院(部)____________________________专业________________班
2013 年_1 月 14 日
课程设计地点 弘毅楼B区410 课程设计时间 2011.10.1-2012.11.30 课程设计目的 1.进一步所学内容; 指导教师评语
指导教师签字: 验收(答辩)意见
验收(答辩)人员签字: 系(教研室)
意 见
教研室主任签字: 成 绩
(百分制)
报告正文
一、需求概要
单片机 即单片微型计算机。(Single-Chip Microcomputer ),是 集 CPU ,RAM ,ROM ,定时,计数和多种接口于一体的微控制器。他体积小,成本低,功能强,广泛应用于工业自动化上和智能产品。在信息技术急速发展的今天,计算机科学日新月异。而单片机作为计算机科学的一个分支,在微机控制领域得到长足的发展。随着单片机的发展与科学技术的提高,单片机已经成为人类生产生活中不可缺少的工具。现在,单片机的应用已经渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。单片机要解决的问题多数仍是老问题,新颖之处是比以前用较少的元件。尤其是设计逻辑关系复杂的控制系统,过去用通用的逻辑门集成电路芯片将需要几十片甚至上百片,而现在只用几片就能够实现,而且方便灵活,做设计修改或改动功能时,只改写软件大减少芯片个数主要是靠单片机的可编程性和高度集成化。使开发周期更短,制造成本更低,用电更省和可靠性更高。要求用各种逻辑门芯片实现的逻辑电路,可以用一片单片机芯片加上相应的控制软件就可以实现。用单片机的另一个优点是设计软件将不断积累,不断模块化,形成标准化软件,大大提高了开发效率。
图2 系统电路总图
2.1 显示电路设计:
显示电路采用液晶 LCD16O2。它是一种字符型液晶模块,是一种用 5×7 点阵图形来显示字符的 16 × 2 点阵液晶显示器。其特点是:亮度高、工作电压低、功耗小、易于集成、驱动简单、寿命长、耐冲击且性能稳定。LCD16O2 与单片机接口采用串行方式控制。
图3 液晶LCD1602电路
程序如下:
/****************************************
写指令程序
****************************************/
void writecom(unsigned char com)
{
while(busy());
rs_clr;
rw_clr;//这里为写指令,rs rw为00组合
dataport=com;//指令送给端口
en_set;
en_clr;//在下降沿时将指令写进LCD里
}
/************************************
写数据程序
*************************************/
void writedata(unsigned char data0)
{
while(busy());
rs_set;
rw_clr;//这里为写指令,rs rw为00组合
dataport=data0;//数据送给端口
en_set;
en_clr;//在下降沿时将数据写进LCD里
}
/*******************************************
写字符串程序
********************************************/
void writestring(unsigned char x,unsigned char y,unsigned char *s)
{
if(y==0)//如果y为0则第一行显示
{ writecom(0x80+x);}//x表示数据从该行的第几个单元开始
else//否则第二行显示
{ writecom(0xc0+x);}
while(*s)//用写数据函数将字符串各个字符写入LCD
{
writedata(*s);
s++;
}
}
/*************************
文档评论(0)