欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    数字方阵程序 单片机课程设计报告.docx

    • 资源ID:9888970       资源大小:85.59KB        全文页数:19页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    数字方阵程序 单片机课程设计报告.docx

    1、数字方阵程序 单片机课程设计报告合肥师范学院 实验报告册 2013 / 2014 学年 第2 学期系 别 计算机科学与技术系实验课程 单片机原理及应用专 业 2011计算机软件班 级 一班姓 名 学 号 指导教师 实验名称课时实验报告成绩实验(一)流水灯2实验(二)中断与定时/计数器2实验(三)串行口实验2实验(四)矩阵键盘输入识别2备注:实验一 流水灯一、 实验目的 通过对P3口地址的操作控制8位LED流水点亮,从而认识单片机的存储器二、 实验任务 通过对P3口地址的操作控制8位LED流水点亮,从而认识单片机的存储器三、 实验原理图设计 图1.1四、 实验程序#include#include

    2、#define uchar unsigned char #define uint unsigned int sfr x=0xb0; void delay()unsigned char i,j;for(i=0;i250;i+) for(j=0;jLED1LED7的顺序依次点亮,然后是按照LED7LED6LED0依次点亮,重复循环;LED灯先是全灭,然后按照LED0LED1LED0 LED1LED2LED2 LED0LED7 LED6 LED5 LED4 LED3 LED2 LED1,然后全亮,实现用流水灯显示八位二进制加法计数器的结果。六、 总结与反思在制图过程中对一些组件还是感觉挺陌生的,有的

    3、组件甚至要通过询问同学才能找到,这些都需要我在以后要多使用这些软件,做到熟练使用。实验二 中断与定时器/计数器一 、实验目的 通过对P3.2、P3.3引脚的电平控制,实现外部中断处理,从而控制输出口P1的输出效果变化。2、实验任务1、实现中断控制的原理图(图一),通过对P3.2与P3.3的引脚控制,实现外部中断,实现对输出口P1的输出变化控制。2、修改程序使用定时器T1的中断方式来控制P2.0 、P2.1引脚的LED灯分别以200mshe 800ms的周期闪烁。(图二)3、实验原理设计图 图2.1 图2.24、实验程序代码一:#include#includevoid intt()EA=1;IT

    4、0=0;IT1=0;EX0=1;EX1=1;PX0=0;/中断优先级0 可改变优先级PX1=1;/中断优先级1 可改变优先级void delay()unsigned int i,j;for(i=0;i255;i+) for(j=0;j255;j+) ;void main()intt();while(1)P1=0xff;delay();P1=0x00;delay();void aa() interrupt 0unsigned char temp=0xfe;unsigned int i=0;P1=temp;delay();i=7;while(i-)temp=_crol_(temp,1);P1=te

    5、mp;delay();i=7;while(i-)temp=_cror_(temp,1);P1=temp;delay();void bb() interrupt 2P1=0xf0;delay();P1=0x0f;delay();代码二:#includesbit D1=P20;sbit D2=P27;unsigned char Countor1;unsigned char Countor2;void main()EA=1;ET1=1;TMOD=0x10;TH1=(65536-15536)/256;TL1=(65536-15536)%256;TR1=1;Countor1=0;Countor2=0;w

    6、hile(1) ;void T( ) interrupt 1 using 0Countor1+;if(Countor1=2)D1=D1;Countor1=0;Countor2+;if(Countor2=8) D2=D2;Countor2=0; TH1=(65536-15536)/256;TL1=(65536-15536)%256;5、实验结论 通过本次试验,我对定时器中断的基本功能有了一定的了解,对修改定时/计数器中断的优先级、类型以及LED的闪烁周期等也有一定的了解。最终外部中断实验的中断通过开关SW1和SW2控制,且SW2控制的中断优先级高于SW1控制的中断优先级;定时器T1的中断方式控制

    7、的P2.0和P2.1引脚的LED灯分别以200ms、800ms周期闪烁6、总结与反思 通过对该软件的熟练使用,我在组图过程中有了一定的速度,对其原理也有了一定的理解。同时实验中仍然存在一些问题,在以后的实验中我会慢慢的改进自己的不足,争取早日做到精通使用。实验三 串行口实验1、实验目的 本实验要求单片机U1通过其串行口TXD向计算机发送一个数据“oxab”。利用集成电路MAX232将单片机的输出信号转化成计算机能够识别的信号。2、实验任务 单片机发送数据,计算机接收数据,控制LED的闪烁次序。3、实验原理图设计 图3.1四、实验程序PC发送数据端代码:#include unsigned cha

    8、r code Tab =0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F;void Send(unsigned char dat) SBUF=dat; while(TI=0) ; TI=0; void delay(void) unsigned char m,n; for(m=0;m200;m+) for(n=0;n250;n+) ; void main(void) unsigned char i; TMOD=0x20; SCON=0x40; PCON=0x00; TH1=0xfd; TL1=0xfd; TR1=1; while(1) for(i=0;i8;i+)

    9、Send(Tabi); delay(); PC接受数据端代码:#include#define uint unsigned int#define uchar unsigned char#define DT 50000uchar receiver;void delay(uint i) uchar t = 0;while(i-)for(;t=250;t+) ;void init()EA = 1;SCON = 0x50; PCON = 0x00; REN = 1; ET1 = 1; TMOD = 0x20; TL1 = 0xfd; TH1 = 0xfd;TR1 = 1; uchar receive()

    10、uchar temp;temp = SBUF; while(!RI) ; RI = 0; return temp;void main() init();while(1)receiver = receive();P1 = receiver;4、实验结论 通过本次的实验使我更加深刻的认识到了以及对所学知识的掌握至少以及融合之笨拙,在编写接受端代码时总是出现各种各样的错误。最后U1成功向U2发送数据,U2也成功接收U1发送的数据,并在LED灯上显示了出来。5、总结与反思 通过本次实验,我加深了对串行口通信的认识,并成功的实现了两台单片机的串行通信,对串行口的通信机制有了一定的了解。尽管在实验中遇到了

    11、困难,但通过同学之间的相互协作,对所遇到的问题进行了依次解决,本次实验对我的最大感触是自己对知识的掌握太混乱,在以后我要慢慢学会融会贯通。实验四 矩阵键盘输入识别1、实验目的 设计一个4X4的矩阵键盘,键盘的号码015,要求编写出一个键盘输入扫描程序,要求单片机能根据键盘排列顺序,能将按下去键盘号正确识别出来,并采用两个数码管分别键盘号码的个位和十位。2、实验任务 实现查询方式下矩阵式键盘的动态显示。3、实验原理图设计 图4.1四、实验代码#include sbit P14=P14;sbit P15=P15;sbit P16=P16;sbit P17=P17;unsigned char cod

    12、e Tab=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;unsigned char keyval;void led_delay(void) unsigned char j; for(j=0;j200;j+);void display(unsigned char k) P2=0xbf; P0=Tabk/10; led_delay(); P2=0x7f; P0=Tabk%10; led_delay();void delay20ms(void) unsigned char i,j; for(i=0;i100;i+) for(j=0;j60;j+

    13、);void main(void) EA=1; ET0=1; TMOD=0x01; TH0=(65536-500)/256; TL0=(65536-500)%256; TR0=1; keyval=0x00; while(1) display(keyval); void time0_interserve(void) interrupt 1 using 1 TR0=0; P1=0xf0; if(P1&0xf0)!=0xf0) delay20ms(); if(P1&0xf0)!=0xf0) P1=0xfe; if(P14=0) keyval=1; if(P15=0) keyval=2; if(P16

    14、=0) keyval=3; if(P17=0) keyval=4; P1=0xfd; if(P14=0) keyval=5; if(P15=0) keyval=6; if(P16=0) keyval=7; if(P17=0) keyval=8; P1=0xfb; if(P14=0) keyval=9; if(P15=0) keyval=10; if(P16=0) keyval=11; if(P17=0) keyval=12; P1=0xf7; if(P14=0) keyval=13; if(P15=0) keyval=14; if(P16=0) keyval=15; if(P17=0) keyval=16; TR0=1; TH0=(65536-500)/256; TL0=(65536-500)%256;4、实验结论 本次实验的最终结果是:单片机能根据键盘排列顺序,能将按下去键盘号正确识别出来,并采用两个数码管分别显示键盘号码的个位和十位。5、总结与反思 通过本次实验我对非编码键盘有了一些基础的了解,其包含独立式键盘和矩阵式键盘两种方式,并且对于矩阵式键盘的应用也有了一些认识。本次实验使我学到了一些之前没有接触到的内容。尽管如此本次实验过程中仍旧遇到了一些问题,最终在老师和同学的帮助下顺利解决并完成实验。


    注意事项

    本文(数字方阵程序 单片机课程设计报告.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开