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
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Dạ, cảm ơn bác đã nghe qua và có lời khích lệ cháu ạ.
Thật lòng cháu không dám nhận hai danh hiệu Kỹ sư và Nhạc sĩ đâu ạ, vì phải thật hiểu sâu nắm vững cơ, chứ thực lực cháu đây chỉ là biết chút ít thôi à. Về phần...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 11:58 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi bqvietĐơn giản thì có trải nghiệm này
http://www.dientuvietnam.net/forums/...ch%C3%AA%CC%81
Chỉ phần cứng,...-
Channel: Điện tử công suất
27-01-2026, 21:32 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi Nexus 6Pphức tạp quá, nếu mà có mạch làm sẵn thì ngon, e dùng 2 tấm pv loại 18v 55w thôi bác
-
Channel: Điện tử công suất
26-01-2026, 08:52 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi Nexus 6Pcảm ơn bác nhiều nha, để e nghiên cứu
-
Channel: Điện tử công suất
26-01-2026, 07:38 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi vi van phamkỹ sư nhạc sĩ dinhthuong dạo này lên tay nghề khá quá.
-
Channel: Tâm tình dân kỹ thuật
25-01-2026, 21:29 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Hát Mừng Sinh Nhật, sáng tác: HĐT, hòa âm-thể hiện: AI
-
Channel: Tâm tình dân kỹ thuật
24-01-2026, 22:13 -
-
Trả lời cho Yêu thơ mê nhạc, mời các bác vào đây!bởi dinhthuong92Chào bác, gần Tết công việc bác bận lắm phải không?
Vâng mọi người đều thế cả.
Em mới trả phí cho nó 1 tháng, nhờ nó hát thử ấy ạ. Tiếc vì em đã dốt nhạc lí lại lười học nên sáng tác thì vụng về mà hát demo...-
Channel: Tâm tình dân kỹ thuật
24-01-2026, 21:53 -
-
Trả lời cho Có mạch sạc nlmt nào có mppt không các bácbởi bqvietCảm thấy cứng tay thì làm theo hướng dẫn khá chi tiết ở trang sau
https://www.instructables.com/DIY-1k...ge-Controller/-
Channel: Điện tử công suất
23-01-2026, 16:50 -
-
bởi Nexus 6PNhư tiêu đề, các bác giới thiệu e mạch sạc nlmt mppt có chức năng chỉnh dòng với, tấm PV của em 18V 55W, dùng để sạc cho khối pin sắt 3.2V 45A (sắp tới sẽ thay bằng ắc quy 12V)
e cảm ơn-
Channel: Điện tử công suất
23-01-2026, 11:23 -
-
bởi mylinhattNếu bạn đang tìm một dòng máy phay đứng CNC vận hành ổn định, gia công tinh chuẩn và tối ưu năng suất, thì Kitamura là lựa chọn rất đáng cân nhắc. Dòng máy này có kết cấu trục chính theo phương thẳng đứng, bàn máy nằm ngang và vận hành tự động thông qua điều khiển bằng máy tính...
-
Channel: Điều khiển - Tự động hóa
23-01-2026, 11:02 -

Comment