Ngày tải lên :
20/08/2012, 09:09
...
và tất cả các LED đều tắt Mỗi khi nhấn phím bấm, biến mode sẽ tăng lên 1 đơn vị. Giá trị
biến mode tương ứng với chương trình nháy được thực hiện. Khi mode = 9 thì sẽ được gán
về mode = 0. Các kiểu nháy khác nhau là do ta bật tắt các LED trên cổng D theo các cách
khác nhau. Lấy ví dụ khi ta muôn các LED nháy xen kẽ nhau ta chỉ việc gửi ra cổng D giá
trị AAh (10101010) và 55h (01010101).
Sơ đồ mạch điện:
Y1
20MHz
R9
10K
OSC1
R2
R
LED3
RESET
D4
LED
LED3
R6
R
LED4
C1
22p
R3
R
LED1
VCC
R1
R
LED2
R4
R
D1
LED
C2
22p
D2
LED
D6
LED
D3
LED
LED1
RESET
OSC2
D7
LED
R8
220
LED8
SW1
Phim chon
Cong tac
LED8
LED6
LED4
VCC
OSC1
D8
LED
LED6
R10
R
LED2
2
3
4
5
6
7
33
34
35
36
37
38
39
40
15
16
17
18
23
24
25
26
19
20
21
22
27
28
29
30
8
9
10
12
31
1
13
14
11
32
RA0/AN0
RA1/AN1
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RA4/T0CKI/C1OUT
RA5/AN4/SS/C2OUT
RB0/INT
RB1
RB2
RB3/PGM
RB4
RB5
RB6/PGC
RB7/PGD
RC0/T1OSO/T1CKI
RC1/T1OSI/CCP2
RC2/CCP1
RC3/SCK/SCL
RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7
RE0/RD/AN5
RE1/WR/AN6
RE2/CS/AN7
VSS
VSS
MCLR/VPP
OSC1/CLKI
OSC2/CLKO
VDD
VDD
VCC
VCC
LED5
LED5
R7
R
LED7
R5
R
OSC2
D5
LED
LED7
Hình 3 .7. Nháy LED nhiều chế độ
Phần mã nguồn chương trình:
#include <16F 877 A.h>
#include <def_ 877 a.h>
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT,
NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
int8 mode,i;
byte temp;
Người báo cáo:
Nguyễn Chí Linh
Tài liệu:
TUT01.01.PVN
Ngày:
9/8/2006
Trang:
32/32
... tac
LED8
LED6
LED4
VCC
OSC1
D8
LED
LED6
R10
R
LED2
2
3
4
5
6
7
33
34
35
36
37
38
39
40
15
16
17
18
23
24
25
26
19
20
21
22
27
28
29
30
8
9
10
12
31
1
13
14
11
32
RA0/AN0
RA1/AN1
RA2/AN2/VREF-/CVREF
RA3/AN3/VREF+
RA4/T0CKI/C1OUT
RA5/AN4/SS/C2OUT
RB0/INT
RB1
RB2
RB3/PGM
RB4
RB5
RB6/PGC
RB7/PGD
RC0/T1OSO/T1CKI
RC1/T1OSI/CCP2
RC2/CCP1
RC3/SCK/SCL
RC4/SDI/SDA
RC5/SDO
RC6/TX/CK
RC7/RX/DT
RD0/PSP0
RD1/PSP1
RD2/PSP2
RD3/PSP3
RD4/PSP4
RD5/PSP5
RD6/PSP6
RD7/PSP7
RE0/RD/AN5
RE1/WR/AN6
RE2/CS/AN7
VSS
VSS
MCLR/VPP
OSC1/CLKI
OSC2/CLKO
VDD
VDD
VCC
VCC
LED5
LED5
R7
R
LED7
R5
R
OSC2
D5
LED
LED7
Hình 3 .7. Nháy LED nhiều chế độ
Phần mã nguồn chương trình:
#include <16F 877 A.h>
#include <def_ 877 a.h>
#FUSES NOWDT, HS, NOPUT, NOPROTECT, NODEBUG, NOBROWNOUT,
NOLVP, NOCPD, NOWRT
#use delay(clock=20000000)
int8 mode,i;
byte temp;
Người báo cáo:
Nguyễn Chí Linh
Tài liệu:
TUT01.01.PVN
Ngày:
9/8/2006
Trang:
32/32
... 2
3
HI
HI
Crystal
4
5
7
9
10
2
1
38
6
a
b
c
d
e
f
g
VCCVcc
DOT
VR10K
HI
Q2
SPEAKER
10K
HI
Q1
1K
Hình 3.4. Mạch đo nhiệt độ hiển thi trên LED 7 thanh
Trong mạch trên ta dùng chính con PIC cho việc giải mã LED 7 thanh. Nguyên tắc quét
cho từng LED 7 thanh là gửi giá trị cần hiển thị ‐> bật LED ‐> Tạo thời gian trễ ‐> t
ắt LED.
Quá trình cứ lặp lại như vậy cho đến khi quét hết LED. Ta tính toán thời gian trễ sao cho
đảm bảo các số hiển thị liên tục.
Người báo cáo:
Nguyễn Chí Linh
Tài liệu:
TUT01.01.PVN
Ngày:
9/8/2006
Trang:
21/32
...