thank anh nhiều lắm em đang học về con IC 8501, nhưng vẫn còn lơ mơ quá mong anh hướng dẫn nhiều hơn và share thêm tài liêu nhé.
Thông báo
Collapse
No announcement yet.
Tổng hợp các đề tài cho 8051-ASM-Keil(Học tập)
Collapse
X
-
Chào chủ toppic! mình có 1 cái rất mong chủ toppic và các bạn giúp đỡ.
Đồng hồ Led Matrix 16x64 giúp đỡ !
Mình là người mới tham gia diễn đàn cũng là người mới tiếp cận về vdk mong các bạn và các cao thủ trong diễn đang giúp đỡ,
chẳng là e rất thích 1 cái đồng hồ số hiển thị ra led matrix và có lấy của 1 bác nào đó trên diễn đang tài liệu liệu về tham khảo nhưng ko hiểu lắm về 1 số chỗ trong sơ đồ và khi cho chạy mô phỏng trong proteus thì chạy sai số nhiều quá, e gửi sơ đồ và codo của tài liệu lên các bạn và các cao thủ giúp e nhé:
1, e ko hiểu đầu ra A-B-C-D của con 89C52 đưa vào chỗ nào nữa
2, chỗ Led matrix bị thừa 2 con ở hàng hiển thị giờ vậy bỏ đi thì có sao ko ?
3, ở hàng led hiển thị ngày và tháng cho chạy đi chạy lại thì phải làm thế nào ?
Rất mong các bạn và các cao thủ trong diễn đan giúp đỡ e, quả thật là e rất mê điện tử nhưng kiến thức thì có hạn.
Rất mong được giúp đỡ,
Cảm ơn rất nhiều,
dưới đây là đường link: http://www.mediafire.com/myfiles.php
Comment
-
Em thì đang làm về con DS1307 mà chưa hiểu lắm về chỗ ngắt ngoài để chỉnh thời gian cho con 1307 anh chị nào có phần này xin up lên giúp em, em xài 3 nut nhấn, 1 nút mode để chọn thiết lập thời gian cho giờ phút hay giây, 2 nút: tăng và giảm
Comment
-
Hiện em đang làm bài tập lớn. Thầy yêu cầu: thiết kế bộ giám sát dữ liệu radar sử dụng VDK 8051 và 8251. Đại khái là gồm 2 phần: viết VB trên máy tính để xử lý dữ liệu radar để đưa ra VDK bằng 2 đường khác nhau, VDK sẽ xử lý xem đường nào tín hiệu tốt hơn or ko bị lỗi sẽ chọn và đưa trở lại máy tính. Thực sự là em chưa hình dung được mình phải làm gì nữa (em còn gà lắm). Mọi người có thể tư vấn cho em với được ko, nếu được có thể cho em xin sơ đồ mạch phần VDK được không ạ. Em cảm ơn rất nhiều.
Có ai ở Đà Nẵng ko vậy, cho em thỉnh giáo với
Comment
-
Nội dung đề tài em cần làm là:
- điểu khiển ổn định tốc độ động cơ (theo nguyên lý điều khiển PID) (bắt buộc)
- hiển thị tốc độ (bắt buộc)
- giao tiếp bộ điều khiển với máy tính (tùy chọn)
Em có thể thêm các tính năng cho bộ điều khiển, tùy theo khả năng.
vậy có bác nào có tài liệu hướng dẫn hay rành về vẫn đề này vui lòng chỉ em với
cám ơn tất cả mọi người
Comment
-
Các bác ơi, em đang làm đo điện áp 8 kênh ADC0808 hiển thị LCD dùng 8051 mong các bác chỉ giáo dùm. em viết bằng ASM, các bác xem góp ý dùm em với
;---------------------------------
; Init_Port LCD ;
;---------------------------------
LCD_RS BIT P2.0
LCD_RW BIT P2.1
LCD_E BIT P2.2
LCD_DATA EQU P3
ORG 00H
LJMP MAIN
ORG 100H
;************************************************* *
;**************** MAIN ***************
;************************************************* *
MAIN: LCALL DISPLAY_LCD
// LCALL Keypad
LCALL ADC
HERE:
LJMP HERE
;================================================= =====
; _____LCD_______
;================================================= =====
DISPLAY_LCD:
LCALL INIT_LCD
LCALL CLEAR_LCD
MAIN_LINE1:
MOV A,#1
MOV B,#0
LCALL CURSORPOS ;hien chu o dong 2 dau tien
MOV DPTR,#MYDATA1
MOV R2,#0
MOV R3,#9;
JUMP_MAIN_LINE1: ;HIEN CHU
MOV A,R2
MOVC A,@A+DPTR
LCALL WRITE_DATA
INC R2
DJNZ R3,JUMP_MAIN_LINE1
MAIN_LINE2:
MOV A,#2
MOV B,#0
LCALL CURSORPOS ;hien chu o dong 2 dau tien
MOV DPTR,#MYDATA2
MOV R4,#0
MOV R5,#6;
JUMP_MAIN_LINE2: ;HIEN CHU
MOV A,R4
MOVC A,@A+DPTR
LCALL WRITE_DATA
INC R4
DJNZ R5,JUMP_MAIN_LINE2
NOP
NOP
//AGAIN: SJMP AGAIN ; vong lap vo han ket thuc chuong trinh
MYDATA1 : DB "DOSONTUNG"
MYDATA2: DB "DTVT7B"
RET
;-------------------------------------------------------------------
INIT_LCD:
MOV A,#38H ;LCD 2 dong, ma tran 5x7
ACALL WRITE_COMMAND ;Goi chuong trinh co gui ma lenh
MOV A,#0EH ;Hien thi man hinh va con tro nhap nhay
ACALL WRITE_COMMAND ;Goi chuong trinh co gui ma lenh
MOV A,#01H ;Xoa hien thi
ACALL WRITE_COMMAND ;Goi chuong trinh co gui ma lenh
MOV A,#06H ;Dich con tro sang phai
ACALL WRITE_COMMAND ;Goi chuong trinh co gui ma lenh
RET
CLEAR_LCD:
CLR LCD_RS
MOV LCD_DATA,#01h
SETB LCD_E
CLR LCD_E
LCALL READY
RET
WRITE_COMMAND:
ACALL READY ;Kiem tra san sang nhan lenh?
MOV LCD_DATA,A ;xuat ma lenh
CLR LCD_RS ;RS=0: lenh
CLR LCD_RW ;R/W=0 -> ghi ra LCD
SETB LCD_E ;E=1 -> tao xung xuong
CLR LCD_E ;E=0 ,latch
RET
WRITE_DATA:
ACALL READY ;Kiem tra san sang nhan lenh?
MOV LCD_DATA,A ;xuat du lieu
SETB LCD_RS ;RS=1 for data
CLR LCD_RW ;R/W=0 to write to LCD
SETB LCD_E ;E=1 -> tao xung xuong
CLR LCD_E ;E=0, latch
RET
READY:
SETB P3.7 ;3.7: input
CLR LCD_RS ;RS=0: thanh ghi lenh
SETB LCD_RW ;R/W=1: read data
BACK:
CLR LCD_E ;E=0 -> tao canh len
SETB LCD_E ;E=1
JB P3.7,BACK ;Wait for busy flag=0
RET
CURSORPOS:
DEC ACC ; Test content of acc
JNZ LINE2 ; see acc=2
MOV A,B ; acc=1
ADD A,#080H ; row position indicates by add left-most
; address of line1 with row number
SJMP SETCUR ; Prepair set in LCD Module
LINE2:
MOV A,B ; row position indicates by add left-most
ADD A,#0C0H ; address of line2 with row number
SETCUR:
LCALL WRITE_COMMAND ; Set in LCD Module
RET
; Generating Small Delay
DELAY_SHORT:
MOV R0,#255
LOOP: DJNZ R0,LOOP;
RET
; Generating a Bigger Delay
DELAY_LONG:
MOV R1,#255
LOOP1: MOV R3,#120
LOOP2: DJNZ R3,LOOP2
DJNZ R1,LOOP1
RET
;================================================= ====
ADC:
LCALL READ_ADC
NOP
LCALL VOLTAGE_LUONGTU
NOP
LCALL BINTOASC
NOP
LCALL DISPLAY_ADC_TO_LCD
RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;DISPLAY ASCII NUMBER TO LCD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DISPLAY_ADC_TO_LCD:
LCALL CLEAR_LCD
LCALL HIENTHU_TRAM
LCALL HIENTHI_CHUC
LCALL HIENTHI_DVI
MOV DPTR,#ASCII ; CHI GOI MOT LAN KHI CAN SU DUNG VUNG NHO DU LIEU NAY
HIENTHU_TRAM:
MOV A,#2
MOV B,#0
LCALL CURSORPOS
MOV A,R2
//MOV A,34H
MOVC A,@A+ DPTR
CALL WRITE_DATA
RET
HIENTHI_CHUC:
MOV A,#2
MOV B,#1
LCALL CURSORPOS
MOV A,R1
//MOV A,33H
MOVC A,@A+DPTR
CALL WRITE_DATA
RET
HIENTHI_DVI:
MOV A,#2
MOV B,#2
LCALL CURSORPOS
MOV A,R0
//MOV A,32H
MOVC A,@A+DPTR
CALL WRITE_DATA
RET
ASCII: DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H
RET MOV DPTR,#ASCII ; CHI GOI MOT LAN KHI CAN SU DUNG VUNG NHO DU LIEU NAY
HIENTHU_TRAM:
MOV A,#2
MOV B,#0
LCALL CURSORPOS
MOV A,R2
//MOV A,34H
MOVC A,@A+ DPTR
CALL WRITE_DATA
RET
HIENTHI_CHUC:
MOV A,#2
MOV B,#1
LCALL CURSORPOS
MOV A,R1
//MOV A,33H
MOVC A,@A+DPTR
CALL WRITE_DATA
RET
HIENTHI_DVI:
MOV A,#2
MOV B,#2
LCALL CURSORPOS
MOV A,R0
//MOV A,32H
MOVC A,@A+DPTR
CALL WRITE_DATA
RET
ASCII: DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H
RET
;;;;========================= ADC ==============================:
; PORT 1 for 8bit data ;
; P 0.7 EOC intrupt to UC that conversion is complete ;
; P 0.6 SC to start conversion ;
; P 0.5 OE for read operation to get converted data for ADC toUC;
; p 0.4 for ALE ;
; p 0.0,p0.1,p0.2 for chanel selection ;
; ;
;================================================= =============
READ_ADC:
MOV P0,#0FFh
CLR P0.0 ;Address 000 to select chanel 0
CLR P0.1
CLR P0.2
CLR P0.4 ;L->H for ALE enable
SETB P0.4
SETB P0.6 ;SC=1->0
CLR P0.6 ;H->L to start conversion
CALL DELAY150US
WAIT:
JB P0.7,WAIT ;Wait for end of conversion EOC
SETB P0.5 ;OE 1->0 to enable output from ADC
CLR P0.5
MOV A,P1 ;Read data
// MOV 35H,A
SETB P0.5 ;To disable read to start next conversion
SETB P0.7
RET
DELAY150US:
MOV R3,#150
VOLTAGE_LUONGTU:
// MOV A,35H
//MOV A,P1 ; Read data
MOV B,#(5/256)
MUL AB
MOV R6,B
MOV R7,A
MOV A,R6
SWAP A
ORL A,R7
MOV 35H,A
NOP
RET
;----------------------------------------------------------------------
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;BINARY TO ASCII CONVERSION;;;;;;;;;;;;;;;
BINTOASC:
MOV A,35h ;Input from ADC
MOV B,#10 ;Divide by 10
DIV AB
MOV R0,B ;Move remainder into R0
MOV B,#10
DIV AB ;Divide quatient by 10
MOV R1,B ;Move remainder in R1
MOV R2,A ;Move quatient in R2
RET
END
Comment
-
em dong gop chut na ung ho topic nay http://http://www.mediafire.com/?k5inmi0omwj mong moi nguoi co tai lieu up len cho anh em na yahoo hoaanh_79 co gi ket ban voi nhau na
Comment
-
em đang làm mạch đo nhiệt độ adc 0809-lm35 mà sao nó chạy loạn xạ hết vậy các bác.bác nào biết chỉ giáo với. http://www.4shared.com/file/_UWyH7CV/DONHIETDO0809.html
Comment
-
Bài viết mới nhất
Collapse
-
bởi tungdqEm cần tìm sơ đồ mạch một số Main máy tính đời cao như Asrock B560M-HDV, các cao nhân chỉ giúp với. Thank!
-
Channel: Các mạch điện ứng dụng
Hôm qua, 08:27 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677nhân tiện cho mình hỏi thêm về cái phần test hipot (cao áp),là để kiểm tra độ bền cách điện giưa các cuộn dây,mà thấy thông số test thường ở mức 4kvac,vậy nếu mấy con fail đó xài bình thường vẫn dduocj phải không ạ,vì điện mình làm gì lên tới mức đó
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:52 -
-
Trả lời cho Kiểm tra biến ápbởi lamvu0677máy đo số vòng thì cty có ,mà nó to quá,tưởng có máy nào gọn gọn bỏ túi được thì tiện hơn,vì đi lại nhiều...
-
Channel: Điện tử dành cho người mới bắt đầu
10-11-2024, 08:47 -
-
bởi tmcodonMình thấy diễn đàn có chuyên mục quảng cáo rồi mà. Bạn đóng góp để mở luồng riêng
-
Channel: Hướng dẫn sử dụng diễn đàn
09-11-2024, 13:36 -
-
bởi Nicole08Xin chào mọi người, tôi đã sử dụng Flashforge Inventor 2 được gần 5 năm và rất hài lòng với nó, nhưng tuần trước đã xảy ra sự cố. Có vẻ như động cơ bước đưa sợi in vào đầu nóng đã bị hỏng. Mọi thứ khác có vẻ ổn trên máy...
-
Channel: Điện tử dành cho người mới bắt đầu
09-11-2024, 12:55 -
Comment