標(biāo)題: 請(qǐng)教一下這個(gè)數(shù)碼管的位選段選的寫(xiě)法怎么寫(xiě)? [打印本頁(yè)]

作者: 1481509156    時(shí)間: 2024-12-16 10:06
標(biāo)題: 請(qǐng)教一下這個(gè)數(shù)碼管的位選段選的寫(xiě)法怎么寫(xiě)?
我用查理復(fù)用寫(xiě)的數(shù)碼管顯示,結(jié)果亮度不夠,請(qǐng)問(wèn)如果用位選,段選寫(xiě)法怎么寫(xiě)?腳位太多了
//------------------------------------------掃描數(shù)碼管-------------------------------------//
void LED_SCAN(void)
{
    SEG++;
    if(SEG>15){SEG=1;}
    PIN1=PIN2=PIN3=PIN4=PIN5=PIN6=PIN7=PIN8=PIN9=PIN10=0;
    //pin1=pa2,pin2=pa3,pin3=pb2,pin4=pb1,pin5=pb0,pin6=pb7,pin7=pb6,pin8=pb5,pin9=pb4,pin10=pa0
    //IOSTA   = 0XFD;1011 1101     IOSTB   = 0XFF;1101 11011
    //if(SEG==0){IOSTA=0XFD;IOSTB=0XFF;PIN10=1;PIN9=1;}
    //PIN1=PB1;PIN2=PB0;PIN3=PA4;PIN4=PA3;PIN5=PA2;PIN6=PA0;PIN7=PA1;PIN8=PA7;PIN9=PA6;PIN10=PB5
    if(SEG==1){IOSTA=0XBF;IOSTB=0XFD;if(data[0]&0x01)PIN1=1,PIN10=1;else PIN9=0;PIN1=0;}
   
    if(SEG==2){IOSTA=0XBF;IOSTB=0XFE;if(data[0]&0x02)PIN2=1,PIN10=1;else PIN9=0;PIN2=0;}
    if(SEG==3){IOSTA=0XAF;IOSTB=0XFF;if(data[0]&0x04)PIN3=1,PIN10=1;else PIN9=0;PIN3=0;}
    if(SEG==4){IOSTA=0XB7;IOSTB=0XFF;if(data[0]&0x08)PIN4=1,PIN10=1;else PIN9=0;PIN4=0;}
    if(SEG==5){IOSTA=0XBB;IOSTB=0XFF;if(data[0]&0x10)PIN5=1,PIN10=1;else PIN9=0;PIN5=0;}
    if(SEG==6){IOSTA=0XBE;IOSTB=0XFF;if(data[0]&0x20)PIN6=1,PIN10=1;else PIN9=0;PIN6=0;}
    if(SEG==7){IOSTA=0XBD;IOSTB=0XFF;if(data[0]&0x40)PIN7=1,PIN10=1;else PIN9=0;PIN7=0;}
   
    if(SEG==8){IOSTA=0XFF;IOSTB=0XDD;if(data[1]&0x01)PIN1=1,PIN9=1;else PIN10=0;PIN1=0;}
   
    if(SEG==9){IOSTA=0XFF;IOSTB=0XDE;if(data[1]&0x02)PIN2=1,PIN9=1;else PIN10=0;PIN2=0;}
    if(SEG==10){IOSTA=0XEF;IOSTB=0XDF;if(data[1]&0x04)PIN3=1,PIN9=1;else PIN10=0;PIN3=0;}
   
    if(SEG==11){IOSTA=0XF7;IOSTB=0XDF;if(data[1]&0x08)PIN4=1,PIN9=1;else PIN10=0;PIN4=0;}
   
    if(SEG==12){IOSTA=0XFB;IOSTB=0xDF;if(data[1]&0x10)PIN5=1,PIN9=1;else PIN10=0;PIN5=0;}
   
    if(SEG==13){IOSTA=0XFE;IOSTB=0xDF;if(data[1]&0x20)PIN6=1,PIN9=1;else PIN10=0;PIN6=0;}
   
    if(SEG==14){IOSTA=0XFD;IOSTB=0xDF;if(data[1]&0x40)PIN7=1,PIN9=1;else PIN10=0;PIN7=0;}
   
    if(SEG==15){IOSTA=0X7F;IOSTB=0xDF;if(data[1]&0x80)PIN8=1,PIN9=1;else PIN10=0;PIN8=0;}
}

51hei圖片_20241118114636.jpg (52.64 KB, 下載次數(shù): 0)

51hei圖片_20241118114636.jpg

51hei圖片_20241118114655.png (42.56 KB, 下載次數(shù): 0)

51hei圖片_20241118114655.png

51hei圖片_20241216100549.png (14.48 KB, 下載次數(shù): 0)

51hei圖片_20241216100549.png

作者: lkc8210    時(shí)間: 2024-12-16 10:58
這是單純的共陰數(shù)碼管啊
不用什么查理復(fù)用
作者: xiaobendan001    時(shí)間: 2024-12-16 13:04
對(duì)啊,就是兩位共陰的動(dòng)態(tài)
作者: WL0123    時(shí)間: 2024-12-16 15:00
按兩位共陰數(shù)碼管接線(xiàn),上面的8字段碼就是常用的共陰數(shù)碼管段碼,下面電量圖形對(duì)照段點(diǎn)顯示要求自己編個(gè)共陰碼,基本沒(méi)有難度。出錯(cuò)不要怕,很容易修改。
作者: yaosongjin    時(shí)間: 2024-12-16 15:37
亮度不夠是不是因?yàn)槟闼⑿骂l率太快了
作者: 溪澗小黃鴨    時(shí)間: 2024-12-16 17:16
人眼視覺(jué)殘留是50hz也就是20ms,增大亮度可以把數(shù)碼管掃描時(shí)間加長(zhǎng),但總時(shí)間不能超過(guò)20ms。
作者: 溪澗小黃鴨    時(shí)間: 2024-12-16 17:18
1.增加掃描時(shí)間,但數(shù)碼管所有段總時(shí)間要小于20ms
2.減小限流電阻,或者單片機(jī)IO口有大電流驅(qū)動(dòng)
3.用三極管驅(qū)動(dòng),放大電流
作者: xiaobendan001    時(shí)間: 2024-12-17 07:23
亮度不夠大概率是驅(qū)動(dòng)時(shí)序問(wèn)題。兩位交替顯示,和掃描速度關(guān)系不大




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