Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Wide Modulation), bsicamente consiste en enviar a los terminales de control un tren de pulsos los cuales varan en mayor o menor medida el tiempo en que se mantiene el nivel alto de esos pulsos, manteniendo la frecuencia constante, as...
Con esta forma de control la cantidad de corriente sigue siendo la misma, la tensin no vara y en consecuencia el torque del motor se mantiene, que es justamente lo que estbamos buscando. Un ejemplo para generar un PWM es utilizando un Timer NE555 conectado como aestable, como muestra la figura:
Figura 11. Circuito para generar seal PWM con Timer 555.
Esta es la secuencia de control normal, ofrece un funcionamiento suave y es el modo a usar normalmente.
El control de medio paso se debe usar sol cuando tengamos la necesidad de obtener una resolucin mayor para alguna aplicacin en concreto.
Decimal : D'100' ? .100 Hexadecimal : H'64' ? 0x64 ? 64 Octal : O'144' Binario : B'01101100' ASCII : A'C' ? 'C'
w : Registro W, similar al acumulador, es el registro de trabajo. f : Campo de 5 bits (fffff), contiene la direcci? n del banco de registros, que ocupa el banco 0 del ? rea de datos. Direcciona uno de esos registros. k : Representa una constante de 8 bits. d : Bit del c? digo OP de la instrucci? n. Selecciona el destino donde se guarda el resultado de una operaci? n. Si d=0, el destino es W, y si d=1 el destino es f. b : Determina la posici? n de un bit dentro de un registro de 8 bits, (o sea, tomar? valores entre 0 y 7)
SIMBOLOS
[] : Opciones. () : Contenido. => : Se asigna a ... <> : Campo de bits de un registro. E : Pertenece al conjunto ... Label : Nombre de la etiqueta. TOS : Cima de la pila con 8 niveles en la gama media. PC : Contador de programa que direcciona la memoria de instrucciones.
FLAGS Los Flags o banderas son marcadores, representados por bits dentro del registro STATUS, y son:
Z : Flag de cero, se pone a 1 cuando una operaci? n l? gica o aritm? tica da 0 (cero)como resultado. En cualquier otro caso se pone a 0. C : Flag de Carry, se pone a 1 cuando la operaci? n que le afecta sobrepasa el nivel de representaci? n del procesador, en nuestro caso es de 8 BIT's , de esta manera si sumamos a 0b11111111 un 0b00000011 el resultado ser? a 0b00000010 y el BIT de Carry pasar? a a 1.
DC : Flag de carry del nibble inferior, este se comporta igual que el BIT de Carry, solo que el l? mite de representaci? n son los 4 bits inferiores, de esta manera si tenemos 0b00001111 y sumamos 0b00000111, el resultado ser? 0b00010110 y el BIT de DC se pone a 1, el BIT de Carry estar?a 0 al no superarse los 8 bits y el de Z a 0 al ser el n? mero diferente de 0.
No te preocupes si te quedan dudas respecto a los FLAGS, ? stas se aclarar? n a medida que vayas avanzando en el tutorial. Ahora si, ya podemos empezar con el set de instrucciones:
W : es el registro de trabajo y almacena datos de forma moment? nea f : es la direcci? n de un registro, si es llamada apunta al contenido de ese registro d : es el destino donde se guarda el resultado de una operaci? n, si es 1 se guarda en el registro f, y si es 0 en W. OPERACIONES ORIENTADAS A REGISTROS Nemot? cnicos ADDWF ANDWF CLRF CLRW COMF DECF DECFSZ INCF INCFSZ IORWF MOVF MOVWF NOP RLF RRF SUBWF SWAPF Operaci? n Estados afectados C,DC,Z Z Z Z Z Z Z Z Z C C C,DC,Z
f,d Sumar W y f f,d AND entre W y f f Limpiar f Limpiar W f,d Complementar f f,d Decrementar f f,d Decrementar f, saltar si cero f,d Incrementar f f,d Incrementar f, saltar si cero f,d OR entre W y f f,d Mover f f Mover W a F No Operaci? n f,d Rotar a la izquierda a trav? s del carry f,d Rotar a la derecha a trav? s del carry f,d Restar W de f f,d Intercambiar nibbles de f
XORWF
En este otro cuadro, a dem? s de f aparece b. que vendr? a a ser uno de los 8 bits del registro f OPERACIONES ORIENTADAS A BITS Nemot? cnicos BCF BSF BTFSC BTFSS f,b f,b f,b f,b Operaci? n Limpiar bit b de f Activar bit b de f Probar bit b de f, saltar si cero Probar bit b de f, saltar si uno Estados afectados
Por ? ltimo, aparece k que viene a ser una constante de 8 bit, es decir que k puede tomar valores entre 0 y 255, ? stos inclusive, seg? n la instrucci? n a utilizar
OPERACIONES ORIENTADAS A LITERALES Y DE CONTROL Nemot? cnicos ADDLW ANDLW CALL CLRWDT GOTO IORLW MOVLW RETFIE RETLW RETURN k k k K K K K Operaci? n Sumar literal k a W AND entre k y W Llamar subrutina Limpiar WDT Salta a direcci? nk OR entre k y W Cargar W con literal k Retornar de interrupci? n Retornar y cargar W con k Retornar de subrutina Estados afectados C,DC,Z Z -TO,-TD Z
-TO,-TD C,DC,Z Z