TODOPIC
Microcontroladores PIC => dsPIC => Mensaje iniciado por: Darukur en 22 de Diciembre de 2006, 14:45:35
-
Hola gente del foro queria saber si alguien ya experimento con el DMA del PIC24.
Yo recien estoy "sobrevolando" sus capacidades pero todavia "ni un poquito" de codigo sobre ello.
Si quieren compartir alguna experiencia se agradece.
Salutes.
-
Aún no lo he tocado, pero pretendía meterle mano al DMA del 33F y hacer algún ejemplito para la serie de artículos que estoy escribiendo.
Podríamos hacer algo coordinado, alguna práctica común; ¿tienes algo pensado?
-
Recien lo estoy investigando pero si se puede armar un ejemplo estaria bueno.
En el 24H no se si tiene 2K adicionales a la memoria total para DMA o que utiliza 2K de la memoria total para hacer el DMA, lo que se que dicha memoria se puede utilizar como de sistema.
Otra cosa, impresionante, tiene mas de 70 IRQs! para el DMA!
PD:Otro tema a investigar es el tema de ejecucion de codigo desde RAM, como para abrirlo desde otro post.
-
Hola a todos:
hay alguien que pudo hacer funcionar en ccs el DMA? tiene algun ejemplo??
me estoy rompiendo la cabeza y no encuentro una solucion..
desde ya muchas gracias
Luciano.
-
Hola!
Yo he utilizado el DMA con el ADC y el UART en un 33F en MPLAB C30 ...
Con el ADC toma una serie de muestras (2, 4, 8, 16, etc) y las guarda en DMA y genera una interrupcion cuando finaliza de tomar todas las muestras.
Con el UART utilice el DMA como buffer de datos tanto de recepcion como de envio. En este, fue muy interesante .. pues tuve que crear un protocolo de comunicacion que primero le indicara al dsPIC cuantos datos va a recibir, con ese dato, reconfiguro el DMA para que genere la interrupcion cuando se complete la recepcion, ademas utilice un timer para generar error por timeout. Lo mismo para envio.
La verdad que es muy sencillo, en el manual de referencia vienen ejemplos ... lo que no pude hacer fue el DMA con el SPI.
Saludos
-
hola:
Muchas gracias por la respuesta, pero quizas no me exprese bien.
Yo estoy utilizando un PIC 24HJ256GP210, ¿ soportan el mismo codigo que un dsPIC 33F?
Por otro lado yo estoy utilizando el compilador CCS Ver 4.084 y por lo que tengo etendido no son compatibles los codigo generados por un maplab c30 y un PICC. Pero si no es asi corrijanme, ya que si son compatibles me podrian pasar algun ejemplito de como setear los bits para que funcione el DMA.
saludos Luciano
-
en teoria C es C, pero en el CCS no es tan pegado al ansi C, sin embargo es posible migrar dicho codigo del c30 de microchip al ccs salvo algunas instrucciones y sobre todo la referencia a los registros.