迅维网

标题: 求教讲解此断C程 [打印本页]

作者: 三元里    时间: 2015-1-6 12:27
标题: 求教讲解此断C程
void    strive_max_c()//大电解电容测试
{
   max_elect_c_button=1;//置为1,准备判断大电容测量开关的状态,上电时这个开关比较弹起
   if(max_elect_c_button==0)       
   {  
        f_crycle=0;                         //清零f_crycle
        fangdian_button=0;          //打开放电管Q2
        delayms(250);                 //延时250ms
        fangdian_button=1;         //关闭放电管Q2
        TMOD=0x10;
        TH1=0;
        TL1=0;
        EA=1;        //使能总中断
        ET1=1;//允许定时器0中断
        TR1=1; //开T1
        int0_int=1;          //P3.2置髙
        while(int0_int==1);        //如果P3.2为高,程序就停在这里。一但为低就执行下面程序
        TR1=0;               
        ryz=0;               
        ryz= f_crycle*50000; //计算ryz
        ryz+=TH1*256+TL1;         //       
        DisplayListChar(1,0,0, "Cx=");       
        DisplayOneChar(1,3,  ryz/1000000%10+0x30);
        DisplayOneChar(1,4, ryz/100000%10+0x30);
        DisplayOneChar(1,5, ryz/10000%10+0x30);
        DisplayOneChar(1,6, ryz/1000%10+0x30);
        DisplayOneChar(1,7, ryz/100%10+0x30);
        DisplayOneChar(1,8,'.');
        DisplayOneChar(1,9, ryz/10%10+0x30);
        DisplayOneChar(1,10,ryz%10+0x30);
        DisplayListChar(1,11,0, "UF  ");
   }   
}问题:定时器初值为什么设为0?ryz应为脉冲个数或者说时间,怎么是电容量?
作者: 三元里    时间: 2015-1-6 13:22
对不起标题有错别字“断”应为“段”。
作者: erwin    时间: 2015-1-6 19:47
定时器是一个二进制加1的的计数器,而电容量是以一定电流放电的持续时间来估算,
我不明白ryz=0是不是多余的,因其后就赋值
作者: 爱尔思坛    时间: 2015-1-6 20:05
这机器代码看不懂!
作者: 三元里    时间: 2015-1-7 10:24
在坛友的指导下问题已搞明白,谢回复!




欢迎光临 迅维网 (https://www.chinafix.com/) Powered by Discuz! X3.4