求助帖~~~~~~~~~~希望大神解答

2019-07-15 13:53发布

本人新手,正在学习C51单片机基础,自己用定时器写了个程序,p1.0接个发光二极管,然后让它亮一秒之后熄灭,但是仿真的时候一直是亮的,不知道为什么,求解答
[td]#include<reg52.h>#define uint unsigned int#define uchar unsigned charuchar aa;sbit p10=P1^0;void init();
void main(){        init();        p10=0;        if(aa==20)        {                aa=0;                p10=1;        }

}void init(){                TMOD=0x01;        TH0=(65536-50000)/256;        TL0=(65536-50000)%256;        EA=1;        ET0=1;        TR0=1;        }
void timer0() interrupt 1{        TH0=(65536-50000)/256;        TL0=(65536-50000)%256;        aa++;       
[/td]
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
share阳光
1楼-- · 2019-07-17 11:38
RobinGod 发表于 2016-5-22 08:06
把判断放到中断里面试试,高低交换可以用取反 P10=~P10

谢谢啦,我试过了,可以用的,十分感谢~~
share阳光
2楼-- · 2019-07-17 17:28
融稔 发表于 2016-5-22 11:15
while(1)
     {      
        if(aa==20)

你的我也试过了,可以用的,完全正确,谢谢你啦~~
Mr.DHG
3楼-- · 2019-07-17 22:14
 精彩回答 2  元偷偷看……

一周热门 更多>