新人学习遇不解

2019-07-15 09:33发布

本帖最后由 墨染白 于 2017-10-9 20:21 编辑

#include<reg52.h>

typedef unsigned int u16;
typedef unsigned char u8;

sbit led=P2^0;

void timer0Init()
{
        TMOD|=0X01;
        TH0=0XFC;
        TL0=0X18;
        ET0=1;
        EA=1;
        TR0=1;
}

void main()
{
        Timer0Init();
        while(1);
}

void Timer0() interrupt 1
{
        static u16 i;
        TH0=0XFC;
        TL0=0X18;
        i++;
        if(i==1000)
        {
                i=0;
                led=~led;
        }
}

目标:点亮一个led灯,做一秒的闪烁。
问题:以上是程序,在自己买的开发板上可以点亮led灯,但是没有闪烁的效果。求大神指导
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
人中狼
1楼-- · 2019-07-15 18:04
要注意定时计数数值的调整,不同频率,不同速度的单片机的定时时间是由不同的,调整 i 的数值范围试试
J木昜
2楼-- · 2019-07-15 21:15
程序没问题啊 楼主开发板电路连对了吗
njwueng
3楼-- · 2019-07-15 23:22
 精彩回答 2  元偷偷看……
617195532
4楼-- · 2019-07-16 02:05
程序没问题啊,你看看你硬件是不是连好了
坚定目标一步一步
5楼-- · 2019-07-16 06:08
程序是OK的,会不会是程序没有烧录到板子上

一周热门 更多>