cảm giác sáng dần, cảm giác sáng dồn, hiệu ứng sáng đuổi, cảm giác tắt dần, hiệu ứng tắt dồn, hiệu ứng tắt đuổi

Led đối kháng sẽ có không ít hiệu ứng led đẹp dùng làm các chúng ta cũng có thể chạy led trái tim, led ngôi sao, led trang trí có tác dụng bảng hiệu,bằng các hiệu ứng sáng đuổi,sáng dần… hình như còn nhiều hiệu ứng khác nữa. Hi vọng bài bác này sẽ mang lại cho chúng ta thật nhiều kiến thức và kỹ năng bổ ich.

Bạn đang xem: Chương trình led đơn sáng dần

Mua linh phụ kiện điện tử tạiĐiện tử Nhật Tùng


Khóa học Vi tinh chỉnh có phí

*


Mục lục

2 Nguyên lý kết nối led solo với vi điều khiển3 lịch trình hiệu ứng led 1-1 sáng dần3.1 Khai báo thư viện mang đến led đối chọi sáng dần3.1.2 Định cấu hình4 các chương trình con led 1-1 sáng dần4.1 gồm hai hiệ tượng viết hiệu ứng led sáng sủa dần:4.1.1 Kê khai từng giá chỉ trị nạm thể.4.1.2 Viết vòng lặp For, dùng cách làm chung đến 8 led trái thanh lịch phải 4.2 biện pháp viết chương trình

Nguyên lý kết nối led solo với vi điều khiển

Cách mắc led đối chọi để lập trình

*
Nguyên lý nối led solo với vi điều khiển

Giải thích các nối led đơn

Đối với nguyên tắc này mong muốn led sáng xuất xắc tắt nhờ vào vào chân VDK Nếu VDK=1 thì nhị đầu led đều bằng 1 tức sảy ra hiện tượng đẳng áp đề nghị không có tác dụng led sáng được.Nếu VDK=0 thì điện áp hôm nay sẽ đổ nguồn qua chân A của led với qua chân VDK, hôm nay làm led sáng lên. Phần tính điện trở R32 thì đơn giản dễ dàng mình ko bàn nghỉ ngơi trong này nhé.

Chương trình hiệu ứng led đơn sáng dần

Bắt đầu đi giải thích các phần nào.

Khai báo thư viện mang đến led solo sáng dần

*
Khai báo thư viện

Tiền sử lý

#include // loại lệnh này là khai báo thư viện nhỏ Pic16F887, nếu các bạn sử dụng demo viện không giống thì biến hóa tên lại nhé.

Ví dụ: Pic16F877A thì khai báo #include

Pic18F4550 thì khai báo #include

Định cấu hình

#FUSES NOWDT, PUT, HS, NOPROTECT, NOLVP // chiếc lệnh này định thông số kỹ thuật cho Pic

Chức năng các thông số như sau:

Thư viện delay

#use delay (clock =20M) // nếu sử dụng thạch anh nội thì từ bỏ 37k cho 8M, còn thạch anh kế bên thì 4M mang lại 20M, khi chúng ta sử dụng thạch anh như thế nào thì ghi nhớ khai báo đúng ở đó là được.

Khai báo biến ship hàng cho công tác led đơn

*
Khai báo biến

Biến y sử dụng xuất giá trị ra mang lại led , bởi vì nó 8bit nên có thể xuất về tối đa là 8 led thôi nhéBiến i dùng để đếm số vòng lặp for mang đến giá trị chỉ chạy từ 0 mang lại 8 hoặc 0 mang lại 16 nên không đề nghị khai báo lớn nhằm mục đích tiết kiệm bộ nhớ.Biến h cần sử dụng lưu cực hiếm và xuất ra mang đến hai port C cùng D.

Lưu ý: Nếu chương trình bé dại các chúng ta không kiểm soát và điều hành biến tốt thì phải dùng biến tất cả dấu 32bit.

Các chương trình con led solo sáng dần

Chương trình bé sáng dần dần 4 led từ bỏ trái qua phải.

Có hai hiệ tượng viết cảm giác led sáng sủa dần:

Kê khai từng giá bán trị vắt thể.

Hiệu ứng sáng sủa sáng dần

*
Kê khai từng giá bán trị

Khi mình xuất số 0 thì led sáng, xuất hàng đầu thì led tắt.

Các đổi từ số 2 thanh lịch số hex chúng ta xem phần đoạn clip nhé.

Từ phương pháp tính đó mình có được chương trình bé như sau:

Cách viết chương trình

*
Chương trình 8 sáng sủa dần

Xuất lần lượt từng quý hiếm ra, mỗi lần xuất mình delay một khoảng thời hạn để dễ quan sát.

Phần cứng mạch thực tế chúng ta xem phần đoạn clip nhé

Viết vòng lặp For, dùng phương pháp chung mang lại 8 led trái lịch sự phải 

Nếu cứ đi kê khai từng giá trị cụ thì lịch trình trở cần dài và cạnh tranh khăn cho những hiệu ứng 32 led…

Từ kia mình phải đi tìm kiếm công thức chung cho hiệu ứng sáng dần.

Đầu tiên buộc phải cho tắt những led trước

1111 1111 = 0xff

Sau đó ban đầu dịch lần vô dịch lần vô là được

Toán tử dịch

Toán tự dịch trái sang cần là >>, còn dịch phải sang trái là :

ð trường hợp 1111 1111 >>1 thì được giá trị như bảng dưới

11111111
01111111
00111111

Theo như trên thì chúng ta thấy địa chỉ số 0 sẽ ảnh hưởng mất cùng vị trí số 7 bị trống cùng vi điều khiển và tinh chỉnh sẽ tủ đầy bằng giá trị số 0 bắt buộc giá trị là : 0111 1111

Sáng dịch chỉ cần >>1 là led đã sáng dần dần lên cho từng lần dịch.

Từ đó mình chỉ dẫn chương trình như sau

Cách viết chương trình

*
Chương trình sáng dần dần 8 led tsp

Đầu tiên mình yêu cầu cho led tắt hết bằng phương pháp cho y = 0xff, xuất ra với delay nhằm quan sát.

Xem thêm: Camera Hành Trình Xiaomi 70Mai Lite Quốc Tế Tại Shop70Mai, Camera Hành Trình Xiaomi 70Mai Lite

Sau đó vòng lặp for chạy 8 lần, mỗi lần như thế thì mình cho y >>1 thì đang ra hiệu ứng mình đề nghị dùng

Như vậy là đã dứt 8 led hartware mạch thực tế chúng ta xem phần video clip nhé

Viết vòng lặp For, dùng cách làm chung mang lại 16 led trái sang trọng phải 

Tương tự như 8 led nhé

*
Chương trình sáng dần dần 16 tsp

Các bạn từ bây giờ phải dùng biến 16bit nhé.

Vì là 16bit cần giá trị ban sơ từ trái sang yêu cầu là 0111 1111 1111 1111 = 0xffff;

Mỗi port của vi điều khiển chỉ xuất mang đến 8led, vì thế muốn xuất được 16led cần dùng 2 port C.D

Ví dụ

H = 0111 1111 1111 1111

Mình sắp xếp vào cho đúng nhé: mang sử 8 ô đầu là của Port C, sót lại của Port D

Khi bản thân Output_d(h) thì VĐK chỉ lấy quý hiếm từ bịt thấp lên bit cao, đầy đủ 8 bit thì ngưng

11111111

Khi đã đưa giá trị mang đến 8bit của PortD thì sót lại 8 bit cao nên xuất mang đến Port C là : 0111 1111