Francisco Sarabia / Mbed 2 deprecated STM32F103C8T6_Matrizgauss

Dependencies:   mbed

Committer:
franciscos
Date:
Wed Mar 04 00:51:01 2020 +0000
Revision:
0:f16f5fb2d1b9
esime;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
franciscos 0:f16f5fb2d1b9 1 /* #############################################################################
franciscos 0:f16f5fb2d1b9 2 ** Archivo : main.c
franciscos 0:f16f5fb2d1b9 3 ** Proyecto : STM32F103C8_Matrizgauss
franciscos 0:f16f5fb2d1b9 4 ** Procesador : STM32F103C8T6
franciscos 0:f16f5fb2d1b9 5 ** Plataforma : Blue Pill
franciscos 0:f16f5fb2d1b9 6 ** Herramienta : Mbed Compiler
franciscos 0:f16f5fb2d1b9 7 ** Version : Driver 01.01
franciscos 0:f16f5fb2d1b9 8 ** Compilador : GNU C Compiler
franciscos 0:f16f5fb2d1b9 9 ** Fecha/Hora : 17-02-2020, 22:53, # CodeGen: 0
franciscos 0:f16f5fb2d1b9 10 ** Descripción :
franciscos 0:f16f5fb2d1b9 11 ** Este programa resuelve un sistema de ecuaciones de 3x3 por el metodo de Gauss
franciscos 0:f16f5fb2d1b9 12 ** This module contains user's application code.
franciscos 0:f16f5fb2d1b9 13 ** Componentes : GPIO, Timer, etc .
franciscos 0:f16f5fb2d1b9 14 ** Configuraciones : Includes, Stacks y Drivers externos
franciscos 0:f16f5fb2d1b9 15 ** Autores :
franciscos 0:f16f5fb2d1b9 16 ** ATEAM Development Group:
franciscos 0:f16f5fb2d1b9 17 ** - Francisco Sarabia López, Antulio Morgado Valle(plantilla)
franciscos 0:f16f5fb2d1b9 18 **
franciscos 0:f16f5fb2d1b9 19 ** Versión : Alpha
franciscos 0:f16f5fb2d1b9 20 ** Revisión : A
franciscos 0:f16f5fb2d1b9 21 ** Release : 0
franciscos 0:f16f5fb2d1b9 22 ** Bugs & Fixes :
franciscos 0:f16f5fb2d1b9 23 ** Date :
franciscos 0:f16f5fb2d1b9 24 **
franciscos 0:f16f5fb2d1b9 25 ** ###########################################################################*/
franciscos 0:f16f5fb2d1b9 26 /*
franciscos 0:f16f5fb2d1b9 27 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
franciscos 0:f16f5fb2d1b9 28 : Includes
franciscos 0:f16f5fb2d1b9 29 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
franciscos 0:f16f5fb2d1b9 30 */
franciscos 0:f16f5fb2d1b9 31 #include "stm32f103c8t6.h"
franciscos 0:f16f5fb2d1b9 32 #include "mbed.h"
franciscos 0:f16f5fb2d1b9 33 #include "Serial.h"
franciscos 0:f16f5fb2d1b9 34 //#include "LedRGB.h"
franciscos 0:f16f5fb2d1b9 35 #include "stdio.h"
franciscos 0:f16f5fb2d1b9 36
franciscos 0:f16f5fb2d1b9 37 /*
franciscos 0:f16f5fb2d1b9 38 :...............................................................................
franciscos 0:f16f5fb2d1b9 39 : Definiciones
franciscos 0:f16f5fb2d1b9 40 :...............................................................................
franciscos 0:f16f5fb2d1b9 41 */
franciscos 0:f16f5fb2d1b9 42 #define on 0 // Estado para boton presionado
franciscos 0:f16f5fb2d1b9 43 #define off 1 // Estado para boton sin presionar
franciscos 0:f16f5fb2d1b9 44 #define hold 2 // Estado para boton mantenido
franciscos 0:f16f5fb2d1b9 45 #define release 3 // Estado para boton liberado
franciscos 0:f16f5fb2d1b9 46 #define FALSE 0 // Estado FALSO
franciscos 0:f16f5fb2d1b9 47 #define TRUE 1 // Estado VERDADERO
franciscos 0:f16f5fb2d1b9 48 #define Ticker_Rate 1000 // Periodo de interrupción Ticker (us)
franciscos 0:f16f5fb2d1b9 49 #define Baud_Rate 115200 // Velocidad de Transmisión de la Terminal
franciscos 0:f16f5fb2d1b9 50 /*
franciscos 0:f16f5fb2d1b9 51 +-------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 52 | Configuración de Puertos
franciscos 0:f16f5fb2d1b9 53 +-------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 54 */
franciscos 0:f16f5fb2d1b9 55 Ticker TimerInt; // Inicializa la Interrupción por Timer
franciscos 0:f16f5fb2d1b9 56 DigitalOut led_monitor(LED1); // Inicializa el LED Monitor
franciscos 0:f16f5fb2d1b9 57 DigitalOut led_testigo(PB_1); // Inicializa el LED Testigo
franciscos 0:f16f5fb2d1b9 58 PwmOut led_pwm(PA_7); // Inicializa el LED PWM
franciscos 0:f16f5fb2d1b9 59 AnalogIn sensor1(PB_0); // Inicializa Canal Analógico para sensor 1
franciscos 0:f16f5fb2d1b9 60 Serial terminal(PA_2, PA_3); // Inicializa la Comunicación Serial a la PC
franciscos 0:f16f5fb2d1b9 61 /*
franciscos 0:f16f5fb2d1b9 62 +-------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 63 | Variables Globales de Usuario
franciscos 0:f16f5fb2d1b9 64 +-------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 65 */
franciscos 0:f16f5fb2d1b9 66 uint16_t Rate=Ticker_Rate/2; // Velocidad de barrido (500us = 0.5ms)
franciscos 0:f16f5fb2d1b9 67 uint16_t counter=250; // Cuenta inicial de 250us
franciscos 0:f16f5fb2d1b9 68 /* END variables */
franciscos 0:f16f5fb2d1b9 69
franciscos 0:f16f5fb2d1b9 70 /*
franciscos 0:f16f5fb2d1b9 71 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
franciscos 0:f16f5fb2d1b9 72 | Definición de Funciones Prototipo y Rutinas de los Vectores de Interrupción
franciscos 0:f16f5fb2d1b9 73 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
franciscos 0:f16f5fb2d1b9 74 */
franciscos 0:f16f5fb2d1b9 75 // Las Definiciones de Funciones Prototipo
franciscos 0:f16f5fb2d1b9 76 // y Apuntadores a Vectores de Interrupciones van aquí !
franciscos 0:f16f5fb2d1b9 77 void TimerInt_OnInterrupt(void);
franciscos 0:f16f5fb2d1b9 78 void Blinking_Led(void);
franciscos 0:f16f5fb2d1b9 79 void ImprimirMatriz(float Matriz[3][4]);
franciscos 0:f16f5fb2d1b9 80 void IntercambiaFilas(float Matriz[][4], int F, int C);
franciscos 0:f16f5fb2d1b9 81 void EliminacionDiag(float Matriz[][4], int C);
franciscos 0:f16f5fb2d1b9 82
franciscos 0:f16f5fb2d1b9 83 /* END prototypes */
franciscos 0:f16f5fb2d1b9 84
franciscos 0:f16f5fb2d1b9 85 /* END definitions */
franciscos 0:f16f5fb2d1b9 86 /*
franciscos 0:f16f5fb2d1b9 87 #===============================================================================
franciscos 0:f16f5fb2d1b9 88 |
franciscos 0:f16f5fb2d1b9 89 | P R O G R A M A P R I N C I P A L
franciscos 0:f16f5fb2d1b9 90 |
franciscos 0:f16f5fb2d1b9 91 #===============================================================================
franciscos 0:f16f5fb2d1b9 92 */
franciscos 0:f16f5fb2d1b9 93 int main()
franciscos 0:f16f5fb2d1b9 94 { // Inicialización de variables, puertos e interrupciones
franciscos 0:f16f5fb2d1b9 95 confSysClock(); // Inicialización del Sistema, Configure system clock (72MHz HSE clock, 48MHz USB clock)
franciscos 0:f16f5fb2d1b9 96 TimerInt.attach_us(&TimerInt_OnInterrupt, Ticker_Rate); // Le asigna el periodo de interrupción de 1ms (Ticker_Rate=1000)
franciscos 0:f16f5fb2d1b9 97
franciscos 0:f16f5fb2d1b9 98 terminal.baud(Baud_Rate); // Se configura la velocidad de transmisión e inicia la comunicación serial.
franciscos 0:f16f5fb2d1b9 99 terminal.printf(" System is Wake Up!.\n\r");
franciscos 0:f16f5fb2d1b9 100
franciscos 0:f16f5fb2d1b9 101 while (true) // El Lazo del Programa principal está aquí !!!
franciscos 0:f16f5fb2d1b9 102 {
franciscos 0:f16f5fb2d1b9 103 Blinking_Led(); // Parapadeo del LED por Software
franciscos 0:f16f5fb2d1b9 104 led_pwm = sensor1.read(); // El Led se encenderá de acuerdo al valor del sensor
franciscos 0:f16f5fb2d1b9 105 terminal.printf("INSTITUTO POLITECNICO NACIONAL \r\n");
franciscos 0:f16f5fb2d1b9 106 terminal.printf("\n EEEEEEE SSSS IIIIIII M M EEEEEEE \r\n");
franciscos 0:f16f5fb2d1b9 107 terminal.printf( " E S I M M M M E \r\n");
franciscos 0:f16f5fb2d1b9 108 terminal.printf( " EEEEEEE SSSS I M MM M EEEEEEE \r\n");
franciscos 0:f16f5fb2d1b9 109 terminal.printf( " E S I M M E \r\n");
franciscos 0:f16f5fb2d1b9 110 terminal.printf( " EEEEEEE SSSS IIIIIII M M EEEEEEE \r\n");
franciscos 0:f16f5fb2d1b9 111 terminal.printf( "\n Francisco Sarabia Lopez\r\n");
franciscos 0:f16f5fb2d1b9 112 terminal.printf( "\n Ingenieria en Comunicaciones y Electronica\r\n");
franciscos 0:f16f5fb2d1b9 113
franciscos 0:f16f5fb2d1b9 114 //----------------------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 115 // Funciones aparte
franciscos 0:f16f5fb2d1b9 116 //----------------------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 117
franciscos 0:f16f5fb2d1b9 118 //Funcion imprimir
franciscos 0:f16f5fb2d1b9 119
franciscos 0:f16f5fb2d1b9 120 //----------------------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 121 // Main de matriz por metodo de gauss
franciscos 0:f16f5fb2d1b9 122 //----------------------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 123 float matriz[3][4];//matriz con los datos igualados de las ecuaciones incluidas
franciscos 0:f16f5fb2d1b9 124 float X,Y,Z;
franciscos 0:f16f5fb2d1b9 125 float FAux1[4];//Filas auxiliares
franciscos 0:f16f5fb2d1b9 126 float FAux2[4];
franciscos 0:f16f5fb2d1b9 127 int i,j,k,f,c;
franciscos 0:f16f5fb2d1b9 128 //Valores de prueba
franciscos 0:f16f5fb2d1b9 129 matriz[0][0]=0;
franciscos 0:f16f5fb2d1b9 130 matriz[0][1]=2;
franciscos 0:f16f5fb2d1b9 131 matriz[0][2]=0.5;
franciscos 0:f16f5fb2d1b9 132 matriz[0][3]=7; //Igualdad primera ecuacion
franciscos 0:f16f5fb2d1b9 133 matriz[1][0]=5;
franciscos 0:f16f5fb2d1b9 134 matriz[1][1]=0.33;
franciscos 0:f16f5fb2d1b9 135 matriz[1][2]=1;
franciscos 0:f16f5fb2d1b9 136 matriz[1][3]=0; //Igualdad segunda ecuacion
franciscos 0:f16f5fb2d1b9 137 matriz[2][0]=3;
franciscos 0:f16f5fb2d1b9 138 matriz[2][1]=4;
franciscos 0:f16f5fb2d1b9 139 matriz[2][2]=2;
franciscos 0:f16f5fb2d1b9 140 matriz[2][3]=1; //Igualdad tercera ecuacion
franciscos 0:f16f5fb2d1b9 141
franciscos 0:f16f5fb2d1b9 142 ImprimirMatriz(matriz);
franciscos 0:f16f5fb2d1b9 143
franciscos 0:f16f5fb2d1b9 144 for (i=0;i<3;i++)
franciscos 0:f16f5fb2d1b9 145 {
franciscos 0:f16f5fb2d1b9 146 //Compriobacion de diagonales diferentes a cero
franciscos 0:f16f5fb2d1b9 147 if(matriz[i][i]==0)
franciscos 0:f16f5fb2d1b9 148 {
franciscos 0:f16f5fb2d1b9 149 f=i;
franciscos 0:f16f5fb2d1b9 150 c=i;
franciscos 0:f16f5fb2d1b9 151 IntercambiaFilas(matriz,f,c);
franciscos 0:f16f5fb2d1b9 152 ImprimirMatriz(matriz);
franciscos 0:f16f5fb2d1b9 153 }
franciscos 0:f16f5fb2d1b9 154 //Eliminacion de numeros
franciscos 0:f16f5fb2d1b9 155 EliminacionDiag(matriz,i);
franciscos 0:f16f5fb2d1b9 156 ImprimirMatriz(matriz);
franciscos 0:f16f5fb2d1b9 157 }
franciscos 0:f16f5fb2d1b9 158 //Formulas para las incógnitas
franciscos 0:f16f5fb2d1b9 159 Z=matriz[2][3]/matriz[2][2];
franciscos 0:f16f5fb2d1b9 160 Y=(matriz[1][3]-(Z*matriz[1][2]))/matriz[1][1];
franciscos 0:f16f5fb2d1b9 161 X=(matriz[0][3]-(Z*matriz[0][2])-(Y*matriz[0][1]))/matriz[0][0];
franciscos 0:f16f5fb2d1b9 162
franciscos 0:f16f5fb2d1b9 163 terminal.printf("\n\n X= %.2f \t Y= %.2f \t Z= %.2f ", X, Y, Z);
franciscos 0:f16f5fb2d1b9 164 return 0;
franciscos 0:f16f5fb2d1b9 165
franciscos 0:f16f5fb2d1b9 166 //----------------------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 167 // Finaliza Main de Gauss
franciscos 0:f16f5fb2d1b9 168 //----------------------------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 169
franciscos 0:f16f5fb2d1b9 170 }
franciscos 0:f16f5fb2d1b9 171 }
franciscos 0:f16f5fb2d1b9 172 /* END main */
franciscos 0:f16f5fb2d1b9 173
franciscos 0:f16f5fb2d1b9 174 /*
franciscos 0:f16f5fb2d1b9 175 ................................................................................
franciscos 0:f16f5fb2d1b9 176 : Rutinas de los Vectores de Interrupción
franciscos 0:f16f5fb2d1b9 177 ................................................................................
franciscos 0:f16f5fb2d1b9 178 */
franciscos 0:f16f5fb2d1b9 179 // Las Rutinas de Atención a Interrupciones van aquí !
franciscos 0:f16f5fb2d1b9 180 void TimerInt_OnInterrupt() // Rutina de Atención al Ticker
franciscos 0:f16f5fb2d1b9 181 {
franciscos 0:f16f5fb2d1b9 182
franciscos 0:f16f5fb2d1b9 183 }
franciscos 0:f16f5fb2d1b9 184 /* END Events */
franciscos 0:f16f5fb2d1b9 185 /*
franciscos 0:f16f5fb2d1b9 186 ________________________________________________________________________________
franciscos 0:f16f5fb2d1b9 187 |
franciscos 0:f16f5fb2d1b9 188 | Funciones Prototipo
franciscos 0:f16f5fb2d1b9 189 |_______________________________________________________________________________
franciscos 0:f16f5fb2d1b9 190 */
franciscos 0:f16f5fb2d1b9 191 // Las Funciones Prototipo van aquí !
franciscos 0:f16f5fb2d1b9 192 void Blinking_Led() // Software Blinking routine for LED
franciscos 0:f16f5fb2d1b9 193 {
franciscos 0:f16f5fb2d1b9 194 // The on-board LED is connected, via a resistor, to +3.3V (not to GND).
franciscos 0:f16f5fb2d1b9 195 // So to turn the LED on or off we have to set it to 0 or 1 respectively
franciscos 0:f16f5fb2d1b9 196 led_testigo = 1; // turn the LED on (using Positive Logic)
franciscos 0:f16f5fb2d1b9 197 wait_ms(200); // 200 millisecond
franciscos 0:f16f5fb2d1b9 198 led_testigo = 0; // turn the LED off (using Positive Logic)
franciscos 0:f16f5fb2d1b9 199 wait_ms(1000); // 1000 millisecond
franciscos 0:f16f5fb2d1b9 200 }
franciscos 0:f16f5fb2d1b9 201
franciscos 0:f16f5fb2d1b9 202 void ImprimirMatriz(float Matriz[3][4])
franciscos 0:f16f5fb2d1b9 203 {
franciscos 0:f16f5fb2d1b9 204 int i,j;
franciscos 0:f16f5fb2d1b9 205 for(i=0;i<3;i++)
franciscos 0:f16f5fb2d1b9 206 {
franciscos 0:f16f5fb2d1b9 207 for(j=0;j<3;j++)
franciscos 0:f16f5fb2d1b9 208 {
franciscos 0:f16f5fb2d1b9 209 printf(" %7.2f", Matriz[i][j]);
franciscos 0:f16f5fb2d1b9 210 if(j==0)
franciscos 0:f16f5fb2d1b9 211 {
franciscos 0:f16f5fb2d1b9 212 printf("x");
franciscos 0:f16f5fb2d1b9 213 }
franciscos 0:f16f5fb2d1b9 214 else if(j==1)
franciscos 0:f16f5fb2d1b9 215 {
franciscos 0:f16f5fb2d1b9 216 printf("y");
franciscos 0:f16f5fb2d1b9 217 }
franciscos 0:f16f5fb2d1b9 218 else if(j==2)
franciscos 0:f16f5fb2d1b9 219 {
franciscos 0:f16f5fb2d1b9 220 printf("z");
franciscos 0:f16f5fb2d1b9 221 }
franciscos 0:f16f5fb2d1b9 222 }
franciscos 0:f16f5fb2d1b9 223 printf("\t = %7.2f \n", Matriz[i][j]);
franciscos 0:f16f5fb2d1b9 224 }
franciscos 0:f16f5fb2d1b9 225 printf("\n\n");
franciscos 0:f16f5fb2d1b9 226 }
franciscos 0:f16f5fb2d1b9 227
franciscos 0:f16f5fb2d1b9 228 void IntercambiaFilas(float Matriz[][4], int F, int C) //Intercambio de filas si el valor (F,C)=0;
franciscos 0:f16f5fb2d1b9 229 {
franciscos 0:f16f5fb2d1b9 230 int i,j,k;
franciscos 0:f16f5fb2d1b9 231 float FAux1[4];
franciscos 0:f16f5fb2d1b9 232 float FAux2[4];
franciscos 0:f16f5fb2d1b9 233
franciscos 0:f16f5fb2d1b9 234 if (Matriz[F][C]==0)
franciscos 0:f16f5fb2d1b9 235 {
franciscos 0:f16f5fb2d1b9 236 j=0;
franciscos 0:f16f5fb2d1b9 237 for(k=0;k<3;k++)
franciscos 0:f16f5fb2d1b9 238 {
franciscos 0:f16f5fb2d1b9 239 if (Matriz[k][C]!=0)
franciscos 0:f16f5fb2d1b9 240 {
franciscos 0:f16f5fb2d1b9 241 j=k;
franciscos 0:f16f5fb2d1b9 242 }
franciscos 0:f16f5fb2d1b9 243 if(j!=0)
franciscos 0:f16f5fb2d1b9 244 {
franciscos 0:f16f5fb2d1b9 245 k=3;
franciscos 0:f16f5fb2d1b9 246 }
franciscos 0:f16f5fb2d1b9 247 }
franciscos 0:f16f5fb2d1b9 248 /*if (k==3 && j==0)
franciscos 0:f16f5fb2d1b9 249 {
franciscos 0:f16f5fb2d1b9 250 printf("\n\n Nmms esta no es una matriz 3x3, resuelvela solo >:c \n\n");
franciscos 0:f16f5fb2d1b9 251 }*/
franciscos 0:f16f5fb2d1b9 252
franciscos 0:f16f5fb2d1b9 253 printf("\t Se intercambia la fila %d por la fila %d \n\n", F+1, j+1);
franciscos 0:f16f5fb2d1b9 254 for(i=0;i<4;i++)
franciscos 0:f16f5fb2d1b9 255 {
franciscos 0:f16f5fb2d1b9 256 FAux1[i]=Matriz[F][i];
franciscos 0:f16f5fb2d1b9 257 FAux2[i]=Matriz[j][i];
franciscos 0:f16f5fb2d1b9 258 }
franciscos 0:f16f5fb2d1b9 259 for(i=0;i<4;i++)
franciscos 0:f16f5fb2d1b9 260 {
franciscos 0:f16f5fb2d1b9 261 Matriz[F][i]=FAux2[i];
franciscos 0:f16f5fb2d1b9 262 Matriz[j][i]=FAux1[i];
franciscos 0:f16f5fb2d1b9 263 }
franciscos 0:f16f5fb2d1b9 264 }
franciscos 0:f16f5fb2d1b9 265 }
franciscos 0:f16f5fb2d1b9 266
franciscos 0:f16f5fb2d1b9 267 void EliminacionDiag(float Matriz[][4], int C)
franciscos 0:f16f5fb2d1b9 268 {
franciscos 0:f16f5fb2d1b9 269 float coef,coef1;
franciscos 0:f16f5fb2d1b9 270 float FAux1[4];
franciscos 0:f16f5fb2d1b9 271 float FAux2[4];
franciscos 0:f16f5fb2d1b9 272 int i,j,k;
franciscos 0:f16f5fb2d1b9 273 coef=Matriz[C][C];
franciscos 0:f16f5fb2d1b9 274
franciscos 0:f16f5fb2d1b9 275 for (i=0;i<3;i++)
franciscos 0:f16f5fb2d1b9 276 {
franciscos 0:f16f5fb2d1b9 277
franciscos 0:f16f5fb2d1b9 278 if(i!=C)
franciscos 0:f16f5fb2d1b9 279 {
franciscos 0:f16f5fb2d1b9 280 if(Matriz[i][C]!=0)
franciscos 0:f16f5fb2d1b9 281 {
franciscos 0:f16f5fb2d1b9 282 coef1=Matriz[i][C];
franciscos 0:f16f5fb2d1b9 283
franciscos 0:f16f5fb2d1b9 284 for (j=0; j<4; j++)
franciscos 0:f16f5fb2d1b9 285 {
franciscos 0:f16f5fb2d1b9 286 FAux1[j]=coef1*Matriz[C][j];
franciscos 0:f16f5fb2d1b9 287 FAux2[j]=coef*Matriz[i][j];
franciscos 0:f16f5fb2d1b9 288 }
franciscos 0:f16f5fb2d1b9 289
franciscos 0:f16f5fb2d1b9 290 for (k=0;k<4;k++)
franciscos 0:f16f5fb2d1b9 291 {
franciscos 0:f16f5fb2d1b9 292 FAux2[k]=FAux1[k]-FAux2[k];
franciscos 0:f16f5fb2d1b9 293 }
franciscos 0:f16f5fb2d1b9 294
franciscos 0:f16f5fb2d1b9 295 for (k=0;k<4;k++)
franciscos 0:f16f5fb2d1b9 296 {
franciscos 0:f16f5fb2d1b9 297 Matriz[i][k]=FAux2[k];
franciscos 0:f16f5fb2d1b9 298 }
franciscos 0:f16f5fb2d1b9 299 }
franciscos 0:f16f5fb2d1b9 300 else
franciscos 0:f16f5fb2d1b9 301 {
franciscos 0:f16f5fb2d1b9 302 printf("\n\n\t dato (%d,%d) es cero \n\n",i,C);
franciscos 0:f16f5fb2d1b9 303 }
franciscos 0:f16f5fb2d1b9 304 }
franciscos 0:f16f5fb2d1b9 305 }
franciscos 0:f16f5fb2d1b9 306 }
franciscos 0:f16f5fb2d1b9 307 /* END functions */
franciscos 0:f16f5fb2d1b9 308
franciscos 0:f16f5fb2d1b9 309 /* END program */
franciscos 0:f16f5fb2d1b9 310
franciscos 0:f16f5fb2d1b9 311 /*+-----------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 312 *+ La documentación va aquí!:
franciscos 0:f16f5fb2d1b9 313 *+-----------------------------------------------------------------------------
franciscos 0:f16f5fb2d1b9 314 *+
franciscos 0:f16f5fb2d1b9 315 *+
franciscos 0:f16f5fb2d1b9 316 *+----------------------------------------------------------------------------*
franciscos 0:f16f5fb2d1b9 317 *+
franciscos 0:f16f5fb2d1b9 318 *+ Powered by
franciscos 0:f16f5fb2d1b9 319 *+
franciscos 0:f16f5fb2d1b9 320 *+ T H E A N T U L I U ' S T E A M R&D Unltd
franciscos 0:f16f5fb2d1b9 321 *+
franciscos 0:f16f5fb2d1b9 322 *+ Research, Development, Systems, Equipment, Support & Spare Parts.
franciscos 0:f16f5fb2d1b9 323 *+ (C) Copyright 1989-2019, All Rights Reserved
franciscos 0:f16f5fb2d1b9 324 *+
franciscos 0:f16f5fb2d1b9 325 *+ Welcome to The Beaners Proyect Community!
franciscos 0:f16f5fb2d1b9 326 *+----------------------------------------------------------------------------*/
franciscos 0:f16f5fb2d1b9 327
franciscos 0:f16f5fb2d1b9 328 /* END documentation */
franciscos 0:f16f5fb2d1b9 329
franciscos 0:f16f5fb2d1b9 330 /* END Mbed */