Bài giảng Lập trình Assembly: Chương 8 - Nguyễn Văn Thọ
lượt xem 8
download
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ụ.
Bình luận(0) Đăng nhập để gửi bình luận!
Nội dung Text: Bài giảng Lập trình Assembly: Chương 8 - Nguyễn Văn Thọ
- 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
- 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
- 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
- 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
- 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
- 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
- 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
- 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
CÓ THỂ BẠN MUỐN DOWNLOAD
-
Giáo trình về Hợp ngữ
96 p | 571 | 257
-
Chương III : Lập trình hợp ngữ và tóm tắt tập lệnh
10 p | 497 | 218
-
Bài giảng Kiến trúc máy tính: Chương 2 - TS. Vũ Đức Lương
25 p | 265 | 37
-
Bài giảng Assembly: Chương 7 - Nhập môn Assembly
128 p | 299 | 29
-
Bài giảng Cấu trúc máy tính và ASM
570 p | 198 | 27
-
Bài giảng Kiến trúc máy tính - Chương 5: Lập trình hợp ngữ (Assembly Language)
22 p | 247 | 22
-
Bài giảng Lập trình hợp ngữ
63 p | 105 | 22
-
Bài giảng Lập trình Assembly: Chương 2 - Nguyễn Văn Thọ
9 p | 158 | 21
-
Bài giảng Lập trình Assembly: Chương 7 - Nguyễn Văn Thọ
14 p | 151 | 18
-
Bài giảng Lập trình Assembly: Chương 1 - Nguyễn Văn Thọ
7 p | 135 | 18
-
Bài giảng Lập trình Assembly: Chương 5 - Nguyễn Văn Thọ
10 p | 181 | 16
-
Bài giảng Cấu trúc máy tính và lập trình hợp ngữ - Chương 6: Nhập môn assembly
38 p | 195 | 12
-
Bài giảng Cấu trúc máy tính: Chương 4 - Đào Quốc Phương
40 p | 73 | 10
-
Bài giảng Cấu trúc máy tính: Chương 8 - Ngô Phước Nguyên
52 p | 90 | 10
-
Bài giảng Lập trình hướng đối tượng: Chương 2 - ĐH Bách Khoa TP.HCM
13 p | 78 | 8
-
Bài giảng Cấu trúc máy tính và lập trình hợp ngữ - Chương 8: Cấu trúc điều khiển và vòng lặp
52 p | 79 | 5
-
Bài giảng Hợp ngữ và lập trình hệ thống: Chương 0 - Phạm Công Hòa
7 p | 81 | 4
Chịu trách nhiệm nội dung:
Nguyễn Công Hà - Giám đốc Công ty TNHH TÀI LIỆU TRỰC TUYẾN VI NA
LIÊN HỆ
Địa chỉ: P402, 54A Nơ Trang Long, Phường 14, Q.Bình Thạnh, TP.HCM
Hotline: 093 303 0098
Email: support@tailieu.vn