标题: 请教大家,proteus仿真初启时延严重不符代码的异常现象 [打印本页]

作者: 万家灯火51    时间: 2025-3-17 15:01
标题: 请教大家,proteus仿真初启时延严重不符代码的异常现象
代码设计的是,一启动,数码管显示的两串字符就应该按一定频率交替显示。但proteus仿真时,一启动,数码管一直在显示初始字符串不变化(放数组内的),等好一会,才按频率交替显示,感觉就是第一轮大循环莫名其妙花费了太多太多时长。代码如下。请大家分析下啥原因呢?
void main(){
        int delayChange=0;
        char change=1;
        char i;
       
        while(1){
                 delayChange++;
                if(delayChange>100){
                        delayChange=0;
                        if(change==1){
                                strcpy(disArray,"12345x");
                                change=0;
                        }else{
                                strcpy(disArray,"happyx");
                                change=1;
                        }                  
                }
               
                for(i=0;i<6;i++){
                       
                        position=0xff;  //消影
                        punlock=1;
                  punlock=0;
                       
                        word=wordCode[getWCi(disArray[i])];  //送字码
                  wunlock=1;   
                  wunlock=0;
                       
                        position=posiCode[i];   //送位码
                        punlock=1;
                  punlock=0;
                       
                        delay(delayW);   //延时
                       
                }       
                  
        }
}



作者: cyi8    时间: 2025-3-18 08:15
char 是用来定义字符的.
char change;
char i;
这两个在程序下面明明是整型数据的应用,为什么要定义成字符型呢?




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1