1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

bài tập vi xử lý họ vi điều khiển 8051 - lê chí công

24 639 2

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 24
Dung lượng 153,86 KB

Nội dung

SJMP ketthuc la lenh nhay ngan, dieu khien chuong trinh re nhanhdelay1ms: den dia chi duoc tro den.

Trang 1

BÀI T P VI X LÝ (H VI ĐI U KHI N 8051) Ậ Ử Ọ Ề Ể

2 S D NG T P L NH Ử Ụ Ậ Ệ

Truy xu t RAM n i ấ ộ

Trang 2

2.1 Vi t CT ghi 40H vào ô nh 30H c a RAM n i theo 2 cách (đ nh đ a ch ôế ớ ủ ộ ị ị ỉ

Truy xu t RAM ngoài ấ

2.6 Vi t CT ghi 40H vào ô nh 0030H c a RAM ngoài.ế ớ ủ

2.7 Vi t CT xóa ô nh 0031H c a RAM ngoài.ế ớ ủ

2.8 Vi t CT đ c ô nh 0032H c a RAM ngoài vào thanh ghi A.ế ọ ớ ủ

2.8 Vi t CT ghi n i dung thanh ghi A vào ô nh 0033H c a RAM ngoài.ế ộ ớ ủ

2.10 Vi t CT chuy n d li u ô nh 0034H c a RAM ngoài vào ô nh 0035Hế ể ữ ệ ớ ủ ớ

c a RAM ngoài.ủ

Truy xu t Port ấ

2.11 Vi t CT xu t 0FH ra Port 1.ế ấ

2.12 Vi t CT xu t F0H ra Port 2.ế ấ

2.13 Vi t CT xu t n i dung thanh ghi A ra Port 1.ế ấ ộ

2.14 Vi t CT nh p t Port 1 vào thanh ghi A.ế ậ ừ

2.15 Vi t CT nh p t Port 1 và xu t ra Port 2.ế ậ ừ ấ

2.16 Vi t CT xu t 1 (m c logic cao) ra chân P1.0ế ấ ứ

2.17 Vi t CT xu t 0 (m c logic th p) ra chân P1.1ế ấ ứ ấ

Truy xu t RAM n i, RAM ngoài và Port ấ ộ

2.18 Vi t CT chuy n d li u ô nh 40H (RAM n i) đ n ô nh 2000H (RAMế ể ữ ệ ớ ộ ế ớngoài) Làm theo 2 cách (đ nh đ a ch ô nh tr c ti p và đ nh đ a ch ô nh giánị ị ỉ ớ ự ế ị ị ỉ ớ

ti p).ế

2.19 Vi t CT chuy n d li u ô nh 2001H (RAM ngoài) vào ô nh 41H (RAMế ể ữ ệ ớ ớ

n i) Làm theo 2 cách (đ nh đ a ch ô nh tr c ti p và đ nh đ a ch ô nh giánộ ị ị ỉ ớ ự ế ị ị ỉ ớ

ti p).ế

2.20 Vi t CT nh p t Port 1 vào ô nh 42H (RAM n i) Làm theo 2 cách (đ nhế ậ ừ ớ ộ ị

đ a ch ô nh tr c ti p và đ nh đ a ch ô nh gián ti p).ị ỉ ớ ự ế ị ị ỉ ớ ế

Trang 3

2.21 Vi t CT nh p t Port 1 vào ô nh 2002H (RAM ngoài).ế ậ ừ ớ

2.22 Vi t CT l y ô nh 43H (RAM n i) xu t ra Port 1 Làm theo 2 cách (đ nhế ấ ớ ộ ấ ị

2.26 Vi t CT xóa 250 ô nh RAM ngoài có đ a ch b t đ u là 4000H.ế ớ ị ỉ ắ ầ

2.27 Vi t CT xóa 2500 ô nh RAM ngoài có đ a ch b t đ u là 4000H.ế ớ ị ỉ ắ ầ

2.28 Vi t CT xóa toàn b RAM ngoài có dung lế ộ ượng 8KB, bi t r ng đ a chế ằ ị ỉ

2.33 Cho m t chu i d li u g m 20 byte liên ti p trong RAM n i, b t đ u tộ ỗ ữ ệ ồ ế ộ ắ ầ ừ

đ a ch 20H Hãy vi t CT l n lị ỉ ế ầ ượt xu t các d ki u này ra Port 1.ấ ữ ệ

2.34 Gi s Port 1 đả ử ược n i đ n m t thi t b phát d li u (ví d nh 8 nútố ế ộ ế ị ữ ệ ụ ư

nh n) Hãy vi t CT nh n liên ti p 10 byte d li u t thi t b phát này và ghiấ ế ậ ế ữ ệ ừ ế ịvào 10 ô nh (RAM n i) liên ti p b t đ u t ô nh 50H.ớ ộ ế ắ ầ ừ ớ

Trang 4

2.43 Vi t CT t o chu i xung vuông có f = 10 Hz t i chân P1.4 (Xtal 12 MHz).ế ạ ỗ ạ

2.44 Vi t CT t o chu i xung vuông có f = 10 Hz và có chu kỳ làm vi c D =ế ạ ỗ ệ25% t i chân P1.5 (Xtal 12 MHz).ạ

Các phép toán

2.45 Cho m t chu i s 8 bit không d u trong RAM n i g m 10 s b t đ u tộ ỗ ố ấ ộ ồ ố ắ ầ ừ

ô nh 30H Hãy vi t CT con c ng chu i s này và ghi k t qu vào ô nh 2FHớ ế ộ ỗ ố ế ả ớ(gi s k t qu nh h n ho c b ng 255).ả ử ế ả ỏ ơ ặ ằ

2.46 Cho m t chu i s 8 bit không d u trong RAM n i g m 10 s b t đ u tộ ỗ ố ấ ộ ồ ố ắ ầ ừ

ô nh 30H Hãy vi t CT con c ng chu i s này và ghi k t qu vào ô nhớ ế ộ ỗ ố ế ả ớ

2EH:2FH (ô nh 2EH ch a byte cao c a k t qu và ô nh 2FH ch a byte th pớ ứ ủ ế ả ớ ứ ấ

c a k t qu ).ủ ế ả

2.47 Cho m t chu i s 16 bit không d u trong RAM n i g m 10 s b t đ u tộ ỗ ố ấ ộ ồ ố ắ ầ ừ

ô nh 30H theo nguyên t c ô nh có đ a ch nh h n ch a byte cao và ô nh cóớ ắ ớ ị ỉ ỏ ơ ứ ớ

đ a ch l n h n ch a byte th p (Ví d : byte cao c a s 16 bit đ u tiên đị ỉ ớ ơ ứ ấ ụ ủ ố ầ ượ c

c t t i ô nh 30H và byte th p c a s 16 bit đ u tiên đấ ạ ớ ấ ủ ố ầ ượ ấ ạc c t t i ô nh 31H).ớHãy vi t CT con c ng chu i s này và c t k t qu vào ô nh 2EH:2FH.ế ộ ỗ ố ấ ế ả ớ

2.48 Vi t CT con l y bù 2 s 16 bit ch a trong R2:R3.ế ấ ố ứ

So sánh

2.49 Cho hai s 8 bit, s th 1 ch a trong (30H), s th 2 ch a trong (31H).ố ố ứ ứ ố ứ ứ

Vi t CT con so sánh hai s này N u s th 1 l n h n ho c b ng s th 2 thìế ố ế ố ứ ớ ơ ặ ằ ố ứset c F0, n u ngờ ế ượ ạc l i thì xóa c F0.ờ

Trang 5

2.50 Cho hai s 16 bit, s th 1 ch a trong (30H):(31H), s th 2 ch a trongố ố ứ ứ ố ứ ứ(32H):(33H) Vi t CT con so sánh hai s này N u s th 1 l n h n ho c b ngế ố ế ố ứ ớ ơ ặ ằ

s th 2 thì set c F0, n u ngố ứ ờ ế ượ ạc l i thì xóa c F0.ờ

2.51 Cho m t chu i ký t dộ ỗ ự ướ ại d ng mã ASCII trong RAM n i, dài 20 byte,ộ

b t đ u t đ a ch 50H Vi t CT xu t các ký t in hoa có trong chu i này raắ ầ ừ ị ỉ ế ấ ự ỗPort 1 Bi t r ng mã ASCII c a ký t in hoa là t 65 (ch A) đ n 90 (ch Z).ế ằ ủ ự ừ ữ ế ữ

2.52 Vi t CT nh p m t chu i ký t t Port 1 dế ậ ộ ỗ ự ừ ướ ại d ng mã ASCII và ghi vàoRAM ngoài, b t đ u t đ a ch 0000H Bi t r ng chu i này k t thúc b ng kýắ ầ ừ ị ỉ ế ằ ỗ ế ằ

t CR (có mã ASCII là 0DH) và ghi c ký t này vào RAM.ự ả ự

2.53 Vi t CT nh p m t chu i ký t t Port 1 dế ậ ộ ỗ ự ừ ướ ại d ng mã ASCII và ghi vàoRAM ngoài, b t đ u t đ a ch 0000H Bi t r ng chu i này k t thúc b ng kýắ ầ ừ ị ỉ ế ằ ỗ ế ằ

t CR (có mã ASCII là 0DH) và không ghi ký t này vào RAM.ự ự

2.54 Vi t CT nh p m t chu i ký t t Port 1 dế ậ ộ ỗ ự ừ ướ ại d ng mã ASCII và ghi vàoRAM ngoài, b t đ u t đ a ch 0000H Bi t r ng chu i này k t thúc b ng kýắ ầ ừ ị ỉ ế ằ ỗ ế ằ

t CR (có mã ASCII là 0DH) và không ghi ký t này vào RAM mà thay b ngự ự ằ

ký t null (có mã ASCII là 00H).ự

2.55 Cho m t chu i ký t dộ ỗ ự ướ ại d ng mã ASCII trong RAM n i, dài 20 byte,ộ

b t đ u t đ a ch 50H Vi t CT đ i các ký t in hoa có trong chu i này thànhắ ầ ừ ị ỉ ế ổ ự ỗ

ký t thự ường Bi t r ng mã ASCII c a ký t thế ằ ủ ự ường b ng mã ASCII c a kýằ ủ

ra Port 1 n u là s dế ố ương (xem s 0 là dố ương) và xu t ra Port 2 n u là s âm.ấ ế ố

2.58 Cho m t chu i d li u dộ ỗ ữ ệ ướ ại d ng s có d u trong RAM ngoài, b t đ uố ấ ắ ầ

t đ a ch 0100H và k t thúc b ng s 0 Vi t CT l n lừ ị ỉ ế ằ ố ế ầ ượt xu t các d li uấ ữ ệ trong chu i ra Port 1 n u là s dỗ ế ố ương và xu t ra Port 2 n u là s âm.ấ ế ố

2.59 Cho m t chu i d li u dộ ỗ ữ ệ ướ ại d ng s không d u trong RAM ngoài, b tố ấ ắ

đ u t đ a ch 0100H và đ dài chu i là n i dung ô nh 00FFH Vi t CT đ mầ ừ ị ỉ ộ ỗ ộ ớ ế ế

s s ch n (chia h t cho 2) có trong chu i và c t vào ô nh 00FEH.ố ố ẵ ế ỗ ấ ớ

2.60 Cho m t chu i d li u dộ ỗ ữ ệ ướ ại d ng s không d u trong RAM ngoài, b tố ấ ắ

đ u t đ a ch 0100H và đ dài chu i là n i dung ô nh 00FFH Vi t CT ghiầ ừ ị ỉ ộ ỗ ộ ớ ếcác s ch n (xem s 0 là s ch n) có trong chu i vào RAM n i b t đ u t đ aố ẵ ố ố ẵ ỗ ộ ắ ầ ừ ị

ch 30H cho đ n khi g p s l thì d ng.ỉ ế ặ ố ẻ ừ

2.61 Vi t CT con có nhi m v l y 1 byte t 1 chu i data g m 20 byte c tế ệ ụ ấ ừ ỗ ồ ấ trong Ram ngoài b t đ u t đ a ch 2000H và xu t ra Port1 M i l n g i CTắ ầ ừ ị ỉ ấ ỗ ầ ọ

Trang 6

con ch xu t 1 byte, l n g i k thì xu t byte k ti p, l n g i th 21 thì l iỉ ấ ầ ọ ế ấ ế ế ầ ọ ứ ạ

3.7 Vi t CT dùng Timer t o sóng vuông f=500Hz t i P1.4 (Xtal 12MHz).ế ạ ạ

3.8 Vi t CT dùng Timer t o sóng vuông f=20KHz t i P1.5 (Xtal 24MHz).ế ạ ạ

Thờ

i gian

Xanh 1

Đ 2ỏ P1.5

Trang 7

Đèn sáng khi bit đi u khi n b ng 0.ề ể ằ

4 SERIAL PORT

4.1 Vi t CT đ c 1 chu i data ch a trong RAM n i t đ a ch 30H đ n 50H vàế ọ ỗ ứ ộ ừ ị ỉ ế

xu t ra 1 thi t b (ví d nh màn hình tinh th l ng LCD) đấ ế ị ụ ư ể ỏ ược n i v i portố ớ

n i ti p c a 8051 (ch đ UART 8 bit, 2400 baud) Cho Xtal 11,059 MHz.ố ế ủ ế ộ

4.2 Vi t CT nh n 1 chu i data t 1 thi t b ngoài (ví d nh máy đ c mãế ậ ỗ ừ ế ị ụ ư ọ

v ch) n i v i 8051 qua port n i ti p (ch đ UART 8 bit, 4800 baud) và ghiạ ố ớ ố ế ế ộdata vào RAM n i t đ a ch 40H Bi t r ng chu i data g m 20 byte và Xtalộ ừ ị ỉ ế ằ ỗ ồ11,059MHz

4.3 Vi t CT l y 1 chu i data ch a trong RAM ngoài b t đ u t đ a ch 2000Hế ấ ỗ ứ ắ ầ ừ ị ỉ

và xu t ra 1 thi t b đấ ế ị ược n i v i port n i ti p c a 8051 (ch đ UART 8 bit,ố ớ ố ế ủ ế ộ

1200 baud) Chu i k t thúc b i ký t EOT (có mã ASCII là 04H) và ký t nàyỗ ế ở ự ựcũng được xu t ra (Xtal 11,059 MHz).ấ

4.4 Làm l i bài 4.3 nh ng không xu t ký t EOT.ạ ư ấ ự

4.5 Vi t CT nh n 1 chu i data t 1 thi t b ngoài n i v i 8051 qua port n iế ậ ỗ ừ ế ị ố ớ ố

ti p (ch đ UART 8 bit, 9600 baud) và ghi data vào RAM ngoài b t đ u tế ế ộ ắ ầ ừ

đ a ch 4000H Chu i data b t đ u b ng ký t STX (02H) và k t thúc b ng kýị ỉ ỗ ắ ầ ằ ự ế ằ

t ETX (03H) Không ghi 2 ký t này vào RAM Cho Xtal 11,059MHz.ự ự

4.6 Vi t CT con mang tên XUAT có nhi m v l y 1 chu i data ch a trongế ệ ụ ấ ỗ ứRAM ngoài xu t ra port n i ti p ch đ UART 9 bit Bit th 9 là bit parityấ ố ế ở ế ộ ứ

ch n Chu i data k t thúc b ng ký t null (00H) CT g i CT con XUAT s đ tẵ ỗ ế ằ ự ọ ẽ ặ

đ a ch b t đ u c a chu i vào DPTR trị ỉ ắ ầ ủ ỗ ước khi g i CT con XUAT Gi s portọ ả ử

n i ti p đã đố ế ược kh i đ ng.ở ộ

4.7 Vi t CT con mang tên NHAP có nhi m v nh p 1 chu i data g m 30 byteế ệ ụ ậ ỗ ồ

t port n i ti p ch đ UART 9 bit, bit th 9 là bit parity l N u data nh nừ ố ế ở ế ộ ứ ẻ ế ậ

được không b l i thì ghi vào 1 vùng nh c a RAM n i, n u b l i thì khôngị ỗ ớ ủ ộ ế ị ỗghi CT g i CT con NHAP s đ t đ a ch đ u c a vùng nh vào thanh ghi R0ọ ẽ ặ ị ỉ ầ ủ ớ

trước khi g i CT con NHAP Gi s port n i ti p đã đọ ả ử ố ế ược kh i đ ng.ở ộ

Trang 8

5.4 Vi t CT l y 1 chu i data ch a trong Ram ngoài b t đ u t đ a ch 6200Hế ấ ỗ ứ ắ ầ ừ ị ỉ

đ n đ a ch 62FFH và xu t ra Port1, m i l n xu t cách nhau 50ms S d ngế ị ỉ ấ ỗ ầ ấ ử ụ

ng t Timer Xtal 12MHz.ắ

5.5 Vi t CT nh p data t thi t b ngoài k t n i v i 8051 qua Port1, m i l nế ậ ừ ế ị ế ố ớ ỗ ầ

nh p cách nhau 5s, data nh p v đậ ậ ề ược ghi vào vùng Ram n i b t đ u t đ aộ ắ ầ ừ ị

ch 50H đ n đ a ch 5FH Bi t r ng sau khi ghi vào ô nh cu i cùng thì tr l iỉ ế ị ỉ ế ằ ớ ố ở ạ ghi vào ô nh đ u S d ng ng t Timer Xtal 12MHz.ớ ầ ử ụ ắ

5.6 Vi t CT phát liên t c chu i s t 0 đ n 9 ra port n i ti p theo ch đế ụ ỗ ố ừ ế ố ế ế ộ UART 8 bit, 2400 baud S d ng ng t serial Xtal 12MHz.ử ụ ắ

5.7 Vi t CT ch nh n data t 1 thi t b ngoài g i đ n 8051 qua port n i ti pế ờ ậ ừ ế ị ở ế ố ế (ch đ UART 8 bit, 19200 baud) N u nh n đế ộ ế ậ ược ký t STX (02H) thì b tự ậ sáng LED, n u nh n đế ậ ược ký t ETX (03H) thì t t LED, bi t r ng LED đự ắ ế ằ ượ c

đi u khi n b ng ngõ P1.3 (LED sáng khi bit đi u khi n b ng 1) S d ngề ể ằ ề ể ằ ử ụ

ng t serial Xtal 11,059MHz.ắ

5.8 Vi t CT ch nh n 1 xung c nh xu ng đ a vào chân /INT0 (P3.2), khi cóế ờ ậ ạ ố ưxung thì nh p data t Port1 và phát ra port n i ti p ch đ UART 9 bit 4800ậ ừ ố ế ở ế ộbaud, bit th 9 là bit parity l Xtal 6MHz.ứ ẻ

5.9 Vi t CT đ m s xung đ a vào chân /INT1 (P3.3) và đi u khi n relay thôngế ế ố ư ề ểqua chân P3.0 (relay đóng khi P3.0 b ng 1), c t s đ m vào ô nh 40H c aằ ấ ố ế ớ ủ Ram n i, n u s đ m ch a đ n 100 thì đóng relay, n u s đ m đ t 100 thìộ ế ố ế ư ế ế ố ế ạ

Trang 10

Truy xu t RAM ngoàiấ

2.6 Vi t CT ghi 40H vào ô nh 0030H c a RAM ngoài.ế ớ ủ

ORG 0000H

MOV A,#40H

Trang 12

Truy xu t RAM n i, RAM ngoài và Port ấ ộ

2.18 Vi t CT chuy n d li u ô nh 40H (RAM n i) đ n ô nh 2000H (RAMế ể ữ ệ ớ ộ ế ớngoài) Làm theo 2 cách (đ nh đ a ch ô nh tr c ti p và đ nh đ a ch ô nh giánị ị ỉ ớ ự ế ị ị ỉ ớ

2.19 Vi t CT chuy n d li u ô nh 2001H (RAM ngoài) vào ô nh 41H (RAMế ể ữ ệ ớ ớ

n i) Làm theo 2 cách (đ nh đ a ch ô nh tr c ti p và đ nh đ a ch ô nh giánộ ị ị ỉ ớ ự ế ị ị ỉ ớ

Trang 15

2.33 Cho m t chu i d li u g m 20 byte liên ti p trong RAM n i, b t đ u tộ ỗ ữ ệ ồ ế ộ ắ ầ ừ

đ a ch 20H Hãy vi t CT l n lị ỉ ế ầ ượt xu t các d ki u này ra Port 1.ấ ữ ệ

2.34 Gi s Port 1 đả ử ược n i đ n m t thi t b phát d li u (ví d nh 8 nútố ế ộ ế ị ữ ệ ụ ư

nh n) Hãy vi t CT nh n liên ti p 10 byte d li u t thi t b phát này và ghiấ ế ậ ế ữ ệ ừ ế ịvào 10 ô nh (RAM n i) liên ti p b t đ u t ô nh 50H.ớ ộ ế ắ ầ ừ ớ

Trang 16

SJMP ketthuc (la lenh nhay ngan, dieu khien chuong trinh re nhanh

delay1ms: den dia chi duoc tro den)

Trang 18

END

2.43 Vi t CT t o chu i xung vuông có f = 10 Hz t i chân P1.4 (Xtal 12 MHz).ế ạ ỗ ạ2.44 Vi t CT t o chu i xung vuông có f = 10 Hz và có chu kỳ làm vi c D =ế ạ ỗ ệ25% t i chân P1.5 (Xtal 12 MHz).ạ

Các phép toán

2.45 Cho m t chu i s 8 bit không d u trong RAM n i g m 10 s b t đ u tộ ỗ ố ấ ộ ồ ố ắ ầ ừ

ô nh 30H Hãy vi t CT con c ng chu i s này và ghi k t qu vào ô nh 2FHớ ế ộ ỗ ố ế ả ớ(gi s k t qu nh h n ho c b ng 255).ả ử ế ả ỏ ơ ặ ằ

2.46 Cho m t chu i s 8 bit không d u trong RAM n i g m 10 s b t đ u tộ ỗ ố ấ ộ ồ ố ắ ầ ừ

ô nh 30H Hãy vi t CT con c ng chu i s này và ghi k t qu vào ô nhớ ế ộ ỗ ố ế ả ớ

2EH:2FH (ô nh 2EH ch a byte cao c a k t qu và ô nh 2FH ch a byte th pớ ứ ủ ế ả ớ ứ ấ

lap: ADD A,@R0

JNC boqua ; (nhay neu co carry flag nho khong duoc set bang 1)

2.47 Cho m t chu i s 16 bit không d u trong RAM n i g m 10 s b t đ u tộ ỗ ố ấ ộ ồ ố ắ ầ ừ

ô nh 30H theo nguyên t c ô nh có đ a ch nh h n ch a byte cao và ô nh cóớ ắ ớ ị ỉ ỏ ơ ứ ớ

đ a ch l n h n ch a byte th p (Ví d : byte cao c a s 16 bit đ u tiên đị ỉ ớ ơ ứ ấ ụ ủ ố ầ ượ c

c t t i ô nh 30H và byte th p c a s 16 bit đ u tiên đấ ạ ớ ấ ủ ố ầ ượ ấ ạc c t t i ô nh 31H).ớHãy vi t CT con c ng chu i s này và c t k t qu vào ô nh 2EH:2FH.ế ộ ỗ ố ấ ế ả ớ

2.48 Vi t CT con l y bù 2 s 16 bit ch a trong R2:R3.ế ấ ố ứ

Trang 19

So sánh

2.49 Cho hai s 8 bit, s th 1 ch a trong (30H), s th 2 ch a trong (31H).ố ố ứ ứ ố ứ ứ

Vi t CT con so sánh hai s này N u s th 1 l n h n ho c b ng s th 2 thìế ố ế ố ứ ớ ơ ặ ằ ố ứset c F0, n u ngờ ế ượ ạc l i thì xóa c F0.ờ

ORG 0000H

MOV A,30H

CJNE A,31H,ke hoac CJNE A,31H,$+3

ke: JNC lonhoacbang JNC lonhoacbang

s th 2 thì set c F0, n u ngố ứ ờ ế ượ ạc l i thì xóa c F0.ờ

2.51 Cho m t chu i ký t dộ ỗ ự ướ ại d ng mã ASCII trong RAM n i, dài 20 byte,ộ

b t đ u t đ a ch 50H Vi t CT xu t các ký t in hoa có trong chu i này raắ ầ ừ ị ỉ ế ấ ự ỗPort 1 Bi t r ng mã ASCII c a ký t in hoa là t 65 (ch A) đ n 90 (ch Z).ế ằ ủ ự ừ ữ ế ữORG 0000H

MOV R0,#50H

MOV R3,#20

lap: MOV A,@R0

CJNE A,#65,ke hoac CJNE A,#65,$+3

ke: JC boqua JC boqua

CJNE A,#91,ke2 CJNE A,#91,$+3

ke2: JNC boqua JNC boqua

Trang 20

RAM ngoài, b t đ u t đ a ch 0000H Bi t r ng chu i này k t thúc b ng kýắ ầ ừ ị ỉ ế ằ ỗ ế ằ

t CR (có mã ASCII là 0DH) và không ghi ký t này vào RAM.ự ự

2.55 Cho m t chu i ký t dộ ỗ ự ướ ại d ng mã ASCII trong RAM n i, dài 20 byte,ộ

b t đ u t đ a ch 50H Vi t CT đ i các ký t in hoa có trong chu i này thànhắ ầ ừ ị ỉ ế ổ ự ỗ

ký t thự ường Bi t r ng mã ASCII c a ký t thế ằ ủ ự ường b ng mã ASCII c a kýằ ủ

ORG 0000H

Trang 21

2.59 Cho m t chu i d li u dộ ỗ ữ ệ ướ ại d ng s không d u trong RAM ngoài, b tố ấ ắ

đ u t đ a ch 0100H và đ dài chu i là n i dung ô nh 00FFH Vi t CT đ mầ ừ ị ỉ ộ ỗ ộ ớ ế ế

s s ch n (chia h t cho 2) có trong chu i và c t vào ô nh 00FEH.ố ố ẵ ế ỗ ấ ớ

HD: S ch n có LSB=0ố ẵ

2.60 Cho m t chu i d li u dộ ỗ ữ ệ ướ ại d ng s không d u trong RAM ngoài, b tố ấ ắ

đ u t đ a ch 0100H và đ dài chu i là n i dung ô nh 00FFH Vi t CT ghiầ ừ ị ỉ ộ ỗ ộ ớ ếcác s ch n (xem s 0 là s ch n) có trong chu i vào RAM n i b t đ u t đ aố ẵ ố ố ẵ ỗ ộ ắ ầ ừ ị

ch 30H cho đ n khi g p s l thì d ng.ỉ ế ặ ố ẻ ừ

2.61 Vi t CT con có nhi m v l y 1 byte t 1 chu i data g m 20 byte c tế ệ ụ ấ ừ ỗ ồ ấ trong Ram ngoài b t đ u t đ a ch 2000H và xu t ra Port1 M i l n g i CTắ ầ ừ ị ỉ ấ ỗ ầ ọcon ch xu t 1 byte, l n g i k thì xu t byte k ti p, l n g i th 21 thì l iỉ ấ ầ ọ ế ấ ế ế ầ ọ ứ ạ

Trang 22

Bi t r ng sóng vuông t i P1.7 ch m pha h n sóng vuông t i P1.6 100(s (Xtalế ằ ạ ậ ơ ạ12MHz).

3.10 Vi t CT dùng Timer đi u khi n đèn giao thông t i m t giao l Cho bi tế ề ể ạ ộ ộ ế

4.1 Vi t CT đ c 1 chu i data ch a trong RAM n i t đ a ch 30H đ n 50H vàế ọ ỗ ứ ộ ừ ị ỉ ế

xu t ra 1 thi t b (ví d nh màn hình tinh th l ng LCD) đấ ế ị ụ ư ể ỏ ược n i v i portố ớ

n i ti p c a 8051 (ch đ UART 8 bit, 2400 baud) Cho Xtal 11,059 MHz.ố ế ủ ế ộORG 0000H

Ngày đăng: 18/11/2014, 22:16

TỪ KHÓA LIÊN QUAN

w