关于stc89c52中断问题。写了个程序,大家看是哪的问题

2019-03-24 18:23发布

题目:利用定时器ti产生定时时钟,由P1口控制8个发光二极管,使八个指示灯依次一个一个闪动,闪动频率为10次每秒(8个灯依次亮一遍为一个周期),循环。我写的程序是这样的,大家看下是什么问题(频率可能不对):
#include<reg52.h>
#include <intrins.h>
#define uchar unsigned char
#define uint unsigned int;
uint tt;
uint temp;
void main()
{
        temp=0xfe;
        TMOD=0x10;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        EA=1;
        ET1=1;
        TR1=1;
       
       
       

        while(1)
        {
                P1=0xff;

               
        }
}
void flash() interrupt 3
{
       
        P1=temp;
        if(tt%10==0)
        {
               
                temp=_irol_(temp,2);
                tt=0;
        }
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        tt++;
       
}
谢谢了。我做出的结果跟题目要求不一样。 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。