Autor Tema: Ejemplos Protón  (Leído 29769 veces)

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

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Ejemplos Protón
« Respuesta #15 en: 23 de Agosto de 2007, 11:29:28 »
Hola aqui dejo el HEX y aqui puedes ver el esquematico una errata es que le hacen falta la conexion de los VREFS
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado pelusac

  • PIC16
  • ***
  • Mensajes: 118
Re: Ejemplos Protón
« Respuesta #16 en: 23 de Agosto de 2007, 14:52:03 »
Muchísimas gracias  :lol:
Saludos

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
Re: Ejemplos Protón
« Respuesta #17 en: 02 de Septiembre de 2007, 13:48:46 »
Hola navaismo e visto que en el ejemplo que pones usas logaritmos , que tanto de error se obtiene en la ecuacion que posteastes , pues cuando hacia divisiones al mostrar en el lcd me daba cierto margen de error no un valor exacto, me refiero para operaciones con punto flotante  :?

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Ejemplos Protón
« Respuesta #18 en: 19 de Diciembre de 2007, 20:19:30 »
Hola navaismo e visto que en el ejemplo que pones usas logaritmos , que tanto de error se obtiene en la ecuacion que posteastes , pues cuando hacia divisiones al mostrar en el lcd me daba cierto margen de error no un valor exacto, me refiero para operaciones con punto flotante  :?

Ups mira que apenas note esto que me decias que pena. Pues el error era de decimales lo compara con la operacion hecha en la calculadora y le erraba por unas centesimas. Pero como no es una aplicacion critica lo permiti asi.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Ejemplos Protón
« Respuesta #19 en: 19 de Diciembre de 2007, 20:29:01 »
Y regresando a lo de los ejemplos en PROTON con la ayuda de Pao y un compañero de Trabajo hemos hecho este programilla que muestra el Abecedario casi completo -falta la Ñ y la Z- todo en mayusculas en una MATRIZ de LEDS de 5x7.

Todas las Letras estan en la EEPROM del PIC16F877A por ser uno con gran capacidad. Y las muestra una a una. La idea es despues formar frases mediante la PC. Pero para comenzar con esto creo que le servira a uno que otro. Aqui el codigo:

