ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

1.1Keil及Proteus软件的使用

2020-06-23 15:09:19  阅读:354  来源: 互联网

标签:P1 1.1 Keil 单片机 Proteus 实验 软件


1.1Keil及Proteus软件的使用

文章目录

一、 实验目的

1.1、掌握利用Keil和Proteus软件进行C51程序设计与仿真

1.2、初步掌握Keil软件的操作

1.3、熟练掌握Keil软件的编译和调试

1.4、初步掌握Proteus软件的操作

二、 实验要求

自己根据C语言掌握的情况,针对单片机的特点设计一个简单的C51程序,通过Keil程序开发设计软件进行编辑、编译,并在Proteus软件上设计出相应的仿真图,烧录Keil生成的HEX文件,进行实例仿真。

三、 实验实现的功能说明

本人实现的主要功能是利用单片机的P1口控制LED灯亮灭灯的功能。LED灯在程序的控制下能闪烁(间隔1秒)。通过protues虚拟软件进行仿真,在单片机P1口的8个引脚上分别连接一个发光二极管,将在keil编辑好的程序烧录到单片机中,实现8个二极管同时亮灭的效果。

四、 实验实现的原理及仿真电路设计

实验原理:P1口输出高电平驱动LED灯亮,输出低电平驱动LED灯灭。通过编程,让P1口间隔输出高低电平,从而使得LED灯出现闪烁状态。为了使闪烁间隔1秒,经测试,大概使用了240次空语句循环。

下图为实验原理电路图:

在这里插入图片描述

五、 实验流程图:

在这里插入图片描述

六、 实验主要功能代码

#include<reg51.h> //头文件
sbit led=P1;      //设置led为P1的所有端口
void Delay(unsigned char m); //延时函数
//主函数
void main()
{
	  while(1)//执行的函数
	  {
	     P1=0X00; //设置P1为低电平
		 Delay(3); //延时
		 P1=0XFF;  //设置P1为高电平
		 Delay(3) ;//延时
	 }
}
//延时函数	 
void Delay(unsigned char m)
{
   unsigned char i,j,k;
   for(k=0;k<m;k++)
      for(i=0;i<240;i++)
	      for(j=0;j<240;j++);
}

控制间隔时间的部分代码:

   for(k=0;k<m;k++)
      for(i=0;i<240;i++)
	      for(j=0;j<240;j++);

控制LED灯亮灭的代码

     P1=0X00;
	 Delay(3);
	 P1=0XFF;
	 Delay(3) ;

七 、实验过程及实验情况

  1. 在做实验时很多细节往往会被我们忽略,例如:将分号打成了逗号,从而使编译报错。

  2. 在连接发光二极管时,需要注意程序编写的方式,是共阴极还是共阳极,不同的极性二极管的连接方式、控制方式不同。

  3. 在使用keli编写程序时,命名时第二包时需要加.c,否则会出现错误。

八、 实验小结

​ 本次实验是我们首次使用proteus和keil进行实验,在老师和同学们的帮助下我突破重重困难,最终在规定时间内将实验完成了。此实验相对来说比较简单,我通过P1口实现对8个发光二极管,使用延时函数实现二极管的亮灭,再使用参数控制循环次数,从而控制延时时间的长短。在此次学习中我对单片机有了初步的了解,以后我会好好努力,争取对单片机有更深入的学习了解。在此感谢老师与同学们的帮助。

标签:P1,1.1,Keil,单片机,Proteus,实验,软件
来源: https://blog.csdn.net/weixin_44908159/article/details/106909458

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有