Vẽ mạch đèn giao thông hiện số | Lập trình VĐK 8951
Вставка
- Опубліковано 19 вер 2024
- Link tải phần mềm proteus 8.8:
www.mediafire.c...
Link tải phần mềm mikro c:
www.mediafire.c...
Code:
DEM EQU R2
DEM1 EQU R3
DEM2 EQU R4
XANH EQU 16H
VANG EQU 17H
DO EQU 18H
DEN EQU P1
L7DOAN EQU P2
QUET EQU P3
ORG 0000h
JMP MAIN
; ngắt Timer0 với T= 50.000 us = 50ms
ORG 000BH
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
INC DEM ; tăng biến đếm lên 1
RETI ; 7 đoạn hiển thị: 20*T=1 giây
MAIN:
MOV TMOD,#01
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
CLR TF0
SETB TR0
MOV IE,#82H
BATDAU:
MOV DEN,#00100001B ; sáng DX1, D2
MOV XANH,#17
MOV VANG,#3
MOV DO,#20
MOV DEM1,XANH
MOV DEM2,DO
H1:
MOV DEM,#0
LCALL BCD_HEX
LB1:
LCALL HIEN_THI
CJNE DEM,#20,LB1
DEC DEM1
DEC DEM2
CJNE DEM1,#0,H1
MOV DEN,#00100010B; sáng DV1, D2
MOV DEM1,VANG
H2:
MOV DEM,#0
LCALL BCD_HEX
LB2:
LCALL HIEN_THI
CJNE DEM,#20,LB2
DEC DEM1
DEC DEM2
CJNE DEM1,#-1,H2
MOV DEN,#00001100B ; sáng DD1, X2
MOV DEM1,DO
MOV DEM2,XANH
H3: MOV DEM,#0
LCALL BCD_HEX
LB3: LCALL HIEN_THI
CJNE DEM,#20,LB3
DEC DEM1
DEC DEM2
CJNE DEM2,#0,H3
MOV DEN,#00010100B ; sáng DD1, V2
MOV DEM2,VANG
H4: MOV DEM,#0
LCALL BCD_HEX
LB4: LCALL HIEN_THI
CJNE DEM,#20,LB4
DEC DEM1
DEC DEM2
CJNE DEM2,#-1,H4
JMP BATDAU
BCD_HEX:
MOV A,DEM1
MOV B,#10
DIV AB
MOV 12H,A
MOV 13H,B
MOV A,DEM2
MOV B,#10
DIV AB
MOV 14H,A
MOV 15H,B
RET
HIEN_THI: MOV DPTR,#MA7DOAN
MOV A,12H
MOVC A,@A+DPTR
MOV L7DOAN,A
MOV QUET,#0FEH
LCALL DELAY
MOV QUET,#0FFH
MOV A,13H
MOVC A,@A+DPTR
MOV L7DOAN,A
MOV QUET,#0FDH
LCALL DELAY
MOV QUET,#0FFH
MOV A,15H
MOVC A,@A+DPTR
MOV L7DOAN,A
MOV QUET,#0F7H
LCALL DELAY
MOV QUET,#0FFH
DELAY:
MOV R6,#150
DJNZ R6,$
RET
MA7DOAN:
DB 0C0H,0F9H,0A4H, 0B0H,99H,
92H,82H,0F8H,80H,90H
END
thầy làm video viết và hướng dẫn các lệnh code đi thầy
Thầy cho xem xin file hex với
Dưới video có file code .asm; em dùng file này biên dịch sang file .hex nha
ông nào cop code của thầy thể nào cũng không hiện số 2 haha thầy chơi khó các bạn thế
Em đang gặp khó khăn với tủ đk giao thông của trung quốc thày có thể tư vấn đúp Em được không ạ . Em xin được hậu tạ
Khó là khó như thế nào em, em cứ nói có gì tôi trao đổi nếu trong khả năng tôi nha. Hoặc có thể trao đổi qua email hoangtamvl@gmail.com nếu em muốn.
thầy cho e xin lưu đồ thuật toán ạ
thầy ơi cho em hỏi .....tại sao khi em mô phỏng trên phần mềm với code như này..nó bị lỗi led 7 đoạn bên cột đèn 2 ..nó chỉ hiển thị hàng đơn vị nó ko hiển thị hàng chục là do bị sao vậy ạ
Em kiểm tra dây kết nối ổn chưa nha, nếu ổn kiểm tra lại tín hiệu (dữ liệu) điều khiển led chục nha.
Bạn kiếm đc lỗi đó chưa cho mình xin với mình kh kiếm kh ra
Ở phần hiển thị nạp thiếu thanh ghi 14h vào nên nó k hiển thị hết.
@@levuduy9142 bạn chỉnh được lỗi led cột 2 chưa bạn cho mình xin tham khảo với
thầy cho em xin file hex được không ạ
thầy có thể dịch code cho em đc ko
thầy có đồ án cái này ko ạ
Bạn có thể làm mạch theo hướng dẫn như video, tham khảo thêm tài liệu về vi điều khiển nữa là ok
Thầy cho em xin lưu đồ thuật toán với ạ😢
Xem link bên dưới
drive.google.com/file/d/1S8BDR_QPhG0Q9kEDojSoHeqDJc-537gT/view?usp=sharing
thế cái mikrocc làm j vậy thầy
Đây là ngôn ngữ lập trình c cho một số dòng vi điều khiển, sau khi cài mình viết chương trình tại đây và biên dịch để nạp vào vi điều khiển bạn nhé.
@@vht247 bên thầy có viết phương trình chưa ạ có gởi em với thầy ơi
@@vany1063 có code kèm theo video đó em.
thầy cho em xin code tham khảo ạ
Có ở phần mô tả phía dưới video nha bạn
Cho em xin file hex với ạ
Thầy ơi sao e lấy code thầy dán vào bị lỗi ạ?
Kiểm tra lại các dòng lệnh, có thể copy bị nhảy dòng nha
drive.google.com/file/d/1S8BDR_QPhG0Q9kEDojSoHeqDJc-537gT/view?usp=sharing
Em xin code với được ko ạ
Gửi bạn:
DEM EQU R2
DEM1 EQU R3
DEM2 EQU R4
XANH EQU 16H
VANG EQU 17H
DO EQU 18H
DEN EQU P1
L7DOAN EQU P2
QUET EQU P3
ORG 0000h
JMP MAIN
; ngắt Timer0 với T= 50.000 us = 50ms
ORG 000BH
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
INC DEM ; tăng biến đếm lên 1
RETI ; 7 đoạn hiển thị: 20*T=1 giây
MAIN:
MOV TMOD,#01
MOV TH0,#HIGH(-50000)
MOV TL0,#LOW(-50000)
CLR TF0
SETB TR0
MOV IE,#82H
BATDAU:
MOV DEN,#00100001B ; sáng DX1, D2
MOV XANH,#17
MOV VANG,#3
MOV DO,#20
MOV DEM1,XANH
MOV DEM2,DO
H1:
MOV DEM,#0
LCALL BCD_HEX
LB1:
LCALL HIEN_THI
CJNE DEM,#20,LB1
DEC DEM1
DEC DEM2
CJNE DEM1,#0,H1
MOV DEN,#00100010B; sáng DV1, D2
MOV DEM1,VANG
H2:
MOV DEM,#0
LCALL BCD_HEX
LB2:
LCALL HIEN_THI
CJNE DEM,#20,LB2
DEC DEM1
DEC DEM2
CJNE DEM1,#-1,H2
MOV DEN,#00001100B ; sáng DD1, X2
MOV DEM1,DO
MOV DEM2,XANH
H3: MOV DEM,#0
LCALL BCD_HEX
LB3: LCALL HIEN_THI
CJNE DEM,#20,LB3
DEC DEM1
DEC DEM2
CJNE DEM2,#0,H3
MOV DEN,#00010100B ; sáng DD1, V2
MOV DEM2,VANG
H4: MOV DEM,#0
LCALL BCD_HEX
LB4: LCALL HIEN_THI
CJNE DEM,#20,LB4
DEC DEM1
DEC DEM2
CJNE DEM2,#-1,H4
JMP BATDAU
BCD_HEX:
MOV A,DEM1
MOV B,#10
DIV AB
MOV 12H,A
MOV 13H,B
MOV A,DEM2
MOV B,#10
DIV AB
MOV 14H,A
MOV 15H,B
RET
HIEN_THI: MOV DPTR,#MA7DOAN
MOV A,12H
MOVC A,@A+DPTR
MOV L7DOAN,A
MOV QUET,#0FEH
LCALL DELAY
MOV QUET,#0FFH
MOV A,13H
MOVC A,@A+DPTR
MOV L7DOAN,A
MOV QUET,#0FDH
LCALL DELAY
MOV QUET,#0FFH
MOV A,15H
MOVC A,@A+DPTR
MOV L7DOAN,A
MOV QUET,#0F7H
LCALL DELAY
MOV QUET,#0FFH
DELAY:
MOV R6,#150
DJNZ R6,$
RET
MA7DOAN:
DB 0C0H,0F9H,0A4H, 0B0H,99H,
92H,82H,0F8H,80H,90H
END
@@vht247 dạ em cảm ơn ạ