Nguyên văn bởi thangbom64
Thông báo
Collapse
No announcement yet.
Dành cho người mới tìm hiểu 8051
Collapse
X
-
Lcd
Các bác giúp em với. Hiện nay em đang làm bài tập về LCD mô phỏng hiện chữ lên màn hình dùng chương trình mô phỏng Proteus. Em đã mô phỏng 2 trường hợp của chương trình con WAIT_LCD
Trường hợp 1 em đợi khoảng thời gian mù ( dùng delay ) thì chữ hiện lên LCD bình thường.
Trường họp 2 em đợi cho cờ BF (ACC.7) từ mức 1 xuống mức 0. Nhưng cờ không thể xuống mức 0 được ( em không hiểu tại sao ??
) và chương trình không thể thoát khỏi chương trình con được.
Đây là chương trình và của em. Mong các bác tìm giúp em lỗi sai ở cờ BF (ACC.7). Em có đính kèm các file chương trình + mô phỏng ở dưới.
Em cảm ơn nhiều.
org 0000h
DB0 BIT P0.0
DB1 BIT P0.1
DB2 BIT P0.2
DB3 BIT P0.3
DB4 BIT P0.4
DB5 BIT P0.5
DB6 BIT P0.6
DB7 BIT P0.7
RW BIT P3.5
RS BIT P3.6
E BIT P3.7
MAIN:
LCALL DELAY
LCALL INIT_LCD
LCALL CLR_LCD
MOV A,#'D'
LCALL WRITE_TEXT
MOV A,#'U'
LCALL WRITE_TEXT
MOV A,#'N'
LCALL WRITE_TEXT
MOV A,#'G'
LCALL WRITE_TEXT
;************************************************* *************
; Delay program
;************************************************* *************
DELAY:
PUSH 7
PUSH 6
MOV R7,#1
RE1: MOV R6,#2
DJNZ R6, $
DJNZ R7,RE1
POP 6
POP 7
RET
;************************************************* **************
; Start LCD
;************************************************* **************
INIT_LCD:
CLR RS
CLR RW
MOV P0,#38h
SETB E
CLR E
LCALL WAIT_LCD
CLR RS
CLR RW
MOV P0,#0Eh
SETB E
CLR E
LCALL WAIT_LCD
CLR RS
CLR RW
MOV P0,#06h
SETB E
CLR E
LCALL WAIT_LCD
RET
;************************************************* **************
; Clear LCD
;************************************************* **************
CLR_LCD:
CLR RW
CLR RS
MOV P0,#01h
SETB E
CLR E
LCALL WAIT_LCD
RET
;************************************************* *************
; Write the context to LCD
;************************************************* ************
WRITE_TEXT:
CLR RW
SETB RS
MOV P0,A
SETB E
CLR E
LCALL WAIT_LCD
RET
;************************************************* *************
; Test busy flat ( wait lcd program )
;************************************************* ************
WAIT_LCD:
; lcall delay
; CLR E ;Start LCD command
CLR RS ;It's a command
SETB RW ;It's a read command
MOV P0,#0FFh ;Set all pins to FF initially
SETB E
MOV A,P0 ;Read the return value
JB ACC.7,$ ;If bit 7 high, LCD still busy
CLR E ;Finish the command
CLR RW ;Turn off RW for future commands
RET
ENDAttached Files
Comment
-
đơn giản thôi mà bạn: dòng qua các con led là khoảng 10mA.còn áp trên con điện trở là 220-175=45V.Vậy thì con trở sẽ là 45/10m=4500 Ohm.Nguyên văn bởi tranvannam59Chào các bạn mình có 70 con led mắc nối tiếp, mỗi con 2v5 tổng hiệu điện thế là 70x2v5= 175v sử dụng điện thế 220v như vậy phải dùng điện trở bao nhiêu ohm? và công thức tính như thế nào nếu thay đổi số lượng led mong các bạn chỉ giúp.
Cám ơn nhiềuSỰ HỌC LÀ MÃI MÃI......!!!!
Comment
-
bạn Dũng thân mến : cái thằng Proteus nó chỉ là mô phỏng thôi mà.nó đâu phải là sản phẩm thật đâu.Do đó cái thằng LCD trên đó đâu thể tạo ra tín hiệu cho cờ BF=0 được đâu.trường hợp này tui đã gặp.mô phỏng thì chỉ có thể dùng delay thôi.còn bạn hãy đe chương trình bạn viết bằng cờ BF nạp thẳng vào mạch chắc chắn sẽ chạy(hì hì nếu bạn viết đúng nhá)Nguyên văn bởi DungNTvt Xem bài viếtTrong chương trình mô phỏng em chạy từng lệnh một nhưng tới lệnh JB ACC.7 ,$ thì không thoát ra được ( ACC.7) luôn ở trạng thái 1 (??).
Chúc vui!SỰ HỌC LÀ MÃI MÃI......!!!!
Comment
-
Bậy nào, tui làm kiểm tra cờ vẫn chạy ầm ầm.bạn Dũng thân mến : cái thằng Proteus nó chỉ là mô phỏng thôi mà.nó đâu phải là sản phẩm thật đâu.Do đó cái thằng LCD trên đó đâu thể tạo ra tín hiệu cho cờ BF=0 được đâu.trường hợp này tui đã gặp.mô phỏng thì chỉ có thể dùng delay thôi.còn bạn hãy đe chương trình bạn viết bằng cờ BF nạp thẳng vào mạch chắc chắn sẽ chạy(hì hì nếu bạn viết đúng nhá)
Chúc vui!
Comment
-
70 con led mắc nối tiếp, chết 1 con thì....Mà led mua ngoài chợ zoi dễ dính tr hợp đó lắm. Công thức tính thì có rồi đấy. Nhưng chú ý là led có thể chết do áp đỉnh của điện lưới, kô phải là 220 đâu mà là 380v đấy.Bạn nên nắn điện sang 1 chiều , dùng tụ lọc rồi mới cắm dàn led vào.đơn giản thôi mà bạn: dòng qua các con led là khoảng 10mA.còn áp trên con điện trở là 220-175=45V.Vậy thì con trở sẽ là 45/10m=4500 Ohm.
Comment
-
thực sự thì mình cơ khí cũng thích,điện tử cũn Ok.nhưng mà học thì cái j cũng cưỡi ngựa xem hoa ấy.tìm người hỏi khó lắmNguyên văn bởi Zz_Bi_zZ Xem bài viếtTui cũng học CDT , thấy rất thú vị đó chứ . Có lẽ bạn là ng ko ham Cơ khí và điện tử lám . Mấy ku lớp tui học năm 5 oy mà h chưa bit điều tốc động cơ DC = cách j . chán !
lên trên này cũng mong mọi người chỉ giáo nhiều
Comment
-
Làm việc với LCD thì có 4 môdul chính :có bác nào có thể vẽ hộ em cái lưu đồ để có thể hiển thị LCD với.
ngồi đọc mấy tài liệu về LCD nhưng mãi mà vẫn ko hiểu thế nào.mong mọi người giúp với nhá
1_ Init_LCD : khởi tạo các chế độ làm việc của LCD
2_ Sent_comman: mô đul gửi mã lệnh
3_ Sent_data: môdul gửi dữ liệu
4_ Busy: kiểm tra cờ bận
Sau khi viết xong các môdul này thì bạn hoàn toàn có thể yên tâm làm việc với LCD. Tuy nhiên, để viết được chúng bạn phải hiểu được cách thức hoạt động của LCD và cách giao tiếp 8051 với LCD.
Comment
-
xin mọi người giúp đỡ
e dùng keil lập trình cho chip 89c51 (tạo file.hex) làm led P0 sáng tắt xen kẽ, sau đó dùng bo rixin nạp thì nó báo complete. sau đó nối dây mạch reset, thạch anh, chân 31 nối VCC = 5v, mà sao nó chẳng hoạt động gì hết. tháo ra nạp code khác thì nó cũng kô có tác dụng gì hết, toàn bộ led po đều sáng chập chờn. e ngĩ là e két nối sai. hoặc do bo nạp hư, nhưng thấy nó chạy bình thường. xin các a hướng dẫn cho e với đã mò 2 ngày rồi mà nó kô chạy gì cả. các a xem file đính kèm nhe!. e xin cảm ơn!Attached Files
Comment
Bài viết mới nhất
Collapse
-
bởi theidiotcatAMD Ryzen 9 9950X bước sang năm 2026 vẫn là một trong những bộ vi xử lý desktop mạnh mẽ nhất dành cho người dùng phổ thông cao cấp. Dù đã ra mắt từ thế hệ Zen 5 đầu tiên của dòng Ryzen 9000, con chip 16 nhân 32 luồng này vẫn giữ được sức...
-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 13:58 -
-
bởi theidiotcatTrong thị trường CPU năm 2026, khi các dòng vi xử lý đời mới liên tục ra mắt với những thông số kỹ thuật hào nhoáng, AMD Ryzen 5 7600X vẫn là một cái tên khiến nhiều game thủ và người dùng phổ thông phải cân nhắc kỹ lưỡng. Sau gần hai...
-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 13:42 -
-
bởi theidiotcatTrong bối cảnh giá linh kiện tăng cao, hiện tại mức giá laptop đã tăng đáng kể so với thời điểm trước cơn sốt AI. Chính vì vậy để lựa chọn được một chiếc laptop đáp ứng tốt nhu cầu vừa học vừa giải trí các bạn sinh viên cần...
-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 13:33 -
-
bởi theidiotcatViệc lựa chọn một chiếc laptop gaming phù hợp với nhu cầu, ngân sách chưa bao giờ là dễ dàng. Và điều đó càng khó hơn trong năm 2026 khi mà mức giá liên tục tăng.
Nếu bạn chưa biết nên chọn một chiếc laptop gaming như thế nào...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:29 -
-
bởi theidiotcatVới mức ngân sách 20 - 30 triệu đồng trong năm 2026, các bạn sinh viên và dân văn phòng có thể tìm thấy nhiều lựa chọn cao cấp, mạnh mẽ, pin “trâu”, đặc biệt là các mẫu laptop AI hỗ trợ cho học tập và làm việc.
Trong phân...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:25 -
-
bởi theidiotcatDưới đây là một số mẫu laptop nổi bật trong phân khúc dưới 20 triệu giúp các bạn văn phòng, sinh viên và đặc biệt là tân sinh viên có thể dễ dàng lựa chọn được mẫu laptop phù hợp với nhu cầu và ngân sách của mình.
Thị...-
Channel: Đánh giá sản phẩm DTVN
26-06-2026, 10:07 -
-
bởi theidiotcatViệc chọn mua một bộ máy tính phục vụ cho các nhu cầu làm việc văn phòng và sử dụng cơ bản hàng ngày đang trở nên dễ dàng và tiết kiệm hơn bao giờ hết. Thay vì phải đau đầu trích ngân sách để mua cả vi xử lý lẫn card đồ họa rời...
-
Channel: Đánh giá sản phẩm DTVN
25-06-2026, 11:23 -
-
bởi theidiotcatViệc nâng cấp từ một dàn máy tính cũ lên cấu hình mới luôn khiến nhiều người đắn đo về mức chi phí bỏ ra. Nếu bạn đang tìm kiếm một sự lột xác hoàn toàn về hiệu năng mà vẫn cân đối được dòng tiền, combo giữa vi xử lý Ryzen...
-
Channel: Đánh giá sản phẩm DTVN
25-06-2026, 11:06 -
-
Trả lời cho Lực dọc trục làm hỏng ổ bi.bởi nguyendinhvanVí dụ một trang như thế này
...-
Channel: Điện tử công suất
24-06-2026, 19:57 -

...
Comment