单片机原理与应用实验报告.doc
《单片机原理与应用实验报告.doc》由会员分享,可在线阅读,更多相关《单片机原理与应用实验报告.doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、单片机原理实验报告专业: 计算机科学与技术学号::实验1 计数显示器实验目的熟悉Proteus仿真软件,掌握单片机原理图的绘图方法实验容(1) 熟悉Proteus仿真软件,了解软件的结构组成与功能(2) 学习ISIS模块的使用方法,学会设置图纸、选元件、画导线、修改属性等基本操作(3) 学会可执行文件加载与程序仿真运行方法(4) 理解Proteus在单片机开发中的作用,完成单片机电路原理图的绘制实验步骤(1) 观察Proteus软件的菜单、工具栏、对话框等基本结构(2) 在Proteus中绘制电路原理图,按照表A.1将元件添加到编辑环境中(3) 在Proteus中加载程序,观察仿真结果,检测电
2、路图绘制的正确性表A.1CategoryReferenceValueMicroprocessor ICsU180C51MiscellaneousX1CRYSTALCapacitorsC1,C2/1nFCAPCapacitorsC3/22uFCAP-ELECResistorsR2R8/100RESResistorsR1/1000RESOptoelectronicsLED1,LED27SEG-COM-CAT-GRNSwitches&RelaysBUTBUTTON实验原理图实验源程序#include sbit P3_7=P37;unsigned char x1=0;x2=0; unsigned ch
3、ar count=0; unsigned char idata buf10= 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; void delay(int time) int k,j;for(;time0;k-)for(j=500;j0;j-);void init() P0=bufx1;delay(10); P2=bufx2;delay(10);void main()init();while(1) x1=count/10;x2=count%10;P0=bufx1; delay(10); P2=bufx2; delay(10); if(P3_
4、7=0)/ delay(10); while(!P3_7); if(count=99) count=0; else count=count +1; 实验结果说明该计数器的功能是,按下按下K1后,数码管LED1和LED2会显示出按键的按下次数,LED1表示个位,LED2表示十位。当计数器达到99后再次按压K1按键,显示值从0重新开始。实验2 指示灯开关控制器实验目的学习汇编语言的编程与调试方法实验容(1) 熟悉Proteus仿真软件,了解软件的结构组成与功能(2) 学习汇编语言的程序设计方法(3) 学会在ISIS模块中进行汇编程序录入、编译和调试(4) 理解单片机程序控制原理,实现指示灯/开关控
5、制器的预期功能实验步骤(1)在ISIS中绘制电路原理图,并把对应元件添加到编辑环境中(2)在ISIS中编写汇编语言程序(3)利用ISIS的汇编调试功能检查程序的语法和逻辑错误(4)观察仿真结果,检测程序与电路的正确性实验原理图实验源程序#include void delay(int time) int k,j;for(;time0;time-)for(k=100;k0;j-)for(j=500;j0;j-);void init()P1=0x00;delay(20); P1=0xff;delay(20);P1=0x00;delay(20);P1=0xff;delay(20);P1=0x00;de
6、lay(20);P1=0xff;delay(20);void main()init();P1=0x00;delay(20);P1=0xff;delay(20);while(1) P1=P2 ;实验结果说明点击运行后,8个发光二极管一起闪烁3次。然后根据开关K2K4K6K8控制对应发光二极管的亮灯状态,当按下K1K3K5K7中的其中一个是,该开关对应的二极管亮,除K2以外,K2不亮的原因我也不明白,代码没有问题,电路图也没有问题,我觉得是BUG。实验3 指示灯循环控制实验目的熟悉uVision3编译软件,掌握C51编程与调试方法实验容(1) 熟悉uVision3编译软件,了解软件的结构组成与功能
7、(2) 学习C51语言的程序设计方法(3) 学会在uVision3中进行C51程序录入、编译和调试(4) 理解Proteus与Keil联合的仿真原理,实现LED指示灯循环控制功能实验步骤(1) 在ISIS中绘制电路原理图,将相应元件添加到编辑环境中(2) 在uVision3中编写C51程序(3) 利用uVision3的编译调试功能检查程序的语法和逻辑错误(4) 下载可执行文件,在Proteus中观察仿真结果,检验程序的正确性实验原理图实验源程序#include void delay(int time) int k;for(;time0;time-)for(k=1000;k0;k-); void
8、 init()P1=0x00;delay(100);P1=0xff; delay(100);P1=0x00;delay(100);P1=0xff;delay(100);P1=0x00;delay(100);P1=0xff;delay(100);void main()int i,j; init();while(1) unsigned char k=0x01;for(i=7;i0;i-) P1=k; k=k*2; delay(100) ; for(j=8;j0;j-) P1=k; k=k/2; delay(100) ; 实验结果说明程序开始后,8只发光二极管依次从上到下闪烁,然后再从下到上闪烁。实
9、验4 指示灯中断控制实验目的掌握行列式键盘的工作原理,熟悉C51语言的编程与调试实验容(1) 学习使用Proteus软件,掌握原理图绘图方法(2) 学习Keil C软件,掌握C51程序编写与调试方法(3) 理解行列式键盘的扫描工作原理,完成扫描程序的编写与调试(4) 实现行列式键盘扫描中断控制功能实验步骤(5) 在Proteus中绘制电路原理图,将相应的元件添加到编辑环境中(6) 在Keil中编写C51程序,并使之编译通过(7) 在Proteus中加载程序,观察仿真结果实验原理图实验源程序#include sbit P3_7=P37;unsigned char x1=0;x2=0;unsign
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 原理 应用 实验 报告
限制150内