Code lập trình vi điều khiển 8051 cơ bản ASM

44 7.4K 284
Code lập trình vi điều khiển 8051 cơ bản ASM

Đ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

đây là các bước lập trình cơ bản dành cho người mới học vi xử lý 8051

1 Code lập trình Vi Điều Khiển 8051 bản ASM Những code lập trình asembly đơn giản này các bạn xem sẽ dễ hiểu điều gì thắc mắc các bạn cứ hỏi nhé. Simple is the best I.PHẦN LED ĐƠN LỆNH MOV 1.Chương trình led sáng nhấp nháy port 1. Mã: ORG 00H MAIN: MOV P1,#00H;led tắt hết CALL DELAY MOV P1,#0FFH;led sáng hết CALL DELAY JMP MAIN DELAY:;CT tạo trễ MOV R0,#50 LAP: NOP NOP DJNZ R0,LAP RET END 2.Chương trình Led sáng dần port 1 2 Mã: ORG 00H MAIN: MOV P1,#00000000B;Trạng thái led tắt hết CALL DELAY MOV P1,#00000001B;Led p1.0 sáng CALL DELAY MOV P1,#00000011B;led p1.0,p1.1 sáng CALL DELAY MOV P1,#00000111B;led p1.0,p1.1,p1.2 sáng CALL DELAY MOV P1,#00001111B CALL DELAY MOV P1,#00011111B CALL DELAY MOV P1,#00111111B CALL DELAY MOV P1,#01111111B CALL DELAY MOV P1,#11111111B CALL DELAY JMP MAIN DELAY: MOV R0,#200 LAP: MOV R1,#200 LAP2: NOP NOP NOP DJNZ R1,LAP2 DJNZ R0,LAP RET END 3.Chương trình led tắt dần port 1 Mã: ORG 00H MAIN: MOV P1,#11111111B;Trạng thái led sáng hết CALL DELAY MOV P1,#11111110B;Led p1.0 tắt CALL DELAY MOV P1,#11111100B;led p1.0 tắt,p1.1 tắt CALL DELAY MOV P1,#11111000B CALL DELAY MOV P1,#11110000B CALL DELAY MOV P1,#11100000B CALL DELAY MOV P1,#11000000B CALL DELAY MOV P1,#10000000B 3 CALL DELAY MOV P1,#00000000B CALL DELAY JMP MAIN DELAY: MOV R0,#200 LAP: MOV R1,#200 LAP2: NOP NOP NOP DJNZ R1,LAP2 DJNZ R0,LAP RET END 4.Sáng dần tắt dần theo chiều ngược lại: Mã: ORG 00H MAIN: CALL CON1 CALL CON2 JMP MAIN CON1:;SANG DAN MOV P1,#00000000B CALL DELAY MOV P1,#10000000B CALL DELAY MOV P1,#11000000B CALL DELAY MOV P1,#11100000B CALL DELAY MOV P1,#11110000B CALL DELAY MOV P1,#11111000B CALL DELAY MOV P1,#11111100B CALL DELAY MOV P1,#11111110B CALL DELAY MOV P1,#11111111B CALL DELAY RET CON2:;TAT DAN MOV P1,#11111111B CALL DELAY MOV P1,#01111111B CALL DELAY MOV P1,#00111111B CALL DELAY MOV P1,#00011111B 4 CALL DELAY MOV P1,#00001111B CALL DELAY MOV P1,#00000111B CALL DELAY MOV P1,#00000011B CALL DELAY MOV P1,#00000001B CALL DELAY MOV P1,#00000000B CALL DELAY RET DELAY: MOV R0,#200 LAP: MOV R1,#200 LAP2: NOP NOP NOP DJNZ R1,LAP2 DJNZ R0,LAP RET END II. PHẦN LED ĐƠN LỆNH QUAY. 5 Mã: ORG 0000H MAIN:; Bat dau chuong trinh chinh CALL CTA;Goi chuong trinh con sang dan tu tren xuong duoi CALL CTB;Goi chuong trinh con sang dan tu duoi len tren JMP MAIN ; chuong trinh con sang dan tu tren xuong duoi CTA: MOV A,#00H;Thanh ghi A la 00000000 LAP:;Nhan cua vong lap SETB C;Thit lap co nho C len 1 RLC A;Quay trai co C co nho MOV P2,A;Dua gia tri vao P2 CALL DELAY;Tao thoi gian tre de thay hieu ung CJNE A,#0FFH,LAP;Kiem tra neu chua bang 11111111 thi nhay den nhan LAP RET ; chuong trinh con sang dan tu duoi len tren CTB: MOV A,#00H; dua gia tri 00000000 vao thanh ghi tich luy A LAP1: ; nhan vong lap SETB C ; Thiet lap co nho C len 1 RRC A ; quay phai thanh ghi A co co nho MOV P2,A ; chuyen gia tri thanh ghi A vua quay xuat ra Port 2 CALL DELAY;goi chuong trinh tre de thay hieu ung led CJNE A,#0FFH,LAP1;Kiem tra thanh ghi A da bang 11111111 chua, neu chua bang thin hay den LAP1 RET ; Chuong trinh tao thoi gian tre DELAY: MOV R0,#200 LOOP: MOV R1,#210 LOOP1: NOP DJNZ R1,LOOP1 DJNZ R0,LOOP RET END III. LED ĐƠN LẪY BẢNG MÃ 6 Mã: ORG 00H MAIN: CALL CTA; sang dan qua trai CALL CTB; sang dan qua phai JMP MAIN ;***************************************** CTA: MOV R0,#00H ;Bien dem so trang thai hien thi MOV DPTR,#MALED ;Nap di chi vung du lieu LABEL: MOV A,R0 ; Chuyen gia tri thanh ghi R0 vao thanh ghi A MOVC A,@A+DPTR ; Lay du lieu tu vung nho MOV P2,A ;Hien thi CALL DELAY INC R0 ; Lay du lieu ke tiep CJNE R0,#9,LABEL ; Kiem tra so du trang thai hien thi RET ;***************************************** CTB: MOV R0,#00H MOV DPTR,#MALED1 LABEL1: MOV A,R0 MOVC A,@A+DPTR MOV P2,A CALL DELAY 7 INC R0 CJNE R0,#9,LABEL1 RET ;****************************************** MALED: DB 00H,01H,03H,07H,0FH,1FH,3FH,7FH,0FFH; co 9 ma led CTA ;00000000b,00000001b,00000011b,……… MALED1: DB 00H,80H,0C0H,0E0H,0F0H,0F8H,0FCH,0FEH,0FFH; 9 ma led CTB ; Chuong trinh tao thoi gian tre DELAY: MOV R3,#200 LOOP: MOV R2,#250 LOOP1: NOP DJNZ R2,LOOP1 DJNZ R3,LOOP RET END IV. DÙNG IC 74HC595 Mã: ORG 00H MAIN: CALL CTA;goi chuong trinh con CALL CTB CALL CTC JMP MAIN CTA: 8 ;sang dan led MOV R1,#8;quet 8 led LAP: SETB P2.0;thiet lap bit chan data len 1 cho led sang CALL DELAY SETB P2.1;tao xung mo cho bit vao chan SH CALL DELAY CLR P2.1;tao xung dong khong cho bit vao chan SH CALL DELAY SETB P2.2;tao xung mo ST cho bit xuat ra cac chan led CALL DELAY CLR P2.2;tao xung dong ST khong cho bit xuat ra cac chan led CALL DELAY DJNZ R1,LAP ;tat dan led MOV R1,#8 LAP1: CLR P2.0;thiet lap bit chan data len 1 cho led sang CALL DELAY SETB P2.1 CALL DELAY CLR P2.1 CALL DELAY SETB P2.2 CALL DELAY CLR P2.2 CALL DELAY DJNZ R1,LAP1 RET CTB:;sang 1 led chay MOV R4,#3 NHAY: SETB P2.0 CALL DELAY SETB P2.1 CALL DELAY CLR P2.1 SETB P2.2 CALL DELAY CLR P2.2 CALL DELAY MOV R1,#7 LAP2: CLR P2.0 SETB P2.1 CLR P2.1 SETB P2.2 CLR P2.2 CALL DELAY CALL DELAY DJNZ R1,LAP2 DJNZ R4,NHAY RET 9 CTC:;sang nhap nhay led MOV R4,#3 NHAY1: MOV R1,#8 LAP3: SETB P2.0 SETB P2.1 CLR P2.1 DJNZ R1,LAP3 SETB P2.2 CLR P2.2 CALL DELAY MOV R1,#8 LAP4: CLR P2.0 SETB P2.1 CLR P2.1 DJNZ R1,LAP4 SETB P2.2 CLR P2.2 CALL DELAY DJNZ R4,NHAY1 RET DELAY:;chuong trinh tao tre MOV R0,#200 LOOP: MOV R2,#200 LOOP1: DJNZ R2,LOOP1 DJNZ R0,LOOP RET END Chúc các bạn thành công? Chủ đề cùng chuyên mục o mở cửa bằng nhập phím và hiển thị LCD o Tuyển tập các Project về lịch vạn niên o Vi Xử Lý 89c51 o Mạch Giám Sát Phòng Thí Nghiệm o Mô phỏng giao tiếp giữa Chia sẻ Code l?p tr 10 ADC0804 với o Nan giải nguồn chuẩn cho ADC o Code cho led ma trận 2 màu o AE điện tử giúp mình code cube 555 o Bác nào giúp mình về led 7 thanh đếm o Code lịch vạn niên dinh88hua, trungns, Phan Văn Ân và 7 others thích bài này. #1 2. 3. Đăng 30/6/13#2 ChipKool Moderator Số bài viết: 870 Đã được thích: 956 Tài khoản 203,778 xu LED 7 THANH 1. phương pháp thủ công và lấy mã: [...]... DON VI ; LAY MA LED HANG DON VI 17 MOV P2,A ; XUAT VA HIEN THI TREN LED 7 DOAN SETB P3.1 CLR P3.1 CALL DELAY RET DELAY: ; THOI GIAN TRE MOV R2,#250 STOP: MOV R3,#250 STOP2: DJNZ R3,STOP2 DJNZ R2,STOP RET MALED: ; MA LED DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H END Chúc các bạn ngon miệng ^^ dinh88hua, voloi_55, chulinhtre và 3 others thích bài này #2 4 Đăng 30/6/13#3 ChipKoolModerator Số bài vi t:... MOVC A,@A+DPTR MOV P2,A CALL DELAY DJNZ R7,QUET RET MALED:DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H DELAY: MOV R2,#150 LOOP: MOV R1,#200 LOOP1: DJNZ R1,LOOP1 DJNZ R2,LOOP RET END 3 Phím điều khiển Role + động đơn giản 23 Mã: ORG 0000H MAIN: JNB P1.0,THUAN_R JNB P1.1,NGHICH_R JNB P1.2,THUAN_H JNB P1.3,NGHICH_H JNB P1.4,STOP JMP MAIN THUAN_R: SETB P3.0 CLR P3.1 JMP MAIN NGHICH_R: CLR P3.0 SETB... 0C3H,0BDH,0C3H,83H,0F7H,0EFH,0DFH,83H 0FFH,83H,7DH,7DH,7DH,83H,0FFH,0FFH ;ON ; S0 0FFH,0FFH,0EBH,0EBH,0EBH,0EBH,0FFH,0FFH ;KT = 0FFH,0F7H,0F7H,0C1H,0F7H,0F7H,0FFH,0FFH ;KT + END 3 Matrix phím + Led 7 thanh 33 Mã: ;chương trình code asm ;Design By Chipkool_online ;SV ĐH Kinh tế - Kỹ Thuật công Nghiệp ORG 00H MAIN: ;QUET HANG 1 MOV P3,#11111110B JNB P3.4,PHIM7 JNB P3.5,PHIM8 JNB P3.6,PHIM9 JNB P3.7,PHIM10 ;QUET HANG 2 MOV P3,#11111101B... RA PHAN CHUC MOVC A,@A+DPTR ; LAY MA LED HANG CHUC MOV P2,A ; XUAT DU LIEU RA PORT SETB P3.0 ; CHO PHEP HIEN THI CALL DELAY CLR P3.0 MOV A,B MOVC A,@A+DPTR ; LAY GIA TRI HANG DON VI MOV P2,A SETB P3.1 ;LAY MA LED HANG DON VI ; XUAT DU LIEU ; CHO PHEP HIEN THI RA LED CALL DELAY CLR P3.1 DJNZ R7,QUET RET DELAY: MOV R1,#150 LAPA: MOV R2,#20 LAPB: ;THOI GIAN TRE 15 DJNZ R2,LAPB DJNZ R1,LAPA RET ORG 500... R0,#200 LOOP: MOV R1,#250 LOOP1: NOP DJNZ R1,LOOP1 DJNZ R0,LOOP RET END Chúc các bạn ngon miệng xỉa răng^^ log867, voloi_55, chulinhtre và 3 others thích bài này #3 5 Đăng 30/6/13#4 ChipKoolModerator Số bài vi t: 870 Đã được thích: 956 Tài khoản 203,778 xu 1 MATRIX CHẠY CHỮ: 25 Mã: ORG 00H MAIN: MOV DPTR,#MASO1 CALL CTHT LJMP MAIN CTHT:;CHUONG TRINH HIEN THI MOV R7,#64;Moi chu la 1 ma tran 8x8, co 8 chu nhu . 1 Code lập trình Vi Điều Khiển 8051 cơ bản ASM Những code lập trình asembly đơn giản này các bạn xem sẽ dễ hiểu có điều gì thắc mắc các bạn cứ hỏi nhé. Simple. niên o Vi Xử Lý 89c51 o Mạch Giám Sát Phòng Thí Nghiệm o Mô phỏng giao tiếp giữa Chia sẻ Code l?p tr 10 ADC0804 với o Nan giải nguồn chuẩn cho ADC o Code cho led ma trận 2 màu o AE cơ. code cube 555 o Bác nào giúp mình về led 7 thanh đếm o Code lịch vạn niên dinh88hua, trungns, Phan Văn Ân và 7 others thích bài này. #1 2. 3. Đăng 30/6/13#2 ChipKool Moderator Số bài vi t:

Ngày đăng: 11/05/2014, 15:42

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan