我是为了用P1^5,P1^6,P1^7点亮LED灯的,可是无法点亮!程序应该没错吧,#includesbit P1_5=P1^5;sbit P1_6=P1^6;sbit P1_7=P1^7;unsigned int num;void mian(void){EA=1;ET0=1;TMOD=0X01;TH0=(65536-20000)/256;TL0=(65536-20000)%256;TR0=1;while(1

来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/24 17:03:17
我是为了用P1^5,P1^6,P1^7点亮LED灯的,可是无法点亮!程序应该没错吧,#includesbitP1_5=P1^5;sbitP1_6=P1^6;sbitP1_7=P1^7;unsigned

我是为了用P1^5,P1^6,P1^7点亮LED灯的,可是无法点亮!程序应该没错吧,#includesbit P1_5=P1^5;sbit P1_6=P1^6;sbit P1_7=P1^7;unsigned int num;void mian(void){EA=1;ET0=1;TMOD=0X01;TH0=(65536-20000)/256;TL0=(65536-20000)%256;TR0=1;while(1
我是为了用P1^5,P1^6,P1^7点亮LED灯的,可是无法点亮!程序应该没错吧,
#include
sbit P1_5=P1^5;
sbit P1_6=P1^6;
sbit P1_7=P1^7;
unsigned int num;
void mian(void)
{
EA=1;
ET0=1;
TMOD=0X01;
TH0=(65536-20000)/256;
TL0=(65536-20000)%256;
TR0=1;
while(1)
{
switch(num)
{
case 50:
{
P1_5=0;
P1_6=0;
P1_7=0;
break;
}
case 100:
{
P1_5=1;
P1_6=1;
P1_7=1;
num=0;
break;
}
default:
break;
}
}
}
void timer0() interrupt 1
{
TF0=0;
num++;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
}

我是为了用P1^5,P1^6,P1^7点亮LED灯的,可是无法点亮!程序应该没错吧,#includesbit P1_5=P1^5;sbit P1_6=P1^6;sbit P1_7=P1^7;unsigned int num;void mian(void){EA=1;ET0=1;TMOD=0X01;TH0=(65536-20000)/256;TL0=(65536-20000)%256;TR0=1;while(1
主函数写错了.但是就算这个问题解决后编译通过了,其实还是有地方应该可以优化的.首先我不知道你的单片机是什么公司的,但如果是STC的或者是AT的,那你可以将头文件改成“at89x52.h”,这样的话,就不必定义sbit P1_5这些变量了,可以直接用P1_5.再者,每当Timer0中断一次时,变量num自动加1,但是你想过这个变量溢出后会怎么样没有?必须得防止num变量溢出,可以写成这样:if(num==10000) num=0; 这样就不会溢出了.而且你在中断程序中还软件清零了TF0,没必要,每次响应中断后会硬件自动清零的.你的switch语句也有问题,当num变量为50的时候,三个LED会一起变亮还是熄灭,你又不说明LED是高电平点亮还是低电平点亮,然后当num大于50而又小于100的时候保持这个状态,达到100后会状态改变一次,然后就是无底深渊了,没有给出限制条件.如果单纯想要LED点亮一段时间,用个if语句就解决问题了.

MOV P1,#5DH CPL P1.1 CPL P1.2 CLR P1.6 SETB P1.7 求高手p1等于多少啊? 我是为了用P1^5,P1^6,P1^7点亮LED灯的,可是无法点亮!程序应该没错吧,#includesbit P1_5=P1^5;sbit P1_6=P1^6;sbit P1_7=P1^7;unsigned int num;void mian(void){EA=1;ET0=1;TMOD=0X01;TH0=(65536-20000)/256;TL0=(65536-20000)%256;TR0=1;while(1 MOV P1,#5DH CPL P1.0 CPL P1.1 CLR P1.5 SETB P1.6 求高手p1等于多少啊? p1=p1->next 物理题P1-7 #includevoid main(){int *p1,*p2,a[5]={1,3,5,7,9};for(p1=a;p1 质数P1 设p1 单片机 P1 int (*p1)( 上面的程序在编译时.编译器说:warning c206:'diplay':missing function-prototype erorr c231:'display#includesbit k0=P1^0;sbit k1=P1^1;sbit k2=P1^2;sbit k3=P1^3;sbit d0=P1^4;sbit d1=P1^5;sbit d2=P1^6;sbit d3=P1^7;sbit B0=P3^7;sbit I0=P2^0;s keil 怎么定义P1^0到P1^6的引脚我的意思是 把P1^0 到P1^6 七个引脚只用一个符号定义 而不是一个一个用位定义我的P1^7引脚 有别用 所以不好直接用什么 P1=0x** 赋值 从P1.7输出5个方波 MOV R2,#0AH CLR P1.7 PULSE:CPL P1.7 DJNZ R2,PULSE 请问CPL P1.7从P1.7输出5个方波MOV R2,#0AHCLR P1.7PULSE:CPL P1.7DJNZ R2,PULSE请问CPL P1.有什么作用? 关于导数的几何意义在导数的几何意义中,为了确定曲线在P1点的切线,我们先在曲线上P1附近找一点P2,并设想P2沿着曲线向P1靠拢,当P2趋近于P1时,即P1与P2重合时,割线P2P1变成P1的切线.可是两点重 对点(x,y)的一次操作变换记为P1(x,y).定义其变换法则如下:P1(x,y)=(x+y,x-y);且规定Pn(x,y)=P1[Pn-1(x,y)] (n为大于1的整数)例如,P1=(3,-1),P2(1,2)=P1[P1(1,2)]=P1(3,-1)=(2,4),P3(1,2)=P1[P2(1,2)]=P1(2,4)=(6, c语言作业(*p &n)用法1.Study the following section of C code:int n1 = 2,n2 = 5,n3[ ] = {3,4,5,6,7};int* p1 = &n1;int * p2 = n3;*p2 = (*p1)++ + *(p2) ; p2 = &n3[3];n1 = *p1 + *(p2) + *(&n2); p1 = &n3[4];What are the values of *p1,*p2,n1,n2 an P1口输入输出单片机实验 速求利用单片机的P1.0——P1.3接四个发光二极管L0——L3,用来指示当前计数的数据;用P1.4——P1.7作为预置数据的输入端,接四个拨动开关K0——K3,用P3.6端口接一个轻触 指针的逻辑运算例题 inta[5]={1,3,5,7,9},*p1=a,*p2=0;那么 p1,p2,为真,p2,p1&&p2 为假.请问此处p1,p2分别代表什么啊,还有为什么*p1=a是什么意思啊,不是p1=a是p1指向a[0]吗?他们有什么区别啊?