Código: FreeBasic
  1. '****************************************************************
  2. '*  Name    : UNTITLED.BAS                                      *
  3. '*  Author  : Amigos & Navaismo                          *
  4. '*  Notice  : Copyright (c) 2007 GPL                            *
  5. '*          : All Rights Reserved                               *
  6. '*  Date    : 18/12/2007                                        *
  7. '*  Version : 1.0                                               *
  8. '*  Notes   :                                                   *
  9. '*          :                                                   *
  10. '****************************************************************
  11. device = 16f877a
  12. config WDT_OFF, CP_OFF, LVP_OFF, XT_OSC  
  13. xtal = 4
  14.  
  15. adcon1=7  
  16. trisa=0  'salida ambos puertos, sin comparadores
  17. trisb=0
  18.  
  19. dim i as byte
  20. DIM K AS BYTE
  21. dim j as byte
  22. dim d[26] as byte
  23. dim datos as byte
  24.  
  25. 'Letra A en eeprom
  26. edata 31, 254, 5, 253, 5, 251, 5, 247, 31, 239
  27.  
  28. 'Letra B en eeprom
  29. edata 31, 254, 21, 253, 21, 251, 21, 247, 31, 239
  30.  
  31. 'Letra C en eeprom
  32. edata 31, 254, 17, 253, 17, 251, 17, 247, 17, 239
  33.  
  34. 'Letra D en eeprom
  35. edata 31, 254, 17, 253, 17, 251, 10, 247, 4, 239
  36.  
  37. 'Letra E en eeprom
  38. edata 31, 254, 21, 253, 21, 251, 21, 247, 17, 239
  39.  
  40. 'Letra F en eeprom
  41. edata 31, 254, 5, 253, 5, 251, 5, 247, 1, 239
  42.  
  43. 'Letra G en eeprom
  44. edata 31, 254, 17, 253, 21, 251, 21, 247, 29, 239
  45.  
  46. 'Letra H en eeprom
  47. edata 31, 254, 4, 253, 4, 251, 4, 247, 31, 239
  48.  
  49. 'Letra I en eeprom
  50. edata 17, 254, 17, 253, 31, 251, 17, 247, 17, 239
  51.  
  52. 'Letra J en eeprom
  53. edata 25, 254, 17, 253, 31, 251, 1, 247, 1, 239
  54.  
  55. 'Letra K en eeprom
  56. edata 31, 254, 4, 253, 4, 251, 10, 247, 17, 239
  57.  
  58. 'Letra L en eeprom
  59. edata 31, 254, 16, 253, 16, 251, 16, 247, 16, 239
  60.  
  61. 'Letra M en eeprom
  62. edata 31, 254, 2, 253, 4, 251, 2, 247, 31, 239  
  63.  
  64. 'Letra N en eeprom
  65. edata 31, 254, 2, 253, 4, 251, 8, 247, 31, 239      
  66.  
  67. 'Letra O en eeprom
  68. edata 31, 254, 17, 253, 17, 251, 17, 247, 31, 239      
  69.  
  70. 'Letra P en eeprom
  71. edata 31, 254, 5, 253, 5, 251, 5, 247, 7, 239      
  72.  
  73. 'Letra Q en eeprom
  74. edata 15, 254, 9, 253, 29, 251, 25, 247, 31, 239      
  75.  
  76. 'Letra R en eeprom
  77. edata 31, 254, 5, 253, 29, 251, 21, 247, 23, 239      
  78.  
  79. 'Letra S en eeprom
  80. edata 23, 254, 21, 253, 21, 251, 21, 247, 29, 239      
  81.  
  82. 'Letra T en eeprom
  83. edata 1, 254, 1, 253, 31, 251, 1, 247, 1, 239      
  84.    
  85. 'Letra U en eeprom
  86. edata 31, 254, 16, 253, 16, 251, 16, 247, 31, 239
  87.  
  88. 'Letra V en eeprom
  89. edata 15, 254, 24, 253, 16, 251, 24, 247, 15, 239
  90.  
  91. 'Letra W en eeprom
  92. edata 31, 254, 16, 253, 28, 251, 16, 247, 31, 239
  93.  
  94. 'Letra X en eeprom
  95. edata 27, 254, 10, 253, 14, 251, 10, 247, 27, 239
  96.  
  97. 'Letra Y en eeprom
  98. edata 7, 254, 4, 253, 28, 251, 4, 247, 7, 239
  99.  
  100. 'Letra Z en eeprom
  101. 'edata 29, 254, 21, 253, 21, 251, 21, 247, 23, 239    
  102.  
  103. D[0] = 0
  104. D[1] = 10
  105. D[2] = 20
  106. D[3] = 30
  107. D[4] = 40
  108. D[5] = 50
  109. D[6] = 60
  110. D[7] = 70
  111. D[8] = 80
  112. D[9] = 90
  113. D[10] = 100
  114. D[11] = 110
  115. D[12] = 120
  116. D[13] = 130
  117. D[14] = 140
  118. D[15] = 150
  119. D[16] = 160
  120. D[17] = 170
  121. D[18] = 180
  122. D[19] = 190
  123. D[20] = 200
  124. D[21] = 210
  125. D[22] = 220
  126. D[23] = 230
  127. D[24] = 240
  128. D[25] = 250
  129.  
  130. DATOS="A"
  131.  
  132. loop:
  133. GOSUB CLSM
  134. i = datos - 65
  135. for j=0 to 15
  136. FOR K=0 TO 9 step 2
  137.  PORTA=EREAD d[I]+k
  138.  PORTB=EREAD (d[i]+k) + 1
  139.  DELAYMS 50
  140. next j
  141. NEXT K
  142. datos = datos + 1
  143. goto loop
  144.  
  145. CLSM:
  146.  porta=0
  147.  portb=255
  148.  delayms 750
  149. RETURN


