Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Diff: main.cpp
- Revision:
- 1:61f61158c345
- Parent:
- 0:bd34a367f642
- Child:
- 2:2616b6004345
--- a/main.cpp Tue Nov 24 06:41:43 2015 +0000
+++ b/main.cpp Mon Mar 28 10:11:31 2022 +0000
@@ -6,17 +6,62 @@
*/
#include "mbed.h"
+#include "lib_matrix.h"
-SPI spi(PTD2, PTD3, PTD1); // Arduino compatible MOSI, MISO, SCLK
-DigitalOut cs(PTD0); // Chip select
+SPI spi(D11,D12,D13); // Arduino compatible MOSI, MISO, SCLK
+DigitalOut cs(D14); // Chip select
+
+int main()
+{
+ cs = 1; // CS initially High
+ spi.format(8,0); // 8-bit format, mode 0,0
+ spi.frequency(1000000); // SCLK = 1 MHz
+ Init_MAX7219(); // Initialize the LED controller
+ char tab[20]="HELLOWO&&&";
+ int i=0;
+ while (1) {
+ disp(tab[i]);
+ i=(i+1)%10;
+ wait(0.5);
+ disp(' ');
+ wait(0.1); // 1 sec delay
+
+ }
+}
-const unsigned char led1[]= {
- 0xFF,0x18,0x18,0x18,0x18,0x18,0x18,0xFF
-}; //H
-const unsigned char led2[]= {
- 0x1F,0x60,0x80,0x40,0x40,0x80,0x60,0x1F
-}; //W
-
+void disp(char c)
+{
+ switch(c) {
+ case 'E' :
+ for(int i=1; i<9; i++) // Write first character (8 rows)
+ SPI_Write2(i,led_E[i-1]);
+ break;
+ case 'H' :
+ for(int i=1; i<9; i++) // Write first character (8 rows)
+ SPI_Write2(i,led_H[i-1]);
+ break;
+ case 'L' :
+ for(int i=1; i<9; i++) // Write first character (8 rows)
+ SPI_Write2(i,led_L[i-1]);
+ break;
+ case 'O' :
+ for(int i=1; i<9; i++) // Write first character (8 rows)
+ SPI_Write2(i,led_O[i-1]);
+ break;
+ case 'W' : // 1 sec delay
+ for(int i=1; i<9; i++) // Write second character
+ SPI_Write2(i,led_W[i-1]);
+ break;
+ case ' ' : // 1 sec delay
+ for(int i=1; i<9; i++) // Write second character
+ SPI_Write2(i,led_blank[i-1]);
+ break;
+ case '&' : // 1 sec delay
+ for(int i=1; i<9; i++) // Write second character
+ SPI_Write2(i,led_heart[i-1]);
+ break;
+ }
+}
/// Send two bytes to SPI bus
void SPI_Write2(unsigned char MSB, unsigned char LSB)
{
@@ -46,25 +91,3 @@
SPI_Write2(0x0F, 0x00); // Disable display test
wait_ms(500); // 500 ms delay
}
-
-int main()
-{
- cs = 1; // CS initially High
- spi.format(8,0); // 8-bit format, mode 0,0
- spi.frequency(1000000); // SCLK = 1 MHz
- Init_MAX7219(); // Initialize the LED controller
- while (1) {
- for(int i=1; i<9; i++) // Write first character (8 rows)
- SPI_Write2(i,led1[i-1]);
- wait(1); // 1 sec delay
- for(int i=1; i<9; i++) // Write second character
- SPI_Write2(i,led2[i-1]);
- wait(1); // 1 sec delay
- }
-}
-
-
-
-
-
-