智能仪器实训课程设计报告-单片机电子时钟设计_第1页
智能仪器实训课程设计报告-单片机电子时钟设计_第2页
智能仪器实训课程设计报告-单片机电子时钟设计_第3页
智能仪器实训课程设计报告-单片机电子时钟设计_第4页
智能仪器实训课程设计报告-单片机电子时钟设计_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一组第一组: : 实训指导老师实训指导老师: : 郑老师郑老师 日日 期期 : :第十三十四周第十三十四周 目录 绪论绪论.3 1.1 概述 .3 1.2 设计要求及主要功能介绍 .3 第第二二章章 系系统统总总体体方方案案设设计计 .4 2.1 系统功能模块的划分 .4 2.2 系统原理框图 .4 2.3 系统仿真原理图 .5 2.4 PCB 原理图.5 2.5 PCB 板 .6 2.6 系统硬件设计 .6 2.7 系统软件设计 .7 2.8 硬件设计与调试 .13 2.9 成果展示 .13 小组总结小组总结.14 3. 1 小组成员有话说:.14 3. 2 小组总结.15 3. 3 小组

2、评分.15 参考文献参考文献.16 绪论 1.1 概述 单片机以其强大的控制能力已经被广泛应用于诸多领域,配以各种接 口传感器可以实现系统的智能化。无论是在工业控制领域、医疗卫生领域、 还是在国防军事领域、航天航空领域,微控制器都起着举足轻重的作用。从 最初的 8 位控制器到现在的 16 位、32 位控制器都还有很大的发展和应用 空间。 本次实训以贴近实际为主,我们组就设计一个带有测温功能的电子万 年历,再设计的过程中将所学的知识运用到实际中来,已达到培养我们运用 知识解决实际问题的能力。 1.2 设计要求及主要功能介绍 (1)显示实时时间。由实时时钟芯片DS1302 提供实时时间的数据。 (

3、2)显示实时温度。 由温度测量芯片 DS18B20 提供实时温度的数据。 (3)参数修改。 由四个按钮来修改参数:加减按钮 定位按钮 确定 按钮。 (4)通讯。 通过 RX232 串口与上位机的通讯,将数据上传给上位机。 第二章 系统总体方案设计 2.1 系统功能模块的划分 按照设计要求,系统可以分为以下几个基本功能模块:显示模块 参数修改模块 通讯模块等。 有些模块的功能是由硬件完成,有些模块的功能由软、硬件配合完成, 有些模块则是由软件、硬件、机械三部分共同完成。 将系统拆分成以上的这些基本功能模块后,再根据各个模块所要完成 的功能分别去设计,也就是按照 “逐步求精 ”的思想去设计本系统,

4、这将 使设计工作细化,也有助于制定进度安排。 2.2 系统原理框图 ATMEGE16 显示模块 参数修改模块 通讯模块 实时时间模块 实时温度模块 2.3 系统仿真原理图 2.4 PCB 原理图 2.5 PCB 板 2.6 系统硬件设计 1)该项目的 CPU 使用 AVR 系列中的 ATMEG16。该芯片能存储 16K 的指 令程序且程序不丢。(并且我们有现成的针对 AVR 系列单片机的仿真软 件和程序编写环境) 2) 实时时间模块用 美国 DALLAS 公司推出 实时时间芯片 DS1302, 实时时钟电路 DS1302 是 DALLAS 公司的一种具有涓细电流充电能力的电 路,主要特点是采用

5、串行数据传输,可为掉电保护电源提供可编程的充电 功能,并且可以关闭充电功能。 DS1302 可以对年、月、日、周日、时、 分、秒进行计时,且具有闰年补偿等多种功能。 3)实时温度模块用智能温度芯片DS18B20。单线数字温度传感器 DS18B20 就是一个 1-wire 器件,该器件可把温度直接转换成串行数字 信号供微机处理。由于每片DS18B20 含有唯一的硅串行数,所以在一条 总线上可挂接任意多个 DS18B20 芯片。从 DS18B20 读出的信息或写入 DS18B20 的信息,仅需要一根端口线,该端口线同时也可以向DS18B20 供电,从而无需额外电源。 DS18B20 提供 912

6、位温度读数,构成多点 温度检测系统而无需任何外围硬件。 4)参数修改模块采。在该模块中 采用四个功能各不相同的按键(加减参 数按钮定位修改按钮 确定修改按钮)。 2.7 系统软件设计 该项目相对来说简单,软件也不复杂,我将软件分为如下模块: 1)显示模块: void CanShuXianShi(int canshu, char dian) char i; lcd0=32; /编号的十位转变为 ASCII 码 lcd1=32; /编号的个位转变为 ASCII 码 lcd2=32; /空格 canshu=canshu*6.25; if(canshu=0) lcd3=32; /符号处理 else c