Y la imagen del Circuito en Proteus


Saludos...
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos Protón
« Respuesta #20 en: 19 de Diciembre de 2007, 20:43:30 »
Hola:

Genial, yo tengo ganas de hacer eso, pero con 5 matrices y usando registros de corrimiento, tengo ya una plaquita con las 5 matrices, a ver si una de estas nos ponemos con eso si les interesa.  :mrgreen:

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Ejemplos Protón
« Respuesta #21 en: 19 de Diciembre de 2007, 23:42:43 »
A mi si me interesa, Pero primero terminare con esta pequeña matriz para darle o los registros de corrimiento, aunque ya lei el articulo de Ariel en su pagina no me quedo muy claro por eso empece con esa pequeña matriz. Por ahi tambien JCC nos da un cable.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Ejemplos Protón
« Respuesta #22 en: 20 de Diciembre de 2007, 22:24:51 »
Bueno regresando con esto de la matriz de Leds, es el mismo circuito solo que le añadi el puerto serie para mandar desde el PC una cadena de 7 caracteres -en mayusculas-  precedida por el caracter "y" y seguido  la Matriz la interpreta 1 a 1.

Este es el codigo notaran solo unas modificaciones:

Código: FreeBasic
  1. '****************************************************************
  2. '*  Name    : mledsV3.BAS                                       *
  3. '*  Author  : Pao & Navaismo & Friend                           *
  4. '*  Notice  : Copyright (c) 2007 GPL                            *
  5. '*          : All Rights Reserved                               *
  6. '*  Date    : 18/12/2007                                        *
  7. '*  Version : 1.0                                               *
  8. '*  Notes   :                                                   *
  9. '*          :                                                   *
  10. '****************************************************************
  11. device = 16f877a
  12. config WDT_OFF, CP_OFF, LVP_OFF, XT_OSC  
  13. xtal = 4
  14. declare rsin_mode  true
  15. DECLARE RSOUT_MODE true
  16. declare rsin_pin  portd.0
  17. declare rsout_pin portd.1
  18. DECLARE SERIAL_BAUD 9600
  19.  
  20.  
  21. adcon1=7  
  22. trisa=0  'salida ambos puertos, sin comparadores
  23. trisb=0
  24.  
  25. dim i as byte
  26. DIM K AS BYTE
  27. dim j as byte
  28. dim z as byte
  29. dim n as byte
  30. dim d[26] as byte
  31. dim datos as byte
  32. dim spell[7] as byte
  33.  
  34. 'Letra A en eeprom
  35. edata 31, 254, 5, 253, 5, 251, 5, 247, 31, 239
  36.  
  37. 'Letra B en eeprom
  38. edata 31, 254, 21, 253, 21, 251, 21, 247, 31, 239
  39.  
  40. 'Letra C en eeprom
  41. edata 31, 254, 17, 253, 17, 251, 17, 247, 17, 239
  42.  
  43. 'Letra D en eeprom
  44. edata 31, 254, 17, 253, 17, 251, 10, 247, 4, 239
  45.  
  46. 'Letra E en eeprom
  47. edata 31, 254, 21, 253, 21, 251, 21, 247, 17, 239
  48.  
  49. 'Letra F en eeprom
  50. edata 31, 254, 5, 253, 5, 251, 5, 247, 1, 239
  51.  
  52. 'Letra G en eeprom
  53. edata 31, 254, 17, 253, 21, 251, 21, 247, 29, 239
  54.  
  55. 'Letra H en eeprom
  56. edata 31, 254, 4, 253, 4, 251, 4, 247, 31, 239
  57.  
  58. 'Letra I en eeprom
  59. edata 17, 254, 17, 253, 31, 251, 17, 247, 17, 239
  60.  
  61. 'Letra J en eeprom
  62. edata 25, 254, 17, 253, 31, 251, 1, 247, 1, 239
  63.  
  64. 'Letra K en eeprom
  65. edata 31, 254, 4, 253, 4, 251, 10, 247, 17, 239
  66.  
  67. 'Letra L en eeprom
  68. edata 31, 254, 16, 253, 16, 251, 16, 247, 16, 239
  69.  
  70. 'Letra M en eeprom
  71. edata 31, 254, 2, 253, 4, 251, 2, 247, 31, 239  
  72.  
  73. 'Letra N en eeprom
  74. edata 31, 254, 2, 253, 4, 251, 8, 247, 31, 239      
  75.  
  76. 'Letra O en eeprom
  77. edata 31, 254, 17, 253, 17, 251, 17, 247, 31, 239      
  78.  
  79. 'Letra P en eeprom
  80. edata 31, 254, 5, 253, 5, 251, 5, 247, 7, 239      
  81.  
  82. 'Letra Q en eeprom
  83. edata 15, 254, 9, 253, 29, 251, 25, 247, 31, 239      
  84.  
  85. 'Letra R en eeprom
  86. edata 31, 254, 5, 253, 29, 251, 21, 247, 23, 239      
  87.  
  88. 'Letra S en eeprom
  89. edata 23, 254, 21, 253, 21, 251, 21, 247, 29, 239      
  90.  
  91. 'Letra T en eeprom
  92. edata 1, 254, 1, 253, 31, 251, 1, 247, 1, 239      
  93.    
  94. 'Letra U en eeprom
  95. edata 31, 254, 16, 253, 16, 251, 16, 247, 31, 239
  96.  
  97. 'Letra V en eeprom
  98. edata 15, 254, 24, 253, 16, 251, 24, 247, 15, 239
  99.  
  100. 'Letra W en eeprom
  101. edata 31, 254, 16, 253, 28, 251, 16, 247, 31, 239
  102.  
  103. 'Letra X en eeprom
  104. edata 27, 254, 10, 253, 14, 251, 10, 247, 27, 239
  105.  
  106. 'Letra Y en eeprom
  107. edata 7, 254, 4, 253, 28, 251, 4, 247, 7, 239
  108.  
  109. 'Letra Z en eeprom
  110. 'edata 29, 254, 21, 253, 21, 251, 21, 247, 23, 239    
  111.  
  112. D[0] = 0
  113. D[1] = 10
  114. D[2] = 20
  115. D[3] = 30
  116. D[4] = 40
  117. D[5] = 50
  118. D[6] = 60
  119. D[7] = 70
  120. D[8] = 80
  121. D[9] = 90
  122. D[10] = 100
  123. D[11] = 110
  124. D[12] = 120
  125. D[13] = 130
  126. D[14] = 140
  127. D[15] = 150
  128. D[16] = 160
  129. D[17] = 170
  130. D[18] = 180
  131. D[19] = 190
  132. D[20] = 200
  133. D[21] = 210
  134. D[22] = 220
  135. D[23] = 230
  136. D[24] = 240
  137. D[25] = 250
  138.  
  139.  
  140. loop:
  141. delayms 500
  142. GOSUB CLSM
  143. rsin wait("y"), str spell\7
  144.  
  145. for z=0 to 7
  146. i = spell[z] - 65
  147. for j=0 to 15
  148. FOR K=0 TO 9 step 2
  149.  PORTA=EREAD d[I]+k
  150.  PORTB=EREAD (d[i]+k) + 1
  151.  DELAYMS 50
  152. next j
  153. NEXT K
  154. next z
  155.  
  156. goto loop
  157.  
  158. CLSM:
  159.  porta=0
  160.  portb=255
  161.  delayms 750
  162. RETURN

