[Diao Ye learns programming] Arduino hands-on (195)---HT16k33 matrix 8*8 dot matrix screen module

The reference to 37 sensors and modules has been widely circulated on the Internet. In fact, there must be more than 37 sensor modules compatible with Arduino. In view of the fact that I have accumulated some sensor and actuator modules on hand, in accordance with the concept of true knowledge (must be hands-on), for the purpose of learning and communication, here I am going to try and do more experiments one by one. Whether it is successful or not, it will be recorded ——Small progress or unsolvable problems, I hope to be able to throw bricks and spark jade.

[Arduino] 168 kinds of sensor module series experiments (data code + simulation programming + graphics programming)
Experiment 195: I2C red 8*8 LED dot matrix screen module HT16k33 (VK16K33) driving 1088BS IoT scalable programming

insert image description here
insert image description here

Knowledge points: VK16K33 chip
is a memory mapping and multi-function LED control driver chip. The chip supports a larger display mode of 128 points (16SEGs×8COMs) and a larger 13×3 key matrix scanning circuit. The software configuration features of the VK16K33 make it suitable for a variety of LED applications, including LED modules and display subsystems. The VK16K33 can communicate with most microcontrollers through a bidirectional I2C interface.

Features 1. Working voltage: 4.5V~5.5V 2. Internal RC oscillator 3. I2C bus interface 4.16×8-bit RAM for storing display data 5. Larger display mode is 16×8: 16SEGs and 8COMs 6. Read/write The address is automatically incremented 7. Up to 13×3 button matrix scanning function 8. 16-step dimming circuit 9. Package type: 20/24/28-pin SOP VK16K33 This series of ICs has low power consumption, high anti-noise and high system performance ESD protection capability; VK16K33 integrates the functions of LED drive and button scanning, and integrates the functions required by the control panel, which can reduce the burden on the main MCU and the number of I/Os required. The use of the I2C interface can further reduce the material cost between the control panel and the main board, thereby reducing the overall cost of the product.

VK16K33 has three packages of 28SOP, 24SOP and 20SOP, corresponding to three types of larger display points; 16x8 LEDs and 13x3 buttons, 12x8 LEDs and 10x3 buttons, and 8x8 LEDs and 8x3 buttons. Built-in display memory and RC oscillator circuit; working voltage: 4.5V ~ 5.5V; VK16K33 supports interrupt signal and polling two working modes. The button interrupt signal can be optionally provided to the MCU, so the MCU does not need to check the button status all the time. The transmission between VK16K33 and the system control chip only needs 2 signal lines. By detecting key input through VK16K33, the number of MCU I/O on the main board can be reduced and the layout lines of the main board and the panel can be simplified; therefore, the overall cost of the product can be reduced. VK16K33 is suitable for controlling and driving LED displays/panels such as home appliances, audio-visual equipment, instrumentation equipment, and automotive devices.

insert image description here

insert image description here
VK16K33 parameter features
Operating voltage: 4.5V-5.5V
integrated RC oscillator
I2C bus interface
16×8 bit RAM for display data storage
Up to 16×8 mode, 16 segments and 8 commons
Read/write address auto-increment
up to 13× 3-matrix key scanning
16-level dimming circuit
20/24/28-pin SOP package type

Main applications of VK16K33
Industrial control indicators
Digital clocks, thermometers, counters, multimeters
Combination sets
Video recorders
Instrument readings
Other consumer applications
LED displays

insert image description here

VK16K33 functional block diagram

insert image description here

Approximate internal connection diagram of VK16K33

insert image description here

VK16K33 pins

insert image description here

insert image description here
VK16k33 chip details
https://cdn-shop.adafruit.com/datasheets/ht16K33v110.pdf

1088BS common anode dot matrix screen
insert image description here
insert image description here
insert image description here
I2C88 monochrome dot matrix module, using HT16K33 chip as the driver, can drive and light up the I2C dot matrix module with only 2 IO pins, and can be cascaded with Arduino or other microcontrollers.

Power requirements: +4.5-5.5V
Input type: digital signal
Interface mode: XH2.54×4
Pin definition: G-ground V-power D(SDA)-serial data C(SCL)-serial clock
Module weight: 35g
insert image description here

I2C red 8*8LED dot matrix module VK16k33 drive, refer to the schematic diagram

insert image description here

Connection method: connect with the main controller according to the interface label of the sensor module, the label "G" is connected to the "ground" of the main controller, "V" is connected to the "power supply", "D" is connected to "Arduino UNO R3" SDA, "C "Connect to "Arduino UNO R3" SCL

insert image description here
insert image description here
insert image description here

[Arduino] 168 kinds of sensor module series experiment (data code + simulation programming + graphics programming)
experiment 207: I2C red 8*8LED dot matrix module VK16k33 drive 1088BS Raspberry Pi IoT scalable programming
project one: 8x8 LED matrix test, showing a point

Experimental open source code

/*
  【Arduino】168种传感器模块系列实验(资料代码+仿真编程+图形编程)
  实验二百零七:I2C红色8*8LED点阵模块VK16k33驱动1088BS树莓派物联网可扩展编程
  项目之一:8x8 LED 矩阵测试,显示一个点
  实验接线:
  VK16k33    UNO
  VIN        5V
  GND        GND
  SCL        A5
  SDA        A4
*/

// For I2C
#include <Wire.h>
// Libraries for Matrix
#include "Adafruit_LEDBackpack.h"
#include "Adafruit_GFX.h"
Adafruit_8x8matrix matrix = Adafruit_8x8matrix();

void setup() {
    
    
  Serial.begin(9600);
  // Good idea to send data to both
  // device and serial as it helps with
  // troubleshooting.
  Serial.println("8x8 LED 矩阵测试");
  // set the address
  matrix.begin(0x70);
}

void loop() {
    
    
  // clear display
  matrix.clear();
  // set pixel x,y to ON
  matrix.drawPixel(0, 0, LED_ON);
  // write RAM to matrix
  matrix.writeDisplay();
  delay(500);
}

Experimental serial port return

insert image description here
Experimental scene graph

insert image description here

Guess you like

Origin blog.csdn.net/weixin_41659040/article/details/132142710