標(biāo)題:
單片機(jī)數(shù)碼管閃爍 總有一個(gè)比其他微微亮
[打印本頁(yè)]
作者:
01rian
時(shí)間:
2024-4-5 22:52
標(biāo)題:
單片機(jī)數(shù)碼管閃爍 總有一個(gè)比其他微微亮
這是數(shù)碼管顯示界面,數(shù)碼管出現(xiàn)閃爍,總有一個(gè)比其他微微亮,求助求助
這是為什么呢,問(wèn)題在哪里?
void Delay600us(void) //@12.000MHz
{
unsigned char data i, j;
i = 7;
j = 254;
do
{
while (--j);
} while (--i);
}
void single_SMG(unsigned char pos,unsigned char dat)
{
select_channel(6);
P0=0x01<<pos;
select_channel(7);
P0=dat;
Delay600us(); //找到最合適的參數(shù) 兩個(gè)都是1ms
select_channel(6);
P0=0xff;
select_channel(7);
P0=0xff;
Delay600us();
}
//***************************************************
//**************************************************8
void SMG_display()
{
switch(stat)
{
case 1: //時(shí)間界面
single_SMG(7,SMG_nodot[time[0]%16]);
single_SMG(6,SMG_nodot[time[0]/16]);
single_SMG(5,0xbf);
single_SMG(4,SMG_nodot[time[1]%16]);
single_SMG(3,SMG_nodot[time[1]/16]);
single_SMG(2,0xbf);
single_SMG(1,SMG_nodot[time[2]%16]);
single_SMG(0,SMG_nodot[time[2]/16]);
select_channel(6);
P0=0xff;
select_channel(7);
P0=0xff;
break;
case 2: //回顯溫度界面
if(action_n==0)
{
single_SMG(7,0xff);
single_SMG(6,0xff);
single_SMG(5,0xff);
single_SMG(4,0xff);
single_SMG(3,0xff);
single_SMG(2,0xff);
single_SMG(1,0xff);
single_SMG(0,SMG_nodot[12]); //C
}
else
{
single_SMG(7,SMG_nodot[temper_aver%10]);
single_SMG(6,SMG_dot[(temper_aver%100)/10]);
single_SMG(5,SMG_nodot[(temper_aver/100)]);
single_SMG(4,0xbf);
single_SMG(3,SMG_nodot[temper_max%10]);
single_SMG(2,SMG_nodot[temper_max%100/10]);
single_SMG(1,0xff);
single_SMG(0,SMG_nodot[12]);
}
break;
作者:
wdgao
時(shí)間:
2024-4-6 21:25
沒(méi)有硬件電路說(shuō)明,怎么分析?
作者:
IdeaMing
時(shí)間:
2024-4-7 09:10
主函數(shù)都沒(méi)有,這程序能跑就很厲害了
歡迎光臨 (http://www.torrancerestoration.com/bbs/)
Powered by Discuz! X3.1