Mục lục:

Sử dụng Mô-đun VFD Noritake Itron Cũ hơn: 7 bước
Sử dụng Mô-đun VFD Noritake Itron Cũ hơn: 7 bước

Video: Sử dụng Mô-đun VFD Noritake Itron Cũ hơn: 7 bước

Video: Sử dụng Mô-đun VFD Noritake Itron Cũ hơn: 7 bước
Video: Noritake VFD: Graphic LCD vs Dot matrix VFD + Demos 2024, Tháng bảy
Anonim
Sử dụng Mô-đun VFD Noritake Itron Cũ hơn
Sử dụng Mô-đun VFD Noritake Itron Cũ hơn
Sử dụng Mô-đun VFD Noritake Itron Cũ hơn
Sử dụng Mô-đun VFD Noritake Itron Cũ hơn
Sử dụng Mô-đun VFD Noritake Itron Cũ hơn
Sử dụng Mô-đun VFD Noritake Itron Cũ hơn

Bây giờ và một lần nữa bạn bắt gặp những phần thú vị trên ebay, từ bạn bè hoặc chỉ mua xung quanh các cửa hàng đồ cũ. Một ví dụ về điều này là màn hình huỳnh quang chân không 40 x 2 ký tự Noritake Itron khổng lồ từ năm 1994 (hoặc trước đó) được chuyển giao từ một khách hàng.

Ban đầu nó trông khá phức tạp, tuy nhiên sau một thời gian, các bảng dữ liệu được tìm thấy và nó được phát hiện có một giao diện nối tiếp đơn giản - và với một chút công việc, chúng tôi đã làm cho nó hoạt động, vì vậy hãy đọc tiếp nếu bạn quan tâm đến VFD cổ điển hoặc có một đơn vị tương tự.

Bước 1:

Hình ảnh
Hình ảnh

Tốc độ truyền của giao diện nối tiếp được xác định bởi các miếng đệm jumper trên PCB.

Bước 2:

Hình ảnh
Hình ảnh

Vì vậy, so sánh bảng trên với jumper trên mô-đun của chúng tôi cho chúng tôi tốc độ dữ liệu 19200 bps không có độ chẵn lẻ. Tuyệt vời - chúng ta có thể dễ dàng tạo kết nối như vậy với bộ vi điều khiển có đầu ra nối tiếp và mức logic 5V; đối với các ví dụ của chúng tôi, chúng tôi sẽ sử dụng bảng tương thích với Arduino.

Bước 3:

Việc đấu dây VFD rất đơn giản - hãy xem các jumper màu trắng có nhãn CN2 như được hiển thị trước đó. Chân 1 là 5V (bạn cần nguồn cung cấp bên ngoài có thể cung cấp lên đến 700 mA), chân 2 với chân số 7 của Arduino và chân 3 với Arduino và nguồn cấp điện GND.

Chúng tôi sử dụng Arduino D7 với nối tiếp phần mềm thay vì TX để màn hình không hiển thị rác khi bản phác thảo đang được tải lên. Sau đó, bạn chỉ cần gửi văn bản đến màn hình, ví dụ: đây là bản phác thảo trình diễn nhanh:

// Làm việc với mô-đun Noritake Itron VFD - model CU40026SCPB-T20A #include SoftwareSerial VFD (6, 7); // RX, TX

void setup ()

{VFD.begin (19200); }

void loop ()

