Primer codigo

Dependencies:   MAX7219 mbed

Committer:
djinn77
Date:
Wed Sep 05 21:09:46 2018 +0000
Revision:
0:e82dd940ef80
Child:
1:5819a7e4abf2
Primer codigo, sin funciones ni nada, no tiene memoria;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
djinn77 0:e82dd940ef80 1 #include "mbed.h"
djinn77 0:e82dd940ef80 2 #include "max7219.h"
djinn77 0:e82dd940ef80 3
djinn77 0:e82dd940ef80 4 Max7219 deviceM(PB_15, PB_14, PB_13, PB_12);
djinn77 0:e82dd940ef80 5 uint8_t A, B, C, D, E, F, G, H = 0b00000000;
djinn77 0:e82dd940ef80 6 int matriz[]={A,B,C,D,E,F,G,H};
djinn77 0:e82dd940ef80 7
djinn77 0:e82dd940ef80 8 void imprimir(){
djinn77 0:e82dd940ef80 9 // Sele aplicac corriento a todas para facilitar selecccion
djinn77 0:e82dd940ef80 10
djinn77 0:e82dd940ef80 11 for(int i=0;i<=8;i++)
djinn77 0:e82dd940ef80 12 {
djinn77 0:e82dd940ef80 13
djinn77 0:e82dd940ef80 14 deviceM.write_digit(1,1,matriz[0]<<i);
djinn77 0:e82dd940ef80 15 deviceM.write_digit(1,2,matriz[1]<<i);
djinn77 0:e82dd940ef80 16 deviceM.write_digit(1,3,matriz[2]<<i);
djinn77 0:e82dd940ef80 17 deviceM.write_digit(1,4,matriz[3]<<i);
djinn77 0:e82dd940ef80 18 deviceM.write_digit(1,5,matriz[4]<<i);
djinn77 0:e82dd940ef80 19 deviceM.write_digit(1,6,matriz[5]<<i);
djinn77 0:e82dd940ef80 20 deviceM.write_digit(1,7,matriz[6]<<i);
djinn77 0:e82dd940ef80 21 deviceM.write_digit(1,8,matriz[7]<<i);
djinn77 0:e82dd940ef80 22 wait(1.0);
djinn77 0:e82dd940ef80 23
djinn77 0:e82dd940ef80 24 }
djinn77 0:e82dd940ef80 25 A=0b00000000;
djinn77 0:e82dd940ef80 26 B=0b00000000;
djinn77 0:e82dd940ef80 27 C=0b00000000;
djinn77 0:e82dd940ef80 28 D=0b00000000;
djinn77 0:e82dd940ef80 29 E=0b00000000;
djinn77 0:e82dd940ef80 30 F=0b00000000;
djinn77 0:e82dd940ef80 31 G=0b00000000;
djinn77 0:e82dd940ef80 32 H=0b00000000;
djinn77 0:e82dd940ef80 33 }
djinn77 0:e82dd940ef80 34
djinn77 0:e82dd940ef80 35 int main() {
djinn77 0:e82dd940ef80 36
djinn77 0:e82dd940ef80 37 max7219_configuration_t cfg = {
djinn77 0:e82dd940ef80 38 .device_number = 1,
djinn77 0:e82dd940ef80 39 .decode_mode = 0,
djinn77 0:e82dd940ef80 40 .intensity = Max7219::MAX7219_INTENSITY_8,
djinn77 0:e82dd940ef80 41 .scan_limit = Max7219::MAX7219_SCAN_8
djinn77 0:e82dd940ef80 42 };
djinn77 0:e82dd940ef80 43
djinn77 0:e82dd940ef80 44 deviceM.init_device(cfg);
djinn77 0:e82dd940ef80 45
djinn77 0:e82dd940ef80 46 deviceM.enable_device(1);
djinn77 0:e82dd940ef80 47
djinn77 0:e82dd940ef80 48 deviceM.set_display_test();
djinn77 0:e82dd940ef80 49 wait(1);
djinn77 0:e82dd940ef80 50 deviceM.clear_display_test();
djinn77 0:e82dd940ef80 51 wait(1);
djinn77 0:e82dd940ef80 52
djinn77 0:e82dd940ef80 53
djinn77 0:e82dd940ef80 54 while(1){
djinn77 0:e82dd940ef80 55
djinn77 0:e82dd940ef80 56 int pos=1;
djinn77 0:e82dd940ef80 57 int figura=1;
djinn77 0:e82dd940ef80 58 int giro=2;
djinn77 0:e82dd940ef80 59
djinn77 0:e82dd940ef80 60
djinn77 0:e82dd940ef80 61 switch(figura){
djinn77 0:e82dd940ef80 62 case 1:
djinn77 0:e82dd940ef80 63 // Cuadrado
djinn77 0:e82dd940ef80 64 matriz[pos]=0b000000011;
djinn77 0:e82dd940ef80 65 matriz[pos+1]=0b000000011;
djinn77 0:e82dd940ef80 66 imprimir();
djinn77 0:e82dd940ef80 67 break;
djinn77 0:e82dd940ef80 68 case 2:
djinn77 0:e82dd940ef80 69 //T
djinn77 0:e82dd940ef80 70 switch(giro){
djinn77 0:e82dd940ef80 71 case 1:
djinn77 0:e82dd940ef80 72 matriz[pos]= 0b000000001;
djinn77 0:e82dd940ef80 73 matriz[pos+1]=0b000000011;
djinn77 0:e82dd940ef80 74 matriz[pos+2]=0b000000001;
djinn77 0:e82dd940ef80 75 imprimir();
djinn77 0:e82dd940ef80 76 break;
djinn77 0:e82dd940ef80 77 case 2:
djinn77 0:e82dd940ef80 78 matriz[pos]= 0b000000010;
djinn77 0:e82dd940ef80 79 matriz[pos+1]=0b000000111;
djinn77 0:e82dd940ef80 80 matriz[pos+2]=0b000000000;
djinn77 0:e82dd940ef80 81 imprimir();
djinn77 0:e82dd940ef80 82 break;
djinn77 0:e82dd940ef80 83 case 3:
djinn77 0:e82dd940ef80 84 matriz[pos]= 0b000000000;
djinn77 0:e82dd940ef80 85 matriz[pos+1]=0b000000111;
djinn77 0:e82dd940ef80 86 matriz[pos+2]=0b000000010;
djinn77 0:e82dd940ef80 87 imprimir();
djinn77 0:e82dd940ef80 88 break;
djinn77 0:e82dd940ef80 89 case 4:
djinn77 0:e82dd940ef80 90 matriz[pos]= 0b000000010;
djinn77 0:e82dd940ef80 91 matriz[pos+1]=0b000000011;
djinn77 0:e82dd940ef80 92 matriz[pos+2]=0b000000010;
djinn77 0:e82dd940ef80 93 imprimir();
djinn77 0:e82dd940ef80 94 break;
djinn77 0:e82dd940ef80 95 }
djinn77 0:e82dd940ef80 96
djinn77 0:e82dd940ef80 97 break;
djinn77 0:e82dd940ef80 98 case 3:
djinn77 0:e82dd940ef80 99 //L
djinn77 0:e82dd940ef80 100 switch(giro){
djinn77 0:e82dd940ef80 101 case 1:
djinn77 0:e82dd940ef80 102 matriz[pos]= 0b000000011;
djinn77 0:e82dd940ef80 103 matriz[pos+1]=0b000000001;
djinn77 0:e82dd940ef80 104 matriz[pos+2]=0b000000001;
djinn77 0:e82dd940ef80 105 imprimir();
djinn77 0:e82dd940ef80 106 break;
djinn77 0:e82dd940ef80 107 case 2:
djinn77 0:e82dd940ef80 108 matriz[pos]= 0b000000111;
djinn77 0:e82dd940ef80 109 matriz[pos+1]=0b000000100;
djinn77 0:e82dd940ef80 110 matriz[pos+2]=0b000000000;
djinn77 0:e82dd940ef80 111 imprimir();
djinn77 0:e82dd940ef80 112 break;
djinn77 0:e82dd940ef80 113 case 3:
djinn77 0:e82dd940ef80 114 matriz[pos]= 0b000000010;
djinn77 0:e82dd940ef80 115 matriz[pos+1]=0b000000010;
djinn77 0:e82dd940ef80 116 matriz[pos+2]=0b000000011;
djinn77 0:e82dd940ef80 117 imprimir();
djinn77 0:e82dd940ef80 118 break;
djinn77 0:e82dd940ef80 119 case 4:
djinn77 0:e82dd940ef80 120 matriz[pos]= 0b000000000;
djinn77 0:e82dd940ef80 121 matriz[pos+1]=0b000000001;
djinn77 0:e82dd940ef80 122 matriz[pos+2]=0b000000111;
djinn77 0:e82dd940ef80 123 imprimir();
djinn77 0:e82dd940ef80 124 break;
djinn77 0:e82dd940ef80 125 }
djinn77 0:e82dd940ef80 126 break;
djinn77 0:e82dd940ef80 127 case 4:
djinn77 0:e82dd940ef80 128 //Z
djinn77 0:e82dd940ef80 129 switch(giro){
djinn77 0:e82dd940ef80 130 case 1:
djinn77 0:e82dd940ef80 131 matriz[pos]= 0b000000001;
djinn77 0:e82dd940ef80 132 matriz[pos+1]=0b000000011;
djinn77 0:e82dd940ef80 133 matriz[pos+2]=0b000000010;
djinn77 0:e82dd940ef80 134 imprimir();
djinn77 0:e82dd940ef80 135 break;
djinn77 0:e82dd940ef80 136 case 2:
djinn77 0:e82dd940ef80 137 matriz[pos]= 0b000000110;
djinn77 0:e82dd940ef80 138 matriz[pos+1]=0b000000011;
djinn77 0:e82dd940ef80 139 matriz[pos+2]=0b000000000;
djinn77 0:e82dd940ef80 140 imprimir();
djinn77 0:e82dd940ef80 141 break;
djinn77 0:e82dd940ef80 142 case 3:
djinn77 0:e82dd940ef80 143 matriz[pos]= 0b000000001;
djinn77 0:e82dd940ef80 144 matriz[pos+1]=0b000000011;
djinn77 0:e82dd940ef80 145 matriz[pos+2]=0b000000010;
djinn77 0:e82dd940ef80 146 imprimir();
djinn77 0:e82dd940ef80 147 break;
djinn77 0:e82dd940ef80 148 case 4:
djinn77 0:e82dd940ef80 149 matriz[pos]= 0b000000110;
djinn77 0:e82dd940ef80 150 matriz[pos+1]=0b000000011;
djinn77 0:e82dd940ef80 151 matriz[pos+2]=0b000000000;
djinn77 0:e82dd940ef80 152 imprimir();
djinn77 0:e82dd940ef80 153 break;
djinn77 0:e82dd940ef80 154 }
djinn77 0:e82dd940ef80 155 break;
djinn77 0:e82dd940ef80 156 case 5:
djinn77 0:e82dd940ef80 157 switch(giro){
djinn77 0:e82dd940ef80 158 case 1:
djinn77 0:e82dd940ef80 159 matriz[pos]= 0b000000001;
djinn77 0:e82dd940ef80 160 matriz[pos+1]=0b000000001;
djinn77 0:e82dd940ef80 161 matriz[pos+2]=0b000000001;
djinn77 0:e82dd940ef80 162 imprimir();
djinn77 0:e82dd940ef80 163 break;
djinn77 0:e82dd940ef80 164 case 2:
djinn77 0:e82dd940ef80 165 matriz[pos]= 0b000000000;
djinn77 0:e82dd940ef80 166 matriz[pos+1]=0b000000111;
djinn77 0:e82dd940ef80 167 matriz[pos+2]=0b000000000;
djinn77 0:e82dd940ef80 168 imprimir();
djinn77 0:e82dd940ef80 169 break;
djinn77 0:e82dd940ef80 170 }
djinn77 0:e82dd940ef80 171
djinn77 0:e82dd940ef80 172 break;
djinn77 0:e82dd940ef80 173
djinn77 0:e82dd940ef80 174
djinn77 0:e82dd940ef80 175
djinn77 0:e82dd940ef80 176
djinn77 0:e82dd940ef80 177
djinn77 0:e82dd940ef80 178 }
djinn77 0:e82dd940ef80 179
djinn77 0:e82dd940ef80 180 }
djinn77 0:e82dd940ef80 181 }