May quá các bác giúp đỡ nhiệt tình em rất cám ơn.Tiện đây em muốn hỏi để lập trình cấm trong 8051 thì như thế nào?ví dụ như dèn này sáng đèn kia tắt.Dĩ nhiên là có công tắc nối tới các đèn>cám ơn các bác
Thông báo
Collapse
No announcement yet.
Hỏi về trễ trong 8051
Collapse
X
-
Hi hi, lập trình cấm nghe cũng lạ, bác nối chân của vi dk với các đèn cần điều khiển <nếu dòng nhỏ và tương thích TTL-hoặc qua mạch cách liNguyên văn bởi tre1978May quá các bác giúp đỡ nhiệt tình em rất cám ơn.Tiện đây em muốn hỏi để lập trình cấm trong 8051 thì như thế nào?ví dụ như dèn này sáng đèn kia tắt.Dĩ nhiên là có công tắc nối tới các đèn>cám ơn các bác
> Ví dụ nối P1.0 và P1.1 với 2 led, để lập trình cấm như bác nói thì ta cho P1.0=1 (SET P1.0) và P1.1=0 (CLR P1.1) hoặc ngược lại <tùy ứng dụng mà người ta SET hoặc CLEAR trước>
Để tuân thủ nghiêm ngặt yêu cầu 1 cái ON, 1 cái OFF thì tốt nhất bác cứ cho P1.1=~P1.0 là xong. <cái này hợp ngữ viết sao các bác nhẩy
>
Còn để khỏi mất công nghĩ ngợi nhiều, bác dùng cổng NOT là mọi chuyện êm đẹp
------------------
------------------
Comment
-
Có vài bạn muốn có sách của Nguyễn Tăng Cường nhưng không tìm ra! Mình có sưu tầm được ở đâu đó, giờ post lên để mọi người cùng xem, bản này còn nhiều thiếu sót và cũng mất vài trang so với sách bán nhưng cơ bản là vẫn đủ để học!
Chúc vui!
Comment
-
Cám ơn bác Family đã trả lời cho em.Em mới hoc được 1 tháng môn vi xử lý mà thầy trẻ dạy rất khó hiểu.Em đơc sách của Đỗ Xuân Tiến chẳng hiểu gì.Đây đúng là bài tập của em.Đề bài cho 89C51 để làm chức năng báo trả lời như ở các cuộc thi trên TV.8051 này em còn chưa đựoc hoc mà đọc trước rồi đi hỏi các bác nên cũng hơi ngu.Mong các bác quan tâm giúp cho.Cám ơn các bác nhiều.
Comment
-
Stack của 8051 mặc định không phải là từ 08h đến 1Fh mà là từ 08h đến hết RAM nội. Vùng RAM nội từ 20h đến 2Fh chẳng qua là RAM thường có thêm khả năng đánh địa chỉ từng bit thôi, không hề có hạn chế gì với Stack cả. Điều đó có nghĩa là Stack hoàn toàn có thể trú trong vùng này. Khi reset thì SP có giá trị là 07h chứ không phải là 08h, do cách thức hoạt động của Ngăn xếp của 8051 là tăng SP rồi mới cất nên ngăn xếp mặc định mới là từ 08h trở đi, dù SP mặc định là 07h. Thường thì nên để Ngăn xếp trú ở vùng cao nhất của RAM nội để tránh xung đột với các biến trong RAM.Nguyên văn bởi natra2k2Nói thêm một chút về stack, stack mặc định nằm ở vị trí 08 đến 1FH trong RAM nội, (24 byte, đối với 8051, còn 8052 thì ... xem datasheet cho chéc!) nếu muốn có stack lớn hơn bạn chuyển thanh ghi stack SP (Stack Pointer) đến 30H trở đi! Khi reset thì SP có giá trị mặc định là 08h!
Thân mến,
blackmoon.
Comment
-
OK OK! Thank you bác! hi`hi`! Em check lại rồi! Người mới viết 8051, nhất là dùng hợp ngữ thường hay mắc lỗi xung đột biến nhớ trong RAM, điển hình là sau khi dùng lệnh CALL thì chương trình nhảy lung tung, do trong lệnh call có sử dụng RAM trong stack, mà ngăn trên cùng của stack bây giờ chứa địa chỉ trở về của chương trình (khi gặp lệnh ret), thế nên việc đặt stack làm vùng trên cùng của RAM là hợp lý, tốt nhất dùng 32 byte cuối cùng từ 60H đến FFH, còn vùng RAM được phép định địa chỉ bit thì không nên xâm phạm là tốt nhất, để dành cho các bit nhớ khi cần!Nguyên văn bởi blackmoonStack của 8051 mặc định không phải là từ 08h đến 1Fh mà là từ 08h đến hết RAM nội. Vùng RAM nội từ 20h đến 2Fh chẳng qua là RAM thường có thêm khả năng đánh địa chỉ từng bit thôi, không hề có hạn chế gì với Stack cả. Điều đó có nghĩa là Stack hoàn toàn có thể trú trong vùng này. Khi reset thì SP có giá trị là 07h chứ không phải là 08h, do cách thức hoạt động của Ngăn xếp của 8051 là tăng SP rồi mới cất nên ngăn xếp mặc định mới là từ 08h trở đi, dù SP mặc định là 07h. Thường thì nên để Ngăn xếp trú ở vùng cao nhất của RAM nội để tránh xung đột với các biến trong RAM.
Thân mến,
blackmoon.
Một lần nữa củm ơn mod! hi`hi`!
Comment
-
32 byte thì chỉ từ 60h đến 7fh thôi. Đó là với 8051. Còn 8052 có 256 byte RAM, trong đó nửa trên có địa chỉ từ 80h đến FFh chỉ có thể truy nhập với kiểu địa chỉ gián tiếp. Ngăn xếp về bản chất cũng hoạt động với chế độ địa chỉ gián tiếp (ô nhớ được truy nhập thông qua địa chỉ nằm trong một thanh ghi con trỏ ngăn xếp SP), do đó hoàn toàn thích hợp khi trú trong vùng RAM cao này. Các bạn có thể đặt cho ngăn xếp bắt đầu từ E0h chẳng hạn (trú trong 32 byte cuối từ E0h đến FFh). Các biến nên để trong nửa thấp của RAM, đó là vùng có thể truy nhập với chế độ địa chỉ trực tiếp, vì thế tiết kiệm được thời gian truy nhập, xử lý.Nguyên văn bởi natra2k2tốt nhất dùng 32 byte cuối cùng từ 60H đến FFH
Thân mến,
blackmoon.
Comment
-
Thưa các bác em vẫn không hiểu được khi em set P1.0 roi CLR P1.1
CLR P1.2
thi no cam 2 den led o cac chan 1.1 va 1.2 nhung o day em muon hoi la co su tranh chap la ai bam truoc thi den do sang .Tuc la 8051 phai nhan duoc tin hieu tu chan nao thi set chan do o muc tich cuc va cam cac tin hieu sau do.Neu nhu tren thi 8051 no chi hieu la set chan 1.0 o muc tich cuc con cac chan khac thi xoa dung khong ah?Em hoi ngu mong cac bac chi giao.Cam on cac bac da giup do em.
Comment
-
Không biết các bác có hiểu không vì nói thật em ngu quá .Em muốn hỏi la làm thế nào cho 8051 hiểu la khi tín hiệu vào thi nó sẽ set chân đấy ở mức tích cực con xóa tất cả các chân khác.Nếu như viết bắng ngôn ngữ cấp cao thì không có gì khổ 1 cái viét bằng ASM em vẫn chưa quen.Các bác cho em hỏi luôn là LED đơn thi nối vào P1 dúng không ah?có phải thêm trở không ah?nếu co la bao nhiêu?Còn cái công tăc ấn thi nốii vào p0 đựoc không?Em cám ơn
Comment
-
CẬU GÕ TIẾNG VIỆT HỘ CÁI ĐỌC THẾ NÀY THÌ GIỞI HIỂUNguyên văn bởi tre1978Thưa các bác em vẫn không hiểu được khi em set P1.0 roi CLR P1.1
CLR P1.2
thi no cam 2 den led o cac chan 1.1 va 1.2 nhung o day em muon hoi la co su tranh chap la ai bam truoc thi den do sang .Tuc la 8051 phai nhan duoc tin hieu tu chan nao thi set chan do o muc tich cuc va cam cac tin hieu sau do.Neu nhu tren thi 8051 no chi hieu la set chan 1.0 o muc tich cuc con cac chan khac thi xoa dung khong ah?Em hoi ngu mong cac bac chi giao.Cam on cac bac da giup do em.SHARE KHO PHIM LỚN
Comment
-
Em xin lỗi do vô ý quá.Em xin hỏi lại như sau.
Em muốn lập 1 hệ thống Led mà người ta hay dùng để thi đấu gianh quyền trả lời.Một ngừoi đã nhấn công tắc trước thì những người còn lại sẽ không được trả lời và đèn sẽ không sáng. Em muốn nối Led thì nối vào chân P2 được không?Nếu vậy thì công tắc sẽ đấu thế nào?Trở để nối tiếp ra sao?Đèn LED thì em phải đấu chân katot vào 8051 còn anot treo lên mức tích cực phải không ạ?Để nhận biết ngừoi nào nhấn công tắc trước để cho đèn sáng em đinh dùng lệnh JNB so sánh giá trị cổng với 1 .Nếu là 1 thì setb p2 1 còn không thì nhảy tới nhãn để kiểm tra đèn khác.Làm như thế có được không có được không ?Cám ơn bác đã đọc tin.Nhờ bác chỉ dùm.Em mới học nên còn bỡ ngỡ có gì ngu quá các bác bỏ quá cho chỉ dùm em.CÁm ơn
Comment
-
Bạn muốn nối LED thì nối với bất kì cổng nào cũng dc. Nối như bạn nói là đúng rồi, chỉ cần thêm con trở 470 là ok để tránh cho dòng quá lớn.
Công tắc bạn cũng có thể nối vào cổng nào cũng dc. Tuy nhiến nếu nối vào P0 thì bạn cần treo cổng này lên. Các cổng khác ko cần vì nó đã có trở treo bên trong rồi
Comment
Bài viết mới nhất
Collapse
-
bởi hayarNăm 2026 việc chọn laptop gaming chủ yếu vẫn là cân bằng vì giá cả và phần cứng thay đổi liên tục, nên tập trung vào GPU ổn, tản nhiệt tốt và hiệu năng thực tế sẽ quan trọng hơn việc chạy theo cấu hình cao nhất, giống như trong nulls brawl, chơi hay hơn khi biết cách tối ưu và chọn chiến...
-
Channel: Đánh giá sản phẩm DTVN
hôm nay, 21:23 -
-
bởi theidiotcatDưới đây là một số gợi ý để các bạn sinh viên chọn được chiếc laptop phù hợp với nhu cầu, ngân sách và ngành học trong bối cảnh giá linh kiện leo thang kéo theo mức giá laptop liên tục tăng cao.
Bước vào mùa tựu trường năm...-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 11:26 -
-
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
29-06-2026, 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
29-06-2026, 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
29-06-2026, 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 -

...
Comment