tailieunhanh - Microcontroller 8051 - Phần 2: Microprocessors course

Nội dung: Lập trình I/O, xử lý bit; Tạo trễ bằng phần mềm và tính toán thời gian trễ; Lập trình Timer/Counter; Lập trình ngắt; Cổng nối tiếp | Phần 2 Microprocessors course Phạm Thế Duy (phamtheduy@) Microcontroller 8051 Nội dung: Lập trình I/O, xử lý bit Tạo trễ bằng phần mềm và tính toán thời gian trễ. Lập trình Timer/Counter -Timers - Counters Lập trình ngắt Cổng nối tiếp Lập trình xử lý bit I/O Lật trạng thái các bit P1 có thể thực hiện bằng 3 cách: Cách 1: gởi dữ liệu ra P1 bằng ACC: BACK: MOV A,#55H ;A=01010101B MOV P1,A ACALL DELAY MOV A,#0AAH ;A=10101010B MOV P1,A ACALL DELAY SJMP BACK Cách 2: Truy cập trực tiếp P1: BACK: MOV P1,#55H ;P1=01010101B ACALL DELAY MOV P1,#0AAH ;P1=10101010B ACALL DELAY SJMP BACK Sử dụng đặc tính Read-modify-write: MOV P1,#55H ;P1=01010101B AGAIN: XRL P1,#0FFH ACALL DELAY SJMP AGAIN Lệnh XRL P1,#0FFH thực hiện phép toán EX-OR P1 và FFH (làm lật trạng thái P1.) Xử lý BIT Đôi khi cần truy cập chỉ 1 hoặc 2 bit của một cổng 8 bit Bảng mô tả tên các chân của các cổng. Ví dụ: Viết chương . | Phần 2 Microprocessors course Phạm Thế Duy (phamtheduy@) Microcontroller 8051 Nội dung: Lập trình I/O, xử lý bit Tạo trễ bằng phần mềm và tính toán thời gian trễ. Lập trình Timer/Counter -Timers - Counters Lập trình ngắt Cổng nối tiếp Lập trình xử lý bit I/O Lật trạng thái các bit P1 có thể thực hiện bằng 3 cách: Cách 1: gởi dữ liệu ra P1 bằng ACC: BACK: MOV A,#55H ;A=01010101B MOV P1,A ACALL DELAY MOV A,#0AAH ;A=10101010B MOV P1,A ACALL DELAY SJMP BACK Cách 2: Truy cập trực tiếp P1: BACK: MOV P1,#55H ;P1=01010101B ACALL DELAY MOV P1,#0AAH ;P1=10101010B ACALL DELAY SJMP BACK Sử dụng đặc tính Read-modify-write: MOV P1,#55H ;P1=01010101B AGAIN: XRL P1,#0FFH ACALL DELAY SJMP AGAIN Lệnh XRL P1,#0FFH thực hiện phép toán EX-OR P1 và FFH (làm lật trạng thái P1.) Xử lý BIT Đôi khi cần truy cập chỉ 1 hoặc 2 bit của một cổng 8 bit Bảng mô tả tên các chân của các cổng. Ví dụ: Viết chương trình thực hiện các công việc sau:. (a) Giám sát ngõ vào cho đến khi gặp mức cao. (b) Khi mức cao, ghi giá trị 45H tới P0 và (c) Tạo 1 xung (H-to-L) trên đường . Giải: SETB ;khởi động là ngõ vào MOV A,#45H ;A=45H AGAIN: JNB ;ngưng lặp khi MOV P0,A ;gởi A tới P0 SETB ; = 1 CLR ; =0 Chú ý: 1. JNB: nhảy nếu bit bằng 0(nhảy nếu = 0 ) 2. Trạng thái xung H-to-L tạo ra bằng các lệnh SETB và CLR. Địa chỉ bit của các cổng D7 D6 D5 D4 D3 D2 D1 D0 Port Bit P3 P2 P1 P0 Tạo trễ bằng lệnh và tính toán thời gian trễ Chu kỳ máy (Machine cycle) Để CPU thực hiện xong một lệnh cần tốn một số chu kỳ clock nhất định (tuỳ theo từng lệnh). Trong các hệ thống họ 8051 12 chu kỳ clock thực hiện một .

TỪ KHÓA LIÊN QUAN
crossorigin="anonymous">
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.