ImageImageImageImage
Hazte Socio (El Foro siempre Gratis)
Paga con Tarjetas+ Info www.arde.cc/socios

Problema en UART de dspic30f leyendo 0x7F

Postea todo lo relacionado con el mundo de los microcontroladores aquí

Moderator: Junta Directiva

dragonet80
Usuario Desarrollador
Usuario Desarrollador
Posts: 1323
Joined: Wed Oct 03, 2007 12:15 am
Location: Ibiza

Re: Problema en UART de dspic30f leyendo 0x7F

Post by dragonet80 » Thu Oct 02, 2014 8:28 pm

Con un cristal de 8MHz te iría a 38461,5 bps (BRG=12)
Con el de 7,372 debería ir a 38295 bps (BRG=11)

Si no te salen esos valores algo debe fallar en el clock del micro o no lo configuras bien.

dragonet80
Usuario Desarrollador
Usuario Desarrollador
Posts: 1323
Joined: Wed Oct 03, 2007 12:15 am
Location: Ibiza

Re: Problema en UART de dspic30f leyendo 0x7F

Post by dragonet80 » Sun Oct 05, 2014 10:58 am

¿Has conseguido solucionarlo?

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Problema en UART de dspic30f leyendo 0x7F

Post by fusion » Tue Oct 07, 2014 3:39 pm

BRG=7.32728e6/16/38400-1=11 BRG=11 -> 38400 baudios (con los ppm aprox del reloj)
BRG=10 -> 7.32728e6/(10+1)/16=41632 baudios

Con el arm habría podido poner una frecuencia más parecida, pero me parece una chapuza cambiar de micro porque el trasmisor no vaya (sería una chapuza para arreglar otra), así que me estoy buscando un transceiver a 2.4Ghz :(, al menos a esa frecuencia las antenas son más baratas, pequeñas y de más ganancia

¿que tal irá a 2.4ghz en un tunel?

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Problema en UART de dspic30f leyendo 0x7F

Post by fusion » Tue Nov 04, 2014 11:57 am

Bueno, el radiocsafts 2500hp vá bien a 2.4ghz y 19200 bps, aunque tengo un problema: al trasmitir siempre el mismo dato sin parar, a veces se hace un lio:
En vez de 0x7F lee 0xFD,
En vez de 0x71 sale 0xC5
Se vé que se salta 2 bits.
Mejora algo si cada 10 bytes no trasmito uno para que resintonice al principio

¿cual será la mejor manera de solucionarlo?
1. Poner bit de paridad
2. Poner 2 bits de stop
3.

User avatar
Heli
Usuario Experto
Usuario Experto
Posts: 747
Joined: Tue May 23, 2006 7:47 am
Nombre: Heli Tejedor
Location: Alcala de Henares
Contact:

Re: Problema en UART de dspic30f leyendo 0x7F

Post by Heli » Tue Nov 04, 2014 10:39 pm

Si el problema es la sincronización puedes poner paridad impar, peor las tramas seguirán siendo iguales.
Lo que ganas es qe con 0h no manda todo ceros...
Manda un número de série de trama para que siempre haya un dato distinto.
Haz un mini protocolo al estilo STX LONGITUD NUMEROSERIE DATOS CRC EOT y asi siempre serán distintas y con garantía de recepción. Y si es bidireccional puedes contestar con ACK o NAK si esta mal el CRC, si no solo descartas las tramas con CRC incorrecto.
MAs sofisticado es usar códigos ECC (con corrección de errores http://en.wikipedia.org/wiki/Error_dete ... correction" onclick="window.open(this.href);return false;) como el BCH o similar, pero necesitas mas potencia de cálculo y las tramas crecen..
¡No es imposible, lo que pasa es que no sabes como hacerlo!
http://heli.xbot.es/" onclick="window.open(this.href);return false;

User avatar
fusion
Usuario Avanzado
Usuario Avanzado
Posts: 389
Joined: Tue Oct 09, 2007 2:12 pm
Nombre: Javier Lopez Segura
Location: Madrid
Contact:

Re: Problema en UART de dspic30f leyendo 0x7F

Post by fusion » Wed Nov 05, 2014 10:21 am

Poniendo 2 bits de stop en el pic y uno en los módulos de comunicaciones vá perfecto, ya he quitado la pausa cada 10 bytes. El módulo hace CRC si se quiere y también hace direccionamiento.

Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest