programacion mplab

la actividad es la siguiente pero no entiendo mucho asi que requiero de ustedes a que me expliquen pues hasta ahora empece a programar

actividad
Abra el proyecto A4 en MPLAB y ajuste los valores que se deben cargar en los registros: INTCON, OPTION_REG y TMR0 para que cuando se aplique un nivel alto en el terminal asignado se genere la señal en RE0. La asignación de frecuencia y terminal aparecen en la tabla de Excel.
elabore el esquema de circuito para probar el programa, en el termi-nal RE0 debe conectarse un amplificador para alimentar un parlante por medio del cual se escuche la señal.


entonces no entiendo como hacer para INTCON, OPTION_REG y TMR0


y la nota es la que esta en excel pero la verdad es que hasta ahora emece y no entiendo nada
 

Adjuntos

  • Nuevo Archivo WinRAR.rar
    8.6 KB · Visitas: 19
hola a todos, tengo un problema
tengo archivos en mplab y cuanddo los quiero abrir el progrma carga hasta eu sale un mensaje que dice "incapaz de cargar el espacio de trabajo debido a que el formato del fichero área de trabajo ha cambiado" este archivo que quiero abrir es de una version anterior al mplab que instale ... ayuda porfavor
 
hola a todos, tengo un problema
tengo archivos en mplab y cuanddo los quiero abrir el progrma carga hasta eu sale un mensaje que dice "incapaz de cargar el espacio de trabajo debido a que el formato del fichero área de trabajo ha cambiado" este archivo que quiero abrir es de una version anterior al mplab que instale ... ayuda porfavor
Sube el programa para ver si es un error del archivo.
Y si se puede reparar, con gusto lo regreso reparado.
 
aqui mando el archivo ... pero no creo que este mal ya que lo copie en otro nuevo proyecto y funciona ... mm pero no quisiera estar copiando y copiando el text.aim una y otra vez cuando solamente copio el archivo a otra compu u usb o simplemente a otra carpeta
 

Adjuntos

  • copiar foro.txt
    5 KB · Visitas: 10
aqui mando el archivo ... pero no creo que este mal ya que lo copie en otro nuevo proyecto y funciona ... mm pero no quisiera estar copiando y copiando el text.aim una y otra vez cuando solamente copio el archivo a otra compu u usb o simplemente a otra carpeta
Ok. El problema debe ser que al proyecto le faltan los archivos *.inc (delay.inc y lcd8.inc)
Estos archivos los debes incluir en la carpeta de tu proyecto.
Yo tengo unos que al parecer son los que se requieren para tu programa,
ya que al incluirlos al proyecto, se compila sin errores.
Si no los tienes, los adjunto por si acaso.
Suerte y hasta luego. :apreton:
 

Adjuntos

  • Include Files.rar
    3.6 KB · Visitas: 13
Gracias; de lso archivos que me mandaste la subrutina LCD8 es igual al que mi profe me dío; pero el del es diferente mmm aca te lo amndo aver a mi me funciona normal ... El problema de que no pod´´ia abrir mis archivos lo solucioné copiandondolos a un nuevo proyecto y ya ..

Una ayuda el simbolo de una variabley luego -1 o 1 que significa ejempl
"texto-1"
"texto+1"
 

Adjuntos

  • delay.txt
    1.3 KB · Visitas: 3
Gracias; de lso archivos que me mandaste la subrutina LCD8 es igual al que mi profe me dío; pero el del es diferente mmm aca te lo amndo aver a mi me funciona normal ... El problema de que no pod´´ia abrir mis archivos lo solucioné copiandondolos a un nuevo proyecto y ya ..

Una ayuda el simbolo de una variabley luego -1 o 1 que significa ejempl
"texto-1"
"texto+1"
Ok. Saludos.
Copie el archivo delay.inc a la carpeta del proyecto, y se compila igual sin errores.
Hice una simulación del proyecto en Proteus y no hace nada, no aparece nada en el Display. :confused:
Bien, si te refieres a por ejemplo, una instrucción así:
btfsc PORTA,0 ; Lee el estado de RA0 si esta en 0 salta una instrucción
goto $-1 ; Si esta en 1 esta sentencia hara que retorne una instrucción
bsf PORTA,4 ; Poner en 1 RA4
Viene siendo que goto $-1 regresa una línea o instrucción de la posición actual.
Y goto $+1 avanza una línea o instrucción de la posición actual.
Espero que esa haya sido tu duda. Suerte y hasta luego.
 
Ok. Saludos.
Copie el archivo delay.inc a la carpeta del proyecto, y se compila igual sin errores.
Hice una simulación del proyecto en Proteus y no hace nada, no aparece nada en el Display. :confused:
Bien, si te refieres a por ejemplo, una instrucción así:
btfsc PORTA,0 ; Lee el estado de RA0 si esta en 0 salta una instrucción
goto $-1 ; Si esta en 1 esta sentencia hara que retorne una instrucción
bsf PORTA,4 ; Poner en 1 RA4
Viene siendo que goto $-1 regresa una línea o instrucción de la posición actual.
Y goto $+1 avanza una línea o instrucción de la posición actual.
Espero que esa haya sido tu duda. Suerte y hasta luego.

Hola man aca tengo una preguntita ps porfa; encontre un programa para controlar un servomotor; yo buscaba con el pic 16f877a pero encontre este que es parecido
16F876a y bueno según el anuncio del programa la cabezara de comentarios indica que trabaja con un crystal de 1Mhz y reloj de 250Khz=4us.
En la hora de llamr al retardo llama a la subrutina RTARDOS.INC el cual trabaja con un crystal de 4Mhz; mi asombro es que funciona normal el circuito.
afecta la diferencia de los crystales? yo pienso que sí...
ahora si me podrias explicar como afecta estaría agradecido y si hay forma de arreglar para que esten con un mismo crystal ya sea de 1Mhz o de 4Mhz






te mandare el circuito armado y la subrutina con el progrmaa asm tambien gracias
 

Adjuntos

  • pwm.rar
    59.1 KB · Visitas: 4
Hola man aca tengo una preguntita ps porfa; encontre un programa para controlar un servomotor; yo buscaba con el pic 16f877a pero encontre este que es parecido
16F876a y bueno según el anuncio del programa la cabezara de comentarios indica que trabaja con un crystal de 1Mhz y reloj de 250Khz=4us.
En la hora de llamr al retardo llama a la subrutina RTARDOS.INC el cual trabaja con un crystal de 4Mhz; mi asombro es que funciona normal el circuito.
afecta la diferencia de los crystales? yo pienso que sí...
ahora si me podrias explicar como afecta estaría agradecido y si hay forma de arreglar para que esten con un mismo crystal ya sea de 1Mhz o de 4Mhz

te mandare el circuito armado y la subrutina con el progrmaa asm tambien gracias
Saludos.
Ok. Por ahora estoy en el trabajo, pero llegando a casa lo analizo y te comento.
;******************************************************************
Bien.
El motivo de que la rutina que genera el PWM funcione igual, es porque no esta 100% involucrada
con las rutinas de retardos de la librería RETARDOS.INC.
Eso esta definido por la configuración de los registros involucrados T2CON etc.
El retardo que se usa en el programa solo es para dar tiempo a la adquisición de datos del ADC
Si cambias la frecuencia del oscilador a 4Mhz. Si notaras cambios en la frecuencia del PWM
y tendrás que reajustar el periodo para compensar el cambio de frecuencia.
Como se usa un retardo de 20mS el ADC tiene tiempo de hacer el muestreo y funciona.

Pero para saber exactamente que retardo necesitas para el muestreo del ADC esta es la ecuación.

EQUATION 11-1: ACQUISITION TIME
TACQ = Amplifier Settling Time + Hold Capacitor Charging Time + Temperature Coefficient

= TAMP + TC + TCOFF

= 2µs + TC + [(Temperature -25°C)(0.05µs/°C)]

TC = CHOLD (RIC + RSS + RS) In(1/2047)

= - 120pF (1k?
+ 7k? + 10k?) In(0.0004885)
= 16.47µs

TACQ = 2µs + 16.47µs + [(50°C -25°C)(0.05µs/°C)

= 19.72µs

Así que los resultados son en µS por lo tanto con los 20mS que se usan para 4Mhz esta de sobra.
Y a 1Mhz el retardo usando CALL Retardo_20ms será de 80mS que esta todavía más sobrado.

 
Última edición:
Atrás
Arriba