可預置的8位計數器程序的主要部分分析
for(i=0;i8;i++) //循環8次
{if(pre_cnt>9)pre_cnt=0;} //對數組中的8個單元進行調整,其范圍為0~9
}
/*************************************************************/
void dis_cnter(void) //顯示計數器值子程序開始
{uchar i; //定義字符型局部變量i
P3_7=1;P3_6=1; //消隱有效,允許顯示
for(i=0;i8;i++) //循環8次
{SBUF=SEG7[cnt];while(!TI);TI=0;} //根據8個單元的計數值查表發送顯示
P3_7=0; //關閉消隱,正常顯示
/****************************************************************/
void cnter(void) //計數轉換子程序開始
{uchar i; //定義字符型局部變量i
for(i=0;i7;i++) //循環8次
{if(cnt>9){cnt=0;cnt[i+1]++;}}//若計數器某位值大于9,則該位回0,
//而高位被進位加1
//------------------------------------
if(cnt[7]>9){for(i=0;i8;i++)cnt=0;}// 若計數器最高位值大于9,則計數器全清0
} //計數轉換子程序結束
塵埃粒子計數器相關文章:塵埃粒子計數器原理
評論