la imagen del circuito.


y un link del video en funcionamiento. En el isis cada cambio de letra tengo que hacer zoom porque no refresca pero en la realidad espero se comporte bien. El programa tiene un bug que es que muestra la A al final de cada frase antes de limpiar de nuevo la matriz. Y se puede modificar para que reciba mas caracteres.

Ahora el Reto es el que comentaba GIO hacerlo mas grande  :twisted:

Saludos
« Última modificación: 20 de Diciembre de 2007, 22:31:33 por navaismo »
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado LordLafebre

  • Moderador Global
  • DsPIC30
  • *****
  • Mensajes: 3529
    • Micros & micros
Re: Ejemplos Protón
« Respuesta #23 en: 21 de Diciembre de 2007, 01:13:34 »
Hola:

Max, no crees que sería mejor utilizar la matriz de forma vertical?, de esa forma se pueden formar mejor las letras, como si se tratara del caracter de un LCD.

Desconectado navaismo

  • Jubilado Todopic
  • PIC24H
  • ****
  • Mensajes: 1973
Re: Ejemplos Protón
« Respuesta #24 en: 21 de Diciembre de 2007, 14:42:51 »
Si tambien; solo que como empece a formar las frases de esa manera me pique y todo lo deje asi.
"Mi tercer deseo, que otra cosa podría ser, poner un final a todo el sufrimiento, que sólo con mi propia extinción el planeta podrá ser aliviado. Pobre de mí, Si tuviera tres deseos hoy, la elección no sería dificil para mí, Sólo tres deseos serían suficientes, No tendría uso para más."

