You are on page 1of 7

c  

   c
Hãy đӇ chúng tôi cӕ gҳng hiӇu vӅ ghép kênh cӫa bҧy đoҥn hiӇn thӏ bҵng cách sӱ dөng vi điӅu
khiӇn PIC đӇ thӵc hiӋn truy cұp thұp phân này sӁ tăng 0000-9999.

Seven Segment hiӇn thӏ là mҧng cӫa bҧy "Light Emitting Diode (LED) phân đoҥn vӟi điӇm thұp
phân bә sung (dp) cũng là mӝt LED. Mӛi phân đoҥn này đưӧc đánh dҩu là a, b, c, d, e, g, f và dp.


Hình 1

Khi chúng tôi sӱ dөng các phân đoҥn này cho các ӭng dөng thӵc tӃ giá trӏ khoan dung hiӋn hành
và điӋn áp nên đưӧc biӃt đӃn vӟi chúng tôi. Hơn thӃ hoһc hiӋn tҥi có thӇ gây hҥi LED đoҥn. Nó
luôn luôn là tӕt hơn đӇ sӱ dөng điӋn trӣ hҥn chӃ dòng trong loҥt bài vӟi mӛi phân đoҥn LED đӇ
tránh thiӋt hҥi như vұy. Nhӳng phân khúc này chӍ sáng lên khi cҧ hai mӝt phân đoҥn LED và dүn
liên quan phә biӃn cӫa nó (hoһc anode hoһc cathode) đưӧc lӵa chӑn.

Ghép kênh là cҫn thiӃt đӇ hai hoһc nhiӅu giao diӋn hiӇn thӏ bҧy đoҥn đӇ vi điӅu khiӇn
mӝt. Chương trình phҫn mӅm có thӇ kiӇm soát nhӳng bҧy đoҥn ghép đӇ ON / OFF mӝt cách chu
kǤ. ĐiӅu này cũng giúp giҧm thiӇu năng lưӧng trong các hӋ thӕng pin hoҥt đӝng.

Đӕi vӟi mӛi chân vi điӅu khiӇn, có mӝt hҥn chӃ tӕi đa hiӋn tҥi nó có thӇ nguӗn hoһc chìm. Vì lý
do này LED thҩp hiӋn nay đang sӱ dөng nӃu mӝt sӕ hiӇn thӏ đưӧc kӃt nӕi vӟi vi điӅu khiӇn. Đӕi
vӟi vi điӅu khiӇn PIC ә đĩa trӵc tiӃp cӫa các LED có thӇ do khҧ năng nguӗn cao chìm.

Hai loҥi màn hình bҧy phân đoҥn đưӧc sӱ dөng.

Î     
  
 
b) thưӡng Anode (Power): cӵc dương cӫa tҩt cҧ các phân đoҥn LED đưӧc kӃt nӕi vӟi pin thông
thưӡng, bҵng cách áp dөng điӋn áp thҩp (ví dө như điӋn áp 0V chung cӫa đҩt) đӇ đҫu vào phân
khúc, vӅ mӛi phân đoҥn.

Î        


 
a) thưӡng Cathode (nghĩa là mһt đҩt): tҩm cӫa tҩt cҧ các phân đoҥn LED đưӧc kӃt nӕi vӟi pin
thông thưӡng và chuyӇn vӅ các đoҥn bҥn cҫn phҧi áp dөng + đã điӋn áp cӫa mӝt trong hai 5V
hoһc giá trӏ nào khác cӫa điӋn áp đưӧc hӛ trӧ bӣi màn hình hiӇn thӏ.

Î        


Có 0 sӕ, 2, 3, 4,5,6,7, 8, 9 đӇ hiӇn thӏ. Đӕi vӟi 7 đӃn đưӧc hiӇn thӏ trong phân khúc có nghĩa là
các phân đoҥn a, b, c phҧi đưӧc kích hoҥt đúng ?????? Tҩt cҧ các khác nên đưӧc tҳt. Bӣi vì nó
là thưӡng cӵc dương và đҫu vào phө Cathode.



Hình 2

ĐӇ kích hoҥt tính năng dүn bҥn cҫn logic 0 ӣ (PB0-PB7) và logic 0 tҥi PC0, PNP transistor

u  u  u  u  u  u  u  u 

! u

       


Bҧng 1

‘"#
$ %& 
 &  ' (



 

 ) **** Î"+ ,  - . "#


     /  0 1 . u u
‘, ,2

Hình 4

Ӣ đây trong mҥch cӫa chúng tôi, chúng tôi sӱ dөng loҥi anode chung vӟi tҩt cҧ các plusses chia
sҿ thông thưӡng pin. Các tҩm (đoҥn mӝt - g) cӫa mӛi màn hình hiӇn thӏ đưӧc tҩt cҧ các kӃt nӕi
vӟi nhau và sau đó kӃt nӕi vӟi mӝt PIC I / O dòng (PORTB) thông qua mӝt loҥt điӋn trӣ. Mӛi
cӵc dương thông thưӡng đưӧc kӃt nӕi vӟi bóng bán dүn và nó đưӧc điӅu khiӇn bӣi PIC mӝt I / O
dòng (PORTC).

c 34

PORTB cӫa vi điӅu khiӇn kӃt nӕi vӟi các phân đoҥn 'mӝt' thành 'g' và chӳ sӕ đưӧc kӃt nӕi vӟi
PORTC. ĐӇ có thӇ vӅ tӯng phân khúc, pin PORTB phҧi đưӧc thiӃt lұp đӇ hӧp lý "0" và đӇ Off,
pin cӫa nó phҧi đưӧc thiӃt lұp đӇ hӧp lý "1" bӣi vì chúng tôi đã lӵa chӑn loҥi anode chung bҧy
hiӇn thӏ đoҥn, kӃt thúc đҫu vào cӫa nó là cӵc âm. Transistor cơ sӣ đưӧc kӃt nӕi vӟi PORTC. NӃu
bóng bán dүn là trong chӃ đӝ thӵc hiӋn, phân khúc sӁ vӅ nhà nӃu không OFF.
ĐӇ hiӇn thӏ sӕ, byte sӕ đҥi diӋn phҧi đưӧc gӱi đӃn các PORTB và bóng bán dүn phҧi đưӧc kích
hoҥt bҵng cách cho phép tương ӭng PORTC pin bҵng cách áp dөng mӭc đӝ thҩp tҥi cơ sӣ cӫa
bóng bán dүn. ‘ҥ ҩӡ   
өӇ 
Ӎ
 ӝ  ӳ  ҥ ưӧ
ұ 
  ҥ ưӧ
ҳ  

 ҥ ӏҳ

ҥ  Ӄ  Ӌ
ӵ
 Ӌ 
ưӧ
ұ Do đó mӛi chӳ sӕ là On-Off bҵng cách kiӇm soát các cӵc dương cho hiӇn thӏ đó. NӃu
chúng ta làm mӛi mӝt nhanh đӫ, chúng ta sӁ thҩy toàn bӝ màn hình nhҩp nháy miӉn phí.

Î- ,54

Timer 0 đưӧc sӱ dөng đӇ làm mӟi màn hình hiӇn thӏ cho mӑi sӵ chұm trӉ 1ms.Time0 tӕc đӝ tӯ
đӗng hӗ hӋ thӕng chia cho 256 đưӧc sӱ dөng đӇ tҥo ra sӵ chұm trӉ. giӡ là cài đһt sҹn vӟi sӕ xxx,
nó sӁ tҥo ra gián đoҥn cho mӛi 1ms. Các chӳ sӕ đӇ hiӇn thӏ lưu trӳ nó trong biӃn mҧng. Đӕi vӟi
mӛi 1 ms gián đoҥn sӁ đưӧc tҥo ra và trong các chương trình con ngҳt, mҧng tҧi biӃn vào
PORTB và giá trӏ tương ӭng vӟi PORTC đӇ chӑn tӯng chӳ sӕ. Lưӧt truy cұp sӁ đưӧc tăng lên
cho mӛi 1ms.

ĐӇ hiӇn thӏ chӳ sӕ, các giá trӏ tương ӭng phҧi đưӧc tính toán. ĐӇ hiӇn thӏ chӳ sӕ 7,
1111 0001 trong hӋ nhӏ phân (0xf1 trong hӋ thұp lөc phân). Đây logic "0" cho phép phân đoҥn,
bҵng cách thiӃt lұp PORTC bit "0", trong đó đһt PNP transistor trong viӋc thӵc hiӋn nhà nưӟc.
( 0 la sang , 1 la tat )

Sӕ Phân đoҥn Hex


0 1000 0001 0x81
1 1111 0011 0xf3
2 0100 1001 0x49
3 0110 0001 0x61
4 0011 0011 0x33
5 0010 0101 0x25
6 0000 0101 0x05
7 1111 0001 0xf1
8 0000 0001 0x01
9 0010 0001 0x21
Bҧng 2
Chương trình C mã cho Multiplexing hiӇn thӏ đoҥn bҧy bҵng cách sӱ dөng vi điӅu khiӇn PIC

# Include
const unsigned char DispArry [] = {0x81, 0xf3, 0x49, 0x61, 0x33, 0x25, 0x05, 0xf1, 0x01, 0x21};
unsigned dài DigitCount, DispValue;
unsigned char chұm trӉ, DispIncIndx, CountBuff [6];
bit cӡ;

void ClrMem (unsigned char *, unsigned char *);


SetDisp void (void);

isr ngҳt void (void)


{
if (TMR0IF & & TMR0IE)
{
TMR0IF = 0;
TMR0 = 100;
if (! (DispIncIndx))
{
PORTC = 0X7F;
}
khác
{
PORTB = DispArry [CountBuff [DispIncIndx]];

switch (DispIncIndx)
{
Trưӡng hӧp 1:
PORTC = 0x7E;
break;
Trưӡng hӧp 2:
PORTC = 0X7d;
break;
Trưӡng hӧp 3:
PORTC = 0X7b;
break;
Trưӡng hӧp 4:
PORTC = 0X77;
break;
mһc đӏnh:
PORTC = 0x7f;
break;
}
}
DispIncIndx + +;
if ((DispIncIndx)> 7)
{
DispIncIndx = 0;
flag = 0;
}

}
}
void main (void)
{
unsigned int j;
ClrMem (CountBuff, CountBuff +5);
TRISB = 0x00;
TRISC = 0x00;
TMR0 = 100; / / 4ms
Giҿ = 1;
PEIE = 1;
TMR0IE = 1;
TMR0IF = 0;
PORTB = 0xFF;
PORTC = 0X7F;
OPTION = 0X84;
DispIncIndx = 0;
DispIncIndx = 0;
DigitCount = 0;
flag = 0;

for (;;)
{
asm ("nop");
if (! cӡ)
{
flag = 1;
DigitCount + +;
if (DigitCount> 9999)
DigitCount = 0;
SetDisp ();
}
}
}

void ClrMem (unsigned char * bҳt đҫu, unsigned char * cuӕi)


{
trong khi (* bҳt đҫu <* cuӕi)
{
* Start = 0x00;
bҳt đҫu + +;
}
}

SetDisp void (void)


{
không dҩu giá trӏ lâu dài, k = 10;
unsigned char indx = 0;
giá trӏ = DigitCount;
trong khi (indx <6)
{
CountBuff [indx] = giá trӏ 10%;
giá trӏ / = 10;
indx + +;
}
}

You might also like