include unsigned char ledtab[]={0x7f,0xbf,0xdf,0xef,0xf7,0xfb,0xfd,0xfe} void delay(unsigned char a){ unsigned char i,j;for(i=0;i

include sbit L1=P0^0;sbit L2=P0^1;sbit L3=P0^2;sbit L4=P0^3;sbit L5=P0^4;sbit L6=P0^5;sbit L7=P0^6;sbit L8=P0^7;void delay(unsigned int i){ while(i--);} void main(){ while

sbit led7 = P2^6;sbit led8 = P2^7;void main(){ int i,j;//点亮第一个灯 led1 = 1;led2 = 0;led3 = 0;led4 = 0;led5 = 0;led6 = 0;led7 = 0;led8 = 0;//延时1秒 for(i = 0;i <

P3=0xfe;//第一个灯亮 delay();//延时 P3=0xfd;//第二个灯亮 delay();P3=0xfb;//第三个灯亮 delay();P3=0xf7;//第四个灯亮 delay();P3=0xef;//第五个灯亮 delay();P3=0xdf;//第六个灯亮 delay

依旧是基础的LED灯部分的实验 说明:实现一排灯从左到右依次一个一个点亮熄灭,实现流水灯 proteus电路图 元件清单:(分别是) 51单片机 电容 瓷片电容(也可用普通电容) 晶振 红色二极管 电阻 电路图的连接方法 程序清单

51单片机C程序实验LED灯:[2]左到右的流水灯

你点开以后。选择其他型号的器件一样的方法,你选择第一个。你点击下。就出来2个选项。P的意思是pick选取器件的意思,有个P字母的地方,在出来的搜索栏里面输入89c52这个51的单片机型号,比如电阻输入resproteus里面打开界面的

就亮一次。但是,D1,缺少电源。你用 P3.2 给 D1 当做正电源,P3.2 就收不到中断的触发信号。改动:把 P3.2,连接到 Q2 集电极,即可收到中断触发信号。把 D1 正极,串联一个 330 欧姆的电阻,接正5V。

1、首先先在proteus画出仿真图,方便仿真程序。2、接着来编写程序,先来写入头函数。2、根据自己在proteus画的图,定义一下管脚根据你的原理图进行编写。3、然后写一个延时函数,来调节流水灯的时间间隔延时时间自己定义。4

1、首先我们打开Proteus软件,点击左边菜单栏的P按钮,然后再搜索框里输入80c51,选择第一个就是80c51单片机;2、然后在搜索框里面输入led,找到Optoelectronics,然后再里面选择LED-RED,红色的led,当然其他颜色也可以;3、接着

define SSSPEED 35 //LED交替闪烁间隔时间 define JSPEED 5000//计数模式,速度默认数值(5000*200us=1S) 值越小计数越快 define PREESTIME 500//按钮长按时间判定,预设500(大约2秒),需要自改,值越大,长按时间

proteus仿真电路图,51单片机按键计数

void main(){ int i, j;a = 0xfe;while(1) { a = _crol_(a, 1);P1 = a; //单个LED灯,接在P1的任意引脚 for(j = 100; j > 0; j--)for(i = 1000; i > 0; i--);} }

并控制LED灯的闪烁频率;然后使用一个计时器中断服务程序来控制LED灯的闪烁,具体实现方式请参考代码注释。最后,为了保证每个周期的闪烁持续时间与频率相符,应该在循环内部加入一个延时操作,等待一定时间再进入下一次循环。

你写的程序并没有加载到工程中,只是写了程序没有用的,不加到工程中,是不能编译的。程序是对的。见下图,首先要把写的程序保存,然后在画红圈的位置,点鼠标右键,把这个程序加进来,加载进来后,左边应该是那样的。

led=1;//点亮 delay(100);//延时100MS led=0;//熄灭 } else led=0;} void delay(unsigned int i){自己根据单片机频率写个1MS带形参的演示程序} 这个程序是现写的。。应该能执行,有些细节没有写,自己修改下,

1、新建项目,如图所示。2、添加头文件,创建延迟函数。3、创建C主函数。4、添加死循环效果。5、点亮LED灯。P1=0x7e;二进制11111110。6、添加延迟效果。注意事项:很多公司都有51系列的兼容机型推出,今后很长的一段时间内

说明:单片机控制LED灯间隔时间闪烁 所用程序很简单,实际情况可作相应变化,也有多种方式实现。proteus电路图 所需元件清单:(分别是) 51单片机 电容 瓷片电容(也可用普通电容) 晶振 红色二极管 电阻 (tip:没有给高电

51单片机C程序实验LED灯:[1]单个灯闪烁

sbit LED=P0^0;sbit ENLED=P1^4;sbit ADDR0=P1^0;sbit ADDR1=P1^1;sbit ADDR2=P1^2;sbit ADDR3=P1^3;main(){ uint8 j;uint16 i;ENLED=0;ADDR0=0;ADDR1=1;ADDR2=1;ADDR3=1;while(1){ if(j==0

/*程序功能:定时5S到切换LED显示状态.作者:w418781840.2008.5.29 */ //===声明区=== include unsigned char count=0;unsigned char flag=1;void led1(void);void led2(void);void led3(void);void

单片机主程序中需要死循环,不然程序顺序执行完就停止了。所以这程序不是不停止,而是停止了。主程序应修改 void main(){ uchar temp;temp = 0xfe;while(1){ P2 = temp;delay(1000);temp = _crol_(temp, 1);} }

sbit P2_4=P2^4;sbit P2_5=P2^5;/* 花样表格 */ uchar code seg1[]={ 0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f, 0x00,0xff, 0x00,0xff}; //控制字( 用左向右流动,然后全部闪烁两次

sbit led7 = P2^6;sbit led8 = P2^7;void main(){ int i,j;//点亮第一个灯 led1 = 1;led2 = 0;led3 = 0;led4 = 0;led5 = 0;led6 = 0;led7 = 0;led8 = 0;//延时1秒 for(i = 0;i <

proteus电路图 画法依旧不说,给出元件清单,其实都差不多,与上篇一致51单片机 电容 瓷片电容 晶振 红色二极管 电阻 电路图如图 程序清单 说明:流水灯的闪亮方法肯定不是唯一的,按照各种形式都可以写出所需的程序,这里只用

51单片机C程序实验LED灯:[4]花样流水灯

用Proteus仿真时,单片机的RST复位引脚是不起作用的,即在RST引脚加高电平,单片机也不会复位的,要实现相当于复位的功能,可以在某个I/O引脚加一个按钮,当这个按钮按下时,就回到第一行程序执行就可以了。

1、打开keil软件,在工具栏点击Project选项选择new uVision Project创建新的工程并保存,步骤如下图所示:2、创建新的文件,按快捷键“ctrl+s”命名为led.c并保存,步骤如下:3、将创建的51.c文件添加到51项目中,鼠标

你这程序这么写,就会有这种现象,就有这种缺陷。原因是,主程序中不论执行哪种模式:mode1();mode2();mode3();mode4();都需要延时的,这个时间应该是比较长的,只有执行一遍后才检查按一次,所以,按键就是等待这么长

要实现Proteus和Keil软件联调,需要安装一个插件,然后在proteus和keil中设置。其实,这两个软件联调,真的没有什么用,调试一个小程序时,单步调试还可以,调试大程序就不适用了。keil编译好了,在proteus仿真测试就行,仿真

用proteus来仿真51的步骤:工具/原料:Proteus,keil c51 1、首先我们打开Proteus软件,点击左边菜单栏的P按钮,然后再搜索框里输入80c51,选择第一个就是80c51单片机;2、然后在搜索框里面输入led,找到Optoelectronics,然后再里

这里我们利用Proteus绘制单片机流水灯的电路图,keil c51编写流水灯的程序。仿真既可以帮助我们学习,也可以检验电路是否合理。防止电路已经焊接完成,但设计不合理的情况。我们打开Proteus软件,点击左边菜单栏的P按钮 然后再搜索框

利用Proteus和keil仿真51单片机流水灯

一、实验要求:(1)、在proteus软件中画好51单片机最小核心电路,包括复位电路和晶振电路;(2)、继续在proteus软件中绘制电路,将p1口做输出口,接八只发光二极管;(3)、在keil软件中编写程序,实现功能间隔1s点亮一个发光二极管,顺序从p1.0到p1.7依次点亮;二、实验目的:(1)、学习proteus软件的,使用方法(2)、学习keil软件的使用方法(3)、学习端口输出的使用方法(4)、掌握延时程序的设计三、实验说明。在proteus软件中把实验要求的电路连接好,再利用keil软件把需要实现的功能编写程序,生成hex文件,把hes文件导入到proteus软件进行仿真。在编写程序时需要延时1s,我们选用的单片机是12MHz的,机器周期是12个时钟脉冲,一个时钟脉冲的时间是1/12微us,即一个周期为1us,程序中子函数void delay_ms(int x)中x为1 是可能延时1ms,以此类推可得1s=1000ms,当x=1000时刚好延时1s。四、硬件原理图及程序设计(1)、硬件原理图设计.电路中,p1.0到p1.7为LED控置端口,排阻RP1阻值为330兆,AT89c51单片机的9脚(RST)为复位引脚;31引脚(EA))为存取外部储存器使能引脚;单片机内部已接地,所以我们不用再接了。如下图所示(2)、程序流程图(3)、程序源代码【摘要】 求用51单片机实现16个流水灯依次点亮,间隔1秒,程序及电路图,设计思路,及所用元件参数!要求从右到左亮灯,在从左到右亮灯,用到了keil,和STC【提问】 一、实验要求: (1)、在proteus软件中画好51单片机最小核心电路,包括复位电路和晶振电路; (2)、继续在proteus软件中绘制电路,将p1口做输出口,接八只发光二极管; (3)、在keil软件中编写程序,实现功能间隔1s点亮一个发光二极管,顺序从p1.0到p1.7依次点亮; 二、实验目的: (1)、学习proteus软件的,使用方法 (2)、学习keil软件的使用方法 (3)、学习端口输出的使用方法 (4)、掌握延时程序的设计 三、实验说明。 在proteus软件中把实验要求的电路连接好,再利用keil软件把需要实现的功能编写程序,生成hex文件,把hes文件导入到proteus软件进行仿真。在编写程序时需要延时1s,我们选用的单片机是12MHz的,机器周期是12个时钟脉冲,一个时钟脉冲的时间是1/12微us,即一个周期为1us,程序中子函数void delay_ms(int x)中x为1 是可能延时1ms,以此类推可得1s=1000ms,当x=1000时刚好延时1s。 四、硬件原理图及程序设计 (1)、硬件原理图设计. 电路中,p1.0到p1.7为LED控置端口,排阻RP1阻值为330兆,AT89c51单片机的9脚(RST)为复位引脚;31引脚(EA))为存取外部储存器使能引脚;单片机内部已接地,所以我们不用再接了。如下图所示  (2)、程序流程图 (3)、程序源代码【回答】
好像,在 P1.0 输出一次高电平,D1 就亮一次。 但是,D1,缺少电源。 你用 P3.2 给 D1 当做正电源,P3.2 就收不到中断的触发信号。 改动: 把 P3.2,连接到 Q2 集电极,即可收到中断触发信号。 把 D1 正极,串联一个 330 欧姆的电阻,接正5V。
INT0外部中断,低电平有效,当P1.0口低电平时LED发光,可以将两个口连接,检测P1.0的低电平次数,从而计算出LED的亮的次数,即闪烁次数。