[Type the document title]
ƯỜ Ạ Ọ TR Ộ NG Đ I H C BÁCH KHOA HÀ N I
Ệ Ử Ễ Ệ VI N ĐI N T VI N THÔNG.
**********
Ậ Ớ
BÁO CÁO BÀI T P L N
ử
ậ Môn Kĩ Thu t Vi X Lí
Ề Ế Ạ Ằ Ế Ề Ể
Ể Ề Đ TÀI: THI T K M CH ĐI U KHI N THANG MÁY B NG VI ĐI U KHI N AVR
ả ướ Gi ng viên h ng d n ễ ẫ : TS.Nguy n Hoàng Dũng
Thành viên trong nhóm:
1.
2.
ươ 3. Đinh Văn V ng. 20134674
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
1
4.
[Type the document title]
ộ Hà N i. tháng 6/2016.
ủ ả ậ ướ ẫ Nh n xét c a gi ng viên h ng d n
……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ………
ộ Hà N i, Ngày Tháng Năm 2016
ướ ẫ ả Gi ng Viên h ng d n
ọ (Ký ghi rõ h tên)
ủ ả ấ ậ Nh n xét c a gi ng viên ch m
……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ……………………………………………………………………………………… ………
ộ Hà N i, Ngày Tháng Năm 2016
ả ấ Gi ng Viên ch m
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
2
ọ (Ký ghi rõ h tên)
[Type the document title]
ụ ụ M c l c.
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
3
ầ ờ L i nói đ u………………………………………………………..04
[Type the document title]
Ờ Ầ L I NÓI Đ U
ơ ủ ữ ứ ậ ọ
ụ ộ ệ
i c a ể ổ ậ ệ ử ữ ậ đã t o ra hang lo t nh ng thi
ế ớ ủ ự ể ạ ộ ế ạ ơ ặ ự ế ị ớ ầ ẹ ọ
ả Ngày nay , v i nh ng ng d ng c a khoa h c kĩ thu t tiên ti n , th gi ổ chúng ta đã và đang ngày m t thay đ i , văn minh và hi n đ i h n . s phát tri n ạ ủ c a kĩ thu t đi n t t b v i các đ c đi m n i b t ư ự nh s chính xác cao , t c đ nhanh và g n nh góp ph n cho s u ho t đ ng ủ c a con ng ạ ố ộ ệ c hi u qu cao. ườ ạ ượ i đ t đ
ọ ắ ự ệ ử ề ự ể ủ ử ề
ự ư
ờ ủ ả ấ ử c nh y v t đ
ể ề ể ề
ở ự ể ượ ổ ế ữ ặ t chúng có th làm đ
ộ ứ ạ ữ ứ ự ủ ể ọ ụ ớ ủ G n li n s phát c a khoa h c đi n t là s phát tri n c a các vi x lí, vi đi u ờ ủ khi n, đó là s ra đ i c a vi x lí đa năng nh Pentium, Celerong … và trong vi ề ọ ượ ướ ể c đánh d u b i s ra đ i c a các vi đi u đi u khi n cũng có b ử ử ư khi n nh PIC, AVR, FPGA… các vi x lí và vi đi u khi n này ngày càng đc s ệ ệ ụ c nh ng vi c vô cũng d ng r ng rãi và ph bi n , đ c bi ộ ố ổ ế ph c t p. v i nh ng ng d ng ph bi n trong m i lĩnh v c c a cu c s ng.
ọ ử ế ị
ề ể ề ộ ề
ộ ố ắ ự ầ ớ
ố ế ế ạ Và trong môn h c vi s lí này nhóm em đã quy t đ nh làm đ tai “ thi t k m ch ự ế ể ề t th c và đi u khi n thang máy dung vi đi u khi n AVR” đó là m t đ tài thi ụ ụ ự ế ự ệ rât g n gũi v i cu c s ng. nó ph c v tr c ti p và đ c l c cho vi c xây d ng ệ ổ ờ các tào nhà cao c trong th i bu i công nghi p hiên nay.
ặ ư ạ ắ ờ
ấ ố ắ ế ế ế ể ự ấ
ạ ỡ ủ ượ ủ ề ệ ầ ơ M c dù đã r t c g ng thi t k và làm m ch nh ng do th i gian ng n và năng ỏ ự l c còn h n ch nên không th tránh kh i sai sót . chúng em r t mong s góp ý và giúp đ c a th y cho đ tài c a chúng em đ c hoàn thi n h n.
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
4
Em xin chân thành cám n!ơ
[Type the document title]
Ề Ệ Ố
Ầ
Ế
Ề PH N I: LÍ THUY T CHUNG V H TH NG ĐI U
Ể
KHI N THANG MÁY.
ươ
ớ
ệ
Ch
ng 1. Gi
ệ ố i thi u chung h th ng thang máy.
ớ ệ ề 1.1 Gi i thi u chung v thang máy.
ể ở ườ Thang máy là thi ế ị ậ ả t b v n t i dùng đ ch ng i và hàng hoá theo
ẳ ứ ươ ộ ng th ng đ ng. Nó là m t lo i hình máy nâng chuy n đ
ế ố ể ượ ử ụ c s d ng r ng ư qu c dân nh trong ngành khai thác
ỏ ệ ơ
ự ể ậ ệ ả ể
ẹ ở ữ nh ng n i đó ư ẩ c s d ng đ v n chuy n hàng hoá, s n ph m, đ a công nhân t ứ ự ủ ườ ế ớ i i và
ấ ạ ộ ph ấ ủ ề ả rãi trong các ngành s n xu t c a n n kinh t ầ h m m , trong ngành xây d ng, luy n kim, công nghi p nh ... ượ ử ụ thang máy đ ệ ộ ơ n i làm vi c có đ cao khác nhau... Nó đã thay th cho s c l c c a con ng ạ i năng su t cao. đã mang l
ụ ạ ượ ử ụ ộ Trong sinh ho t dân d ng, thang máy đ c s d ng r ng rãi trong các toà
ơ ườ ế i ti t
ứ ự ờ nhà cao t ng, c quan, khách s n... Thang máy đã giúp cho con ng ệ ki mđ ạ ầ ượ c th i gian và s c l c...
ừ ướ ớ ỉ ủ ế ượ ử ụ Ở ệ Vi t Nam t c t tr i nay thang máy ch ch y u đ c s d ng trong
ổ ế
ượ ữ ạ ệ ầ ử ụ ướ ạ c ph bi n. Nh ng trong giai đo n hi n nay c phát tri n m nh thì nhu c u s d ng
c ta đang có nh ng b ự ọ ệ ể ở ư công nghi p đ tr hàng và ít đ ể ế ướ ề n n n kinh t thang máy trong m i lĩnh v c ngày càng tăng lên.
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
5
ơ ồ ố ủ ề ể ạ 1.2. S đ kh i c a m ch đi u khi n thang máy.
[Type the document title]
(cid:0) Gi
ả ố ủ ệ ố ơ ồ i thích s đ kh i c a h th ng
Kh i đi u khi n: đi u khi n tr ng thái ho t đ ng c a thang, là n i nh n
ạ ộ ủ ề ể ề ể ạ ậ ố ơ
ư ệ ệ tín hi u vào và đ a tín hi u ra cho led 7 thanh.
ố ử ể ệ ề ề ấ Kh i phím b m đi u khi n: cung c p tín hi u cho kh i s lí trung tâm v
ố ạ ộ ấ ọ ầ ầ ho t đ ng g i t ng và chon t ng
Kh i hi n th : hi n th v trí và tr ng thái c a bu ng thang . xác nh n khi
ủ ậ ạ ồ ị ị
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
6
ể ố ệ ượ có hi n t ể ị ọ ầ ng g i t ng.
[Type the document title]
ạ ộ ấ ồ ố ồ ề Kh i ngu n: cung c p ngu n 1 chi u cho VDK va led 7 thanh ho t đ ng.
ả ủ ệ ố ạ ộ * Mô t ho t đ ng c a h th ng.
ở ầ ở ặ ố ẽ ệ ầ ị ị t ng nào thì yên t ng đó. M t s s hi n th v trí
ố ở ộ 1. Khi kh i đ ng cabin ầ ủ c a cabin (t ng s bao nhiêu).
ố ọ ề ể ệ ố
ạ ể ố ệ ố
ọ ướ ẽ ư ế
ấ ứ ộ ụ ụ ọ
ệ ề ể ể ố ể ứ ạ ộ i chuy n sang ki m tra y/c lên. H th ng c ho t đ ng ẽ ụ ụ c s đc c, y/c nào g i sau s đc ph c v sau. B t c m t y/c g i nào cũng i và khi th c hi n xong y/c nào thì xóa y/c y đi. N u có
ớ ạ ệ ố ư ở ấ ế c trình bày ứ ự ư ượ nh đ
2. H th ng luôn ki m tra các y/c g i thang theo chi u lên và chi u xu ng. Ki m tra các y/c lên mà không có thì chuy n sang ki m tra các y/c xu ng, y/c ể xu ng mà không có thì l ệ ố ụ liên t c nh th . Khi có y/c thì h th ng s ph c v y/c, y/c nào g i tr ụ ụ ướ ọ ẽ ph c v tr ượ ệ ố ự c h th ng nh l đ ề ẽ ử ọ nhi u y/c g i thì h th ng s x lý u tiên theo th t ầ ướ ph n d i.
ộ ọ ậ ự ệ
ọ ề ụ ụ ừ ị ẽ v trí cabin tr lên s đc ph c v trên đ
ọ
ở ở ố ồ trong cabin), các y/c g i lên t
ế ầ ố ở ỏ
ọ ẽ ượ ớ ạ ể ụ ạ 3. Khi cabin đã nh n m t y/c g i lên và đang th c hi n y/c này (cabin đang ch y ườ ở ng theo chi u lên) thì các y/c g i lên t ọ ầ ủ ở ủ đi c a nó (y/c là g m có y/cg i thang c a khách ngoài cabin và y/c ch n t ng ẽ ị ỏ ừ ị ọ ế ủ đ n c a khách v trí cabin tr xu ng s b b ọ qua. Các y/c g i xu ng cũng s b b qua n u t ng trên nó còn có y/c ( b qua ượ đây là không đ ẽ ị ỏ ạ c ph c ngay mà tr ng thái g i s đ c nh l i đ
ụ ụ ph c v sau).
ộ ậ ị ẽ ể ủ ề ể ạ ặ ố
ị ừ ị 5. B ph n hi n th s hi n th v trí c a cabin, chi u ch y ( là lên ho c xu ng) ạ và cabin đangch y hay đang d ng.
ươ
ủ ệ ố
ứ
ầ
Ch
ng 2: Yêu c u ch c năng c a h th ng.
ứ ầ 2.1. Yêu c u ch c năng:
ự ệ ầ ạ ố M ch th c hi n đúng yêu c u mong mu n
ị ố ầ ể Hi n th s t ng lên LED 7 thanh
ể ề ạ ộ ử ụ ể ấ S d ng nút b m đ đi u khi n ho t đ ng thang máy.
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
7
ứ ầ 2.2 Yêu c u phi ch c năng.
[Type the document title]
ử ụ ề ể S d ng vi đi u khi n AVR atmega8
ế ế ạ ỏ ơ Thi t k m ch nh h n 1dm2
ự ề ầ ờ ệ Th i gian th c hi n đ tài 13 tu n
ụ M c tiêu thi ế ế t k
ể ề ử ụ ấ ầ ỉ S d ng nút b m đ đi u ch nh t ng
ể ể ử ụ ị ạ ể ầ ầ ơ ị ị S d ng led 7 thanh đ hi n th tr ng thái t ng và led đ n hi n th v trí t ng.
ự ế ạ ệ K ho ch th c hi n
ư ậ
ả ể ự ệ ố ạ ệ ố ế ể Sau khi phân tích h th ng, và kh năng nhóm phát tri n cũng nh quá trình v n ự ệ hành h th ng. K ho ch có th th c hi n theo trình t
ờ Tên quá trình Th i gian ắ ầ B t đ u Hoàn thành
Nghiên c u s b ứ ơ ộ 1 tu nầ
Phân tích 3 tu nầ
2 tu nầ
ậ L p trình, mô ph ngỏ
Layout 2 tu nầ
ặ ạ Đ t m ch in 1.5 tu nầ
tu nầ
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
8
ạ Hàn m ch in và làm báo cáo
[Type the document title]
Ầ
Ự
Ế
Ế
Ậ PH N II: XÂY D NG THU T TOÁN VÀ THI T K M CHẠ
ươ
ệ ố
Ch
ế ng 3. Phân tích ki n trúc h th ng
ệ ố ồ ố H th ng g m 4 kh i chính
ử Vi x lý trung tâm avr ATMEGA8
ố ồ Kh i ngu n
ố ơ Kh i led 7 thanh và led đ n
ấ ố Kh i nút b m.
3.1 Vi x lí trung tâm ATMEGA 8
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
9
ử
[Type the document title]
ộ ố ặ ỹ ậ a) M t s đ c tính k thu t
ộ ộ
(cid:0) ATMega8 là m t con Vi Đi u Khi n thu c dòng Mega AVR c a ủ ổ ộ ư hãng ATMEL. Dòng Vi Đi u Khi n này có tính năng n i tr nh :
ể ể ề ề
(cid:0) 32 thanh ghi đa d ngụ
(cid:0) ố ộ ố ế ạ ớ T c đ t i đa lên đ n 16MIPS v i th ch anh 16MHz
(cid:0) Có 8KB b nh Flash l p trình ISP ớ
o 512 byte EFPROM.
o 1k SRAM.
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
10
ậ ộ
[Type the document title]
o Chu k ghi/ xóa 10000 l n cho b nh flash ROM và 100000 l n
ầ ầ ớ ộ
ỳ ộ ớ cho b nh EFPROM.
(cid:0) Tính năng ngo i viạ
o 2 b timer/counter 8 bít, 1 b so sánh.
ộ ộ
o 1 b timer/counter 16 bit.
ộ
o Bô đ m th i gian th c v i đao đ ng riêng.
o 3 kênh PWM.
ự ớ ế ờ ộ
o 6 kênh ADC 10 bits cho ki u v PDIP, 8 kênh ADC 10 bits cho
ể ỏ
ể ỏ ki u v TQFP.
ố ế ứ ế ắ ớ o Giao ti p n i ti p TWI, 2 chân ng t ngoài INT0 và INT1 ng v i
2 chân PD2 và PD3.
o L p trình n i ti p USART, giao ti p n i ti p SPI master/slave.
ố ế ố ế ế ậ
o B so sánh analog onchip.
ộ
(cid:0) I/O
o 23 ngõ vào/ra kh trình.
ả
o Được đóng gói trong 28 chân ki u v PDIP.
ể ỏ
o Đi n áp ho t đ ng 2,7V5,5V(ATmega8L)và 4,5
ệ
ạ ộ 5,4V(ATmega8).
o T n s ho t đ ng 08MHz(ATmega8L) và 016MHz(ATmega8)
ầ ố ạ ộ
đ ng.ộ
(cid:0) Ng t ngoài: ắ
ộ ố ứ ậ ớ ử ụ ủ b. M t s ch c năng c a ATmega8 s d ng trong bài t p l n.
ườ ệ ọ ở ượ g i là ng t, là m t tín hi u kh n c p g i
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
11
ẩ ấ ạ ộ c ộ ử ng đ ầ ộ ứ ừ ạ ắ ắ Interrupts, th ệ ộ ử ế đ n b x lí, yêu c u b x lí t m ng ng t c kh c các ho t đ ng hi n
[Type the document title]
ệ ụ ẩ ấ
ế ụ ả ệ ộ ơ ọ ộ ệ ụ ụ ắ
ư ậ
ế ị ướ ượ c tr v giá tr tr ở ệ ượ ấ ộ ế ề ự ứ ộ ư ự ệ ấ
ả ề ụ ắ ố ng đ ề ự ạ ể i đ “nh y” đ n m t n i khác th c hi n m t nhi m v kh n c p t nào đó, nhi m v này g i là trình ph c v ng t – isr (interrupt service ệ ẽ ươ ụ ng trình s routine ). Sau khi k t thúc nhi m v trong isr, b đ m ch ế ể ộ ử ệ đ c đó đ b x lí quay v th c hi n ti p các ử ắ nhi m v còn dang d . Nh v y, ng t có m c đ u tiên x lí cao ờ ư ể ử ườ c dùng đ x lí các s ki n b t ng nh ng nh t, ng t th ờ không t n quá nhi u th i gian.
ắ ế ệ ế ị ừ ấ các thi
ắ Các tín hi u d n đ n ng t có th xu t phát t ắ
ẫ ộ ế ế ệ ằ
ữ ệ ượ ượ ắ ấ ể t b bên trong ở ữ chip (ng t báo b đ m timer/counter tràn, ng t báo quá trình g i d ắ li u b ng RS232 k t thúc…) hay do các tác nhân bên ngoài (ng t báo ậ c nh n…). c nh n, ng t báo có 1 gói d li u đã đ có 1 button đ
ọ ổ ứ ườ Hình minh h a cách t ắ ch c ng t thông th ng trong các chip AVR:
ế ắ Có 3 thanh ghi liên quan đ n ng t ngoài đó là MCUCR, GICR và
GIFR:
ề (MCU Control Register)
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
12
ể Thanh ghi đi u khi n MCU – MCUCR ậ ế ộ ắ ắ là thanh ghi xác l p ch đ ng t cho ng t ngoài:
[Type the document title]
ế ấ ạ N u không nh n, tr ng thái các chân INT là HIGH do đi n tr kéo
ấ ể ẽ ừ ừ ạ ở ệ HIGH sang
ượ ạ
ữ ạ ị ố , tr ng thái các chân INT đ
ạ ọ ấ c nh n Falling Edge, khi button đ ố c xác đ nh là LOW và cu i cùng khi LOW sang HIGH, g i là c nh lên
lên, khi v a nh n 1 button, s có chuy n tr ng thái t ọ LOW, chúng ta g i là c nh xu ng ượ và gi ể ừ ạ ả th các button, tr ng thái chuy n t – Rising Edge.
ượ ừ ướ D i đây là c u trúc thanh ghi MCUCR đ c trích ra t datasheet
ấ ủ c a chip atmega8.
ư ố ớ ắ
ế ộ ỉ
ấ
ả t bên d
ứ ủ ế ả ướ ể i đ t ch c năng c a các bit trên, đây là b ng “chân tr ” c a 2 bit ISC11,
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
13
ươ ả ị ạ ộ MCUCR là m t thanh ghi 8 bit nh ng đ i v i ho t đ ng ng t ấ ủ nó (4 bit cao dùng cho ngoài, chúng ta ch quan tâm đ n 4 bit th p c a ố Power manager và Sleep Mode). B n bit th p là các bit Interrupt Sense Control (ISC) trong đó 2 bit ISC11:ISC10 dùng cho INT1 và 2 bit ắ ISC01:ISC00 dùng cho INT0. Hãy nhìn vào b ng tóm t ị ủ bi ISC10. B ng chân tr cho các bit ISC01, ISC00 hoàn toàn t ng t ự .
[Type the document title]
Thanh ghi đi u khi n ng t chung – GICR (General Interrupt
ể ề ắ
Control Register).
GICR cũng là 1 thanh ghi 8 bit nh ng ch có 2 bit cao (bit 6 và
ỉ ắ ấ
ượ ử ụ ướ ư ư ể ề c s d ng cho đi u khi n ng t, c u trúc thanh ghi i (trích datasheet). bit 7) là đ nh bên d
ọ
ạ ộ ươ ằ ạ ắ ắ Bit 7 – INT1 g i là bit cho phép ng t 1(Interrupt Enable), set ng
ể ề ắ bit này b ng 1 nghĩa b n cho phép ng t INT1 ho t đ ng, t ự t , bit INT0 đi u khi n ng t INT0.
Thanh ghi c ng t chung – GIFR (General Interrupt Flag
ờ ắ
Register).
ờ ạ
ắ ủ ự ệ ợ
đ ng set b ng 1
ự ắ ằ ể ử ụ ợ ủ ng t
cho tr ể ề ắ
ế ế ườ ậ ắ ượ
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
14
ướ ượ Có 2 bit INTF1 và INTF0 là các bit tr ng thái (hay bit c ế Flag) c a 2 ng t INT1 và INT0. N u có 1 s ki n ng t phù h p ả ượ ự ộ x y ra trên chân INT1, bit INTF1 đ c t ườ ươ ng h p c a INTF0), chúng ta có th s d ng (t ầ ậ các bit này đ nh n ra các ng t, tuy nhiên đi u này là không c n ắ ự ộ đ ng, vì v y thanh ghi này t n u chúng ta cho phép ng t t thi ậ c quan tâm khi l p trình ng t ngoài. C u trúc th ng không đ c trình bày trong hình ngay bên d thanh ghi GIFR đ ấ i.
[Type the document title]
(cid:0) Giao ti p TWII ế
2C.
ộ
ề ề ự ẩ ồ ộ
TWI (TwoWire Serial Intereafce) là m t module truy n thông ố ế n i ti p đ ng b trên các chip AVR d a trên chu n truy n thông I2C.
ượ ậ ở ồ
ể c v n hành b i 5 thanh ghi bao g m thanh ề nh p TWBR, thanh ghi đi u khi n TWCR , thanh ghi
ữ ệ ạ ỉ ị
TWI trên AVR đ ố ộ ữ ị ghi t c đ gi tr ng thái TWSR, thanh ghi đ a ch TWAR và thanh ghi d li u TWDR.
ố ộ ữ ị ườ ủ TWBR (TWI Bit Rate Register): là 1 thanh ghi 8 bit quy ị đ nh t c đ phát xung gi ng SCL c a chip Master. nh p trên đ
ố ộ ứ T c đ phát xung gi ữ ị ượ nh p đ c tính theo công th c:
ầ ố ạ ộ ủ
ị ủ
ị ằ ạ
ượ ọ Trong đó CPU Clock frequency là t n s ho t đ ng chính c a AVR, TWBR là giá tr thanh thi TWBR và TWPS là giá tr c a 2 bits TWPS1 và TWPS0 n m trong thanh thi tr ng thái TWSR. Hai bits này đ c g i là bit prescaler.
ạ ộ ủ ể TWCR (TWI Control Register): là thanh ghi 8 bit đi u ề khi n ho t đ ng c a TWI.
ộ ề ầ
ượ ế
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
15
ể ượ ầ M t đi u c n chú ý là các bit trong thanh ghi TWCR không c n ạ c set cùng lúc, tùy vào t ng giai đo n trong quá trình giao ti p đ ẻ . TWI các bit có th đ ừ c set riêng l
[Type the document title]
ủ ứ ạ TWSR (TWI Status Register): là 1 thanh ghi 8 bit trong đó có 5 bit ch a code tr ng thái c a TWI ọ và 2 bit ch n prescaler.
ủ
ữ ệ ề ẽ ượ ư
ữ ệ ữ ệ ậ ứ ở c l u trong ẽ ượ c
ườ TWDR (TWI Data Register): là thanh ghi d li u chính c a ậ TWI. Trong quá trình nh n, d li u nh n v s đ TWDR. Trong quá trình g i, d li u ch a trong TWDR s đ ể chuy n ra đ ng SDA.
ứ
ượ ủ ấ c trình bày trong hình
TWAR (TWI Address Register): là thanh ghi ch a device address c a chip Slave. C u trúc thanh ghi đ i.ướ d
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
16
ể ố ị 3.2 . Kh i LED hi n th .
[Type the document title]
ố ộ ẫ ứ
ơ ộ ế ộ ứ ỗ ố
ứ tr ng, kênh N ch a đi n t ệ ử ấ ố ề ừ ế ố An t( kênh P) đ n Kt t (kênh N), khi đi n t
ạ ấ ệ ử , l p ướ c sóng phát ra có màu ẫ ộ
LED đ n là m t đi t, nó ch a m t chíp bán d n có pha các t p ch t ể ạ đ t o ra m t ti p giáp PN, kênh P ch a l ệ dòng đi n truy n t ỗ ố ầ ứ ạ đ y ch tr ng nó sinh ra b c x ánh sáng, các b ấ ạ khác nhau tùy thu c vào t p ch t trong chíp bán d n ấ ạ ế ạ ạ ồ ơ Led 7 đo n có c u t o bao g m 7 led đ n có d ng thanh x p theo
ỏ ể ệ ấ ấ ơ ở
và có thêm m t led đ n hình tròn nh th hi n d u ch m tròn ướ ạ hình góc d ộ ả ủ i, bên ph i c a led 7 đo n.
ớ ơ ự
ể ượ ư ượ ố ạ ự
ơ ượ ư
ầ ạ ạ ơ
ở ứ ỉ
ạ 8 led đ n trên led 7 đo n có Anode(c c +) đ c n i chung v i nhau ộ ệ ể ế ố ớ vào m t đi m, đ c đ a chân ra ngoài đ k t n i v i m ch đi n. 8 c c ỗ ạ ượ ư c đ a thành 8 chân riêng, cũng đ i trên m i led đ n đ còn l c đ a ra ượ ố ớ ệ ạ ể ế ố ớ c n i v i +Vcc, các ngoài đ k t n i v i m ch đi n. Đ u chung này đ ắ ủ ể ể ề t c a các led đ n, led i dùng đ đi u khi n tr ng thái sáng t chân còn l ặ ch sáng khi tín hi u đ t vào các chân này ứ m c 0. ơ ế ố ầ ệ ạ
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
17
Vì led 7 đo n ch a bên trong nó các led đ n, do đó khi k t n i c n ả ể ả ệ ả ỗ ơ ả đ m b o dòng qua m i led đ n trong kho ng 10mA20mA đ b o v led.
[Type the document title]
Ω ế ế ố ớ ể ạ ệ ằ ở ướ c các
ồ ề ể ệ ậ
3.3 kh i phím b m
N u k t n i v i ngu n 5V có th h n dòng b ng đi n tr 330 tr chân nh n tín hi u đi u khi n. ố ấ
ấ ở ệ ự đây d a trên ượ c
ư ậ
ệ ử ụ ấ ể ử ư ị ệ
c chúng ta đang
Vi c s d ng phím b m ự s chênh áp khi n các phím, đi n áp đ ệ ự ư ề đ a v chip đ x lí . nh v y vi c d a vào ể giá tr đi n áp đ a vào chân chúng ta có th ế ượ ậ t đ hpanf toàn nh n bi ấ b m phím nào?
ồ ố 3.4 Kh i ngu n
ự
ậ
ế ế ạ
ng 4: Xây d ng thu t toán và thi
t k m ch
ươ Ch ư ồ
4.1 L u đ thu t toán:
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
18
ậ
[Type the document title]
4.2 Thi
ế ế ạ t k m ch:
a) M ch nguyên lí:
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
19
ạ
[Type the document title]
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
20
ạ b) M ch in:
[Type the document title]
c) Li
ệ t kê các linh kiên:
ố ượ Giá trị ng
ấ
ồ STT 1 2 3 4 5 6 7 8 9 10 11 Tên linh ki nệ Atmega8 Nút b mấ Led 7 thanh Led đ nơ T hóaụ T g mụ ố bjt Tr ledở ở Tr nút b m ở Tr reset ở Tr led báo ngu n S l 1 5 1 5 1 5 1 4 4 1 1 100MF 104 LM7805 330 10k 10k 330
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
21
ệ ạ M ch khi hoàn thi n:
[Type the document title]
ỏ ạ 4.3 Code ch y mô ph ng
Chip type : ATmega8 Program type : Application AVR Core Clock frequency: 8.000000 MHz Memory model : Small External RAM size : 0 Data Stack size : 256 *****************************************************/
#include
// Declare your global variables here uint8_t maled7[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x8 8,0x83,0xC6,0xA1,0x86,0x8E};
uint8_t temp,old_temp,cong,tru;
void LED7SEG(uint8_t data); void Check_Key(); void Display_Led(uint8_t Local,uint8_t chon); void Prog_Run();
void main(void) {
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
22
// Khai Bao PORT B PORTB=0xff; DDRB=0xFC;
[Type the document title]
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
23
// Khai Bao PORT C PORTC=0xff; DDRC=0xFF; // Khai Bao PORT D PORTD=0xff; DDRD=0x3F; // Khai Bao TIMER 0 TCCR0=0x00; TCNT0=0x00; // Khai Bao TIMER 1 TCCR1A=0x00; TCCR1B=0x00; TCNT1H=0x00; TCNT1L=0x00; ICR1H=0x00; ICR1L=0x00; OCR1AH=0x00; OCR1AL=0x00; OCR1BH=0x00; OCR1BL=0x00; // Khai Bao TIMER 2 ASSR=0x00; TCCR2=0x00; TCNT2=0x00; OCR2=0x00; // Khai Bao Ngat Ngoai MCUCR=0x00; MCUCSR=0x00; // Khai Bao Ngat Timer TIMSK=0x00; // Khai Bao UART
[Type the document title]
UCSRB=0x00; // Khai Bao bo so sanh Analog ACSR=0x80; SFIOR=0x00; // ADC initialization // ADC Clock frequency: 1000.000 kHz // ADC Voltage Reference: AVCC pin //ADMUX=ADC_VREF_TYPE & 0xff; ADCSRA=0x00;
// Khai Bao SPI SPCR=0x00; // Khai Bao TWI TWCR=0x00;
LED1=0; LED7SEG(maled7[1]); old_temp=temp=1; while (1) { Prog_Run(); } }
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
24
void LED7SEG(uint8_t data) { PORTD_1 = data&0x01; PORTD_0 = data&0x02; PORTC_2 = data&0x04; PORTC_1 = data&0x08; PORTC_0 = data&0x10;
[Type the document title]
ề
ể
ằ
Đi u khi n thang máy b ng ATmega8
25
PORTC_4 = data&0x20; PORTC_5 = data&0x40; PORTC_3 = data&0x80; } void Check_Key() { if(BT1==0) {delay_ms(200); if(BT1==0)temp=1;} else if(BT2==0) {delay_ms(200); if(BT2==0)temp=2;} else if(BT3==0) {delay_ms(200); if(BT3==0)temp=3;} else if(BT4==0) {delay_ms(200); if(BT4==0)temp=4;} } void Display_Led(uint8_t Local,uint8_t chon) { if(chon==0) { switch(Local) { case 1 : { LED1=0; LED7SEG(maled7[1]); }break; case 2 : { LED1=1; LED2=0; LED7SEG(maled7[2]); }break; case 3 : { LED2=1 ;LED3=0; LED7SEG(maled7[3]); }break; case 4 : { LED3=1; LED4=0; LED7SEG(maled7[4]); }break; } }
[Type the document title]
ể
ề
ằ
Đi u khi n thang máy b ng ATmega8
26
if(chon==1)
{
switch(Local)
{
case 1 : {
LED1=0; LED2=1; LED7SEG(maled7[1]);
}break;
case 2 : {
LED2=0; LED3=1; LED7SEG(maled7[2]);
}break;
case 3 : {
LED3=0; LED4=1; LED7SEG(maled7[3]);
}break;
case 4 : {
LED7SEG(maled7[4]);
}break;
}
}
}
void Prog_Run()
{
Check_Key();
if(old_temp!=temp)
{
if(old_temp [Type the document title] }
else
{
Display_Led(old_temp,1);
old_temp;
delay_ms(1000);
tru=1;
cong=0;
}
}
else
{
old_temp=temp;
if(cong) Display_Led(old_temp,0);
if(tru) Display_Led(old_temp,1);
}
} ứ ộ ướ 5.1 .M c đ hoàn thành công vi c và h 1. M c đ hoàn thành công vi c. ứ ộ ệ ề ạ ạ ổ ỏ ị Nhìn chung đã hoàn thành v m ch mô ph ng và ch y n đ nh các ậ ớ ủ khâu c a bài t p l n. 2. H ng phát tri n. ướ ể ầ ả ệ ố ể ế ả ể
ạ ở Có th thêm vào ph n c m bi n nguy hi m và h th ng c nh báo và
liên l c ngoài.. 5.2 .Các ph n m m đã s d ng trong quá trình làm bài t p. ề ể ằ Đi u khi n thang máy b ng ATmega8 27 ử ụ ề ầ ậ [Type the document title] Proteus version 8.0 Codevison AVR 2.5.3 5.3 . Tài li u tham kh o. ệ ả Website: http://hocavr.com http://hoiquandientu.com http://dientuvietnam.com http://dientu.org http://machdientu.net Ebook:Datasheet : Atmeaga8. ề ể ằ Đi u khi n thang máy b ng ATmega8 28ươ
Ch
ệ
ế
ổ
ng V : T ng k t
ể
ng phát tri n.
*H t*ế