7、anshu=-canshu; lcd3=0 x2d; /负号 lcd4=(uchar)(canshu/10000)+0 x30; /参数的万位转变为 ASCII 码 lcd5=(uchar)(canshu/1000%10)+0 x30; /参数的千位转变为 ASCII 码 lcd6=(uchar)(canshu/100%10)+0 x30; /参数的百位转变为 ASCII 码 lcd7=(uchar)(canshu/10%10)+0 x30; /参数的十位转变为 ASCII 码 lcd8=(uchar)(canshu%10)+0 x30; /参数的个位转变为 ASCII 码 /插入小数点 fo

8、r(i=9;i9-dian;i-) lcdi=lcdi-1; lcd9-dian=0 x2e; for(i=4;i5) M=0; s=PINB.2; if(M=0) sss=N; if(M=1) mmm=N; if(M=2) hhh=N; if(M=3) yy=N; if(M=4) mm=N; if(M=5) dd=N; zhuanhuan(N); for(i=0;i8; wr_td(datl, dath, comm); void putchar(int x,int y,unsigned char zifu) wr_xd(STARTADD_T+16*y+x,0 x24); wr_xd(0,0

9、x20); wr_od(zifu-0 x20,0 xc0); /- /功能:点(x,y)位置的象素点 /形参:x:水平位置坐标 (0127) / y:垂直位置坐标 (063) / set:1-点黑, 0-点白 /- void PutPixel(int x, int y, int set) if(x=MAX_X | y=MAX_Y) return; else uint addr=STARTADD_G; addr+=y*BYTES_PER_LINE; addr+=x/8;/计算 x 点左边有多少个完整的字节 ,并将作图地 址定位到此处 wr_xd(addr, 0 x24);/地址指针定位 if(s

10、et)/如果是点黑 wr_comm(0 xF8+(7-x%8); else/如果是点白 wr_comm(0 xF0+(7-x%8); /- /功能:在(x,y)位置显示 24*24 点阵的汉字 /形参:x:水平位置坐标 (0127) / y:垂直位置坐标 (063) / zi:汉字点阵数组 / size:点阵数 / amp_x:水平放大倍数 / amp_y:垂直放大倍数 / color:是否反白显示 /- void Disp_HanZi(int x, int y, flash uchar zi, int size, int amp_x, int amp_y, int color) int i,

11、 j, k, m, n; for(i=0; isize; i+)/行 for(m=0; mamp_y; m+)/垂直放大 for(j=0; jsize/8; j+)/列(字节数) for(k=0; k8; k+)/象素 for(n=0; nk) )/逐位判 断,如果对应位为 1,则点亮此点 PutPixel(x+(j*8)+k)*amp_x+n, y+i*amp_y+m, !color); else PutPixel(x+(j*8)+k)*amp_x+n, y+i*amp_y+m, color); /- /功能:LCD 初始化函数 /- void Init_LCD(void) CTL_DIR=

12、0 xFF; DATA_DIR=0 xFF;/设置端口输入 CD=1; WR=1; RD=1; CE=1; wr_xd(STARTADD_T, 0 x40);/置文本显示区首地址 wr_xd(STARTADD_G, 0 x42);/置图形显示区首地址 wr_td(BYTES_PER_LINE, 0 x00, 0 x41);/置文本显示区宽度 wr_xd(BYTES_PER_LINE, 0 x43); /置图形显示区宽度 wr_comm(0 x80);/置或模式 /wr_td(0 x02, 0 x00, 0 x22);/置 CGRAM 偏置地址 wr_comm(0 x9C);/启用文本显示 ,启

13、用图形显示 /功能:清屏函数 /- - void VLine(int x0, int y0, int y1, int color) uchar tmp; if(y0y1)/ 对 y0、y1 大小进行排列,以便画图 tmp = y1; y1 = y0; y0 = tmp; do PutPixel(x0, y0, color); / 逐点显示,描出垂直线 y0+; while(y1=y0); 2. 8 硬件设计与调试 1)将设计好的 PCB 图打印在油墨纸上; 2)用转印机将油墨纸上的图转印在双面印制板; 3)用 Fecl3 溶液腐蚀印制板; 4)将已腐蚀好的板子用去污粉洗净; 5)用台钻将印制板

