跪求大神现身!!!!帮写个单片机程序!

51单片机P1.6和P1.7分别LED1和LED2,P2.0外接一个按键。现在要实现通电LED1亮,按下LED2亮LED1灭,再按下LED1亮LED2灭!

求大神帮写个程序!!!汇编 C语言都行!!!!

假设低电平灯亮;
#include "reg52.h"
sbit LED2=P1^7;
sbit LED1=P1^6;
sbit KEY= P2^0;

/**********************************************************
主函数 89c52
**********************************************************/
void main( void)
{
uchar flag;
int dly;
//----------------------------------------------
LED1 =0;
LED2 =1;
flag =0;
//------------------------------------------------------------------
while(1)
{
KEY=1;
if(KEY==0)
{
dly=10000;
while(dly--);
if(flag==0)
{
flag=1;
}
else if(flag==1)
{
flag=0;
}

while(KEY==0);
}
//--------------------------------------------
if(flag==1)
{
LED1 =1;
LED2 =0; //灯亮
}
else
{
LED1 =0;//灯亮
LED2 =1;
}
//--------------------------------------------

}
}追问

我保存为.c文件,显示错误。。。是后缀名弄错了吗?
Build target 'Target 1'
Target has no object modules
Target not created

追答

你加上这一行
#define uchar unsigned char

追问

请问加在哪里?

追答

#include "reg52.h"
后面

温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-30
好像学过的样子,出了学校就忘了。打酱油路过

求大神编写51单片机程序 内容如下 如果采取可再加悬赏
define OSC 12000000\/\/12MHz晶体 define YANSHI 2.00\/\/延时2.00秒,精度10mS,最多655.35 S。define QUANSHU 3 \/\/正反转一次,算一圈,总共QUANSHU圈。\/\/=== define BASETIME (unsigned int)(65536-(0.01\/(12.0\/OSC)))\/\/10mS定时常数 define ISRTIMES (YANSHI*100)include <reg51.h> ...

利用汇编语言编单片机程序,求大神帮助。。。
SJMP $ ;暂停 YS: MOV R7,#4 ; 单周期1uS ( 晶振为12MHz) 延时1秒子程序DEL1: MOV R6,#123 ; 单周期1uSDEL2: DJNZ R6,DEL2 ; 双周期2uS*123=246uS DJNZ R7,DEL1 ; 双周期(2us+246+1)*4=996uS NOP ; 单周期1uS RET; ...

求大神给写一个单片机的pwm程序,,,
在编写单片机PWM(脉冲宽度调制)程序时,以下是一个参考示例,它展示了如何配置和初始化8051微控制器的PCA(可编程计数器\/振荡器)模块以产生PWM信号。请注意,此代码是为特定硬件平台(如8051微控制器)和编译器(如Keil C)编写的,可能需要根据您的具体硬件和软件环境进行调整。```c include "reg51...

请大神帮忙编写一个单片机C语言程序,串行通信的。
这是基于STC12C5A60S2 单片机编写的程序,应该也兼容51单片机。这里只是串口的收发,和数码管显示,由于我的数码可能和你的不一样所以需要更改。include<stc.h> define uchar unsigned char define uint unsigned int \/\/unsigned char code dofly[16]={0,0x3f,0x79,0x5e,0x07,0x7f,0x6f,0x39,...

求大神在keil上帮写51单片机C语言程序
\/\/第一个实验:\/\/假设8个LED阴极指向单片机,D11连接P0.1,D12连接P0.2 ... D18连接P0.7\/\/假设K1按键在P2.3引脚#include<reg51.h>#include<intrins.h>sbit k1=P2^3;\/\/假设K1按键在P2.3引脚void main(){P0=0xfe;while(1){if(k1==0){while(k1==0);P0=_crol_(P0,1);}}}...

求大神写个程序,at89c51单片机实现两个7SEG-COM-ANODE灯循环显示00...
这是两位静态显示电路,程序如下:include<reg51.h> unsigned char code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};\/\/共阳数码管段码表 unsigned char num;\/\/计数变量 unsigned char t0n;\/\/T0中断计数 void main(){ TMOD=0x01;\/\/用T0定时,中断方式 TH0=0x3C;\/\/...

求大神帮忙写程序,51单片机,由键盘输入p1,p3.7由ds12b20温度感受器输入...
Set_RTC(); \/\/写入时钟值,如果使用备用电池时候,不需要没每次上电写入,此程序应该屏蔽 while(1){ if(ReadRTC_Flag){ ReadRTC_Flag=0;Read_RTC();l_tmpdisplay[0]=l_tmpdate[2]\/16;\/\/数据的转换,因我们采用数码管0~9的显示,将数据分开 l_tmpdisplay[1]=l_tmpdate[2]&0x0f;l...

求单片机大神写下程序,我做了个4*4*4的光立方,刚刚学单片机只会写点亮的...
你没有说明具体实现什么功能,我就帮你设定一层一层的点亮,然后循环。include <reg51.h> sbit ADDR0 = P2^0;sbit ADDR1 = P2^1;sbit ADDR2 = P2^2;sbit ADDR3 = P2^3;unsigned int i = 0;unsigned int j = 0;void delay500ms(void){ unsigned char i,j,k;for(i=15;i>0;i-...

设计一个以单片机为核心的频率测量装置。求大神给写一下程序。_百度知...
单片机频率计仿真。include<reg52.h> define uchar unsigned char define uint unsigned int sbit p0=P1^0;bit tb0,tb1;uchar tt0,tt1,tt2,tt3;uchar code led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};void main(){ TMOD=0x11;TH0=(65535-50000)\/256;TL0=(...

求大神写一下单片机at89c52控制秒表电路循环显示0到99的程序
defineuchar unsigned char define duan P2 define stime 50 \/\/LED交替闪烁间隔时间 void init();void pause();sbit wei1=P3^0;sbit wei2=P3^1;sbit s2=P1^4;sbit s3=P1^6;\/\/共阳极 void delay(uint xms);uint g=0;uint s=0;uint count=0;uint ispause=0;void main(){ uchar nums...

相似回答