欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 設計24小時制定時器,下面是參考程序,但是秒和時位置反了,請問怎么改啊? [打印本頁]

作者: hopeeeee    時間: 2021-6-2 21:46
標題: 設計24小時制定時器,下面是參考程序,但是秒和時位置反了,請問怎么改。
#include <reg52.h>   
#include <delay.h>


int mypow(int x, int y);
void num_check(void);

code unsigned int segment_data[11]={        0x3f,0x06,0x5b,0x4F,0x66,
                                                                                                                                                        0x6d,0x7d,0x07,0x7f,0x6f,0x40};
code unsigned int ROW[8]={0x00,0x04,0x08,0x0c,0x10,0x14,0x18,0x1c};
                unsigned int num[8];
unsigned char i,a=0,j;




void main()
{

       
        TMOD=0x10;   
        TH1=(65536-50000)/256;  
        TL1=(65536-50000)%256;
        EA=1;  
        ET1=1;
        TR1=1;

  num[2]=10;num[5]=10;
            
        while(1)
        {
                if(a>=20) num_check();
                for(j=0;j<=7;j++)
                {
                P2=~ROW[j];
                P0=0;       
                P0=segment_data[num[j]];
          delay(1);
                }
        }
       
}
void num_check(void)
{
if(a>=20){a=0;num[0]++;};
if(num[0]>=10){num[0]=0;num[1]++;};
if(num[1]>=6){num[1]=0;num[3]++;};
if(num[3]>=10){num[3]=0;num[4]++;};
if(num[4]>=6){num[4]=0;num[6]++;};
if(num[6]>=10){num[6]=0;num[7]++;};
if(num[7]>=3){num[7]=0;};
if((num[7]==2)&&(num[6]==4)){num[6]=0;num[7]=0;};
}
void TIME1() interrupt 3  
{
        TH1=(65536-50000)/256;
        TL1=(65536-50000)%256;
        a++;  
                       
}


作者: 飛云居士    時間: 2021-6-8 18:29
應該是內存大小端的問題。即高字節與低字節整反了
作者: 老董    時間: 2021-6-8 19:23
你連接P2的的數碼管是用什么元件驅動的
作者: 無心法師III    時間: 2021-6-8 20:12
秒和時的位置反了,我覺的可能有這幾種情況:1.寫程序過程中,定義秒和時給定義反了,在要用秒這個變量的時候用了時這個變量,在要用時這個變量的時候用了秒這個變量;2.仿真或實際接線時,對應秒和時的數碼管給接反了
作者: xianfajushi    時間: 2021-6-9 09:01
可參http://m.raoushi.com/bbs/dpj-207097-1.html動靜皆宜




歡迎光臨 (http://m.raoushi.com/bbs/) Powered by Discuz! X3.1