213
Chapter 19 74HC595 & LED Matrix
Code
Two 74HC595 are used in this project used, one for controlling columns of LEDMatrix, another for lines. And
two 74HC595 are connected in cascade way (series) and has 16 output port. Because shiftOut () function
output 8-bit data once, twice shiftOut () function are required and data of second stage 74HC595 should be
transmitted preferentially. There are two 74HC595 in this project circuit, A (first stage) and B (second stage).
When the RPi uses shiftOut() function to send data "data1", data of A port will be "data1", and data of B will
be 0. Next, use shiftOut() to send "data2", then data "data1" of A will be moved to B and new data "data2"
will be moved to A. According to the circuit connection, line data should be sent first, then send column data.
The following code will make LEDMatrix display a smiling face, and then display scrolling character "0-F".
C Code 19.1.1 LEDMatrix
First observe the project result, and then analyze the code.
1.
Use cd command to enter 19.1.1_LEDMatrix directory of C language.
cd ~/Freenove_Ultimate_Starter_Kit_for_Raspberry_Pi/Code/C_Code/19.1.1_LEDMatrix
2.
Use following command to compile “LEDMatrix.c” and generate executable file “LEDMatrix”.
gcc LEDMatrix.c -o LEDMatrix -lwiringPi
3.
Then run the generated file “LEDMatrix”.
sudo ./LEDMatrix
After the program is executed, LEDMatrix will display a smiling face, and then the display scrolling character
"0-F", circularly.
The following is the program code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <wiringPi.h>
#include <stdio.h>
#include <wiringShift.h>
#define dataPin 0
//DS Pin of 74HC595(Pin14)
#define latchPin 2
//ST_CP Pin of 74HC595(Pin12)
#define clockPin 3
//SH_CP Pin of 74HC595(Pin11)
// data of smiling face
unsigned
char
pic
[ ] ={
0x1c
,
0x22
,
0x51
,
0x45
,
0x45
,
0x51
,
0x22
,
0x1c
};
unsigned
char
data
[ ]={
// data of "0-F"
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
0x00
,
// " "
0x00
,
0x00
,
0x3E
,
0x41
,
0x41
,
0x3E
,
0x00
,
0x00
,
// "0"
0x00
,
0x00
,
0x21
,
0x7F
,
0x01
,
0x00
,
0x00
,
0x00
,
// "1"
0x00
,
0x00
,
0x23
,
0x45
,
0x49
,
0x31
,
0x00
,
0x00
,
// "2"
0x00
,
0x00
,
0x22
,
0x49
,
0x49
,
0x36
,
0x00
,
0x00
,
// "3"
0x00
,
0x00
,
0x0E
,
0x32
,
0x7F
,
0x02
,
0x00
,
0x00
,
// "4"
0x00
,
0x00
,
0x79
,
0x49
,
0x49
,
0x46
,
0x00
,
0x00
,
// "5"
0x00
,
0x00
,
0x3E
,
0x49
,
0x49
,
0x26
,
0x00
,
0x00
,
// "6"
0x00
,
0x00
,
0x60
,
0x47
,
0x48
,
0x70
,
0x00
,
0x00
,
// "7"
0x00
,
0x00
,
0x36
,
0x49
,
0x49
,
0x36
,
0x00
,
0x00
,
// "8"
0x00
,
0x00
,
0x32
,
0x49
,
0x49
,
0x3E
,
0x00
,
0x00
,
// "9"
0x00
,
0x00
,
0x3F
,
0x44
,
0x44
,
0x3F
,
0x00
,
0x00
,
// "A"
Содержание Ultimate Starter Kit
Страница 1: ...Free your innovation Freenove is an open source electronics platform www freenove com ...
Страница 116: ...Chapter 9 Potentiometer RGBLED 116 www freenove com support freenove com Circuit Schematic diagram ...
Страница 117: ...117 Chapter 9 Potentiometer RGBLED www freenove com support freenove com Hardware connection ...
Страница 136: ...Chapter 12 Joystick 136 www freenove com support freenove com Circuit Schematic diagram Hardware connection ...
Страница 155: ...155 Chapter 14 Relay Motor www freenove com support freenove com Hardware connection OFF 3 3V ...
Страница 173: ...173 Chapter 16 Stepping Motor www freenove com support freenove com Hardware connection ...
Страница 182: ...Chapter 17 74HC595 LEDBar Graph 182 www freenove com support freenove com Circuit Schematic diagram Hardware connection ...
Страница 197: ...197 Chapter 18 74HC595 7 segment display www freenove com support freenove com Circuit Schematic diagram ...
Страница 198: ...Chapter 18 74HC595 7 segment display 198 www freenove com support freenove com Hardware connection ...
Страница 239: ...239 Chapter 22 Matrix Keypad www freenove com support freenove com Circuit Schematic diagram ...
Страница 240: ...Chapter 22 Matrix Keypad 240 www freenove com support freenove com Hardware connection ...
Страница 270: ...Chapter 26 WebIOPi IOT 270 www freenove com support freenove com Circuit Schematic diagram Hardware connection ...