"He sido un hombre que busca y aun lo sigo siendo, pero ya no busco en las estrellas y en los libros, sino en las enseñanzas de mi sangre."

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 664
Re: Ejemplos Protón
« Respuesta #25 en: 25 de Febrero de 2008, 06:06:24 »
Aca les dejo mi aporte en proton unas rutinas 100% funcional para leer eeprom SPi especificamente las 25010-25020-25040.

ojo con esta codigo lees completa la eeprom 25040. ya que esta eeprom esta direccionada en dos bloques.

Saludos y espero les sirva mi aporte si gustan desarrollo  la escritura.

'****************************************************************
'*  Name    : spi.BAS                                      *
'*  Author  : [Alexander Jose Santana Vargas]                   *
'*  Notice  : Copyright (c) 2008 [meritos propios]              *
'*          : All Rights Reserved                               *
'*  Date    : 24/02/2008                                        *
'*  Version : 1.0                                               *
'*  Notes   : lee protocolo spi "25010-25020-25040              *
'*          :                                                   *
'****************************************************************
Device = 16F877A  'ASIGNA EL TIPO DE PIC A USAR EN ESTE CASO PIC16F877A
      XTAL = 4  'INDICA QUE EL CRISTAL ES DE 4MHZ
'...................................CONFIGURACION DE PUERTOS........................................................     
        TRISA=0
        TRISD=$78
'...................................ASIGNACION DE PINES AL LCD.......................................................
        LCD_DTPIN = PORTA.0
        LCD_RSPIN = PORTA.4
        LCD_ENPIN = PORTB.3
        LCD_LINES = 2     
        LCD_INTERFACE = 4
'..................................DECLARACION DE VARIABLES..........................................................       
       
        Dim addr      As word                       ' DIRECCION PARA EEPROM EXTERNA
        Dim B0        As byte                       ' DATO QUE SE TOMA DE LA EEPROM EXTERNA
        Symbol CS     = PORTB.2                      ' Chip select pin
      Symbol CLK    = PORTB.1                      ' Clock pin
      Symbol DI   = PORTB.0                      ' Data in pin
      Symbol DO   = PORTB.4                       ' Data out pin
      DIM  RD_CMD  AS  byte
      Output CS                                  ' Set CS to output
       
       
'..................................................
Loop:   For addr = 0 To 511                          ' Loop 16 times
                GoSub eeread                         ' lee la eeprom
                print $fe,1,hex addr,": ",hex B0     ' Display
                DelayMS 500
        Next b0

        Goto loop
       
'******* Subroutine to read data from addr in serial EEPROM ********
eeread:     if addr <= 255 then
            RD_CMD=$3
            else
            RD_CMD=$b
            endif
            low CS                                   
            Shout Di, ClK, MSBFIRST, [RD_CMD, Addr.lowbyte]         
            Shin DO, ClK, MSBPRE, [B0]           
            high CS                                   
            Return
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE


 

anything