This library helps to interface Max7912 with Wiznet w7500 and display different character/digit/string on Dot Matrix LED.

Dependencies:   mbed

Committer:
kulwantt
Date:
Fri Aug 03 06:43:16 2018 +0000
Revision:
0:2c4e3799881a
Interfacing LED dotmatrix with W7500 using Max7219 chip.; The documentation for Max7219 is provided in the below link: -; https://datasheets.maximintegrated.com/en/ds/MAX7219-MAX7221.pdf

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kulwantt 0:2c4e3799881a 1 /*
kulwantt 0:2c4e3799881a 2 * This library is tested with Wiznet W7500 and Max7219 Chip to interface the LED Dot Matrix
kulwantt 0:2c4e3799881a 3 * We tested with 4 cascaded Max7219 chip.
kulwantt 0:2c4e3799881a 4 * The connections are as follow:
kulwantt 0:2c4e3799881a 5
kulwantt 0:2c4e3799881a 6 W7500 Max7219
kulwantt 0:2c4e3799881a 7
kulwantt 0:2c4e3799881a 8 MOSI (PA_08) -> Din
kulwantt 0:2c4e3799881a 9 MISO -> NC
kulwantt 0:2c4e3799881a 10 SCK (PA_06) -> CLK
kulwantt 0:2c4e3799881a 11 D8(Digital Pin)-> CS
kulwantt 0:2c4e3799881a 12 Vcc -> Vcc
kulwantt 0:2c4e3799881a 13 Gnd -> Gnd
kulwantt 0:2c4e3799881a 14
kulwantt 0:2c4e3799881a 15
kulwantt 0:2c4e3799881a 16 *To send any string greater than 4 words, it has to be declared in the scope (ex given below- char Hello[])
kulwantt 0:2c4e3799881a 17 *The link given below helps in creating the particular word/string the user wants to display.
kulwantt 0:2c4e3799881a 18 * link - https://xantorohara.github.io/led-matrix-editor/#a2a2a2bea2a2a2a2|df40405f5f40405f|f710101010101010|7984848484848478
kulwantt 0:2c4e3799881a 19
kulwantt 0:2c4e3799881a 20 */
kulwantt 0:2c4e3799881a 21
kulwantt 0:2c4e3799881a 22
kulwantt 0:2c4e3799881a 23 /* Example program
kulwantt 0:2c4e3799881a 24 *#include "max7219.h"
kulwantt 0:2c4e3799881a 25 *max7219 m;
kulwantt 0:2c4e3799881a 26
kulwantt 0:2c4e3799881a 27 //Defining hex code for "HELLO"
kulwantt 0:2c4e3799881a 28 *char Hello[]={0xa2,0xa2,0xa2,0xbe,0xa2,0xa2,0xa2,0xa2,
kulwantt 0:2c4e3799881a 29 * 0xdf,0x40,0x40,0x5f,0x5f,0x40,0x40,0x5f,
kulwantt 0:2c4e3799881a 30 * 0xf7,0x10,0x10,0x10,0x10,0x10,0x10,0x10,
kulwantt 0:2c4e3799881a 31 * 0x79,0x84,0x84,0x84,0x84,0x84,0x84,0x78};
kulwantt 0:2c4e3799881a 32 *int main() {
kulwantt 0:2c4e3799881a 33 * m.init();
kulwantt 0:2c4e3799881a 34 * while(1){
kulwantt 0:2c4e3799881a 35 //To send 4 or less letters or digits, use the send fuction
kulwantt 0:2c4e3799881a 36 * m.send("123");
kulwantt 0:2c4e3799881a 37 * wait(0.5); //Delay
kulwantt 0:2c4e3799881a 38
kulwantt 0:2c4e3799881a 39 * m.send("AbCd");
kulwantt 0:2c4e3799881a 40 * wait(0.5);
kulwantt 0:2c4e3799881a 41
kulwantt 0:2c4e3799881a 42 //To send any word/string use the send string function
kulwantt 0:2c4e3799881a 43 * m.sendstring(Hello);
kulwantt 0:2c4e3799881a 44 * wait(0.5);
kulwantt 0:2c4e3799881a 45
kulwantt 0:2c4e3799881a 46 * }
kulwantt 0:2c4e3799881a 47 *}
kulwantt 0:2c4e3799881a 48
kulwantt 0:2c4e3799881a 49 */
kulwantt 0:2c4e3799881a 50 #ifndef MAX7219_H
kulwantt 0:2c4e3799881a 51 #define MAX7219_H
kulwantt 0:2c4e3799881a 52
kulwantt 0:2c4e3799881a 53 #include "mbed.h"
kulwantt 0:2c4e3799881a 54
kulwantt 0:2c4e3799881a 55 #define max7219_reg_noop 0x00
kulwantt 0:2c4e3799881a 56 #define max7219_reg_digit0 0x01
kulwantt 0:2c4e3799881a 57 #define max7219_reg_digit1 0x02
kulwantt 0:2c4e3799881a 58 #define max7219_reg_digit2 0x03
kulwantt 0:2c4e3799881a 59 #define max7219_reg_digit3 0x04
kulwantt 0:2c4e3799881a 60 #define max7219_reg_digit4 0x05
kulwantt 0:2c4e3799881a 61 #define max7219_reg_digit5 0x06
kulwantt 0:2c4e3799881a 62 #define max7219_reg_digit6 0x07
kulwantt 0:2c4e3799881a 63 #define max7219_reg_digit7 0x08
kulwantt 0:2c4e3799881a 64
kulwantt 0:2c4e3799881a 65
kulwantt 0:2c4e3799881a 66
kulwantt 0:2c4e3799881a 67 class max7219
kulwantt 0:2c4e3799881a 68 {
kulwantt 0:2c4e3799881a 69 public:
kulwantt 0:2c4e3799881a 70
kulwantt 0:2c4e3799881a 71 max7219(); // PA_08, NC, PA_06, digital_pin
kulwantt 0:2c4e3799881a 72
kulwantt 0:2c4e3799881a 73 ~max7219();
kulwantt 0:2c4e3799881a 74 void init();
kulwantt 0:2c4e3799881a 75
kulwantt 0:2c4e3799881a 76 void send(char*);
kulwantt 0:2c4e3799881a 77
kulwantt 0:2c4e3799881a 78 void sendstring(char*);
kulwantt 0:2c4e3799881a 79
kulwantt 0:2c4e3799881a 80 private:
kulwantt 0:2c4e3799881a 81 PinName mosi;
kulwantt 0:2c4e3799881a 82 PinName miso;
kulwantt 0:2c4e3799881a 83 PinName sclk;
kulwantt 0:2c4e3799881a 84 PinName load;
kulwantt 0:2c4e3799881a 85 };
kulwantt 0:2c4e3799881a 86
kulwantt 0:2c4e3799881a 87 #endif