14、上的焊盘打好; 6)根据原理图在印制板上焊接电路; 7)检查线路,确定无误后通电 。观察 CA12864 显示屏的 调节电位器控 制 CA12864 的亮度; 比较遗憾的是,双面印制板用完了,最后智能用面包板代替,但最终还是 根据要求完成了项目,以上是我们的成果。 2. 9 成果展示 小组总结 3. 1 小组成员有话说: 【艾胜】在我焊完这个实验板后,我感受很多,我记得,我连续好几天天 在实验室焊板子,完全投入其中,不知不觉到了中午、晚上,时间过得很快, 而我也自得其乐。出了很多问题,但我最后还是完成了,我非常开心。 我板子焊得比较认真,但缺乏这方面的经验。虽然不是第一次焊板子,但 我还是没有

15、一次性成果,实在有些遗憾。但我还是自认为良好,毕竟我在自己 的努力下完成了任务,虽然为了赶进度,我曾在实验室熬夜一整晚,但是这些 付出都是值得的。 【张松】这次项目制作确实走了不少弯路,但是也体会到了那种做团结合 作所带来的快乐,回想那几天焊板子的时光都感觉是那么充实,每天埋头在那 里焊到了吃饭的时间都想还有一点,再焊一点,结果一晃一两个小时都过去了, 真有点废寝忘食的劲头,也给自己留下了一段难忘的经验。 完成了印制板的制作,但是却没有完成最后的测试,最后只得在面包板上 重新焊接,感觉很遗憾。不过有了这一次的经验,下一次我肯定能做的更好。 【刘露】一直都觉得一个女生似乎很难做到诸如拿电烙铁焊东

16、西这类男性 化的事情的,但经过此次的实践,深刻体会到,没有什么是不可能的,只要你 愿意。 刚开始,一切都进行的比较顺利。仿真图,PCB 图,一气呵成。在第一个 星期班级购买器件时我还自告奋勇的跟上了,确实见了不少世面。后来泡板子、 调试时出了不少问题,不过也被我们一一解决,完成硬件电路着实让我学到了 不少的东西。细节决定成败,学习,不严谨是学不到东西的。同时,做任何事 要想想最终的目的,在完成的基础上谈完善, “花瓶”是毫无价值的!学无止境, 我们都需要继续努力! 【陈宏超】通过这次的硬件实物制作,我知道了干好一事的必备条件: 干任何事情要整体思路清晰:做一件事之前一定要清楚自己要干什么,该

17、怎么干,只有这样我才能保持一颗愉悦的心情去做这件事,才能做好这件事; 做事时要做到兢兢业业:在焊电路的时候一定要认真仔细,不能丢三落四, 每一个焊盘焊结实了才能焊接下一个,这样才能尽量减少错误提高成功率。在 后来帮助其他同学检查错误的时候就发现很多都是由于不仔细导致虚焊等不容 易看出来的错误,导致反复检查浪费很多时间。还有每焊完一个器件后再回头 看看是不是每个该焊的引脚都焊好了; 要有遇到问题的心里准备:由于人的大脑并不是编好程序的电脑,考虑问 题的时候总会有一些纰漏。我发现每个模块的焊接时很难做到一次成功。而检 查排除问题的过程往往是一艰难而又痛苦的过程,因此我们要做好遇到问题的 心里准备,

18、以一颗平静的心去解决它。而这个过程正我们查缺补漏,自我能力 提升的一个必不可少的过程。 3. 2 小组总结 两周智能仪器实训很快结束了,在这短暂的时间里,我们基本上实现了所 有的功能,但是有些地方还不是很完善! 我们在接到实训任务的时候,心里确实有一点儿的不知所措,对于水位测 量似懂非懂。主要还是没有理解水位测量器的本质和掌握水位测量器的核心架 构。还好负责实训项目的老师把项目改为了带测温功能的万年历,假如没有这 些,恐怕我们很难在短短的两个星期时间里完成了。 不管说啥,实训项目我们算是完成了.通过这次实训,确实让自己受益匪浅。 在实训期间,我学到了很多知识,遇到了一些困难,也看到了自己的理解存在 着许多问题。测试的时候,总会遇到这样那样的问题,还有写代码时一不小心 就会把字母写错,从而造成软件不能执行!所以我们在做程序时一定要细心在 信心!当前的软件的功能日趋复杂,知识达不到一定的深度和广度是难以在实 际工作中应付自如的。 在小组成员的共同努力和老师的精心指导下,我们掌握了更丰富全面的单 片机编程技术、电子制版技巧和电路焊接技巧,使我们真正对所学的知 识融会贯通,熟练运用。再加以刻苦学习及训练,不断地开拓自己的视野,增

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论