Em mới học lập trình Assembly mong các anh chị chỉ giáo giúp.Em muốn viết code để điều khiển độ sáng của led ở 2 chế độ: tự động và thông qua nút nhấn.Anh chị nào biết chỉ giúp em với.Có thể dùng timer để điều khiển được không ạ!!!
Dùng 8051 điều khiển độ sáng của led bằng Assembly
Collapse
X
-
ko cần ngắt đâu bạn, bạn dùng lệnh jnb hay jb, để đk bằng tay, còn tự động thì ko cần kiểm tra, là ok
Comment
-
Điều chỉnh tự động theo ý của bạn là như thế nào đây, ít ra cũng phải có cái cảm biến phản hồi về như thay đổi độ sáng theo môi trường,... Còn bằng nút nhấn thì có hai cái nút tăng và giàm độ sáng thì bạn có thể dùng kỹ thuật PWM để điều khiển, bấm 2 cái nút đó sẽ tăng hay giảm duty của sóng pwmNguyên văn bởi sunypower Xem bài viếtEm mới học lập trình Assembly mong các anh chị chỉ giáo giúp.Em muốn viết code để điều khiển độ sáng của led ở 2 chế độ: tự động và thông qua nút nhấn.Anh chị nào biết chỉ giúp em với.Có thể dùng timer để điều khiển được không ạ!!!
Bạn dùng timer và ngắt timer để tạo PWM còn chương trình chính thì kiểm tra nút nhấn.,..
Comment
-
Em không biết phải điều chỉnh PWM như thế nào đây, anh co thể hướng dẫn và viết đoạn code mẫu được không.thanks nhiều!!!Nguyên văn bởi youaremylife Xem bài viếtĐiều chỉnh tự động theo ý của bạn là như thế nào đây, ít ra cũng phải có cái cảm biến phản hồi về như thay đổi độ sáng theo môi trường,... Còn bằng nút nhấn thì có hai cái nút tăng và giàm độ sáng thì bạn có thể dùng kỹ thuật PWM để điều khiển, bấm 2 cái nút đó sẽ tăng hay giảm duty của sóng pwm
Bạn dùng timer và ngắt timer để tạo PWM còn chương trình chính thì kiểm tra nút nhấn.,..
Comment
-
Phần PWM phải tìm hiểu lâu lâu mới hiểu . K thể 1 sớm 1 chiều được . Vì tài liệu ASM cho PWM cũng khá ítNguyên văn bởi sunypower Xem bài viếtEm không biết phải điều chỉnh PWM như thế nào đây, anh co thể hướng dẫn và viết đoạn code mẫu được không.thanks nhiều!!!
Comment
-
đây là phần cứng em thiết kế và phần code em viết, chỉ mới cho xuất ra chuỗi xung có độ rộng cố định, chưa biết làm sao để thay đổi độ rộng xung khi nhấn Up hoac Down, bác nào có kinh nghiệm mong chỉ giáo giúp, em đang làm đề tài này, mà chỉ mới học asly mới có nửa tháng ah.cảm on nhiều!!!
DIEU KHIEN DO SANG LED.rar
Comment
-
Muốn cải tiến cái chương trình của bạn mình góp vài ý như sau:
Hàm delay của bạn nó theo kiểu thủ tục (procedure) hơn là hàm (function). Muốn có thể điều xung thì thời gian chân ra ở mức cao và ở mức thấp có thể thay đổi được, nghĩa là cái hàm delay của bạn cần phải có đối số truyền vào.
Trong đoạn BAT......SJMP BAT của bạn thêm đoạn kiểm tra nút nhấn LIGH UP/DOWN vào.
Chương trình của bạn thiếu đi phần chống nảy cho nút nhấn, bạn có thể khắc phục bằng chống nảy bằng phần cứng,...
ví dụ hàm delay như bạn có thể thay
DELAY50uS:
MOV TH1,#HIGH(value) ; CHUONG TRINH CON TRE 50MS GIAY
MOV TL1,#LOW(value)
SETB TR1
JNB TF1,$
CLR TR1
CLR TF1
RET
bằng
// đối số vào hàm
MOV TH1, duty ; CHUONG TRINH CON TRE 50MS GIAY
MOV TL1, duty+1 ;
// hàm tạo trễ
DELAYuS:
SETB TR1
JNB TF1,$
CLR TR1
CLR TF1
RET
cái này chỉ mang tính tham khảo phần còn lại tự bạn nghĩ
Khi bạn nhấn nút LIGH UP thì duty tăng ngược lại thì duty giảm
duty là số 16 bit nên bạn xem cách viết hàm cộng số 16bit
tính khoảng thời gian mức thấp nduty = PERIOD - duty
BAT
// phần tạo PWM
Cho PWM PIN mức cao
Truyền tham số duty vào hàm delay
Gọi hàm delay
Cho PWM PIN mức thấp
Truyền tham số nduty vào hàm delay
Gọi hàm delay
//////////////
kiem tra nut LIGH UP duoc nhan
đúng gọi hàm tăng
Gọi hàm tình tham số PWM
kiem tra nut LIGH DOWN duoc nhan
Đúng gọi hàm giảm
Gọi hàm tình tham số PWM
....
Comment
-
Tình hình là em đã viết xong code, nhưng giờ chon linh kiện thì có trục trặc, có bác nào biết nên sử dụng loại tranisistor công suất nào để thiên áp cho led công suất tầm 80W, tần số 2kHz ko, liệt kê giúp em một số tên với, loại nghịch (NPN) nha, cảm ơn nhiều
Comment
-
ai đã làm dc led sao băng bằng ngôn ngữ assembly thì cho tôi xin file code a51 or file asm để mình tham khảo chân thành cảm ơn
Comment
Bài viết mới nhất
Collapse
-
-
bởi bqvietĐám UPS cửa cuốn đời cổ vẫn chạy 1 biến áp sắt từ vừa để hạ áp điện lưới nạp bình điện, vừa để kích áp bình điện thành sóng vuông đầu ra đấy thôi. Kiểu tiết kiệm này đã có từ mấy chục năm nay. Sơ đồ đại loại như link
https://www.homemade-circuits.com/si...rchargerchang/...-
Channel: Nguồn!
06-09-2026, 16:49 -
-
bởi dinhthuong92Không biết nó thiết kế kiểu gì mà dùng chung được cuộn cảm L cho cả mạch Buck hạ áp để sạc pin và Boost nâng áp cho Led. Muốn vẽ mạch để xem mà nhiều linh kiện quá, e không kham nổi!
Bác nào có sơ đồ xin up lên cho mọi người tham khảo nhé!...-
Channel: Nguồn!
04-09-2026, 11:09 -
-
-
Trả lời cho TCL - Tập hợp các vấn đề về màn hình màu TCLbởi dtvankhoeBác nào có file rom này cho em xin em cảm ơn ạ TCL L43S6500 – TPD.RT2841.PB772
-
Channel: Điện tử truyền hình
30-08-2026, 21:08 -

Comment