Xin chân thành cám n!... - ADCON1 địa chỉ 9Fh : thanh ghi điều khiển bộ ADC... Bit GIE b xóa khi reset.
Trang 2L I C M N
L i đ u tiên, con xin cám n b m đã sinh thành, nuôi d ng và t o m i đi u
ki n t t nh t đ con h c t p nên ng i S ng h c a cha m s là đ ng l c giúp
con v ng b c trên đ ng đ i mai này
Sau n a, em xin cám n th y Phan V n Hi p đã t n tình h ng d n em trong
quá trình hoàn thành lu n v n t t nghi p này V i s h ng d n c a th y, em đã có
đ c nh ng kinh nghi m quí giá, giúp em thêm t tin trong quá trình h c t p c ng
nh làm vi c t ng lai
Em c ng xin cám n các th y cô trong khoa Xây D ng và i n nói riêng và các
th y cô trong tr ng H M TP H Chí Minh nói chung đã truy n đ t cho em
nh ng ki n th c b ích ngay t nh ng ngày đ u b c chân vào gi ng đ ng đ i
h c
Cu i cùng, em xin h a s ph n đ u h c t p th t t t đ x ng đáng là sinh viên
c a khoa Xây D ng và i n tr ng i h c M TP H Chí Minh
Kính chúc cha m , th y cô luôn d i dào s c kh e và thành công trong s
nghi p
Tp H Chí Minh, tháng 07 n m 2011
SVTH
Nguy n Kh c H i
Trang 3L I M U
Ngày nay Khoa h c – K thu t phát tri n m nh m , cùng v i s phát tri n
không ng ng c a các ngành k thu t nói chung và k thu t đi n t nói riêng
Chúng đã đi sâu vào m i m t đ i s ng hàng ngày c a ng i dân Ð c bi t s
d ng vi đi u khi n đ đi u khi n các thi t b dân d ng và các thi t b công
nghi p N m đ c t m quan tr ng đó, em đã th c hi n đ tài: H Th ng Ðo
Nhi t Ð , K t N i Máy Tính Và Ði u Khi n Thi t B Dùng VÐK PIC V i đ
tài này chúng ta có th bi t đ c nhi t đ trong phòng, trong x ng máy, t đó
ta có th đi u khi n t i theo nhi t đ cho thích h p
Trong đ tài này em đã th c hi n ba ph n chính:
-Tìm hi u và gi i thi u v m t lý thuy t các v n đ có liên quan
-Thi t k ph n c ng đi u khi n và đ c mô ph ng g n gi ng v i th c t -Vi t ch ng trình x lý l p trình cho vi đi u khi n và thi t k giao di n giao ti p cho ng i s d ng
V i s c g ng trong th i gian làm đ tài này,em đã dành nhi u th i gian và
công s c đ hoàn thành bài báo cáo, và c b n đã hoàn thành đ c m ch đi u
khi n có th đáp ng đ c nh ng yêu c u c b n đ ra Tuy nhiên,v i l ng
ki n th c và kinh nghi m còn h n ch , ch c h n s không tránh đ c nh ng
thi u sót trong báo cáo Em r t mong nh n đ c ý ki n phê bình, đóng góp c a
các th y cô c ng nh các b n
Xin chân thành cám n!
Trang 4M C L C
CH NG 1: GI I THI U TÀI 5
1.1 Yêu c u c a đ tài 5
1.1.1 Gi i thi u đ tài 5
1.1.2 Yêu c u c a đ tài 5
1.2 H ng th c hi n đ tài 5
1.3 H ng phát tri n đ tài 5
CH NG 2: GI I THI U CÁC IC S D NG TRONG TÀI 6
2.1 VI X LÝ PIC 16F877A 6
2.1.1 c tính n i b t c a b vi đi u khi n 6
2.1.2 S đ chân c a vi đi u ki n PIC 16F877A 7
2.1.3 S đ kh i c a b vi đi u khi n PIC 16F877A 10
2.1.4 T ch c b nh 11
2.1.4.1 B nh ch ng trình 11
2.1.4.2 B nh d li u 12
2.1.4.3 Stack 16
2.1.5 Các c ng xu t nh p c a PIC16F877A 16
2.1.5.1 PortA 17
2.1.5.2 PortB 17
2.1.5.3 PortC 18
2.1.5.4 PortD 18
2.1.5.5 PortE 18
2.1.6 Các b Timer c a Chip 19
2.1.6.1 B Timer 0 19
2.1.6.2 B Timer 1 21
2.1.6.3 B Timer 2 24
2.1.6.4 ADC 25
2.1.7 Truy n nh n d li u đ ng b ,b t đ ng b 28
2.1.8 Các ng t c a PIC16F877A 32
2.2 IC MAX 232 33
2.2.1 Gi i thi u 33
2.2.2 S đ bên trong c a IC 33
2.3 O NHI T DÙNG LM335 35
2.3.1 Gi i thi u 35
2.3.2 M t s tính ch t c b n c a LM335 35
2.4 LCD (Liquid Crystal Display) 36
2.4.1Gi i Thi u Chung V LCD 36
2.4.2 Nhi m v các chân c a kh i LCD 37
CH NG 3: GI I THI U CÁC PH N M M S D NG 38
3.1 TRÌNH BIÊN D CH CCS C 38
3.1.1 Gi i thi u 38
3.1.2 T o project 38
3.1.3 Thêm file vào project 40
3.1.4 Built ch ng trình 40
3.2 VISUAL BASIC 6.0 41
3.2.1 T ng quan v Visual Basic 41
Trang 53.2.2 Truy n thông n i ti p dùng visual basic 42
3.2.3 Thu c tính (property) 43
3.2.4 S ki n Oncomm 52
3.2.5 H i vòng c ng RS-232 52
CH NG 4: CHU N GIAO TI P TRONG TÀI RS232 54
4.1 Gi i thi u v chu n rs232 54
4.2 Truy n thông gi a hai nút 56
CH NG 5: THI T K PH N C NG H TH NG 59
5.1 S đ kh i h th ng 59
5.2 Kh i vi đi u khi n PIC 16F877A 61
5.3 Kh i hi n th LCD 64
5.4 Kh i k t n i PIC và máy tính 65
5.5 Kh i đo nhi t đ 66
5.6 Kh i đi u khi n thi t b b ng tay 67
5.7 Kh i ngo i vi 68
5.8 S đ hoàn ch nh 69
CH NG 6: THI T K PH N M M H TH NG 70
6.1 S đ gi i thu t 70
6.1.1 L u đ gi i thu t ch ng trình chính 70
6.1.2 Ch ng trình ph c v ng t 70
6.2 Giao di n đi u khi n trên máy tính 72
K T LU N 73
TÀI LI U THAM KH O 74
PH L C 75
CODE VB 75
CODE VI I U KHI N 78
Trang 6CH NG 1: GI I THI U TÀI 1.1 Yêu c u c a đ tài:
1.1.1 Gi i thi u đ tài:
Trong cu c s ng hi n t i, khoa h c k thu t phát tri n r t nhanh, nh ng công
c ra đ i s giúp gi i phóng s lao đ ng chân tay: nghiên c u, c i ti n, sáng t o
M c đích c a khoa h c k thu t là làm sao nâng cao đ c ch t l ng và hi u su t
công vi c, và công ngh t đ ng ra đ i là đáp ng nhu c u đó Vì v y, em đã
nghiên c u v đ tài “ dùng vi x lý giao ti p máy tính đ đi u khi n thi t b
đ ng thì hi n th nhi t đ lên máy tính” Trong đ tài này,m t vi đi u khi n PIC
làm nhi m v nh n tín hi u đi u khi n t máy tính và g i đ n các thi t b theo
đúng đ a ch yêu c u c a ng i dùng; đ ng th i vi đi u khi n PIC s g i nhi t đ
đo đ c v máy tính LCD H th ng còn có b ph n đi u khi n thi t b b ng tay
khi máy tính x y ra s c
1.1.2 Yêu c u c a đ tài:
- Thi t k m ch đo nhi t đ s d ng PIC 16F877A, c m bi n nhi t đ
LM335,k t n i đi u khi n 4 thi t b đi n AC
- Thi t k m ch giao ti p PC, hi n th tr ng thái c a thi t b và đi u khi n thi t
- Vi x lý đi u khi n ch n PIC 16F877A và th c hi n giao ti p v i máy tính
thông qua chu n giao ti p truy n thông RS232
1.3 H ng phát tri n đ tài:
- i u khi n và giám sát t xa,qua m ng LAN ho c m ng INTERNET
- Ch n các giao ti p hi n đ i h n nh : giao ti p có dây CAN, giao ti p không
dây wifi…
- Xây d ng nh ng h th ng qu n lý hoàn toàn t đ ng ( ánh sáng,nhi t đ …)
ho c h n gi làm vi c theo th i gian th c ho c theo nhi t đ
Trang 7CH NG 2: GI I THI U CÁC IC S D NG TRONG TÀI
+ B t o xung th i gian (PWRT) và b t o dao đ ng (OST)
+ B đ m xung th i gian (WDT) v i ngu n dao đ ng trên chip ho t đ ng đáng
Các đ c tính n i b t c a các thi t b ngo i vi trên vi x lý PIC 16F877A
+ Timer 0: b đ nh th i 8 bit, có b chia h s t l tr c (PRESCALER)
+ Timer 1: b đ nh th i 16 bit, có b chia h s t l tr c (PRESCALER), có
kh n ng t ng trong ch đ ng qua xung đ ng h đ c c p bên ngoài
Trang 8+ Timer 2: b đ nh th i 8 bit, có b chia h s t l tr c (PRE_SCALER) và
b chia h s t l sau (POST_SCALER)
+ Có 2 ch đ b t gi xung (CAPTURE), so sánh (COMPARE) và đi u r ng
xung (PWM)
+ Ch đ b t gi v i 16 bit, t c đ t i đa 12.5 ns, ch đ so sánh 16 bit, t c đ
gi i quy t c c đ i là 200ns, ch đ đi u r ng xung 10 bit
+ B chuy n đ i tín hi u t ng t sang s (ADC) v i đ phân gi i 10 bit
+ C ng truy n thông n i ti p SSP và I2C
+ B thu phát đ ng b và b t đ ng b (USART/SCL) có kh n ng phát hi n 9
bit đ a ch
+ C ng ph song song (PSP) v i 8 bit m r ng, v i RD, WR, CS đi u khi n
1.1.2 S đ chân c a vi đi u ki n PIC 16F877A(hình 1.1)
Hình 1.1: s đ chân c a PIC 16F877a
• Chân OSC1/CLK1(13): ngõ vào k t n i v i dao đ ng th ch anh ho c ngõ vào
nh n xung clock t bên ngoài
• Chân OSC2/CLK2(14): ngõ ra dao đ ng th ch anh ho c ngõ ra c p xung clock
• Chân (1) có 2 ch c n ng
- : ngõ vào reset tích c c m c th p
- Vpp: ngõ vào nh n đi n áp l p trình khi l p trình cho PIC
Trang 9• Chân RA0/AN0(2), RA1/AN1(3), RA2/AN2(3): có 2 ch c n ng
- RA0,1,2: xu t/ nh p s
- AN 0,1,2: ngõ vào t ng t c a kênh th 0,1,2
• Chân RA2/AN2/VREF-/CVREF+(4): xu t nh p s / ngõ vào t ng t c a kênh
th 2/ nhõ vào đi n áp chu n th p c a b AD/ ngõ vào đi n áp ch n cao c a b
AD
• Chân RA3/AN3/VREF+(5): xu t nh p s / ngõ vào t ng t kênh 3/ ngõ vào
đi n áp chu n (cao) c a b AD
• Chân RA4/TOCK1/C1OUT(6): xu t nh p s / ngõ vào xung clock bên ngoài
• Chân RC0/T1OCO/T1CKI(15): xu t nh p s / ngõ vào b giao đ ng Timer1/
ngõ vào xung clock bên ngoài Timer 1
• Chân RC1/T1OSI/CCP2(16) : xu t nh p s / ngõ vào b dao đ ng Timer 1/ ngõ
vào Capture2, ngõ ra compare2, ngõ ra PWM2
• Chân RC2/CCP1(17): xu t nh p s / ngõ vào Capture1 ,ngõ ra compare1, ngõ ra
PWM1
• Chân RC3/SCK/SCL(18): xu t nh p s / ngõ vào xung clock n i ti p đ ng b ,
ngõ ra ch đ SPI./ ngõ vào xung clock n i ti p đ ng b , ngõ ra c a ch đ I2C
• Chân RC4/SDI/SDA(23): xu t nh p s / d li u vào SPI/ xu t nh p d li u I2C
• Chân RC5/SDO(24): xu t nh p s / d li u ra SPI
• Chân RC6/TX/CK(25): xu t nh p s / truy n b t đ ng b USART/ xung đ ng
b USART
Trang 10• Chân RC7/RX/DT(26): xu t nh p s / nh n b t đ ng b USART
• Chân RD0-7/PSP0-7(19-30): xu t nh p s / d li u port song song
• Chân RE0/ /AN5(8): xu t nh p s / đi u khi n port song song/ ngõ vào
t ng t 5
• Chân RE1/ /AN6(9): xu t nh p s / đi u khi n ghi port song song/ ngõ vào
t ng t kênh th 6
• Chân RE2/ /AN7(10): xu t nh p s / Chân ch n l a đi u khi n port song
song/ ngõ vào t ng t kênh th 7
• Chân VDD(11, 32) và VSS(12, 31): là các chân ngu n c a PIC
Trang 111.1.3 S đ kh i c a b vi đi u khi n PIC 16F877A(hình 1.2)
Hình 1.2: s đ kh i vi x lý PIC 16F877a
G m các kh i:
- Kh i ALU – Arithmetic Logic Unit
- Kh i b nh ch a ch ng trình – Flash Program Memory
- Kh i b nh ch a d li u EPROM – Data EPROM
- Kh i b nh file thanh ghi RAM – RAM file Register
Trang 12- Kh i gi i mã l nh và đi u khi n – Instruction Decode Control
C u trúc b nh c a vi đi u khi n PIC16F877A bao g m b nh ch ng trìn (Program
memory) và b nh d li u (Data Memory)
1.1.4.1 B NH CH NG TRÌNH
B nh ch ng trình c a vi đi u khi n
PIC16F877A là b nh flash, dung l ng
b
nh 8K word (1 word = 14 bit) và đ c
phân thành nhi u trang (t page0 đ n page
Khi vi đi u khi n đ c reset, b đ m ch ng trình s ch đ n đ a ch 0000h (Reset
vector) Khi có ng t x y ra, b đ m ch ng trình s ch đ n đ a ch 0004h (Interrupt
vector)
B nh ch ng trình không bao g m b nh stack và không đ c đ a ch hóa b i
Trang 13b đ m ch ng trình
1.1.4.2 B NH D LI U
B nh d li u c a PIC là b nh EEPROM đ c chia ra làm nhi u bank i v i
PIC16F877A b nh d li u đ c chia ra làm 4 bank M i bank có dung l ng 128
byte, bao g m các thanh ghi có ch c n ng đ c bi t SFG (Special Function Register)
n m các vùng đ a ch th p và các thanh ghi m c đích chung GPR (General Purpose
Register) n m vùng đ a ch còn l i trong bank Các thanh ghi SFR th ng xuyên
đ c s d ng (ví d nh thanh ghi STATUS) s đ c đ t t t cà các bank c a b nh
d li u giúp thu n ti n trong quá trình truy xu t và làm gi m b t l nh c a ch ng
trình
Trang 14S đ c th c a b nh d li u PIC16F877A nh sau:
Hình 1.4: S đ b nh d li u PIC16F877A
Trang 15THANH GHI CH C N NG C BI T SFR
ây là các thanh ghi đ c s d ng b i CPU ho c đ c dùng đ thi t l p và đi u
khi n các kh i ch c n ng đ c tích h p bên trong vi đi u khi n Có th phân thanh ghi
SFR làm hai l ai: thanh ghi SFR liên quan đ n các ch c n ng bên trong (CPU) và
thanh ghi SRF dùng đ thi t l p và đi u khi n các kh i ch c n ng bên ngoài (ví d
nh ADC, PWM, …) Ph n này s đ c p đ n các thanh ghi liên quan đ n các ch c
n ng bên trong Các thanh ghi dùng đ thi t l p và đi u khi n các kh i ch c n ng s
đ c nh c đ n khi ta đ c p đ n các kh i ch c n ng đó
Thanh ghi STATUS (03h, 83h, 103h, 183h):thanh ghi ch a k t qu th c hi n phép
toán c a kh i ALU, tr ng thái reset và các bit ch n bank c n truy xu t trong b nh d
li u
Thanh ghi OPTION_REG (81h, 181h): thanh ghi này cho phép đ c và ghi, cho phép
đi u khi n ch c n ng pull-up c a các chân trong PORTB, xác l p các tham s v xung
tác đ ng, c nh tác đ ng c a ng t ngo i vi và b đ m Timer0
Thanh ghi INTCON (0Bh, 8Bh,10Bh, 18Bh):thanh ghi cho phép đ c và ghi, ch a các
bit đi u khi n và các bit c hi u khi timer0 b tràn, ng t ngo i vi RB0/INT và ng t
interrput- on-change t i các chân c a PORTB
Thanh ghi PIE1 (8Ch): ch a các bit đi u khi n chi ti t các ng t c a các kh i ch c
n ng ngo i vi
Trang 16Thanh ghi PIR1 (0Ch) ch a c ng t c a các kh i ch c n ng ngo i vi, các ng t này
đ c cho phép b i các bit đi u khi n ch a trong thanh ghi PIE1
Thanh ghi PIE2 (8Dh): ch a các bit đi u khi n các ng t c a các kh i ch c n ng
CCP2, SSP bus, ng t c a b so sánh và ng t ghi vào b nh EEPROM
Thanh ghi PIR2 (0Dh): ch a các c ng t c a các kh i ch c n ng ngo i vi, các ng t
này đ c cho phép b i các bit đi u khi n ch a trong thanh ghi PIE2
Thanh ghi PCON (8Eh): ch a các c hi u cho bi t tr ng thái các ch đ reset c a vi
đi u khi n
THANH GHI M C ÍCH CHUNG GPR
Các thanh ghi này có th đ c truy xu t tr c ti p ho c gián ti p thông qua thanh ghi
FSG (File Select Register) ây là các thanh ghi d li u thông th ng, ng i s d ng
có th tùy theo m c đích ch ng trình mà có th dùng các thanh ghi này đ ch a các
bi n s , h ng s , k t qu ho c các tham s ph c v cho ch ng trình.
Trang 171.1.4.3 STACK
Stack không n m trong b nh ch ng trình hay b nh d li u mà là m t vùng
nh đ c bi t không cho phép đ c hay ghi Khi l nh CALL đ c th c hi n hay khi m t
ng t x y ra làm ch ng trình b r nhánh, giá tr c a b đ m ch ng trình PC t đ ng
đ c vi đi u khi n c t vào trong stack Khi m t trong các l nh RETURN, RETLW hat
RETFIE đ c th c thi, giá tr PC s t đ ng đ c l y ra t trong stack, vi đi u khi n
s th c hi n ti p ch ng trình theo đúng qui trình đ nh tr c
B nh Stack trong vi đi u khi n PIC h 16F87xA có kh n ng ch a đ c 8 đ a
ch và ho t đ ng theo c ch xoay vòng Ngh a là giá tr c t vào b nh Stack l n th 9
s ghi đè lên giá tr c t vào Stack l n đ u tiên và giá tr c t vào b nh Stack l n th 10
s ghi đè lên giá tr 6 c t vào Stack l n th 2
C n chú ý là không có c hi u nào cho bi t tr ng thái stack, do đó ta không bi t
đ c khi nào stack tràn Bên c nh đó t p l nh c a vi đi u khi n dòng PIC c ng không
có l nh POP hay PUSH, các thao tác v i b nh stack s hoàn toàn đ c đi u khi n
b i CPU
1.1.5 CÁC C NG XU T NH P C A PIC16F877A
C ng xu t nh p (I/O port) chính là ph ng ti n mà vi đi u khi n dùng đ t ng tác
v i th gi i bên ngoài S t ng tác này r t đa d ng và thông qua quá trình t ng tác
đó, ch c n ng c a vi đi u khi n đ c th hi n m t cách rõ ràng
M t c ng xu t nh p c a vi đi u khi n bao g m nhi u chân (I/O pin), tùy theo cách
b trí và ch c n ng c a vi đi u khi n mà s l ng c ng xu t nh p và s l ng chân
trong m i c ng có th khác nhau Bên c nh đó, do vi đi u khi n đ c tích h p s n bên
trong các đ c tính giao ti p ngo i vi nên bên c nh ch c n ng là c ng xu t nh p thông
th ng, m t s chân xu t nh p còn có thêm các ch c n ng khác đ th hi n s tác
đ ng c a các đ c tính ngo i vi nêu trên đ i v i th gi i bên ngoài Ch c n ng c a t ng
chân xu t nh p trong m i c ng hoàn toàn có th đ c xác l p và đi u khi n đ c
thông qua các thanh ghi SFR liên quan đ n chân xu t nh p đó
Vi đi u khi n PIC16F877A có 5 c ng xu t nh p, bao g m PORTA, PORTB,
PORTC, PORTD và PORTE C u trúc và ch c n ng c a t ng c ng xu t nh p s đ c
Trang 18đ c p c th trong ph n sau
1.1.5.1 PORTA
PORTA (RPA) bao g m 6 I/O pin ây là các chân “hai chi u” (bidirectional pin),
ngh a là cĩ th xu t và nh p đ c Ch c n ng I/O này đ c đi u khi n b i thanh ghi
TRISA (đ a ch 85h) Mu n xác l p ch c n ng c a m t chân trong PORTA là input, ta
“set” bit đi u khi n t ng ng v i chân đĩ trong thanh ghi TRISA và ng c l i, mu n
xác l p ch c n ng c a m t chân trong PORTA là output, ta “clear” bit đi u khi n
t ng ng v i chân đĩ trong thanh ghi TRISA Thao tác này hồn tồn t ng t đ i
v i các PORT và các thanh ghi đi u khi n t ng ng TRIS (đ i v i PORTA là
TRISA, đ i v i PORTB là TRISB, đ i v i PORTC là TRISC, đ i v i PORTD là
TRISD vàđ i v i PORTE là TRISE)
Bên c nh đĩ PORTA cịn là ngõ ra c a b ADC, b so sánh, ngõ vào analog ngõ
vào xung clock c a Timer0 và ngõ vào c a b giao ti p MSSP (Master Synchronous
Serial Port) c tính này s đ c trình bày c th trong ph n sau
Các thanh ghi SFR liên quan đ n PORTA bao g m:
- PORTA (đ a ch 05h) : ch a giá tr các pin trong PORTA
- TRISA (đ a ch 85h) : ch a giá tr các pin trong PORTA
- CMCON (đ a ch 9Ch) : thanh ghi đi u khi n b so sánh
- CVRCON (đ a ch 9Dh) : thanh ghi đi u khi n b so sánh đi n áp
- ADCON1 (địa chỉ 9Fh) : thanh ghi điều khiển bộ ADC
1.1.5.2 PORTB
PORTB (RPB) g m 8 pin I/O Thanh ghi đi u khi n xu t nh p t ng ng là
TRISB Bên c nh đĩ m t s chân c a PORTB cịn đ c s d ng trong quá trình n p
ch ng trình cho vi đi u khi n v i các ch đ n p khác nhau PORTB cịn liên quan
đ n ng t ngo i vi và b Timer0 PORTB cịn đ c tích h p ch c n ng đi n tr kéo lên
đ c đi u khi n b i ch ng trình
Các thanh ghi SFR liên quan đ n PORTB bao g m:
- PORTB (đ a ch 06h,106h) : ch a giá tr các pin trong PORTB
- TRISB (đ a ch 86h,186h) : đi u khi n xu t nh p
- OPTION_REG (đ a ch 81h,181h) : đi u khi n ng t ngo i vi và b Timer0
Trang 191.1.5.3 PORTC
PORTC (RPC) g m 8 pin I/O Thanh ghi đi u khi n xu t nh p t ng ng là
TRISC Bên c nh đó PORTC còn ch a các chân ch c n ng c a b so sánh, b Timer1,
b PWM và các chu n giao ti p n i ti p I2C, SPI, SSP, USART
Các thanh ghi đi u khi n liên quan đ n PORTC:
- PORTC (đ a ch 07h) : ch a giá tr các pin trong PORTC
- TRISC (đ a ch 87h) : đi u khi n xu t nh p
1.1.5.4 PORTD
PORTD (RPD) g m 8 chân I/O, thanh ghi đi u khi n xu t nh p t ng ng là
TRISD PORTD còn là c ng xu t d li u c a chu n giao ti p PSP (Parallel Slave
Port)
Các thanh ghi liên quan đ n PORTD bao g m:
- Thanh ghi PORTD : ch a giá tr các pin trong PORTD
- Thanh ghi TRISD : đi u khi n xu t nh p
1.1.5.5 PORTE
PORTE (RPE) g m 3 chân I/O Thanh ghi đi u khi n xu t nh p t ng ng là
TRISE Các chân c a PORTE có ngõ vào analog Bên c nh đó PORTE còn là các
chân đi u khi n c a chu n giao ti p PSP
Các thanh ghi liên quan đ n PORTE bao g m:
- PORTE : ch a giá tr các chân trong PORTE
- TRISE : đi u khi n xu t nh p và xác l p các thông s cho chu n giao
ti p PSP
- ADCON1 : thanh ghi đi u khi n kh i ADC
Trang 20b đ nh th i ho c b đ m có th đ c xác l p b ng vi c xoá ho c đ t bit TOCS
c a thanh ghi OPTION_REG<5>
N u dùng h s chia xung đ u vào thì xoá bit PSA c a thanh ghi
OPTION_REG<3>
Trong ch đ b đ nh th i đ c l a ch n b i vi c xoá bit T0CS (OPTION
REG<5>), nó s đ c t ng giá tr sau m t chu k l nh n u không ch n h s
chia xung đ u vào Và giá tr c a nó đ c vi t t i thanh ghi TMR0
Ch đ đ m đ c l a ch n b i vi c set bit T0CS (OPTION REG<5>)
Trong ch đ b đ m, nó s đ c t ng xung đi xu ng n u xoá bit T0SE
(OPTION_REG<4>) ho c xung đi lên n u set bit T0SE Và giá tr c a nó
đ c vi t t i thanh ghi TMR0
Khi dùng xung clock bên ngoài cho b đ nh th i Timer0 và không dùng h
s chia clock đ u vào Timer0 thì ph i đáp ng các đi u ki n c n thi t đ có th
ho t đ ng đó là ph i b o đ m xung clock bên ngoài có th đ ng b v i pha
xung clock bên trong (TOSC)
Trang 21S đ kh i c a Timer0 và WDT, đ c trình bày hình sau:
Hình 1.5: S đ kh i c a Timer0
* Các h s chia
H s chia dùng cho Timer 0 ho c b WDT Các h s này không có kh
n ng đ c và kh n ng vi t ch n h s chia xung vào Timer0 ho c cho b
WDT ta ti n hành xoá ho c đ t bít PSA c a thanh ghi OPTION_REG<3>
Nh ng bit PS2, PS1, PS0 c a thanh ghi OPTION_REG<2:0> dùng đ xác
l p các h s chia
* Ng t c a b Timer0
Ng t c a b Timer 0 đ c phát sinh ra khi thanh ghi TMR0 b tràn t c t
FFh quay v 00h Khi đó bít T0IF c a thanh ghi INTCON<2> s đ c đ t Bít
này ph i đ c xóa b ng ph n m m n u cho phép ng t bit T0IE c a thanh ghi
INTCON<5> đ c set Timer0 b d ng ho t ch đ SLEEP ng t Timer 0
không đánh th c b x lý ch đ SLEEP
* Thanh ghi OPTION_REG
bit 5: TOCS l a ch n ngu n clock
0/1 : Clock trong Focs:4 / Clock ngoài t chân T0CKI bit 4: T0SE bit l a ch n s n xung clock
Trang 220/1 : Timer 0 t ng khi chân T0CKI t th p lên cao / cao xu ng th p
bit 3: PSA bit gán b chia xung đ u vào
0/1: gán b chia Prescaler cho Timer 0 / gán b chia Prescaler cho WDT bit 2:0 PS2:PS1 l a ch n h s chia xung vào theo b ng 1.1
B Timer1 có th là b đ m ho c b đ nh th i v i u đi m sau:
+16 bít cho b đ m ho c b đ nh th i (g m hai thanh ghi TMR1H:TMR1L)
+Có kh n ng đ c và vi t
+Có th ch n xung đ ng h bên trong ho c đ ng h bên ngoài
+Có th ng t khi tràn FFFFh v 0000h
Timer1 có 1 thanh ghi đi u khi n, đó là thanh ghi T1C0N B Timer1 có
ho t đ ng hay không ho t đ ng là nh vi c đ t ho c xoá bít
Ph ng th c ho t đ ng c a b này đ c xác đ nh b i vi c ch n ngu n xung
vào Timer 1 Ngu n xung đ ng h đ c ch n b i vi c đ t ho c xoá bit
TMR1CS (T1CON<1>) ch đ b đ nh th i, đ u vào là clock trong Fosc/4,
Trang 23bit đ ng b T1SYNC(T1CON<2>) không có tác d ng vì clock trong luôn đ ng
b
Ch đ b đ m ho t đ ng hai ch đ : Có đ ng b xung vào xoá bit
T1SYNC(T1CON<2>), không đ ng b xung vào set bit T1SYNC(T1CON<2>)
Timer 1 t ng s n lên xung đ u vào
Khi b dao đ ng Timer1 cho phép ho t đ ng thì các chân
RC1/T1OSI/CCP2,
RC0/T1OSO/T1CKI tr thành chân vào
ch đ đ m có đ ng b b đ m t ng m i khi s n lên chân RC0 ho c
chân RC1 n u bit T1OSCEN xoá và xung vào ph i đ ng b v i clock trong,
ch đ này b đ m không t ng trong trang thái SLEEP
ch đ đ m không đ ng b Timer 1 t ng m i khi s n lên chân RC0
ho c chân RC1 n u bit T1OSCEN xóa, ch đ này b đ m ti p t c t ng
trong tr ng thái SLEEP và có kh n ng tràn gây ra ng t khi đó b s lý đ c
đánh th c
* Dao đ ng c a Timer1
M ch dao đ ng th ch anh đ c xây d ng gi a 2 chân T1OSI và T1OS0
Khi dao đ ng đ c cung c p ch đ công su t th p thì t n s c c đ t c a nó
s là 200kHz và trong nó ch đ SLEEP nó cung c p t n s 32kHz
* Ng t c a b Timer1
C p thanh ghi TMR1H và TMR1L t ng t giá tr 0000h đ n giá tr FFFFh
đ n giá tr này ti p t c t ng thì tràn và quay l i giá tr 0000h Và ng t xu t hi n
khi tràn quá giá tr FFFFh khi này c ng t TMR1IF s đ c đ t Ng t có th
ho t đ ng ho c không ho t đ ng nh vi c đ t ho c xoá bít TMR1IE
Trang 24Hình 1.6: S đ kh i c a Timer 1
* Thanh ghi đi u khi n Timer1 T1CON, hình sau trình bày các bit trong
thanh ghi Timer 1:
0/1: có đ ng clock ngoài / không đ ng b khi TMR1CS = 0 thì bit này không có tác d ng bit 1 TMR1CS bit l a ch n ngu n xung clock vào
Trang 250/1: clock trong Fosc:4 / clock t chân RC0/T1OSO/T1CKI(s n lên)
Bit 0 bit b t t t Timer
0/1 = Timer 1 Disable/ enable
1.1.6.3 B Timer 2:
B Timer2 có nh ng đ c tính sau đây ;
+ 8 bít cho b đ nh th i ( thanh ghi TMR2 )
+ 8 bít vòng l p ( thanh ghi PR2 )
+ Có kh n ng đ c và vi t c hai thanh ghi nói trên
+ Có kh n ng l p trình b ng ph n m m t l tr c
+ Có kh n ng l p trình b ng ph n m m t l sau
Ch đ SSP dùng đ u ra c a TMR2 đ t o xung clock Timer2 có m t thanh
ghi đi u khi n đó là thanh ghi T2CON Timer 2 có th t t b ng vi c xoá bit
TMR2CON c a thanh ghi T2CON
* Ho t đ ng c a b Timer2
Timer 2 đ c dùng ch y u ph n đi u ch xung c a b CCP, thanh ghi
TMR2 có kh n ng đ c và vi t, nó có th xóa b ng vi c reset l i thi t b u
vào c a xung có th ch n các t sau ; 1:1 , 1:2 ho c 1:16 vi c ch n các t này
có th đi u khi n các bít sau T2CKPS1và bít T2CKPS0
* Ng t c a b Timer2
B Timer2 có 1 thanh ghi 8 bít PR2 Timer 2 t ng t giá tr 00h cho đ n
kh p v i PR2 và ti p theo nó s reset l i giá tr 00h và l nh k ti p th c hi n
Thanh ghi PR2 là m t thanh ghi có kh n ng đ c và kh n ng vi t Thanh ghi
PR2 b t đ u t giá tr FFh đ u ra c a TMR2 là đ ng d n c a c ng truy n
thông đ ng b , nó đ c dùng đ phát các xung đ ng h
Trang 26Hinh 1.7: s đ kh i c a b Timer 2
* Thanh ghi T2CON:
bit 7 không s d ng bit 6-3 TOUTPS3: TOUTPS0 bit l a ch n h s đ u ra Timer 2 0000=1:1
0001=1:2 0010=1:3
… 1111=1:16 bit 2 TMR2ON bit b t t t ho t đ ng Timer 2
0/1: disable / enable bit 1- 0 T2CKPS1:T2CKPS0 ch n h chia đ u vào
00 = 1:1
01 = 1:4 1x=1:16
1.1.6.4 ADC
ADC (Analog to Digital Converter) là b chuy n đ i tín hi u gi a hai d ng t ng t
và s PIC16F877A có 8 ngõ vào analog (RA4:RA0 và RE2:RE0) Hi u đi n th
chu n VREF có th đ c l a ch n là VDD, VSS hay hi u đi n th chu n đ c xác l p
trên hai chân RA2 và RA3 K t qu chuy n đ i t tín ti u t ng t sang tín hi u s là
10 bit s t ng ng và đ c l u trong hai thanh ghi ADRESH:ADRESL Khi không
Trang 27s d ng b chuy n đ i ADC, các thanh ghi này có th đ c s d ng nh các thanh ghi
thông th ng khác Khi quá trình chuy n đ i hoàn t t, k t qu s đ c l u vào hai
thanh ghi ADRESH:ADRESL, bit (ADCON0<2>) đ c xóa v 0 và c
ng t ADIF đ c set
Quy trình chuy n đ i t t ng t sang s bao g m các b c sau:
1 Thi t l p các thông s cho b chuy n đ i ADC:
- Ch n ngõ vào analog, ch n đi n áp m u (d a trên các thông s c a thanh
ghi ADCON1)
- Ch nh kênh chuy n đ i AD (thanh ghi ADCON0)
- Ch nh xung clock cho kênh chuy n đ i AD (thanh ghi ADCON0)
- Cho phép b chuy n đ i AD ho t đ ng (thanh ghi ADCON0)
2 Thi t l p các c ng t cho b AD
- Clear bit ADIF
- Set bit ADIE
- Set bit PEIE
- Set bit GIE
3 i cho t i khi quá trình l y m u hoàn t t
4 B t đ u quá trình chuy n đ i (set bit )
5 i cho t i khi quá trình chuy n đ i hoàn t t b ng cách:
- Ki m tra bit N u =0, quá trình chuy n đ i đã hoàn t t
Trang 28Hình 1.8 S đ kh i b chuy n đ i ADC.
C n chú ý là có hai cách l u k t qu chuy n đ i AD, vi c l a ch n cách l u đ c
đi u khi n b i bit ADFM và đ c minh h a c th trong hình sau:
Hình 1.9 Các cách l u k t qu chuy n đ i AD
Các thanh ghi liên quan đ n b chuy n đ i ADC bao g m:
Trang 29- INTCON (đ a ch 0Bh, 8Bh, 10Bh, 18Bh): cho phép các ng t (các bit GIE,
PEIE)
- PIR1 (đ a ch 0Ch): ch a c ng t AD (bit ADIF)
- PIE1 (đ a ch 8Ch): ch a bit đi u khi n AD (ADIE)
- ADRESH (đ a ch 1Eh) và ADRESL (đ a ch 9Eh): các thanh ghi ch a k t
B truy n thông đ ng b , d b có th đ nh d ng các ch đ sau
+ d b (song công toàn ph n)
+ đ ng b chính (bán song công)
+ đ ng b ph (bán song công)
đây khi s d ng truy n thông đ ng b ho c d b ta ph i s d ng bit
SPEN c a thanh ghi RCSTA và bit 7,6 c a thanh ghi TRISC đ đ nh d ng các
chân RC6/TX/CK và RC7/RX/DT
1.1.7.1 T c đ truy n
T c đ truy n đ c cung c p cho c hai ch đ đó là truy n thông đ ng b
và d b thanh ghi SPBRG đi u khi n chu kì ch y 8 bít c a timer Trong ch đ
d b ,bít BRGH c a thanh ghi TXSTA đ c dùng đ đI u khi n t c đ ,còn
trong ch đ đ ng b nó không đ c s d ng công th c tính t c đ truy n đ c
trình bày chi ti t trong b ng sau:
Trang 3020 − = là giá tr n p vào thanh ghi SPBRG
* Thanh ghi đi u khi n và tr ng thái truy n:
bit 7 CSRC bit l a ch n clock ch dùng trong ch đ đ ng b
0/1: Slave Mode clock t bên ngoài / Master mode clock t BRG bit 6 TX9 cho phép truy n 9 bit
0/1 : truy n 8 bit / truy n 9 bit bit 5 TXEN bit cho phép truy n
0 /1: không cho phép truy n / cho phép truy n bit 4 SYNC l a ch n mode USART
0/1: không đ ng b / đ ng b
bit 3 không s d ng
bit 2 bit l a ch n t c đ cao
0/1: t c đ th p / t c đ cao bit 1 TRMT cho tr ng thái thanh ghi d ch TSR
0/1: TSR đ y / TSR r ng bit 0 TX9D D li u bit th 9 truy n đi
* Thanh ghi đi u khi n và tr ng thái nh n :
Trang 31bit 7 SPEN cho phép công truy n n i ti p
0/1:không cho phép / cho phép ho t đ ng bit 6 RX9 cho phép nh n bit th 9
0/1: nh n 8 bit / nh n 9 bit bit 5 SREN Cho phép nh n riêng r
Ch đ không đ ng b và ch đ đ ng b ph bit này không s d ng
Ch đ đ ng b ch 0/1: không cho nh n riêng r / cho phép nh n riêng r bit 4 CREN cho phép ti p t c nh n
Ch đ không đ ng b 0/1: không cho phép ti p t c nh n / cho phép ti p t c nh n
Ch đ đ ng b
1 = cho phép ti p t c nh n đ n khi bit CREN xoá 0/1: ko cho phép ti p t c nh n / cho phép đ n khi bit CREN xoá bit 3 ADDEN Cho phép đánh đ a ch dùng trong ch đ không đ ng b truy n
9bit
1 = Cho phép đánh đ a ch , bit RSR<8> là set cho phép ng t n p d li u vào
0 = nh n bình th ng bit 2 FERR bit l i khung truy n
0/1: không l i/ có l i bit 1 OERR bit l i tràn
0/1:không l i tràn/ có l i tràn bit 0 RX9D bit th đ c đ a vào đây
1.1.7.2 Ch đ truy n thông b t đ ng b :
Trong ch đ này d li u đ c đ nh d ng nh sau: đ u tiên là bit START ,
ti p theo là 8 ho c 9 bit d li u, cu i cùng là bit STOP Thông th ng d li u
đ c đ nh d ng d ng 8 bit Vi c truy n và nh n d li u đ c ti n hành v i
nh ng bit th p tr c Vi c truy n và nh n có th ti n hành đ c l p nhau, khi s
Trang 32d ng có th đ nh d ng d li u và t c đ truy n Vi c truy n thông b t đ ng b
d ng khi ch đ SLEEP
* Truy n d li u ch đ b t đ ng b :
Quan tr ng nh t trong vi c truy n d li u là thanh ghi TSR D li u c a nó
có th đ c vi t và đ c thông qua b đ m là thanh ghi TXREG Thanh ghi TSR
không đ c n p giá tr cho t i khi bit STOP c a l n tr c chuy n đi Khi bit
STOP chuy n đi nó s n p giá tr m i t i thanh ghi TSR t thành ghi TXREG
N u thanh ghi TXREG r ng nó s đ t c bit TXIF c a thanh ghi PIR1 Trong
khi c bit TXIF cho bi t tr ng thái c a thanh ghi TXREG, thì bit TRMT cho
bi t tr ng thái c a thanh ghi TSR Bit tr ng thái TRMT ch dùng đ đ c, nó
đ c đ t khi thanh ghi TSR r ng Vi c truy n d li u ho t đ ng khi ta đ t bit
TXEN c a thanh ghi TXSTA Vi c truy n d li u ch ho t đ ng khi d li u đã
đ c n p t i thanh ghi TXREG và t c đ truy n đã đ c s n sinh t xung đ ng
h Khi vi c truy n d li u b t đ u l n đ u tiên thì thanh ghi TSR lúc đó r ng
Ngay l p t c d li u đ c truy n t thanh ghi TXREG t i thanh ghi TSR và sau
đó thanh ghi TXREG r ng, sau đó nó l i quay l i nh trên
vi c truy n 9 bit d li u đi thì bit truy n TX9 c a thanh ghi TXSTA ph i
đ c đ t v bit th 9 truy n đi đ c vi t t i bit TX9D Bit th 9 này ph i đ c
vi t tr c, tr c khi chuy n 8 bit d li u t i thanh ghi TXREG B i vì d li u
vi t t i thanh ghi ngay l p t c đ c chuy n t i thanh ghi TSR
* Vi c nh n d li u ch d b t đ ng b :
Trong ch đ d b , vi c nh n d li u đ c kích ho t b ng vi c đ t bit
CREN c a thanh ghi RCSTA
Ph n quan tr ng nh t trong vi c nh n d li u là thanh ghi d ch RSR Sau khi
đã nh n xong bit STOP, nó chuy n d li u t thanh ghi d ch RSR t i thanh ghi
RCREG n u thanh ghi này tr ng N u vi c truy n nh n hoàn thành thì c bit
RCIF c a thanh ghi PIR1 s đ c đ t có th ng t ho t đ ng c a nó b ng vi c
đ t bit RCIE c a thanh ghi PIE1 C bit RCIF ch dùng đ đ c, nó đ c xóa
trong ph n c ng Nó s đ c xoá khi thanh ghi RCREG đ c đ c là tr ng
Thanh ghi này là m t thanh ghi có b đ m đôi Nó có kh n ng nh n 2 byte d
li u và truy n t i thanh ghi RCREG FIFO và khi đó byte th 3 đi vào thanh ghi
RSR N u phát hi n bit STOP mà thanh ghi RCREG v n đ y thì bit báo l i
Trang 33OERR s đ c đ t Bit báo l i ch đ c xoá trong ph n m m N u bít OERR
đ c đ t thì vi c truy n d li u t thanh ghi RSR t i thanh ghi RCREG b ng n
c m và không có d li u đ c nh n C u trúc c a bit báo l i FERR đ c đ t
khi bit STOP đ c phát hi n đã đ c xoá Bit FERR và bit th 9 là các b đ m
gi ng nh ph ng pháp b đ m Trong khi đang đ c thanh ghi RCREG nó s
n p giá tr m i cho bit RX9D và FERR
1.1.8 CÁC NG T C A PIC16F877A:
PIC16F877A có 15 ngu n ng t, thanh ghi INTCON là thanh ghi đi u khi n
các ng t, m i ng t có m t bit c ng t và m t bit cho phép ho c c m ng t Bit
GIE (INTCON<7>) đi u khi n chung cho cho các ng t khác, khi bit này đ c
set thì các ng t m i có tác d ng, khi bit GIE xoá thì t t c các ng t b c m Bit
GIE b xóa khi reset
Khi m t ng t x y ra b đ m ch ng trình PC đ c n p giá tr 0004h và bit
GIE b xoá đ c m s ch ng ng t, khi ch l nh RETFIE th c hi n tr l i đ a ch
cho PC n i x y ra ng t, đ ng th i thi t l p l i bit GIE
Ng t ngoài t chân RB0/INT, và ng t t s thay đ i tr ng thái các chân
RB4:RB7 có th đánh th c b x lý t ch đ SLEEP
Các thanh ghi PIE1, PIR1, PIE2, PIR2 đi u khi n các ng t ngo i vi
Hình 1.10: S đ các bit đi u khi n ng t
Khi m t ng t x y ra ch có PC đ c l u trong stack do đó ng i s d ng
ph i l u các thanh ghi W, STATUS, PCLATH, khi x y ra ng t
Trang 34Ng i ra c n m t s ch c n ng khác nh : b chuy n đ i t ng t - s ,
modul capture, compare, PWM
Ü NG T INT
Ng t này d a trên s thay đ i tr ng thái c a pin RB0/INT C nh tác đ ng gây ra
ng t có th là c nh lên hay c nh xu ng và đ c đi u khi n b i bit INTEDG (thanh ghi
OPTION_REG <6>) Khi có c nh tác đ ng thích h p xu t hi n t i pin RB0/INT, c
ng t INTF đ c set b t ch p tr ng thái các bit đi u khi n GIE và PEIE Ng t này có
kh n ng đánh th c vi đi u khi n t ch đ sleep n u bit cho phép ng t đ c set tr c
khi l nh SLEEP đ c th c thi
Ü NG T DO S THAY I TR NG THÁI CÁC PIN TRONG PORTB
Các pin PORTB<7:4> đ c dùng cho ng t này và đ c đi u khi n b i bit RBIE
(thanh ghi INTCON<4>) C ng t c a ng t này là bit RBIF (INTCON<0>)
1.2 IC MAX 232
1.2.1 Gi i thi u:
Trong k t n i d li u gi a máy tính và vi đi u khi n ng i ta ph i dùng thêm IC
chuy n đ i chu n tín hi u RS232 và TTL IC th ng dùng là MAX232, nó làm hai
ch c n ng nh sau:
- M ch ngh ch l u dùng t nâng áp,
m c ngu n nuôi +5V đ a vào trên
m ch chân 16, v i m ch ngh ch l u
Trang 35dùng các t đi n 10µF trên chân 1, 3 và chân 2 Nó đ c dùng nâng lên m c áp
+10V
- Mach đ o c c ngu n Ng i ta dùng m ch đ o c c v i các t 10µF trên chân 4,
5 và chân 6 Nó t o ra đ ng ngu n âm -10V
- Trong IC MAX232 có 2 t ng khu ch đ i đ o pha dùng cho đ c RXD (đ ng
thu tín hi u vào máy tính) Tín hi u chu n TTL vào trên chân 10 ho c 11, sau
khi đ c khu ch đ i đ o pha, nó s t ng thích v i chu n RS232, tín hi u này
cho ra trên chân 7 ho c 14 đ vào máy vi tính qua c ng COM Bình th ng các
t ng khu ch đ i này đ c treo lên m c áp cao v i các đi n tr kéo lên 400KΩ,
nh v y ngõ ra c a nó s m c áp th p
- Trong IC MAX232 có 2 t ng khu ch đ i đ o pha cùng cho đ ng đ o pha dùng
cho đ ng TXD (đ ng phát tín hi u ra t máy tính) Tín hi u này có chu n
RS232 s cho vào trên chân 8 ho c 13, sau khi đ c cho khu ch đ i đ o pha, nó
s t ng thích v i chu n TTL, tín hi u này cho ra trên chân 9 ho c 12 đ vào
các thi t b khác (ví d nh các vi đi u khi n, các đi n tho i di đ ng,…) Bình
th ng các t ng khu ch đ i này có ng vào cho đ t m c áp th p v i các đi n
tr 5KΩ Nh v y ng ra c a nó s m c áp cao
Hình1.12: s đ k t n i chân c a ic v i vi x lý v c ng COM
Trang 36- Nhi t đi n k kim lo i
- Nhi t đi n tr kim lo i
đo nhi t đ đ c chính xác, t t nhiên c n có m t đ u dò nhi t đ thích h p u dò
là m t c m bi n nhi t đ có nhi m v chuy n đ i t nhi t đ qua tín hi u đi n, d a
vào lý thuy t và th c t c a m ch c n thi t k ta dùng ph ng pháp đo b ng IC c m
bi n nhi t đ Các IC c m bi n nhi t đ có đ chính xác cao, d tìm và giá thành r
M t trong s đó là IC LM335, là lo i thông d ng trên th tr ng hi n nay, đ ng th i
nó có nh ng đ c tính làm vi c phù h p v i thi t k chi ti t c a m ch
1.3.2 M t s tính ch t c b n c a LM335:
- LM335 có đ bi n thiên theo nhi t đ : 10mV / 1oC
- chính xác cao, tính n ng c m bi n nhi t đ r t nh y, nhi t đ 25
o
C nó có sai s không quá 1% V i t m đo đ c t -40oC - 100oC, tín hi u ngõ ra tuy n tính liên
Trang 37Khi s n xu t LCD, nhà s n xu t đã tích h p chíp đi u khi n (nh HD44780) bên trong
l p v và ch đ a các chân giao ti p c n thi t Các chân này đ c đánh s th t và đ t
tên nh hình 1.15 :
Hình 1.15: S đ chân LCD
Trang 39CH NG 3: GI I THI U CÁC PH N M M S D NG
3.1 TRÌNH BIÊN D CH CCS C
3.1.1 Gi i thi u:
Trình biên d ch CCS g m t p h p các trình biên d ch riêng l bao g m PCB,
PCM,PCH ng v i t ng MCU có chi u dài l nh khác nhau thì s s d ng
các trình biên d ch t ng ng, nh PCB cho MCU PIC 12-bit opcodes, PCM
cho 14-bit opcodes, and PCH cho 16-bit opcodes Vi c k t h p t t c các trình
biên d ch riêng l này thành m t trình biên d ch th ng nh t là CCS C cho phép
ng i s d ng có th thi t k d dàng và nhanh ch ng các ng d ng mong
mu n
ây là 1 trình biên d ch khá d s d ng do vi c h tr hàm t ng đ i nhi u
Không ph i c u hình thi t b quá ph c t p, ta ch đ n gi n g i hàm ra
3.1.2 T o project
vi c t o project tr nên đ n gi n ta có th s d ng công c Project
Wizard do trình biên d ch cung c p
u tin ta m trình biên d ch PIC C Compiler
Thông th ng s có 1 project ho c source code đ c m s n Ta ch n bi u
t ng , sau đó ch n “Close All” đ đóng t t c các c a s đó l i và ta
có đ c nh hình trên
Trang 40Sau khi đã đóng l i t t c các c a s đó ta ti p t c ch n bi u t ng ,
ch n New/Project Wizard 1 c a s m i hi n ra
Khi đã hoàn t t vi c đ t tên cho project m i, ta ti p t c thi t l p các thông
s cho project
Ch n th Genneral, ta th y c a s bên ph i ph n Device là n i ch n dòng
PIC s d ng, Ocilator Frequency thi t l p t n s th ch anh