C语言C51单片机一个按钮控制8个LED灯,来高手解决,急啊,在线等,要求在下面(有图)

作者&投稿:文艳 (若有异议请与网页底部的电邮联系)
我需要单片机C51一个开关控制8个LED灯的程序 编程~

#include#define uchar unsigned charuchar led[5]={0x7e,0x3c,0x18,0x00,0xff};uchar num;sbit key=P1^0;main(){P0=0xff;num=0;while(1) { if(key==0) { while(key==0); P0=led[num]; num++; num%=5; } }}

你这个程序没有什么问题的,编译是可以通过的。你没有建工程吧?如下图编译结果是对的。

#include<at89x51.h>
#define uchar unsigned char
#define uint unsigned int
sbit K1=P2^0;
void delay1s() //1s延时
{
uchar j,k,l;
for(l=0;l<100;l++)
for(j=20;j>0;j--)
for(k=248;k>0;k--);
}
void main()
{ K1=1;
while(1)
{
if(K1==0)
{
P0=0xaa;

delay1s();
P0=~0xaa;
delay1s();
}
K1=1;
}
}


用c语言编写c51单片机源程序后缀是?
C语言编写的源程序,后缀是.c。头文件的后缀是.h。

请问大家:C语言和C51有什么区别?
(1)含义不同:1、C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。2、C51是nVIDIA公司推出的首款K8平台整合芯片组的产品系列代号,使用C51系列芯片组的北桥芯片分为两个版本:GeForce6150和GeForce6100,它们与Nforce 400系列的南桥芯片...

