1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài tập vi xử lý căn bản

5 7 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Hôm nay tôi muốn giới thiệu với các bạn 1 phương pháp khá hay đó là sử dụng kỹ thuật MIX MÀU của AGP để ghép hình. Với kỹ thuật này thì các bạn mới cũng có thể làm dễ dàng. Bước 1 : Mở 2 bức hình nguồn , mình chọn 2 hình sau

K thu t vi x lý c n b n vi u n 8051 Bài t p 1: Cho sáng l n l t t ng LED, m i LED sáng giây Begin T t t t c LED Sáng LED Tr giây T t LED 1, sáng LED Tr giây T t LED 2, sáng LED T t LED 7, sáng LED Tr giây Trên l u đ , vi c th hi n b ng l nh l u đ có th b ng cách chân ph ng (làm l n l t) ho c có th dùng l nh quay đ đ a bit = l n l t chân c ng làm LED sáng theo l n l t T t p tr đi, m c đ nh ch ng trình có khai báo: #include Cách chân ph org ljmp org main: mov ;Vi c t mov lcall mov lcall mov ng: 00h main 40h SP,#5fh t t t c LED đ p1,#11111110b tre_1s p1,#11111101b tre_1s p1,#11111011b c t đ ng làm reset lên, chân c ng đ u = ;sáng LED ;t t LED 1, sáng LED ;t t LED 2, sáng LED Written by Kieennx, MicroStudy group K thu t vi x lý c n b n vi u n 8051 lcall ;… mov lcall sjmp tre_1s p1,#01111111b tre_1s main mov r1,#10 mov r2,#100 mov r3,#100 tre_1s: loop1: loop2: loop3: nop ;… r3,loop3 r2,loop2 r1,loop1 end N u s d ng l nh quay ch ;… main: mov SP,#5fh mov a,#11111110b main_loop: mov P1,a lcall tre_1s rl a sjmp main_loop tre_1s: ;…nh trên… end ng trình s g n h n: L u ý đo n ch ng trình trên, ng n x p đ c kh i t o v i giá tr ban đ u c a ghi tr ng n x p SP 5fh, t c đ a ch hay d li u c t vào ng n x p s b t đ u t ô nh 60h tr Vi c kh i t o ng n x p m t thao tác không th thi u ch ng trình có s d ng l nh g i ch ng trình ho c ng t Written by Kieennx, MicroStudy group K thu t vi x lý c n b n vi u n 8051 Bài t p 2: ki m tra phím b m n i v i P3.2, phím đ b m phím t t c LED c b m sáng c LED, không Begin t P3.2 c ng vào Có phím b m? Sáng c LED T t c LED V i l u đ thu t toán nh ta vi t đ c ch ng trình sau: … org 00h ljmp main org 40h main: ;vi c đ t c ng P3.2 làm c ng vào đ c t đ ng th c hi n 8051 reset xong ;các LED c ng t đ ng đ c t t 8051 reset xong, c ng đ u = jnb P3.2,phim_bam mov P1,#0ffh ;t t t t c LED n u khơng có phím b m sjmp main phim_bam: mov P1,#0 ;sáng t t c LED n u có phím b m sjmp main end V i m ch ph n c ng nh trên, ta có th th c hành v ng t c a vi u n Bài toán th c hành đ t có th n u có phím b m đ o tr ng thái c a LED (đang sáng thành t t ng c l i) Nh v y n u ta b m phím, tr ng thái c a LED s đ c đ o l i, m i l n b m phím đ o m t l n N u không s d ng ng t, ta có th vi t ch ng trình g n gi ng v i ch ng trình trên, ch khác ph i thêm thao tác đ i nh phím tr c quay tr l i quét ki m tra n áp t i chân P3.2 N u khơng có thao tác này, chân P3.2 xu ng m c s b gây nhi u l n đ o tr ng thái LED b i chân P3.2 s đ c quét liên t c, th y m c l i đ o tr ng thái, cho đ n nh phím LED s sáng ho c t t, tùy thu c vào vi c l n đ o tr ng thái đ c th c hi n cu i Nh v y s không v i mong mu n ch đ o m t l n b m m t l n … main: jb P3.2,$ ;nh y t i ch ch cho đ n P3.2 = (t c ch cho đ n có phím b m Written by Kieennx, MicroStudy group K thu t vi x lý c n b n vi u n 8051 phim_bam: mov cpl mov jnb sjmp end a,P1 a P1,a P3.2,$ main ;đ c giá tr hi n th i c a c ng P1 ;đ o tr ng thái đ c đ c ;đ a tr l i c ng P1 gây đ o tr ng thái LED ;nh y t i ch đ đ i cho đên P3.2 = tr l i N u s d ng ng t, tr c s d ng ta ph i đ t ch đ cho phép ng t x y Phím đ c n i v i chân P3.2 chân ng t s (INT0) Ng t có 02 ch đ ng t theo m c ng t theo s n Ng t theo m c s liên t c gây ng t CPU ch ng m c n áp c a chân P3.2 m c th p Nh v y n u CPU th c hi n xong ch ng trình ph c v ng t mà chân P3.2 v n m c th p CPU s l i th c hi n ti p ch ng trình ph c v ng t Ng t theo s n ng c l i, ch gây ng t có s n tín hi u (trong tr ng h p 8051 s n xu ng), cịn sau chân tín hi u ng t dù m c th p hay cao hay có s n lên c ng khơng gây ng t n a Vi c đ t ch đ cho ng t đ c th c hi n b ng bit IT0 ghi TCON N u bit = ng t theo s n ng c l i Th c hành v i hai tr ng h p IT0 = ( ng v i ch đ ng t theo m c) IT0 = ( ng v i ch đ ng t theo s n xu ng), ta s th y đ c s khác bi t gi a chúng Tr ng h p ng t theo s n s cho ta k t qu gi ng nh gi i pháp không dùng ng t mà không thêm thao tác đ i chân P3.2 tr v m c Hi n t ng s gi s LED sáng, ta b m phím nh tay sau đó, có th LED s v n sáng ch không t t! Ng t c a 8051 đ c cho phép b i c p, th nh t c p dành riêng cho m i ng t, c p th hai c p chung cho t t c ng t Nh v y đ cho phép m t ng t x y ph i th a mãn c c p đó: cho phép riêng cho phép chung Các bit quy đ nh n c đ u n m ghi IE Ngoài đ s d ng m t ng t ta ph i vi t ch ng trình ph c v ng t đ t m t l nh nh y t i ch ng trình vi t vào đ a ch c a vector ng t t ng ng ó x y ng t, CPU s t đ ng (xin nh t đ ng!) th c hi n l nh đ t t i đ a ch c a vector ng t t ng ng Trong tr ng h p (tr ng h p ng t ngồi s 0) đ a ch vector ng t 03h b nh ch ng trình Ch ng trình gi i quy t toán s nh sau: … org 00h ljmp main org 03h ljmp ngat_0 org 40h main: mov SP,#5fh ;kh i t o ng n x p có dùng ng t setb it0 ;đ t ng t ch đ ng t theo s n cho ng t 0, n u mu n ng t theo m c khơng c n có l nh 8051 reset xong, t đ ng m c đ nh ng t theo m c (IT0 = 0) setb ex0 ;cho phép ng t c p riêng setb ea ;cho phép ng t c p chung ;khác v i ch ng trình tr c, bây gi s d ng ng t nên CPU không c n ph i th m dò m c n áp c a chân P3.2 mà s có th i gian làm vi c khác, có s ki n phím b m x y ra, c u trúc ng t s t phát hi n thông báo cho CPU đ x lý đáp ng main_loop: ;…có th làm tùy thích đây… sjmp loop Written by Kieennx, MicroStudy group K thu t vi x lý c n b n vi u n 8051 ngat_0: mov cpl mov reti a,P1 a P1,a end Qua t p ta th y đ c u m c a ng t CPU đ c t làm cơng vi c khác, có s ki n x y ng t s t báo cho CPU đ d ng công vi c làm l i đáp ng x lý Written by Kieennx, MicroStudy group ... 60h tr Vi c kh i t o ng n x p m t thao tác không th thi u ch ng trình có s d ng l nh g i ch ng trình ho c ng t Written by Kieennx, MicroStudy group K thu t vi x lý c n b n vi u n 8051 Bài t p... thu t vi x lý c n b n vi u n 8051 ngat_0: mov cpl mov reti a,P1 a P1,a end Qua t p ta th y đ c u m c a ng t CPU đ c t làm cơng vi c khác, có s ki n x y ng t s t báo cho CPU đ d ng công vi c làm... cho đ n P3.2 = (t c ch cho đ n có phím b m Written by Kieennx, MicroStudy group K thu t vi x lý c n b n vi u n 8051 phim_bam: mov cpl mov jnb sjmp end a,P1 a P1,a P3.2,$ main ;đ c giá tr hi n

Ngày đăng: 11/05/2021, 19:59

Xem thêm: