Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Hasta ahora programaba el puerto serie por software, pero si me cambio a un micro pic con UART me pregunto si podré programarlo para coger datos digitales a 125khz.
Mi idea es usar uno que consuma poco, un 12F1823 o similar.
Saludos
Depende del cristal que le pongas... algunas cosas a tener en cuenta:
1.- Usa mejor una de las velocidades normalizadas para comunicación asíncrona (puerto serie): 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 (existen otras pero estas son las más comunes). De esta forma tendrás menos problemas al comunicarte con otros equipos.
2.- Mira que el micro llegue, y qué oscilador necesita.
3.- La alta velocidad y el bajo consumo suelen estar reñidos, a un oscilador de más velocidad un consumo mayor.
S2
Ranganok Schahzaman
El 12F1823 no lo encuentro en la página de microchip http://www.microchip.com/ParamChartSearch/chart.aspx?branchID=1001&mid=10&lang=en&pageId=74 " onclick="window.open(this.href);return false; por lo que me imagino que te referirás el 12F1822/16F1823.
Si es así sólo comentarte que depende del cristal de cuarzo que uses podrás alcanzar una velocidad u otra. En el datasheet http://ww1.microchip.com/downloads/en/DeviceDoc/41413C.pdf " onclick="window.open(this.href);return false; podrás ver a partir de la página 299 la tabla de velocidades de la USART y el error que tiene dependiendo del cristal que elijas.
Para tener un error bajo a 115200 bps que es la máxima velocidad que permite la USART y pretendiendo usar la mayor frecuencia de micro posible debes poner o bien un cristal de 18,432 Mhz. para que la sincronización sea perfecta (ningún error) o bien un cristal de 32 Mhz y los bits BRGH y BRG16 a 1.
No puedo elegir la frecuencia.
Creo que se podría programar cualquier velocidad si pudiera programar cualquier divisor de la frecuencia, para 125khz, debiera usar un cuarzo de 8MHz y dividir por 64.
Si programara 115200 tendría un error del 8.5%.
(A lo mejor si "engaño al pic" y le digo que el reloj es de una frecuencia de 8MHz menos el 8.5% me trabajaría bien a 125khz en vez de 115200)
Atención: he podido programar en labview una aplicación Modbus sobre RS485 a 125kbps, con lo cual ya puedo comunicarme con un pic a esa frecuencia. A ver si lo logro también con un RS232, aunque no dispongo ahora de ninguno 🙂
Ese micro en concreto no lo he usado nunca, pero si puedes configurar los divisores, como tu has dicho, no tiene que haber ningún problema.