单片机创新实验测控.docVIP

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
创新实验报告 课程名称: 单片机开发与应用创新实验 设计题目: 七彩炫丽心形彩灯 专业班级: 测控13-2 学生姓名: 王硕 唐晓华 指导教师: 刘 霞 段志伟 开课院系:电气信息工程学院测控技术与仪器系 实验中心名称: 测控创新实验中心 2015 年 5月 10日 一、实验目的 掌握Keil C软件的使用方法; 掌握程序下载及调试方法; 掌握IO口控制发光二极管亮灭的方法; 熟悉C51IO口控制程序、延时程序、函数等的编写方法。 二、设计任务 设计一款心形流水灯,可按照不同顺序点亮和闪烁。 三、设计要求 1、基本要求 (1)点亮P0.0、P1.0、P2.0、P3.0发光管. (2)让P1.0发光管闪烁 (3)设计P1口流水灯效果 (4)设计心形流水灯效果 2、扩展要求 (1)顺时针依次点亮; (2)逆时针依次点亮; (3)从中心依次左右点亮。 四、设计方案 单片 单 片 机 电源电路 时钟电路 复位电路电路 下载电路 P0口驱动LED电路 P1口驱动LED电路 P2口驱动LED电路 P3口驱动LED电路 图4-1 系统硬件方框图 五、硬件电路设计 1、电源电路 2、单片机晶振与复位电路 (1)STC单片机简介 ?8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。 (2)电路连接 3、程序下载电路 发光二极管驱动电路 六、软件设计 1、主程序设计 系统初始化 系统初始化 否 是 判断是否处于通信状态? 移位显示 读取显示内容 读取24C256的标志位 等待 判断是否有中断标志? 是 否 开机 图6-1 主程序流程图 2、延时程序设计 给定延时时间t是否 给定延时时间t 是 否 给初值i=0 是 否 开始 it, i++ j0,j-- j=114 结束 七、系统调试(系统连接情况说明、调试步骤、遇到问题及解决方法) 系统连接时先将写好的程序通过STC-ISP程序导入到89c52型单片机中,之后按开关使单片机按照所导入的程序运行,外在表示为单片机上的灯泡以一定的顺序按程序亮起与熄灭。 调试:当单片机上的灯泡不是按照所预想的那个亮起,将原程序打开,将原程序顺一遍,找出错诶点经行改正,之后将程序导入到单片机中,若还是错误,则对程序经行逐一分析,并将改正后的程序导入到单片机中经行验证直至正确。 遇到的问题:在经行顺时针和逆时针亮起时,有P17,P27,P37,P00四个孔在转一圈之后依旧闪烁 解决方法:打开原程序,发现在P0端口循环的程序中在最后忘记了将最后一个灯熄灭,即P0=0xff,同理,在P1,P2,P3端口循环的程序中也有在最后有个灯未熄灭的情况,同理的解决方法。 八、实物展示(实物图、实物连线图、工作效果图) 单片机实物图单个亮起: 灯泡全亮起:顺时针:逆时针:中间开花: 九、程序代码 单个亮起: #includereg52.h sbit p=P2^0; main() { while(1) { p=0; } } 四个灯亮起 #includereg52.h sbit c1=P0^0; sbit c2=P1^0; sbit c3=P2^0; sbit c4=P3^0; main() { while(1) { c1=c2=c3=c4=0; } } 延时程序 void delay(uint y) { uint m,n; for(m=0;my;m++) for(n=112;n0;n--); } 逆时针与顺时针闪烁 #includereg52.h #define uint unsigned int #define uchar unsigned char ucharcodetable0[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; ucharcodetable1[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe

文档评论(0)

kfcel5889 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档