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 ạ!!!
Thông báo
Collapse
No announcement yet.
Dùng 8051 điều khiển độ sáng của led bằng Assembly
Collapse
X
-
Nguyê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
-
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
-
Nguyê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
Bài viết mới nhất
Collapse
-
Trả lời cho tìm mua đồng hồ vạn năngbởi mèomướpDạ chú mua cái kẹp dòng ấy ạ. Chị hàng xóm nhà cháu có 1 cái thấy lâu lâu rùi chưa hỏng ạ. Ví dụ như mẫu này trên shoppee đầy ạ...
https://vn.shp.ee/dWYVgq7-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 12:48 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi vi van phamBác Đinh Vặn sai rồi,bây giờ con nít mẫu giáo đã giải phương trình 2 ẩn số rồi.
Tôi chứng minh bác lên youtube đầy video đơn giản tựa rất hot, chỉ 1 transistor hay 1 con diode và hướng dẩn cách làm, tác giả không vẽ sơ đồ mạch điện...-
Channel: Điện tử công suất
Hôm qua, 11:55 -
-
Trả lời cho Sửa bộ nguồn DC 60V 45Abởi nguyendinhvanBây giờ mới có tháng giêng, bao giờ mới đến tháng mười ?
Các cháu mẫu giáo mới lên lớp 1 được có 4 tháng. Nên đừng lấy lý do chúng nó đã đi học rồi để bắt nó viết một bài luận văn, hay là giải bài toán hàm. Phải kiên nhẫn...-
Channel: Điện tử công suất
Hôm qua, 00:47 -
-
Trả lời cho tìm mua đồng hồ vạn năngbởi nguyendinhvanKhông có loại nào đủ một vạn chức năng đâu. Nó chỉ được 2345678 , hoặc khủng lắm thì được 10 chức năng.
-
Channel: Điện tử dành cho người mới bắt đầu
Hôm qua, 00:16 -
-
bởi since0501Cảm ơn bác đã chia sẻ!...
-
Channel: Điện tử dành cho người mới bắt đầu
19-01-2025, 19:00 -
-
bởi Lê Gia TứMình muốn tìm mua đồng hồ vạn năng giá khoảng 200k có đo tần số cao khoảng 0~1mhz mọi người tư vấn giúp mình với
-
Channel: Điện tử dành cho người mới bắt đầu
19-01-2025, 15:47 -
-
Trả lời cho Mạch tự động bật nguồnbởi davidcopyChỉ cần dùng R C mắc vô phím power là ok....
-
Channel: Điện tử gia dụng
18-01-2025, 20:47 -
-
Trả lời cho Hỏi cách điều chế xungbởi davidcopydùng mach khuếch opamp...
-
Channel: Kỹ thuật điện tử tương tự
18-01-2025, 20:42 -
-
Trả lời cho Thắc mắc về hạ áp cho adapter laptopbởi davidcopy
-
Channel: Điện tử dành cho người mới bắt đầu
18-01-2025, 18:56 -
-
bởi bqvietĐấy gọi là cái "điểm gãy" trong đồ thị điện áp - dung lượng còn lại. Dùng điện áp hở cực để xác định sắp hết hoặc gần đầy thì vẫn tạm ổn. Dùng để đo SOC/DOD thì đừng. Ngay cả số km đã đi cũng chả xác định được...
-
Channel: Điện tử dành cho người mới bắt đầu
17-01-2025, 21:36 -
Comment