intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lập trình Assembly: Chương 8 - Nguyễn Văn Thọ

Chia sẻ: Cvcxbv Cvcxbv | Ngày: | Loại File: PDF | Số trang:8

100
lượt xem
8
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mục tiêu của chương 8 Lập trình I / O cho một số giao tiếp cơ bản trong Lập trình Assembly trình bày về một số giao tiếp cơ bản, phương pháp quét led, và các ví dụ.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình Assembly: Chương 8 - Nguyễn Văn Thọ

  1. DuyTan University Assembly Language Programming I H C DUY TÂN KHOA CÔNG NGH# THÔNG TIN CH NG 8 L P TRÌNH I/O CHO M T S GIAO TI P C B N Nguy n V n Th B môn i n t vi n thông Khoa Công ngh thông tin, i h c Duy Tân – 2008 Nguyen Van Tho – Duy Tan University M TS GIAO TI P C B N • OUTPUT • Led &'n • Led 7 &o+n • Led ma tr0n • LCD • INPUT • Phím &'n • Bàn phím ma tr0n (bàn phím s8 Hex) • In/Out • RS232 • ADC/DAC Nguyen Van Tho – Duy Tan University Hi8n th9 Anod Catod 0 C0h 3Fh LED 7 O N 1 F9h 06h 2 A4h 5Bh 3 B0h 4Fh 4 99h 66h 5 92h 6Dh 6 82h 7Dh 7 F8h 07h 8 80h 7Fh 9 98h 67h Có 2 lo+i chính A 88h 77h Anod chung B c6h 39h Catod chung C 86h 79h D 8Eh 71h E 82h 70h F 89h 76h [tr+ng] FFh 00h
  2. DuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University GHÉP LED CHUNG DATA & PH NG PHÁP QUÉT LED • M+ch nguyên lý Nguyen Van Tho – Duy Tan University PhK'ng pháp quét led • PhK'ng pháp này dOa trên nguyên tPc hình Rnh trên võng m+c mPt vUn còn &KWc lKu thêm 1 thYi gian sau khi hình Rnh thOc t[ &ã m]t. • T+i m_i thYi &i`m cha b0t sáng và hi`n thb 01 led • idu khi`n b0t sáng teng led 1 vfi s8 hi`n thb tK'ng gng trong 1 thYi gian r]t ngPn rhi tPt • Do tin s8 quét r]t cao nên mPt ngKYi không th]y sO thay &ki &ó mà cha th]y t]t cR các led cùng sáng. Nguyen Van Tho – Duy Tan University Ví dn 8.1: Hi`n thb s8 “9876” Thu0t toán : TPt led 0, B0t led 3 (P2.0=1 & P2.3=0) Ka mã s8 9 ra port 1 Delay TPt led 3, B0t led 2 (P2.3=1 & P2.2=0) Ka mã s8 8 ra port 1 Delay TPt led 2, B0t led 1, (P2.1=0 & P2.1=0) Ka mã s8 7 ra port 1 Delay TPt led 1, B0t led 0, (P2.1=1 & P2.0=0) Ka mã s8 6 ra port 1 Delay Lvp l+i te &iu
  3. DuyTan University Assembly Language Programming VD 8.1 Nguyen Van Tho – Duy Tan University Org 00 LAP: DELAY: SETB P2.0 ; tPt led 0 PUSH 01 CLR P2.3 ; b0t led 3 MOV R1,#0FFH MOV P1,#98H ; hi`n thb s8 9 DJNZ R1,$ LCALL DELAY ; chY POP 01 SETB P2.3 ; tPt led 3 RET CLR P2.2 ; b0t led 2 END. MOV P1,#80H ; hi`n thb s8 8 LCALL DELAY ; chY SETB P2.2 ; tPt led 2 CLR P2.1 ; b0t led 1 MOV P1,#0F8H ; hi`n thb s8 7 LCALL DELAY ;chY SETB P2.2 ; tPt led 1 CLR P2.1 ; b0t led 0 MOV P1,#82H ; hi`n thb s8 6 LCALL DELAY ; chY SJMP LAP Nguyen Van Tho – Duy Tan University Ví dn 8.2 : Hi`n thb giá trb thanh ghi A ra led 7 &o+n ORG 0H Lap: MOV B,#10 DIV AB ; Lay A chia 10 MOV R0,A ; Cat thuong vao R0 MOV A,B ; Dua so du vao A MOV P2,#11111110B ; Hien chu so hang don vi MOV DPTR,#LED7SEG ; DPTR tro den bang ma Led 7 doan MOVC A,@A+DPTR ; Lay ma so hien thi dua vao A MOV P1,A ; xuat ra P1 LCALL DELAY MOV A,R0 ; MOV B,#10 DIV AB ; chia tiep cho 10 MOV R0,A ; cat thuong (hang tram) MOV A,B ; dua so du (hang chuc) vao A MOV P2, #11111101B ; Hien chu so hang chuc MOV DPTR,#LED7SEG ; DPTR tro den bang ma Led 7 doan MOVC A,@A+DPTR ; Lay ma so hien thi dua vao A MOV P1,A ; xuat ra P1 LCALL DELAY Nguyen Van Tho – Duy Tan University MOV A,R0 MOV P2,#11111011B ; Hien thi chu so hang tram MOV DPTR,#LED7SEG ; DPTR tro den bang ma Led 7 doan MOVC A,@A+DPTR ; Lay ma so hien thi dua vao A MOV P1,A ; xuat ra P1 LCALL DELAY SJMP LAP DELAY: PUSH 00H PUSH 01H D: MOV R0,#200 DJNZ R0,$ POP 01H POP 00H RET LED7SEG: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,98H DB 88H,0C6H,86H,8EH,82H,89H END
  4. DuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University Ví dn 8.2: Vi[t chK'ng trình ]n phím và hi`n thb s8 &KWc ]n trên led 7 &o+n tK'ng gng Nguyen Van Tho – Duy Tan University GiRi thu0t : BEGIN P0.0=0 ? B t led 0 Hi n sô 0 S P0.1=0 ? B t led 1 Hi n sô 1 S P0.7=0 ? B t led 7 Hi n sô 7 Nguyen Van Tho – Duy Tan University Ví dn 8.3: Vi[t chK'ng trình &[m s8 lin ]n và hi`n thb trên led 7 &o+n
  5. DuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University Thu0t toán : ChK'ng trình chính ChK'ng trình con hi`n thb R0 BEGIN R0 chia 10 TPt led 2, b0t led 0 R0=0 Hi`n thb s8 dK trên Led 0 Delay Hi n th R0 ThK'ng chia 10 TPt led 0, b0t led 1 S Phím nh n ? Hi`n thb s8 dK trên Led 1 Delay R0=R0 +1 TPt led1, b0t led 0 Hi`n thb thK'ng trên Led2 Nguyen Van Tho – Duy Tan University RUNG PHÍM & PH NG PHÁP CH NG RUNG PHÍM • Bàn phím là chuy`n m+ch c' khí • Khi ]n và nhR nút rung phím : nhK là nh]n và nhR nhidu lin trong thYi gian r]t ngPn • Có 02 cách ch8ng xung nRy khi rung phím • B•ng phin cgng • B•ng phin mdm • Ch8ng xung nRy b•ng phin mdm : Ki`m tra nhidu lin liên ti[p (vd: 50 lin ) có phím ]n thì mfi xem nhK nh]n phím 1 lin Nguyen Van Tho – Duy Tan University ; ki`m tra nh]n For 50 lin •c phím If có phím nh]n then &•c phím Else NhRy &[n ki`m tra nh]n EndFor ; ki`m tra nhR For 50 lin &•c phím If không nh]n then &•c phím Else NhRy &[n ki`m tra nhR EndFor
  6. DuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University GETKEY: ; ChK'ng trình con ki`m tra phím P0.0 ; Có nh]n : C =1 ; Không nh]n C=0 PUSH 01 CLR C ; không nh]n KTNHAN: MOV R1,#50 ; INKEY: JC P0.0, KTNHAN ; Không nh]n, KTNHAN l+i DJNZ INKEY ; có nh]n, lvp 50 lin KTNHA: MOV R1,#50 ; INKEY2: JNC P0.0, KTNHA ; có nh]n, KTNHA l+i DJNZ INKEY2 ;không nh]n, lvp 50 lin SETB C POP 01 RET Nguyen Van Tho – Duy Tan University LED MA TR N T0p hWp các led &'n &KWc tk chgc theo ki`u ma tr0n và &óng gói l+i ƒng dnng nhidu trong l„nh vOc quang báo Nhidu lo+i vfi nhidu kích c… khác nhau 8x8 5x7 … 5-17 Nguyen Van Tho – Duy Tan University Ghép n8i Led ma tr0n vfi 8051
  7. DuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University Ví dn 8.4 : Hi`n thb 1 &KYng thˆng &gng ch+y te trái sang phRi Nguyen Van Tho – Duy Tan University Ví dn 8.5 : Hi`n thb ch‰ D trên led ma tr0n Nguyen Van Tho – Duy Tan University BÀN PHÍM MA TR N 5-21
  8. DuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University L0p trình bàn phím ma tr0n : K‹ thu0t quét phím • Thu0t toán Hàng=0 For 4 lin Hàng=hàng+1 Tích cOc hàng •c c•t If c•t1=0 then phím ]n = hàng-1+1 Else If c•t2=0 then phím ]n=hàng-1+2 Else If c•t3=0 then phím ]n= hàng-1+3 Else if c•t4=0 then phím ]n= hàng-1+4 EndIf EndFor Nguyen Van Tho – Duy Tan University Ví dn : Vi[t chK'ng trình &•c bàn phím ma tr0n và hi`n thb s8 nh]n tK'ng gng (0 F) trên Led 7 &o+n
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2