Autor Tema: dudas  (Leído 2922 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado pacoelmakinas

  • PIC10
  • *
  • Mensajes: 3
dudas
« en: 21 de Junio de 2007, 19:10:27 »
Hola chicos/as, alguien me podria ayudar con las siguientes cuestiones?Seria de mucho agrado, hay van:
1.Realiza un programa que lea la entrada analógica AN0 y muestre el resultado por
PORTA[5:1]:PORTD[7:3]. Freloj = 4MHz, Vref+ = VCC, Vref- = GND.

2.Realiza una rutina de acceso a memoria EEPROM asigne los valores almacenados a los bancos 0 y 1
de RAM, de forma que la configuración del PIC se cargue desde EEPROM.

3.Realiza una rutina de acceso a memoria EEPROM que escriba el valor almacenado en los bancos 0 y
1 de RAM de forma que la configuración del PIC quede almacenada en la memoria no volátil.

4.Realiza una rutina de temporización que cuente 500 segundos. TMR1, 4MHz.

5.Realiza una rutina de temporización que cuente 500 segundos. TMR2, 32kHz.

6.Realiza una rutina de temporización que cuente 2,5 mseg. TMR2, 3,33MHz.

-Realiza una rutina de puerto serie, 4MHz, 10.000baudios, 8 BIT. Debe configurar correctamente
para los parámetros requeridos y realizar una función eco simple.

-Realiza un programa de puerto serie, 4MHz, 9.600baudios, 8 BIT. Debe configurar correctamente
para los parámetros requeridos y recibir 100 bytes y almacenarlos en el banco 1 de RAM de forma
contigua. Se recomienda la gestión de errores y la utilización de punteros de RAM e interrupciones.

-Realiza un programa de puerto serie, 4MHz, 4.800baudios, 9 BIT, con detección de cabecera
automática. Debe configurar correctamente para los parámetros requeridos y generar con el módulo
PWM una señal de periodo igual al valor recibido en el primer byte de la trama de comunicación en
useg, y tiempo de nivel alto ajustado por el valor del segundo byte de la trama.

-Realiza un programa que genere señales PWM, el ajuste de la frecuencia se haga en función del
valor leído del puerto B y el ajuste de tiempo a 1 se haga con el valor leído en puerto A, de forma
que, sea cual sea el valor de puerto B, el tiempo a 1 siempre oscile de mínimo a máximo con todo el
rango del puerto A.

Os lo agradeceria de corazon, con poco que me contestaseis.


             Un saludo, gracias

Desconectado aitopes

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5100
    • uControl
Re: dudas
« Respuesta #1 en: 21 de Junio de 2007, 19:23:07 »
Hola amigo!

¿Cuantos puntos vale cada item?  :D

Deberias darnos mas pistas: Que micro usar, que lenguaje de programacion, a que curso vas, etc....

Saludos!
Si cualquier habilidad que aprende un niño será obsoleta antes de que la use, entonces, ¿qué es lo que tiene que aprender? La respuesta es obvia:
La única habilidad competitiva a largo plazo es la habilidad para aprender
“. Seymour Papert

Desconectado Giovanny

  • PIC12
  • **
  • Mensajes: 97
    • Supercomponentes
Re: dudas
« Respuesta #2 en: 21 de Junio de 2007, 20:04:33 »
jajaja Fin de semestre ?
¿Cuantos puntos vale cada item?  :D

Deberias darnos mas pistas: Que micro usar, que lenguaje de programacion, a que curso vas, etc....

        Saludos desde Colombia! Que hermoso país....

Desconectado Marioguillote

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1926
    • Servisystem
Re: dudas
« Respuesta #3 en: 21 de Junio de 2007, 20:53:27 »
Alguien se está por transformar en "pacoelreprobado"  :D

 :idea: Y si probamos con estudiar ?  :idea:

Bromas aparte, por 300 Euros cada respuesta, te las contesto en éste fin de semana previo envío del dinero por Western Union.

 :D  :D  :D  :D  :D

No mentira; era otra broma.
 .... No puedo hacerlo tán rápido, dame algunos días más ....

Desconectado pikman

  • Moderadores
  • PIC24F
  • *****
  • Mensajes: 679
Re: dudas
« Respuesta #4 en: 21 de Junio de 2007, 22:21:40 »
Bueno Paco, pero..., sois estudiante de ingenieria en electronica?, porque lo que pides no son trabajos demandados por un cliente, sobre todo esta:

Citar
Realiza una rutina de temporización que cuente 2,5 mseg. TMR2, 3,33MHz.

O lo otro que se me ocurre es que a la carrera de medicina que hayan incorporado una tema adicional como 'microcontroladores 1' y tu estudies medicina y logicamente te importe un bledo la materia y solo te interese aprobar 'porque si' esta materia.

Si no lo que deberias hacer es replantearte si realmente te interesa la ingenieria electronica y/o la informatica, antes de que sea tarde y sigas en el rumbo equivocado y reveas tu vocacion.

Se que probablemente se enojes o  enfades cuando leas las respuestas de tu peticion, pero realmente no se me ocurre como es que tu primer mensaje fue asi.

Le voy a arruinar el negocio a Mario con lo que te voy a decir pero 'todas' las respuestas de tus preguntas, estan respondidas en el foro y las que no, en los 10.000 ejemplos que Microchip tiene publicado como codigo abierto en su pagina, que son en ASM, tambien estan los datasheet de todos su productos, eso si en inlges o en chino, solamente, tambien puedes usar el google o algun otro buscador donde seguramente te soprendera lo que hay hecho y se puede hacer con un microcontrolador PIC.

Bienvenido al foro.
saludos
PikMan

Desconectado MGLSOFT

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: dudas
« Respuesta #5 en: 22 de Junio de 2007, 00:10:08 »
Falto uno de los items del pedido, aqui lo pongo :mrgreen: :mrgreen:

Realiza una rutina que haga que el PIC salte de su zocalo, de tres volteretas en el aire y caiga insertado nuevamente en el zocalo, esta rutina debe repetirse hasta que todos los participantes del Foro Todopic aplaudan parados.

Bueno, empecemos a ayudar, chee!!! :D :D :D
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado pacoelmakinas

  • PIC10
  • *
  • Mensajes: 3
Re: dudas
« Respuesta #6 en: 22 de Junio de 2007, 04:27:09 »
Se trata de microcontroladores PICs (lenguaje en ensamblador), el 16F877, y los ejemplos que propuse son aquellos en los que tengo dudas o no se resolver. Os agradeceria muchisimo por poco que me ayudaseis.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: dudas
« Respuesta #7 en: 22 de Junio de 2007, 08:31:45 »
Se trata de microcontroladores PICs (lenguaje en ensamblador), el 16F877, y los ejemplos que propuse son aquellos en los que tengo dudas o no se resolver. Os agradeceria muchisimo por poco que me ayudaseis.

Amigo , sin ofender pero creo que debieras comenzar a dar algunos pasos tu solo, probar algunos códigos y luego, en lo que no te salga, posteas el código y lo vamos resolviendo juntos pero el esfuerzo lo tienes que poner tú también.  De nuestra parte, el esfuerzo está en dedicar tiempo a leer el post, a controlar tus códigos, a revisarlos, a buscar las fallas, etc ... y creeme eso no es poca cosa, incluso para alguien que tenga mucha experiencia en el tema.

Ese es el espíritu del foro.
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado pacoelmakinas

  • PIC10
  • *
  • Mensajes: 3
Re: dudas
« Respuesta #8 en: 22 de Junio de 2007, 13:25:52 »
De acuerdo. Alguien me podria ayudar a como guardar en los bancos 0 y 1 de la ram?Osea, yo leo de la eeprom y despues guardo en los bancos 0 y 1 de la ram. Se que es con direccionamiento indirecto, pero tengo mis dudas, al igual de como cambiar de banco.

                    Un saludo, gracias

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: dudas
« Respuesta #9 en: 22 de Junio de 2007, 15:25:50 »
De acuerdo. Alguien me podria ayudar a como guardar en los bancos 0 y 1 de la ram?Osea, yo leo de la eeprom y despues guardo en los bancos 0 y 1 de la ram. Se que es con direccionamiento indirecto, pero tengo mis dudas, al igual de como cambiar de banco.

                    Un saludo, gracias

Lo puedes hacer con indireccionamiento indirecto o no.  No es obligación.

Para cambiar de banco, es trabajando con los bits RP0 y RP1 del status.  Para seleccionar banco 0 y 1, en el direccionamiento indirecto es poniendo el STATUS,IRP en 0 , y en 1, es para banco 2 y 3.

Esta información está muy bien documentada en el datasheet ¿lo has observado?
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado microcom

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 568
Re: dudas
« Respuesta #10 en: 22 de Junio de 2007, 18:13:48 »
INICIO   
   BSF   STATUS,5   ;CONFIGURACION DE PUERTOS   banco1
   MOVLW   B'11000'
   MOVWF   PORTA
        CLRF    PORTE      ;PUERTO E COMO SALIDAS
        MOVLW   07
        MOVWF   ADCON0      ;PUERTA A COMO SALIDAS O ENTRADAS DIGITALES.
   BCF   PIE1,4      ;BITS DE EEPROM
   MOVLW   B'00000110'
   MOVWF   TMRO_OPT   ;ACTIVO RESISTENCIA DE PULL- UP
        MOVLW   B'11110000'   ;SALIDAS ENTRADAS AL TECLADO MATRICIAL
   MOVWF   PORTB
        CLRF    PORTD      ;SALIDAS EL CRISTAL LCD
   MOVLW   B'00100100'   ;SELECCION TX DE 8 BITS,ALTA VELOCIDAD, MODO


BCF   STATUS,5     banco 0
 seguir el programa







ESCRIBIR en eeprom
   BCF   STATUS,6   ;BANCO 0
   BCF   STATUS,5
   MOVF   ADDR_L,W
   BSF   STATUS,6   ;BANCO 2 SE METE EEADR LA DIRECCION
   MOVWF   EEADR      ;A LA QUE SE BA A ACCEDER.
   BCF   STATUS,6   ;BANCO CERO
   MOVF   MINUTO,W   ;SE METE EN EEDATA EL DATO A
   BSF   STATUS,6   
   MOVWF   EEDATA      ;ESCRIBIR
   BSF   STATUS,5   ;BANCO 3   
   BCF   EECON1,EEPGD   ;ACCESO A LA MEMORIA DE PROGRAMA
   BSF   EECON1,WREN   ;HABILITO ESCRITURA DE EEPROM.
   MOVLW   55H      
   MOVWF   EECON2
   MOVLW   0AAH
   MOVWF   EECON2
   BSF   EECON1,WR   ;SE LE DA ORDEN A LA ESCRITURA.
   MOVLW   B'11000000'   ;HABILITO INTERRUPCIONES.
   MOVWF   INTCON
   BCF   STATUS,6   ;BANCO 0   
   BCF   STATUS,5
RET   BTFSS   PIR2,EEIF   ;¿ESCRITURA LISTA?  SI, SALTE.
   GOTO   RET      ;NO GOTO RET
   BCF   PIR2,EEIF   ;BORRAR BIT DE PREGUTA.
   BSF   STATUS,5
   BSF   STATUS,6
   BCF   EECON1,WREN   
   BCF   STATUS,6   ;BANCO 0
   BCF   STATUS,5
   RETURN

LEER     en eeprom
   BCF   STATUS,6   ;BANCO 0
   BCF   STATUS,5
   MOVF   ADDR_L,W   ;ACCEDER A LA POSICION DE LA EEPROM
   BSF   STATUS,6   ;BANCO 2
   MOVWF   EEADR      
   BSF   STATUS,5   ;BANCO 3
   BCF   EECON1,EEPGD   ;ACCESO A LA MEMORIA DE PROGRAMA
   BSF   EECON1,RD   ;INICIA EL PROCESO DE LECTURA.
   BCF   STATUS,5   ;BANCO 2
   MOVF   EEDATA,W   ;EXPLORO EL CONTENIDO DE EEPROM
   BCF   STATUS,6   ;BANCO0
   MOVWF   MINUTO      ;..........MINUTO=EEPROM
   RETURN


saludos ................


 

anything