c51单片机c语言交通灯的程序
sbit k5=P3^1;sbit Yellow_nb=P2^5; \/\/南北黄灯标志 sbit Yellow_dx=P2^2; \/\/东西黄灯标志 sbit Green_nb=P2^4;sbit Green_dx=P2^1;sbit Buzz=P3^7;bit Buzzer_Indicate;bit time=0;\/\/灯状态循环标志 bit set=1;\/\/调时方向切换键标志 uchar code table[11]={ \/\/...

单片机用C51和汇编语言写程序的区别
若干年前汇编相对于C语言有性能上的优势,因为每条指令与机器马直接对应,做优化容易控制些。但如今编译器越来越强大,优化的结果也越来越好,汇编这点优势就不明显了。而C语言相对于汇编来说它的优势就在于它是高级语言,语法上更平易近人,也更易于读写,比如一个简单的加法操作:\/\/C语言 a = 1 +...

采用单片机的c语言开发时,只能利用c51语言书写程序,不能嵌套汇编语言...
像这种语言开发的话,那么是只能利用这个书写程序完成这个流程。

c51单片机中如何用汇编语言编写流水灯
51单片机用汇编语言编写流水灯程序,就是控制多个LED ,使其在特定时间间隔内,只有一个LED 发光,其他熄灭,用这种方式顺序移动点亮LED的位置,就形成了流水灯的效果。以下是程序:;假设晶振12MHZ,P1控制8个LED低电平亮 ;启动入口=== ORG 0000H;复位启动 AJMP START;ORG 001BH;T1中断 AJMP T1INT;...

跪求单片机c51用汇编语言写的程序,功能为:8只发光二极管依次点亮,从...
MAIN: MOV P1, #11111110B ; P1 口 点亮一个发光二极管 ACALL DELAY ; 调用延时子程序 MOV P1, #11111101B ; 从左向右移动 一位 ACALL DELAY MOV P1, #11111011B ACALL DELAY MOV P1, #11110111B ACALL DELAY MOV P1, #11101111B ACALL DEL...

编程,单片机C51编程
单片机c语言下lcd多级菜单的一种实现方法可通过“向上”、“向下”、“回退”、“确认”4 个键或遥控器来实现对菜单的选择。具体功能:“向上”键:在本层菜单的项目中向上移动进行选择;“向下”键:在本层菜单的项目中向下移动进行选择;“回退”键:取消本层的菜单设置,返回上层菜单;“确认”键:确认本...

c51单片机中断程序中的interrupt1,2,3是由什么决定的?
PCI等中断,具体看单片机的资料。Proteus 自从有了单片机也就有了开发系统,随着单片机的发展开发系统也在不断发展。 keil是一种先进的单片机集成开发系统。它代表着汇编语言单片机开发系统的最新发展,首创多项便利技术,将开发的编程\/仿真\/调试\/写入\/加密等所有过程一气呵成,中间不须任何编译或汇编。

请高手帮忙!用C51对单片机存储单元中的一位进行赋值,例如:给20H中的一...
C51有一些地址支持位寻址,可以直接进行位操作,不同51MCU的地址段不一样,你查一下相应的datasheet.

江汉区18355546207: 单片机编程,用一个开关控制8个灯轮流亮,再用一个开关控制两个灯一起亮一起灭 -
徭傅中诺: 简单的啊.思路:8个LED接在一个口,如P1口.再将另外两个LED接在另外某个口(如P2)的两个引脚.然后将两个按键分别接在空闲的口的两个引脚. 按下一个按键,使8个LED的输出状态变化,0xFE循环移位实现,LED低电平亮.另外的按键按下,两个LED状态翻转.

江汉区18355546207: C51如何用8个按键,分别控制8个LED亮灭只允许一个LED亮?上电灯全灭.请 -
徭傅中诺: #include<reg51.h>#include<INTRINS.h>#define u16 unsigned int#define u8 unsigned char/* P1.0-P1.7接按键 P2.0-P2.7接LED*/ code u8 table[]={0xFE,0xFD,0xFB,0xF7,0xEF,0xDF,0xBF,0x7F,0xff};/***********************************/ void main()//...

江汉区18355546207: 我想用单片机的一个按键控制8个发光二极管的发光样式,要三种样式,样式都要是循环的,用C语言来编写, -
徭傅中诺: 第一种方法:使用扫描的方法,一个大循环:先读按键状态,然后根据读出来的按键状态输出电平去控制LED 第二种方法:主函数是一个大循环,根据读出来的按键状态输出电平去控制LED.按键状态在中断程序里进行扫描.

江汉区18355546207: 单片机中如何用一个按键控制八个灯的状态? -
徭傅中诺: #include #define uint unsigned int #define uchar unsigned char void delay(uint z); void main() {uchar a;a=0x00;P0=0x00;//P0输出; led共阴接法 P1输入按键另一端接地 P0加上拉电阻P1=0xff;while(1){P0=0x00;if(P1!=0xff){a=...

江汉区18355546207: 利用单片机、1个按钮(注意是按钮,不是开关)、8个LED发光二极管,要求: -
徭傅中诺: 你是要程序还是要思路? - 要硬件还是软件? 要原理图还是吗? 你计划用什么芯片型号? 假设你用的是C51单片机- 思路 - 利用外部中断0或者外部中断1-(引脚P3.3或者P3.2连接一个按钮-按钮另一端接地-) 8个LED灯连续分别接P1.0-P1.7这8...

江汉区18355546207: 单片机里面用一个独立按键控制8个发光管 -
徭傅中诺: 可以通过按键延时时间去控制发光管,或者采用一些数码转换的芯片,比如按键一次,亮哪个值,像38译码器 等等都行

江汉区18355546207: 在51单片机中用c语言写程序实现用一个按键控制8个灯的亮和灭(按下按键全部灯亮,按下按键全部灯灭) -
徭傅中诺: 你首先要确定你的电路.选择什么单片机和数码管,8个按键最简单8个IO口控制.一般简单的是用三极管驱动数码管.如果你会C语言的话,很容易上手.自己先从控制1个数码管学,在控制2个数码管(2个数码管基本上可以完成上面试验,8个...

江汉区18355546207: 关于C51:用key按键控制8个LED以不同的模式显示(我用的数组). -
徭傅中诺: 试试看:void main() { uchar key1, key2; uchar a; while(1) { P1 = 0xff; key1 = P1; switch(key1) { case 0x01: for(a = 0; adelay(100); P2 = left_right[a]; P1 = 0xff; key2 = P1; if (key1 != key2) {key1 = key2; break;} //检测按键,不同则跳出循环. } break; case 0x02: ......

江汉区18355546207: 51单片机制作一个由一个按钮控制的8盏流水灯程序,要求按下按钮后流水灯先从左到右闪两次 -
徭傅中诺: #include<reg51.h> #define uchar unsigned char sbit key=P1^0; uchar led; void delay(uchar x) {uchar i,j;for(i=0;i<x;i++)for(j=0;j<125;j++); } void disled() {uchar i,j;led=0xfe;for(j=0;j<2;j++){for(i=0;i<8;i++){P0=led;delay(200);P0=0xff;delay(...

江汉区18355546207: 在C51单片机中编写8个开关控制8个小灯的程序,用C语言和汇编语言两种编写 -
徭傅中诺: 早上起来没有什么事,跟你写个简单的供您学习与参考吧,这个程序是对应某个按键按下,对应序列号的灯就亮起来,释放按键,则灯灭,都是低电平有效.至于其他功能,你可以自己扩展吧.我只写2个,8个太多了,懒的动了.#include<...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网