版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、单片机原理实验报告实验一计数显示目的熟悉Proteus仿真软件,掌握单片机原理图的绘制方法【实验内容】熟悉Proteus仿真软件,了解软件的结构和功能学习如何使用ISIS模块,学习设置图纸、选择元件、画线、修改属性等基本操作了解如何加载可执行文件和运行程序仿真了解Proteus在单片机开发中的作用,完成单片机电路原理图的绘制实验步骤观察Proteus软件的基本结构,如菜单、工具栏、对话框等。Proteus中绘制电路原理图,并根据表A.1将组件添加到编辑环境中在Proteus中,观察仿真结果,检查电路图绘制的正确性表A.1类别参考价值微处理器集成电路U180C51各种各样的X1水晶电容器C1,C
2、2/1nF帽电容器C3/22uFCAP-ELEC电阻器R2R8/100RES电阻器R1/1000RES光电LED1、LED27SEG-COM-CAT-GRN开关&继电器但按钮【实验示意图】【实验源程序】#include 位 P3_7=P37;无符号字符 x1=0;x2=0 ;无符号字符数=0;无符号字符 idata buf10= 0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;无效延迟(int时间)整数 k,j;for(;time0;k-)for(j=500;j0;j-);无效初始化()P0=bufx1;延迟(10);P2
3、=bufx2;延迟(10);无效的主要()在里面();而(1)x1=计数/10;x2=计数%10;P0=bufx1;延迟(10);P2=bufx2;延迟(10);如果(P3_7=0)/延迟(10);而(!P3_7);如果(计数=99)计数=0;别的计数=计数+1;实验结果阐明计数器的作用是按下K1后,数码管LED1和LED2会显示按键的按下次数, LED1代表一位, LED2代表十位。当计数器达到99时,再次按下K1键,显示值再次从0开始。实验2指示灯开关控制器目的学习如何编程和调试汇编语言【实验内容】熟悉Proteus仿真软件,了解软件的结构和功能学习如何用汇编语言编程ISIS 模块中输入、
4、编译和调试汇编程序了解MCU程序控制原理,实现指示灯/开关控制器的预期功能实验步骤( 1 ) 在ISIS中 画 出 电路 原理图, 并 在 编辑 环境 中 添加 相应 的 元器件 .( 2 )在ISIS中编写汇编语言程序( 3 ) 利用ISIS 的汇编调试功能检查程序的语法和逻辑错误( 4 )观察仿真结果,检查程序和电路的正确性【实验示意图】【实验源程序】#include 无效延迟(int时间)整数 k,j;for(;time0;time-)for(k=100;k0;j-)for(j=500;j0;j-);无效初始化()P1=0 x00;延迟(20);P1=0 xff;延迟(20);P1=0
5、x00;延迟(20);P1=0 xff;延迟(20);P1=0 x00;延迟(20);P1=0 xff;延迟(20);无效的主要()在里面();P1=0 x00;延迟(20);P1=0 xff;延迟(20);而(1)P1=P2 ;实验结果阐明点击运行,8个LED 一起闪烁3次。然后,根据开关K2K4K6K8,控制相应发光二极管的点亮状态。当K1K3K5K7其中一个被按下时,开关对应的二极管导通。除了K2 ,我不明白K2 不亮的原因。代码没问题,电路图也没问题,我觉得是bug 。实验3 LED循环控制目的熟悉uVision3编译软件,掌握C51编程调试方法【实验内容】熟悉uVision3编译软件
6、,了解软件的结构和功能学习C51语言的编程方法学习在uVision3中输入、编译和调试C51程序了解Proteus和Keil结合的仿真原理,实现LED指示灯的循环控制功能实验步骤在 ISIS 中绘制电路原理图,并在编辑环境中添加相应的元件在uVision3中编程C51 _使用uVision3的编译调试功能检查程序语法和逻辑错误下载可执行文件,在Proteus中观察仿真结果,检查程序的正确性【实验示意图】【实验源程序】#include 无效延迟(int时间)诠释 k;for(;time0;time-)for(k=1000;k0;k-);无效初始化()P1=0 x00;延迟(100);P1=0 x
7、ff;延迟(100);P1=0 x00;延迟(100);P1=0 xff;延迟(100);P1=0 x00;延迟(100);P1=0 xff;延迟(100);无效的主要()整数 i, j;在里面();而(1)无符号字符 k=0 x01;对于(i=7;i0;i-)P1=k;k=k*2;延迟(100);对于(j=8;j0;j-)P1=k;k=k/2;延迟(100);实验结果阐明程序启动后, 8个 LED 从上到下依次闪烁,然后从下到上依次闪烁。实验4指示灯中断控制目的掌握行列式键盘的工作原理,熟悉C51语言的编程调试【实验内容】学习使用Proteus软件,掌握原理图绘制方法学习Keil C软件,掌
8、握C51编程调试方法了解行列式键盘的扫描工作原理,完成扫描程序的编写和调试实现行列式键盘扫描中断控制功能实验步骤在Proteus中绘制电路原理图,并在编辑环境中添加相应的元件用Keil写一个C51程序并编译在Proteus中观察模拟结果【实验示意图】【实验源程序】#include 位 P3_7=P37;无符号字符 x1=0;x2=0 ;无符号字符数=0;无符号字符 idata buf16= 0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x58,0 x5e,0 x79,0 x71;char ke
9、y_buf=0 x11,0 x21,0 x41,0 x81,0 x12,0 x22,0 x42,0 x82,0 x14,0 x24,0 x44,0 x84,0 x18,0 x28,0 x48,0 x88;无效初始化();无效键扫描();字符键=0,k=0 ;位int_flag;无效延迟(int时间)整数 k,j;for(;time0;time-)for(k=20;k0;k-)for(j=500;j0;j-);无效的主要()在里面();而(1)P2=0 x0f;P0=bufk;无效初始化()即=0 xff;TCON=0 x05;int_flag=0;P2=0 x0f;P0=buf0;无效 key
10、_scan() 中断 1 字符 i=16;字符键码=0;延迟(1);而(INT0=1)返回;EX0=0;键码=P2 & 0 xf0;P2=0 xf0;键码=0 x0f & P2 |关键代码;for(;i0;i-)if(key_bufi=keycode)k=我;EX0=1;返回;EX0=1;实验结果阐明按下对应的1 F 按键,对应按键对应的数字会显示在LED 显示屏上。实验5电子秒表显示目的中断和定时器/计数器的工作原理,熟悉C51编程调试方法【实验内容】学习使用Proteus软件,掌握原理图绘制方法学习Keil C软件,掌握C51编程调试方法了解定时器的工作原理,完成定时器中断程序的编写和调试
11、深入理解定时中断的编程实验步骤在Proteus中绘制电路原理图,并在编辑环境中添加相应的元件用Keil写一个C51程序并编译在Proteus中观察模拟结果【实验示意图】【实验源程序】#include 无符号字符 min=0,sec=0,count=0;无符号字符 idata buf10= 0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f;无效初始化();无效 isr_timer0();无效延迟(int时间)整数 k,j;for(;time0;time-)for(k=20;k0;k-)for(j=50;j0;j-);无效的主要
12、()在里面(); 而(1)P2=0 xfe;P0=buf分钟/10;延迟(1);P2=0 xfd;P0=bufmin%10;延迟(1);P2=0 xfb;P0=buf秒/10;延迟(1);P2=0 xf7;P0=bufsec%10;延迟(1);无效初始化()TMOD=0 x01;TH0=0 x3c;TL0=0 xb0;ET0=1;EA=1;TR0=1; P2=0 xf0;P0=0 xff;延迟(1);无效 isr_timer0() 中断 1P1=0 x0f;如果(计数=20)计数=0;如果(秒=59)P1=!P1;秒=0;如果(分钟=59)min=0 ;别的最小=最小+1;别的秒=秒+1;别的
13、计数=计数+1;TH0=0 x3c;TL0=0 xb0;实验结果阐明数码管初始值为00 ,每秒秒计数器加一;当第二个计数器达到60时,它被清除为 0,并重新从00开始。当第二个计数器清零时,分钟计数器加一。数字时钟。实验6单片机双机通信系统设计目的掌握串口通讯工作原理,熟悉C51编程方法,了解PCB设计流程【实验内容】学习使用Proteus软件,掌握原理图绘制方法学习使用Keil C软件,掌握C51编程调试方法了解串口通讯的工作原理,完成串口通讯程序的编写和调试学习使用ARES模块,了解PCB设计方法实验步骤在Proteus中绘制电路原理图,并在编辑环境中添加相应的元件用Keil写一个C51程
14、序并编译在Proteus中观察模拟结果【实验示意图】【实验源程序】#includechar led_mod=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x58,0 x5e,0 x79,0 x71;无效延迟(int时间)整数 k,j;for(;time0;time-)for(k=20;k0;k-)for(j=500;j0;j-);无效的主要()字符计数器=0;字符文本;P1=0 x3f;TMOD=0 x20;TH1=0 xfd;TL1=0 xfd;PCON=0 x00;TR1=1;SCON=0 x50;而(1)文本=led_mod 计数器;SBUF=文本;而(TI=0);TI=0;而(RI=0);RI=0;如果(SBUF=文本)P1=文本;计数器+;如果(计数器 15)计数器=0;延迟(200);#includechar led_mod=0 x3f,0 x06,0 x5b,0 x4f,0 x66,0 x6d,0 x7d,0 x07,0 x7f,0 x6f,0 x77,0 x7c,0 x58,0 x5e,0 x79,0 x71;无效延迟(int时间)整数 k,j;for(;time0;time-)for(k
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年甘肃会展中心有限责任公司招聘笔试参考题库含答案解析
- 2025版智慧城市运营项目融资协议合同范本3篇
- 2025年度个人小户型房产买卖及装修改造合同4篇
- 2025年个人森林抚育与更新承包合同4篇
- 2025年全球及中国医用协作机器人行业头部企业市场占有率及排名调研报告
- 2025-2030全球邻氯苯腈(氯化法)行业调研及趋势分析报告
- 2025-2030全球触控灯行业调研及趋势分析报告
- 2025版拖拉机销售与保险服务合同范本6篇
- 2025年度房产租赁合同(含租金调整及违约责任)3篇
- 2025年度个人设备租赁贷款合同范本7篇
- 2024年全国职业院校技能大赛高职组(研学旅行赛项)考试题库(含答案)
- 2025年温州市城发集团招聘笔试参考题库含答案解析
- 2025年中小学春节安全教育主题班会课件
- 2025版高考物理复习知识清单
- 计量经济学练习题
- 除数是两位数的除法练习题(84道)
- 2025年度安全检查计划
- 2024年度工作总结与计划标准版本(2篇)
- 全球半导体测试探针行业市场研究报告2024
- 反走私课件完整版本
- 2024年注册计量师-一级注册计量师考试近5年真题附答案
评论
0/150
提交评论