Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Lêi më ®Çu : Ngµy nay, víi sù ph¸t triÓn nh- vò b·o cña khoa häc kü thuËt, ®Æc biÖt trong lÜnh vùc ®iÖn tö, c¸c thiÕt bÞ ®iÖn tö ngµy cµng hiÖn ®¹i. C¸c hÖ thèng ®iÖn tö ®· tham gia vµo c«ng nghiÖp lµm t¨ng n¨ng suÊt lao ®éng, t¨ng hiÖu qu¶ kinh tÕ ®ång thêi còng cã mét phÇn h-íng ®Õn nhu cÇu gÇn gòi cña con ng-êi, mang tÝnh hç trî cho cuéc sèng nh- m¸y b¸n hµng tù ®éng, nhµ th«ng minh ….Tõ ®ã mang ®Õn cho con ng-êi sù tiÖn nghi h¬n trong cuéc sèng. Trong bèi c¶nh nh- vËy th× lÜnh vùc thiÕt kÕ m¹ch vi xö lý ®ãng vai trß quan träng. C¸c m¹ch vi xö lý tham gia vµo hÇu hÕt c¸c thiÕt bÞ ®iÖn tö, ®ãng vai trß ®Çu n·o ®Ó xö lý d÷ liÖu vµ ®-a ra c¸c tÝn hiÖu ®iÒu khiÓn chÝnh x¸c. Trªn c¬ së ®ã, chóng em l¯m ®Ò t¯i “thiÕt kÕ m¹ch ®o nhiÖt ®é, ®o kho¶ng c¸ch, hiÓn thÞ lªn LCD vµ giao tiÕp víi m¸y tÝnh qua cæng COM”. Nh÷ng m¹ch nµy cã øng dông trong thùc tiÔn nh ®o nhiÖt ®é trong m«i trêng, hÖ thèng “c°m biÕn lïi”, ®iÒu khiÓn nhiÖt ®é cho xe h¬i. Chóng em ch©n thµnh c¶m ¬n thÇy gi¸o NguyÔn KhuyÕn vµ thÇy gi¸o NguyÔn Xu©n QuyÒn ®· cã nh÷ng gãp ý, söa ®æi h÷u Ých ®Ó chóng em cã thÓ hoµn thiÖn Project nµy.
1
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
PhÇn I.S¬ ®å khèi, s¬ ®å nguyªn lý cña m¹ch: S¬ ®å khèi cña toµn m¹ch nh- sau :
H×nh 1. S¬ ®å khèi toµn m¹ch. Chi tiÕt c¸c khèi : 1. Khèi ®o nhiÖt ®é : Khèi nµy cã t¸c dông ®o nhiÖt ®é m«i tr-êng vµ tr¶ vÒ tÝn hiÖu gi² trÞ nhiÖt ®é cho khèi xö lý trung t©m. Khèi dïng c°m biÕn sè “1 d©y” DS18B20, ®©y l¯ lo³i c°m biÕn cã nhiÒu u ®iÓm nh: ®é chÝnh x¸c cao,d¶i ®o t-¬ng ®èi lín phï hîp víi nhiÒu øng dông d©n dông, lµ c¶m biÕn sè kh«ng dïng ADC, mçi con ®Òu ®-îc nhµ s¶n xuÊt ®¸nh sè serial riªng nªn cã thÓ dïng ®Ó ®o nhiÒu vÞ trÝ , dÆc biÖt cã thÓ chung d©y nguån v¯ d©y tÝn hiÖu nªn gäi l¯ “c°m biÕn 1 d©y”. Mét sè ®Æc tÝnh chÝnh : Ho¹t ®éng víi ®iÖn ¸p tõ 3V ®Õn 5.5V. C¶m biÕn 1 d©y víi 64bit m· trong Rom. 2
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
D¶i ®o t-¬ng ®èi lín : tõ -55 ®Õn +125 C. §Çu ra lµ chuçi bit, ko cÇn dïng ADC. 2. Khèi ®o kho¶ng c¸ch :
H×nh 2. IC GP2D12 §o kho¶ng c¸ch ®-îc øng dông nhiÒu trong thùc tÕ nh- hÖ thèng ®ç xe tù ®éng, c¶m biÕn lïi trong xe h¬i, ®o tèc ®é chuyÓn ®éng… Cã mét sè c«ng nghÖ ®o kho¶ng c¸ch nh- : ®o kho¶ng c¸ch dïng hång ngo¹i, dïng siªu ©m, dïng laser…Tong c¸c ph-¬ng ph¸p th× ®o b»ng laser cã kho¶ng c¸ch xa nhÊt , sau ®ã lµ siªu ©m vµ quang hång ngo¹i. Thùc tÕ th× khi cÇn kho¶ng c¸ch trong kho¶ng vµi mÐt th× ng-êi ta hay dïng siªu ©m. Trong c¸c bé c¶m biÕn lïi trong « t« th× th-êng dïng siªu ©m vµ hång ngo¹i. Trong ph¹m vi Project th× nhãm dïng cµm biÕn hång ngo¹i IR GP2D12 cña SHARP víi c¸c th«ng sè c¬ b¶n sau: §iÖn ¸p ho¹t ®éng 4.5V ®Õn 5.5V. NhiÖt ®é ho¹t ®éng -10 oC ®Õn 60 oC §Çu ra lµ tÝn hiÖu ®iÖn ¸p thay ®æi theo kho¶ng c¸ch. Cã thÓ dïng ADC cña vi ®iÒu khiÓn ®Ó ra tÝn hiÖu sè. 3. Khèi giao tiÕp m¸y tÝnh: Giao tiÕp víi m¸y tÝnh qua cæng Com. Khèi dïng IC Max232. Bé biÕn ®æi ®iÖn ¸p MAX 232 ®Ó t-¬ng thÝch ®iÖn ¸p TTL cña vi ®iÒu khiÓn v× chuÈn RS232 kh«ng t-¬ng thÝch víi møc logic TTL, do vËy nã yªu cÇu mét bé ®iÒu khiÓn ®-êng truyÒn ch¼ng 3
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
h¹n nh- chip MAX232 ®Ó chuyÓn ®æi c¸c møc ®iÖn ¸p RS232 vÒ c¸c møc TTL vµ ng-îc l¹i.. 4. Khèi hiÓn thÞ :
H×nh 3. LCD 16*02 Khèi cã chøc n¨ng hiÓn thÞ qua mµn h×nh LCD 16 cét vµ 2 dßng . LCD dïng chip HD44780 phæ biÕn trªn thÞ tr-êng . HiÓn thÞ c¸c ký tù trong bé m· Ascii. LCD nhËn tÝn hiÖu tõ vi ®iÒu khiÓn. §ã lµ c¸c tÝn hiÖu ®iÒu khiÓn ®Ó hiÓn thÞ c¸c ký tù mong muèn.Sau ®ã lµ xö lý vµ hiÓn thÞ theo ý muèn ng-êi lËp tr×nh. 5. Khèi xö lý :
H×nh 4. S¬ ®å ch©n Atmega16. 4
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
§©y lµ khèi quan träng nhÊt. Khèi dïng vi ®iÒu khiÓn AVR Atmega16 xö lý c¸c d÷ liÖu vµo tõ c¸c khèi c¶m biÕn sau ®ã xuÊt tÝn hiÖu ra cho khèi hiÓn thÞ, giao tiÕp m¸y tÝnh. Chip nµy phï hîp víi c¸c øng dông trong m¹ch. C¸c ®Æc tÝnh chÝnh : Cã 40 ch©n (víi d¹ng PDIP). §iÖn ¸p ho¹t ®éng : 2.7V ®Õn 5.5V. Cã 4 port vµo ra. Cã bé ADC 10 bit. 6. Khèi b¸o hiÖu: Dïng LED vµ loa c¶nh b¸o gi¸ trÞ tíi h¹n. Sau ®©y lµ s¬ ®å khèi toµn m¹ch :
5
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
6
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
PhÇn II.C¸c linh kiÖn trong m¹ch: Trong m¹ch cã sö dông c¸c linh kiÖn sau:
Chip AVR Atmega16. IC DS18B20. IC GP2D12. MAX 232. LCD 1602 LM7805. Led, trë, loa tô. Chøc n¨ng cña c¸c linh kiÖn chÝnh :
1.AVR Atmega16: Nh÷ng ®Æc tÝnh c¬ b¶n: Cã 40 ch©n víi d¹ng PIDP. 4 Cæng vµo/ra. Cã 16Kb bé nhí flash. 512 Bytes EEPROM. 8 bé ®Þnh thêi 2 bits 4 kªnh PWM. §iÖn ¸p ho¹t ®éng tõ 2,7V ®Õn 5,5V.
H×nh 6. S¬ ®å ch©n M« t¶ chøc n¨ng c¸c ch©n At16: 7
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
VCC: cÊp nguån sè. GND: ®Êt Cæng A (PORT A): (PA7 .. PA0) Cã chøc n¨ng ®Çu vµo cho chuyÓn ®æi ADC Cæng A ho¹t ®éng nh- mét cæng vµo ra 8 bit th«ng th-êng khi ADC kh«ng ®-îc sö dông Cæng B (PORT B): Ngoµi nh÷ng chøc n¨ng th«ng th-êng ®Çu vµo/®Çu ra nh- cæng A, th× cæng B cßn cã nh÷ng chøc n¨ng phô kh¸c n÷a. Cæng C(PORT C): NÕu giao tiÕp JTAG ®-îc kÝch ho¹t, ®iÖn trë kÐo trªn c¸c ch©n PC5 (TDI), PC3 (TMS), PC2 (TCK) sÏ ®-îc kÝch ho¹t ngay c¶ khi cã khëi ®éng l¹i (reset).Ngoµi ra cæng C cßn c¬ chøc n¨ng gièng nh- cæng vµo/ra th«ng th-êng. Cæng D (PORT D): Ngoµi nh÷ng chøc n¨ng ®Çu vµo ra th«ng th-êng nh- c¸c cæng trªn, cæng D nµy cßn cã Ch©n Reset: ®Çu vµo cña reset, møc ®iÖn ¸p thÊp ë ch©n nµy trong mét kho¶ng thêi gian lín h¬n thêi gian cña 1 xung th× sÏ x¶y ra reset, ngay c¶ khi nguån tÇn sè kh«ng häat ®éng. XTAL1: ®Çu vµo ®¶o cña bé khuÕch ®¹i dao ®éng vµ ®Çu vµo cho m¹ch dao ®éng bªn trong cña Atmega16. XTAL2: ®Çu ra cña ®Çu vµo ®¶o bé khuÕch ®¹i dao ®éng.
8
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
AVCC: nguån cÊp cho cæng A vµ bé chuyÓn ®æi ADC, ch©n nµy nªn ®-îc nèi víi nguån cÊp VCC bªn ngoµi, ngay c¶ khi bé chuyÓn ®æi ADC kh«ng ®-îc sö dông. NÕu bé chuyÓn ®æi ADC kh«ng ®-îc sö dông, ch©n AVCC nªn ®-îc nèi víi nguån VCC qua qua bé läc. AREF: AREF lµ ch©n chuÈn analog cho bé chuyÓn ®æi ADC.
2.IC DS18B20 :
H×nh 7.S¬ ®å ch©n DS18B20. Lo¹i c¶m biÕn nµy cßn gäi lµ c¶m biÕn 1 d©y v× ®-êng dÉn tÝn hiÖu lèi ra vµ ®-êng dÉn ®iÖn ¸p nguån nu«i cã thÓ dïng chung trªn mét d©y dÉn vµ kh«ng chØ chung cho mét c¶m biÕn mµ nhiÒu c¶m biÕn cã thÓ sö dông chung mét ®-êng dÉn. §iÒu nµy rÊt cã Ých khi gi¶m chi phÝ d©y dÉn còng nh- sù phøc t¹p cho hÖ thèng nhiÒu ®Çu ®o trong c«ng nghiÖp. 9
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Mçi vi m¹ch ®o nhiÖt ®é DS18B20 cã mét m· sè ®Þnh danh duy nhÊt, ®-îc kh¾c b»ng laser trong qu¸ tr×nh chÕ t¹o vi m¹ch nªn nhiÒu vi m¹ch DS18B20 cã thÓ cïng kÕt nèi vµo mét bus 1-wire mµ kh«ng cã sù nhÇm lÉn. §Æc ®iÓm nµy lµm cho viÖc l¾p ®Æt nhiÒu c¶m biÕn nhiÖt ®é t¹i nhiÒu vÞ trÝ kh¸c nhau trë nªn dÔ dµng vµ víi chi phÝ thÊp. Theo chuÈn 1wire ®é dµi tèi ®a cho phÐp cña bus lµ 300 m. Sè l-îng c¸c c¶m biÕn nèi vµo bus kh«ng h¹n chÕ.
Mét sè ®Æc tÝnh c¬ b¶n : Sö dông giao diÖn mét d©y nªn chØ cÇn cã mét ch©n ra ®Ó truyÒn th«ng.
D¶i ®o nhiÖt ®é -55oC ®Õn 125oC, tõng bËc 0,5oC, cã thÓ ®¹t ®é
chÝnh x¸c ®Õn 0,0625oC b»ng viÖc hiÖu chØnh qua phÇn mÒm. RÊt thÝch hîp víi c¸c øng dông ®o l-êng ®a ®iÓm v× nhiÒu ®Çu ®o cã thÓ ®-îc nèi trªn mét bus, bus nµy ®-îc gäi lµ bus mét d©y (1-wire bus) vµ sÏ ®-îc tr×nh bµy chi tiÕt trong sè t¹p chÝ tíi ®©y. ChØ cÇn thªm 1 trë bªn ngoµi. §iÖn ¸p nguån nu«i cã thÓ thay ®æi trong kho¶ng réng, tõ 3,0 V ®Õn 5,5 V mét chiÒu vµ cã thÓ ®-îc cÊp th«ng qua ®-êng dÉn d÷ liÖu. Dßng tiªu thô t¹i chÕ ®é nghØ cùc nhá. Thêi gian lÊy mÉu vµ biÕn ®æi thµnh sè t-¬ng ®èi nhanh, kh«ng qu¸ 200 ms. Mçi c¶m biÕn cã mét m· ®Þnh danh duy nhÊt 64 bit chøa trong bé nhí ROM trªn chip (on chip), gi¸ trÞ nhÞ ph©n ®-îc kh¾c b»ng tia laze.
C¸c c¸ch kÕt nèi DS8B20 víi vi ®iÒu khiÓn :
10
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
H×nh 8. KÕt nèi 1 “d©y”.
H×nh 9. KÕt nèi dïng nguån ngoµi. Bé nhí ROM 64–BIT: Mçi c¶m biÕn nhiÖt ®é DS1820 cã mét d·y m· 64 bit duy nhÊt ®-îc l-u tr÷ trong bé nhí ROM tõ khi s¶n xuÊt b»ng kü thuËt laze. ý nghÜa cña 64 bit m· ®-îc gi¶i thÝch trªn h×nh :
H×nh10: Néi dung d·y m· 64-bit trªn bé nhí ROM Nh- vËy d·y m· ®-îc chia ra thµnh 3 nhãm, trong ®ã: T¸m bit ®Çu tiªn lµ m· ®Þnh danh hä mét d©y. 48 bit tiÕp theo lµ m· sè xuÊt x-ëng duy nhÊt, nghÜa lµ mçi c¶m biÕn DS18B20 chØ cã mét sè m·.
11
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
T¸m bit cã ý nghÜa nhÊt lµ byte m· kiÓm tra CRC (cyclic redundancy check), byte nµy ®-îc tÝnh to¸n tõ 56 bit ®Çu tiªn cña d·y m· trªn ROM (xem h×nh ).
3.LCD 16*02 : Cã rÊt nhiÒu lo¹i LCD víi nhiÒu h×nh d¸ng vµ kÝch th-íc kh¸c nhau, trªn h×nh 1 lµ hai lo¹i LCD th«ng dông.
H×nh 11 : LCD Khi s¶n xuÊt LCD, nhµ s¶n xuÊt ®· tÝch hîp chÝp ®iÒu khiÓn (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 :
H×nh 12. S¬ ®å ch©n LCD 12
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
M« t¶ chi tiÕt c¸c ch©n :
Ch©n sè Tªn
Chøc n¨ng
1
VSS
Ch©n nèi ®Êt cho LCD, khi thiÕt kÕ m¹ch ta nèi ch©n nµy víi GND cña m¹ch ®iÒu khiÓn
2
VDD
Ch©n cÊp nguån cho LCD, khi thiÕt kÕ m¹ch ta nèi ch©n nµy víi VCC=5V cña m¹ch ®iÒu khiÓn
3
Vee
Ch©n nµy dïng ®Ó ®iÒu chØnh ®é t-¬ng ph¶n cña LCD. Ch©n chän thanh ghi (Register select). Nèi ch©n RS víi logic “0” (GND) hoÆc logic“1” (VCC) ®Ó chän thanh ghi.
4
RS
+ Logic “0”: Bus DB0-DB7 sÏ nèi víi thanh ghi lÖnh IR cña LCD (ë chÕ ®é “ghi” write) hoÆc nèi víi bé ®Õm ®Þa chØ cña LCD (ë chÕ ®é “®äc” - read)
5
R/W
Ch©n chän chÕ ®é ®äc/ghi (Read/Write). Nèi ch©n R/W víi logic “0” ®Ó LCD ho¹t + Logic “1”: Bus DB0-DB7 sÏ nèi víi thanh ghi d÷ liÖu DR bªn trong LCD. ®éng ë chÕ ®é ghi, hoÆc nèi víi logic “1” ®Ó LCD ë chÕ ®é ®äc. Ch©n cho phÐp (Enable). Sau khi c¸c tÝn hiÖu ®-îc ®Æt lªn bus DB0-DB7, c¸c lÖnh chØ ®-îc chÊp nhËn khi cã 1 xung cho phÐp cña ch©n E. + ë chÕ ®é ghi: D÷ liÖu ë bus sÏ ®-îc LCD chuyÓn vµo(chÊp nhËn) thanh ghi bªn trong nã khi ph¸t hiÖn mét xung (high-to-low transition) cña tÝn hiÖu ch©n E.
6
E
+ ë chÕ ®é ®äc: D÷ liÖu sÏ ®-îc LCD xuÊt ra DB0-DB7 khi ph¸t hiÖn c¹nh lªn (lowto-high transition) ë ch©n E vµ ®-îc LCD gi÷ ë bus ®Õn khi nµo ch©n E xuèng møc thÊp.
T¸m ®-êng cña bus d÷ liÖu dïng ®Ó trao ®æi th«ng tin víi MPU. Cã 2 chÕ ®é sö dông 8 ®-êng bus nµy : + ChÕ ®é 8 bit : D÷ liÖu ®-îc truyÒn trªn c¶ 8 ®-êng, víi bit MSB lµ bit DB7. 7-14
DB0DB7
+ ChÕ ®é 4 bit : D÷ liÖu ®-îc truyÒn trªn 4 ®-êng tõ DB4 tíi DB7, bit MSB lµ DB7..
13
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
4. Sensor IR Gp2D12 : GP2D12 lµ sensor ®o kho¶ng c¸ch dïng hång ngo¹i bao gåm diode ph¸t quang hång ngo¹i vµ m¾t thu.GP2D12 ®-îc tÝch hîp m¹ch xö lý tÝn hiÖu víi ®Çu ra analog.Víi c¸c tÝnh n¨ng nh- sau:
Tû lÖ tuyÕn tÝnh gi÷a kho¶ng c¸ch víi tÝn hiÖu ®Çu ra. D¶i ®o tõ 10cm ®Õn 50cm. Kh«ng cÇn m¹ch ®iÒu khiÓn bªn ngoµi. Chi phÝ thÊp h¬n c¸c lo¹i kh¸c. §iÖn ¸p lµm viÖc 4,5V ®Õn 5,5V. Dßng tèi ®a 35mA. NhiÖt ®é lµm viÖc : -10 oC ®Õn +60 oC.
14
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
H×nh 13. §Æc tuyÕn lµm viÖc cña GP2D12. §©y lµ ®Æc tuyÕn trong datasheet, trong thùc tÕ ®Æc tuyÕn nhãm ®o ®-îc cã kh¸c so víi h×nh trªn. Dùa vµo kÕt qu¶ nhãm ®o ®¹c ®-îc sÏ xuÊt ra vi
15
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
®iÒu khiÓn. Khèi vi ®iÒu khiÓn dïng ADC cho ra gi¸ trÞ sè, tõ ®ã sÏ so s¸nh vµ xuÊt ra LCD .
5.IC MAX 232 : MAX 232 ®Ó t-¬ng thÝch ®iÖn ¸p TTL cña vi ®iÒu khiÓn v× chuÈn RS232 kh«ng t-¬ng thÝch víi møc logic TTL, do vËy nã yªu cÇu mét bé ®iÒu khiÓn ®-êng truyÒn ch¼ng h¹n nh- chip MAX232 ®Ó chuyÓn ®æi c¸c møc ®iÖn ¸p RS232 vÒ c¸c møc TTL vµ ng-îc l¹i.IC MAX232 sÏ liªn kÕt gi÷a vi ®iÒu khiÓn vµ jump cæng Com cña m¸y, tõ ®ã t¹o cÇu nèi cho viÖc truyÒn d÷ liÖu gi÷a vi ®iÒu khiÓn vµ m¸y tÝnh D-íi ®©y lµ s¬ ®å m¹ch kÕt nèi cña MAX232 víi vi ®iÒu khiÓn.
H×nh 14. S¬ ®å kÕt nèi cña MAX232.
16
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
PhÇn III.Thi c«ng lµm m¹ch vµ lËp tr×nh : Nhãm dïng phÇn mÒm vÏ m¹ch Orcad ®Ó vÏ m¹ch nguyªn lý vµ m¹ch in D-íi ®©y lµ s¬ ®å m¹ch in
H×nh 15. S¬ ®å m¹ch in
17
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
H×nh 16. MÆt trªn.
18
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
H×nh 17 MÆt d-íi. Nhãm còng ®· kh¶o s¸t ®Æc tuyÕn cña IC GP2D12 ®Ó cã d÷ liÖu lËp tr×nh ADC. D-íi ®©y lµ b¶ng kÕt qu¶ thu ®-îc :
19
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Kho¶ng c¸ch (cm)
§iÖn ¸p ch©n out (V)
Gi¸ trÞ ADC
10
435
11
402
12
356
13
321
14
290
15
260
16
242
17
224
18
200
19
184
20
167
21
162
22
149
23
146
24
134
25
130
26
123
27
117
28
114
29
104
30
102
20
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Trong viÖc lËp tr×nh m¹ch, nhãm chia lµm 2 phÇn riªng : lËp tr×nh trªn m¹ch vµ lËp tr×nh trªn m¸y tÝnh dïng ng«n ng÷ Visual Basic . Sau ®©y lµ l-u ®å thuËt to¸n :
21
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Begin
Khởi tạo LCD
Khởi tạo vào ra các PORT
Khởi tạo USART
False
Khởi tạo cảm biến 1 dây
True
Đọc nhiệt độ. Từ DS18B20
Kiểm tra khoảng giới hạn
Ngoài khoảng giới hạn
LED sáng, loa kêu
Hiển thị lên LCD
Lọc số
Đưa ký tự lên máy tính
H×nh 18. L-u ®å thuËt to¸n ®o nhiÖt ®é 22
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Begin
Khởi tạo LCD
Khởi tạo vào ra các PORT
Khởi tạo USART
Khởi tạo ADC .
Đọc giá trị ADC từ kênh ADC0
So sánh giá trị ADC với khoảng cách đo được
Ngoài khoảng Kiểm tra khoảng giới Led sáng, Loa kêu hạn
Hiển thị lên LCD
Lọc số
Đưa ký tự lên máy tính
H×nh 19. L-u ®å thuËt to¸n ®o kho¶ng c¸ch
LËp tr×nh trªn m¹ch: 23
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Nhãm dïng phÇn mÒm CodeVision AVR ng«n ng÷ C.Trong phÇn lËp tr×nh nhãm ®· viÕt c¸c hµm thªm nh- t¹o font ch÷ tiÕng ViÖt cho LCD, chuyÓn sè sang d¹ng chôc, ®¬n vÞ, thËp ph©n,hµm ®-a gi¸ trÞ lªn m¸y tÝnh. T¹o font tiÕng ViÖt:
typedef unsigned char byte; flash byte char0[8]={ 0b0000000, 0b0011100, 0b0010100, 0b0011100, 0b0000000, 0b0000000, 0b0000000, 0b0000000}; void define_char(byte flash *pc,byte char_code) { byte i,a; a=(char_code<<3) | 0x40; for (i=0; i<8; i++) lcd_write_byte(a++,*pc++); } ViÖc t³o font dùa trªn c¬ së “t³o c²c gi² trÞ ®iÓm °nh” , mçi « trªn LCD ®Òu lµ mét ma trËn dùa vµo ®ã ta cã thÓ t¹o ra c¸c ch÷ mong muèn, råi sau ®ã g¸n ch÷ ®ã cho mét ký hiÖu, khi cÇn hiÓn thÞ chØ viÖc xuÊt ký hiÖu ®ã ra LCD.
24
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Läc sè : V× DS18B20 xuÊt ra biÕn d¹ng sè float nªn ®Ó xuÊt ra LCD hoÆc m¸y tÝnh , cÇn ph¶i t¸ch ra c¸c hµng tr¨m,chôc, ®¬n vÞ, thËp ph©n .
void locso(float so) {
float temp1,temp2; // t=so/100;
// lay fan tram c=so/10; // lay fan chuc d=(so-10*c); // lay hang don vi if(so<0) //Neu ®Çu vao ©m -> ®æi sang d-¬ng temp2=so*-1; else temp2=so; temp1=temp2-(c*10+d); tp1 = (unsigned char)(temp1*10); tp2 = (unsigned char)(temp1*100-tp1*10); tp3 = (unsigned char)(temp1*1000-tp1*100-tp2*10); tp4 = (unsigned char)(temp1*10000-tp1*1000-tp2*100tp3*10); }
25
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Giao tiÕp víi m¸y tÝnh: M¹ch giao tiÕp víi m¸y qua cæng Com víi c¸c th«ng sè sau:
Baud Rate 9600. 8 bit datas. 1 bit stop. Non parity. Non Flow control. X¸c lËp chÕ ®é trªn vi ®iÒu khiÓn:
// USART initialization // Communication Parameters: 8 Data, 1 Stop, No Parity // USART Receiver: On // USART Transmitter: On // USART Mode: Asynchronous // USART Baud Rate: 9600 UCSRA=0x00; UCSRB=0xD8; UCSRC=0x86; UBRRH=0x00; UBRRL=0x19; UBRR : USART Baud Rate Register. §©y lµ thanh ghi 12 bit chøa tèc ®é baud cña USART, UBRRH chøa 4 bit cao nhÊt vµ UBBRRL chøa 8 bit thÊp cßn l¹i. Trong m¹ch nhãm dïng th¹ch anh 4Mhz nªn c¸ch tÝnh thanh ghi UBRR nh- sau: UBRR =( TÇn sè th¹ch anh /9600*16) -1 =25. Hµm putchar ( ) ®-a 1 ký tù lªn m¸y tÝnh . §-a gi¸ trÞ lªn sè m¸y tÝnh: §Ó ®-a gi¸ trÞ lªn m¸y, sÏ xuÊt tõng ký tù mét dùa vµo c¸c sè ®· läc ë trªn, hµm nh- sau:
26
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
void putnum(int a) { switch(a){ case 0: putchar('0'); break; case 1: putchar('1'); break; case 2: putchar('2'); break; case 3: putchar('3'); break; case 4: putchar('4'); break; case 5: putchar('5'); break; case 6: putchar('6'); break; case 7: putchar('7'); break; case 8: putchar('8'); break; case 9: putchar('9'); break; 27
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
}; }
LËp tr×nh trªn m¸y tÝnh: Nhãm dïng ng«n ng÷ Visual Basic ®Ó lËp tr×nh ch-¬ng tr×nh nhËn d÷ liÖu trªn m¸y tÝnh
Ch-¬ng tr×nh cã t¸c dông nhËn d÷ liÖu tõ ch©n RX tÝn hiÖu nhiÖt ®é vµ hiÓn thÞ khi ng-êi dïng Ên vµo Button. Ch-¬ng tr×nh gåm 2 phÇn : nhËn gi¸ trÞ nhiÖt ®é vµ kho¶ng c¸ch .
28
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
KÕT LUËN : Sau mét thêi gian nghiªn cøu vµ lµm viÖc nghiªm tóc, chóng em ®± ho¯n th¯nh ®Ò t¯i “thiÕt kÕ m¹ch ®o nhiÖt ®é, ®o kho¶ng c¸ch, hiÓn thÞ LCD, giao tiÕp qua m¸y tÝnh”. Trong thêi gian l¯m viÖc, chóng em ®± häc hái ®-îc rÊt nhiÒu kinh nghiÖm quý b¸u nh- hoµn thiÖn kü n¨ng vÏ m¹ch, lËp tr×nh cho AVR, lËp tr×nh trªn m¸y tÝnh, c¸c tÝnh n¨ng cña c¸c IC míi còng nh- kü n¨ng lµm viÖc theo nhãm hiÖu qu¸. Chóng em xin ch©n thµnh c¶m ¬n thÇy NguyÔn KhuyÕn vµ thÇy NguyÔn Xu©n QuyÒn ®· nhiÖt t×nh chØ b¶o, gióp ®ì chóng em hoµn thµnh ®Ò tµi nµy.
29
Điện tử 5 –K50
Báo cáo Project II-Nhóm 4
Tµi liÖu tham kh¶o: 1) Gi¸o tr×nh vi ®iÒu khiÓn AVR- Ng« Diªn TËp. 2) LËp tr×nh C cho vi ®iÒu khiÓn - Ng« Diªn TËp 3) http://www.datasheetcatalog.com/ 4) http://www.alldatasheet.com/ 5) http://dientuvietnam.net 6) http://www.diendandientu.com 7) http://www.avrfreaks.net 8) http://www.avrprojects.net 9) http://www.vagam.dieukhien.net
30