Algoritmo de un cronometro de conteo de horas, segundos decenas de milisegundos, a partir del miltiplexado de 6 display de 7 segmentos.
Fork of Ticker_HelloWorld by
fnc_usuario.h@5:8e7123e9b75b, 2019-09-22 (annotated)
- Committer:
- Javierdf
- Date:
- Sun Sep 22 03:20:08 2019 +0000
- Revision:
- 5:8e7123e9b75b
- Parent:
- 4:a60b811bfe1e
KL46 ticker D7sMUX
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
AdrianMA | 4:a60b811bfe1e | 1 | /******************************************************************************/ |
AdrianMA | 4:a60b811bfe1e | 2 | /*------------------------------------------------------------------------------ |
AdrianMA | 4:a60b811bfe1e | 3 | Función de usuario para separar de una variable tipo entera sus digitos que la |
AdrianMA | 4:a60b811bfe1e | 4 | integran |
AdrianMA | 4:a60b811bfe1e | 5 | |
AdrianMA | 4:a60b811bfe1e | 6 | *Parametros de entrada: |
AdrianMA | 4:a60b811bfe1e | 7 | -int número: variable a la que se le van a separar sus digitos |
AdrianMA | 4:a60b811bfe1e | 8 | -int *digito_a: variable apuntador(variable pasada por referencia) para almacenar |
AdrianMA | 4:a60b811bfe1e | 9 | el digito de las unidades separado de la variable número |
AdrianMA | 4:a60b811bfe1e | 10 | -int *digito_b: variable apuntador(variable pasada por referencia) para almacenar |
AdrianMA | 4:a60b811bfe1e | 11 | el digito de las decenas separado de la variable número |
AdrianMA | 4:a60b811bfe1e | 12 | |
AdrianMA | 4:a60b811bfe1e | 13 | *Parametro de salida: NINGUNO |
AdrianMA | 4:a60b811bfe1e | 14 | |
AdrianMA | 4:a60b811bfe1e | 15 | ------------------------------------------------------------------------------*/ |
AdrianMA | 4:a60b811bfe1e | 16 | void num2dig(int numero,int *digito_a,int *digito_b){//inicio de la función num2dig |
AdrianMA | 4:a60b811bfe1e | 17 | int num;//variable para almacenamiento y manipulación de el valor numerico a convertir |
AdrianMA | 4:a60b811bfe1e | 18 | int ant;//variable auxiliar para la conversión de datos |
AdrianMA | 4:a60b811bfe1e | 19 | int dummy=0; |
AdrianMA | 4:a60b811bfe1e | 20 | /*segmento de codigo no util para el trabajo, solo se incerta para eliminar warning*/ |
AdrianMA | 4:a60b811bfe1e | 21 | *digito_a=dummy; |
AdrianMA | 4:a60b811bfe1e | 22 | *digito_b=dummy; |
AdrianMA | 4:a60b811bfe1e | 23 | dummy=(*digito_a); |
AdrianMA | 4:a60b811bfe1e | 24 | dummy=(*digito_b); |
AdrianMA | 4:a60b811bfe1e | 25 | /*fin segmento de codigo no util para el trabajo*/ |
AdrianMA | 4:a60b811bfe1e | 26 | |
AdrianMA | 4:a60b811bfe1e | 27 | num=numero;//Asignación del valor de conversión para su manipulación del algoritmo |
AdrianMA | 4:a60b811bfe1e | 28 | if(num>=0x0A){//inicio if-1 //Pregunta si el valor es mayor o igual a díez |
AdrianMA | 4:a60b811bfe1e | 29 | ant=num; //Guardado del valor numerico para su posterior manipulación |
AdrianMA | 4:a60b811bfe1e | 30 | num=num/0x0A; //División entre 0x0A, para conocer cuantas decenas contiene el número en cuestion |
AdrianMA | 4:a60b811bfe1e | 31 | *digito_a=(ant-num*0x0A); //Almacenaje de las unidades, a partir de la eliminación de las decenas de la cantidad |
AdrianMA | 4:a60b811bfe1e | 32 | *digito_b=num; //Almacenaje de las decenas del número |
AdrianMA | 4:a60b811bfe1e | 33 | }//fin if-1 |
AdrianMA | 4:a60b811bfe1e | 34 | else{//inicio else-1 //Condición en caso de que el número a separar sea menor a 0x0A |
AdrianMA | 4:a60b811bfe1e | 35 | *digito_a=num; //Almacenaje de las unidades del número a separar |
AdrianMA | 4:a60b811bfe1e | 36 | *digito_b=0; //Almacenaje de la nulidad de decenas |
AdrianMA | 4:a60b811bfe1e | 37 | }//fin else-1 |
AdrianMA | 4:a60b811bfe1e | 38 | }//fin de la función num2dig |
AdrianMA | 4:a60b811bfe1e | 39 | /******************************************************************************/ |