Programa Proton IDE de Un PIC Encoder Con Un 16F876A, 16 Bits de Resolución, Por Interrupción
Programa Proton IDE de Un PIC Encoder Con Un 16F876A, 16 Bits de Resolución, Por Interrupción
Programa Proton IDE de Un PIC Encoder Con Un 16F876A, 16 Bits de Resolución, Por Interrupción
Programa Proton IDE de un PIC Encoder con un 16F876A, 16 bits de resolucin, por Interrupcin. - Robtica
Robtica
Temas:
Pgina principal
Cinemtica Inversa I
Cinemtica Inversa II
Cinemtica Inversa III
Cinemtica Inversa IV
Cinemtica para brazo
robot Delta
Trayectorias
Encoder
>
Encoder por Software
>
Control de Motores DC
>
Control de
un motor con el PIC 16F876A, 16 bits de resolucin, por Interrupcin.
>
Simuladores de Brazo
Robot
Primera Versin:
Emulador RV-2AJ
Encoder
Encoder Magntico
Encoder por Software
Encoder por Hardware
Control de Motores DC
USB Bulk Transfer
Mltiples encoders por
USB
nRF24L01
Fabricar Brazo Robot
Brazo por RS232
DTR-RTS-CTS-DSR...
Bresenham 2D
Bresenham 3D
Bresenham 6D
Algoritmo DDA
YouTube Robots
Contacto
Mapa del sitio
Device=16F876A
REMINDERS = FALSE
Config XT_OSC, PWRTE_ON, CPD_OFF, WDT_OFF, BODEN_OFF,
LVP_OFF
REMINDERS = TRUE
ALL_DIGITAL = TRUE
On_INTERRUPT GoTo Interrupcion
Symbol INTE
=
externa.
Symbol INTF
=
externa.
Symbol GIE
=
Symbol INTEDG =
Flag = 1 Flanco
INTCON.4
INTCON.1
INTCON.7
OPTION_REG.6
subida.
GIE
= 1
generales.
INTE
= 1
externa RB0/INT.
INTEDG = 1
con flanco de subida.
Dim X As DWord
actual (32bits).
Dim P As DWord
(32bits).
TRISA
TRISB
TRISC
= %100011
= %11111111
= %11111111
PORTA.2 = 0
PORTA.3 = 0
PORTA.4 = 0
X=0
P=0
https://sites.google.com/site/proyectosroboticos/encoder/encoder-por-software/control-de-motores/control-de-un-motor-con-el-pic-16f876a-16-bits-de-resoluci
1/3
5/11/2014
Programa Proton IDE de un PIC Encoder con un 16F876A, 16 bits de resolucin, por Interrupcin. - Robtica
PORTA.2 = 0
PORTA.3 = 0
P.BYTE0 = PORTB
P.BYTE1 = PORTC
bits.
bits.
P.0
bits P0 y P1,
P.1
= PORTA.0
= PORTA.1
' sobre-escribindolos.
GoTo Bucle
EndIf
PORTA.4 = 1
If X > P Then
PORTA.2 = 0
PORTA.3 = 1
GoTo Bucle
EndIf
If X < P Then
PORTA.2 = 1
PORTA.3 = 0
GoTo Bucle
EndIf
GoTo Bucle
End
Interrupcion:
Encoder --------------
'-------- Decodificador de
Context SAVE
' Salva en contexto de los
registros antes de operar con la interrupcin.
If PORTB.0 = 1
Then
' Si RB0 se ha puesto a 1
(flanco de subida),
INTEDG = 0
' entonces activar la siguiente
interrupcin por flanco de bajada.
If PORTB.1 = 1 Then
' Si RB1 est a 1,
Inc X
' entonces incrementar el
contador X.
EndIf
Else
' Si RB0 se ha puesto a 0
(flanco de bajada),
INTEDG = 1
' entonces activar la siguiente
interrupcin por flanco de subida.
If PORTB.1 = 1 Then
' Si RB1 est 1,
Dec X
' entonces decrementar el
contador X.
EndIf
EndIf
https://sites.google.com/site/proyectosroboticos/encoder/encoder-por-software/control-de-motores/control-de-un-motor-con-el-pic-16f876a-16-bits-de-resoluci
2/3
5/11/2014
Programa Proton IDE de un PIC Encoder con un 16F876A, 16 bits de resolucin, por Interrupcin. - Robtica
INTF = 0
interrupcin RB0/INT
Iniciar sesin
Imprimir pgina
| Con la tecnologa de
Google Sites
https://sites.google.com/site/proyectosroboticos/encoder/encoder-por-software/control-de-motores/control-de-un-motor-con-el-pic-16f876a-16-bits-de-resoluci
3/3