{VFD.print ("Xin chào mọi người. Đây là VFD Noritake"); // Bạn có thể xóa văn bản do {} while (1); }

Bước 4:

Hình ảnh
Hình ảnh

Kết quả nào với những điều sau đây…

Bước 5:

Hình ảnh
Hình ảnh

Nếu bạn không quan tâm đến màu sắc hoặc cường độ của màn hình, hãy thử một số Perspex ở phía trên - ví dụ:…

Bước 6: Điều khiển màn hình

Tại thời điểm này, bạn sẽ cần bảng dữ liệu bảng dữ liệu. Như bạn đã thấy trước đây, việc viết văn bản rất đơn giản - chỉ cần sử dụng các hàm.print. Tuy nhiên, bạn có thể muốn gửi các ký tự riêng lẻ, cũng như các lệnh đặc biệt để kiểm soát các khía cạnh của màn hình. Những điều này được nêu trong bảng dữ liệu - xem bảng “Lệnh phần mềm” và “Phông chữ ký tự”.

Nếu bạn cần gửi các lệnh đơn lẻ - ví dụ: "hiển thị rõ ràng" là 0x0E, hãy sử dụng lệnh.write, chẳng hạn như:

VFD.write (0x0E); // hiển thị rõ ràng

Một số lệnh ở định dạng mã thoát (hãy nhớ những mã này?), Vì vậy bạn cần gửi ESC sau đó là byte sau, ví dụ: để thay đổi độ sáng thành 50%:

VFD.write (0x1B); // ESC VFD.write (0x4C); // độ sáng VFD.write (0x40); // 50% độ sáng

Được trang bị kiến thức đó và các bảng dữ liệu, giờ đây bạn có thể thực hiện tất cả các lệnh. Theo bảng dữ liệu, có thể thay đổi phông chữ, tuy nhiên, bất kể phần cứng hoặc lệnh nào mà chúng tôi đã thử, nó sẽ không thay đổi khỏi phông chữ katakana của Nhật Bản. Màn hình của bạn có thể khác nhau. Nếu bạn sử dụng chức năng “ghi ưu tiên màn hình”, hãy chú ý đến bảng dữ liệu liên quan đến thời gian “bận” kéo dài bằng cách trì hoãn các lần ghi tiếp theo lên màn hình một phần nghìn giây.

Bước 7: Kết hợp tất cả lại với nhau

Thay vì giải thích từng lệnh có thể có, tôi đã đưa các lệnh thông dụng vào bên trong các hàm được ghi lại trong bản phác thảo trình diễn bên dưới, sau đó là một đoạn video nhanh về bản phác thảo đang hoạt động.

// Làm việc với các mô-đun VFD của Noritake Itron - model CU40026SCPB-T20A // John Boxall 2013

#bao gồm

SoftwareSerial VFD (6, 7); // rx, tx

void setup ()

{VFD.begin (19200); // thiết lập tốc độ cho cổng nối tiếp phần mềm resetVFD (); VFDclearsceen (); // VFD.write (0x12); // chế độ cuộn dọc (bật)}

void resetVFD ()

// thực hiện thiết lập lại phần mềm trên bộ điều khiển VFD {VFD.write (0x1B); // ESC VFD.write (0x49); // đặt lại phần mềm}

void VFDnewline ()

// di chuyển con trỏ đến đầu dòng tiếp theo {VFD.write (0x0D); // ký tự xuống dòng VFD.write (0x0A); // nguồn cấp dữ liệu dòng}

void VFDclearsceen ()

// di chuyển con trỏ sang trên cùng bên trái và xóa màn hình {VFD.write (0x0E); // xóa hiển thị VFD.write (0x0C); // nguồn cấp dữ liệu biểu mẫu - con trỏ sang trên cùng bên trái}

void VFDbrightness (int số lượng)

// đặt độ sáng VFD - 25/50/75/100% // sử dụng chuỗi ESC {switch (amount) {case 25: VFD.write (0x1B); // ESC VFD.write (0x4C); // độ sáng VFD.print (0); // ngắt độ sáng 25%; trường hợp 50: VFD.write (0x1B); // ESC VFD.write (0x4C); // độ sáng VFD.write (0x40); // Độ sáng 50% ngắt; trường hợp 75: VFD.write (0x1B); // ESC VFD.write (0x4C); // độ sáng VFD.write (0x80); // Độ sáng ngắt 75%; trường hợp 100: VFD.write (0x1B); // ESC VFD.write (0x4C); // độ sáng VFD.write (0xC0); // 100% độ sáng}}

void VFDchars ()

// chạy qua các ký tự cho phông chữ đã chọn {for (int i = 21; i <256; i ++) {VFD.write (0x16); // gạch dưới con trỏ tắt VFD.write (i); chậm trễ (100); }}

void moveCursor (vị trí byte)

// di chuyển con trỏ - hàng trên là 0 ~ 39, hàng dưới là 40 ~ 79 // phải tắt chế độ cuộn dọc nếu sử dụng {VFD.write (0x1B); // ESC VFD.write (0x48); // di chuyển con trỏ VFD.write (position); // vị trí }

void loop ()

{VFD.write (0x16); // gạch dưới con trỏ tắt VFD.print ("Xin chào, world - dòng một."); // Bạn có thể tạo ra độ trễ văn bản (1000); VFDnewline (); VFD.print ("Xin chào, thế giới - dòng hai."); chậm trễ (1000); VFDclearsceen (); VFDbrightness (25); VFD.print ("*** 25% độ sáng ***"); chậm trễ (1000); VFDclearsceen (); VFDbrightness (50); VFD.print ("*** 50% độ sáng ***"); chậm trễ (1000); VFDclearsceen (); VFDbrightness (75); VFD.print ("*** 75% độ sáng ***"); chậm trễ (1000); VFDclearsceen (); VFDbrightness (100); VFD.print ("*** 100% độ sáng ***"); chậm trễ (1000); VFDclearsceen ();

VFDchars ();

VFDclearsceen ();

for (int i = 0; i <80; i ++) {VFD.write (0x16); // gạch chân con trỏ tắt moveCursor (i); VFD.print ("X"); chậm trễ (100); moveCursor (i); VFD.print (""); } VFDclearsceen (); }

Chúng tôi hy vọng bạn thấy điều này thú vị và hữu ích.

Bài đăng này được mang đến cho bạn bởi pmdway.com - mọi thứ dành cho các nhà sản xuất và những người đam mê điện tử, với giao hàng miễn phí trên toàn thế giới.

Đề xuất: