| Autor | Mensaje |
|---|
winit_a
Antigüedad: 16 de noviembre 2003 Puestos: 17
| 15 de febrero 2004 5:42 Cómo crear UART con Software (no se utiliza SBUF) en 8051 | | |
|
| Cómo crear UART Con Software? Mi proyecto Usado 3 UART (normales tienen 1 UART con el hardware P3.0 y P3.1)
8051 MCU@11.0592MHz Cómo crear UART P1 o P2 utilizado para la interfaz RS-232 |
|
| Volver arriba | |
 |
pisoiu
Antigüedad: 31 de diciembre 2002 Puestos: 723 Ayudó: 24 Ubicación: Rumanía
| 15 de febrero 2004 11:58 Re: Cómo crear UART con Software (no se utiliza SBUF) en 8051 | | |
|
| Hola, Mi opinión: es difícil maldito. Usted tendrá que hacer uso de las interrupciones, pero 8051 es un controlador relativamente lento, su rendimiento se mantiene bajo 1mips en 11,0592 mhz reloj clásico para las versiones 8051 (1instruction ciclo de ciclo de reloj = 12). Más de un puerto serie en el software aplicado a comer casi todos los tiempo de procesador, especialmente si usted desea ir hasta 115200bps con los puertos, o si desea aplicar a todos los posibles parámetros (6/7/8 bits de datos selecteble, 1 / 2 bit de parada, la paridad par / impar / marca / espacio / ninguno, el control del flujo xon-xoff/hard/none seleccionable). Mi sugerencia es utilizar una arquitectura de 8051 modificado de ciprés, o utilizar un microcontrolador scenix (www.ubicom.com). Scenix controlador para que pueda proporcionar el código para el 8 de UARTs simultáneamente. Esto si desea una implementación de software. Si desea Yau hardware, puede utilizar max3100 (máxima).
Mejor, |
|
| Volver arriba | |
 |
Ajay
Antigüedad: 29 de febrero 2004 Puestos: 31
| 01 de marzo 2004 0:10 Re: Cómo crear UART con Software (no se utiliza SBUF) en 8051 | | |
|
| Usted podría crear una UART (además de la utilización de SBUF) por medio de un escrito y dedicado de tiempo muy rápido el código para girar poco. En la próxima parte (RXD), debe utilizar una interrupción pines. Cuando la interrupción viene, iniciar el tiempo y leer el estado de la clavija en transportar, rotar y crear tu los bytes. Funciona bien hasta 9600 baudios (he usado).
Sin embargo, la creación de dos más al mismo tiempo? Olvídalo. Incluso si utiliza dedicado dos temporizadores, interrumpir la rutina es tan grande que va a perder bits.
Si está buscando UARTs lento (1200 baudios o más lento), entonces esta técnica hasta 2 obras para la UART. Tenga en cuenta que usted renuncie a todos los temporizadores de los tres (que se utiliza para generación de baudios SBUF, uno para el puerto 1 y puerto 2 de un calendario), así como la interrupción.
Por lo tanto, mejor diseño es el uso de un chip ARM con dos de la UART (he creado 2 nuevos UARTs a 19200 Baudios con un ARM) o utilice el controlador de conejo o de tal cosa.
Ajay |
|
| Volver arriba | |
 |
beuch
Antigüedad: 06 de junio 2001 Puestos: 65 Lugar: Francia
| 03 de marzo 2004 14:45 Re: Cómo crear UART con Software (no se utiliza SBUF) en 8051 | | |
|
| Hola,
echar un vistazo al archivo adjunto de una web de Philips.
AN446
adiós
|
|
| Volver arriba | |
 |
crazytnt
Antigüedad: 02 de febrero 2004 Puestos: 8
| 03 de marzo 2004 17:43 Re: Cómo crear UART con Software (no se utiliza SBUF) en 8051 | | |
|
| Es muy difícil. Recomendamos el uso de hardware. |
|
| Volver arriba | |
 |
J_expoler2
Antigüedad: 10 de mayo de 2003 Puestos: 179 Ayudó: 19
| 03 de marzo 2004 18:00 Re: Cómo crear UART con Software (no se utiliza SBUF) en 8051 | | |
|
| Hola Tengo una idea pero UART enviar datos sólo mediante temporizador 0 T232 poco como TxD MOV TMOD, # 22H MOV TH0, # 70H MOV TL0, # 70H SETB EA SETB ET0 SETB TR1 ; ; ; ; la función de envío de datos: CLR T232; bit de arranque SETB TR0 MOV R7, # 8
TX_LOOP: RRC A JNB TF0, $ MOV T232, C CLR TF0 DJNZ R7, TX_LOOP JNB TF0, $ SETB T232; STOP BIT CLR TF0 JNB TF0, $ RET que tal vez ayudar u BR. |
|
| Volver arriba | |
 |
Google AdSense

| 03 de marzo 2004 18:00 Anuncios | | |
|
|
|
|
| Volver arriba | |
 |
fireplus
Antigüedad: 31 de octubre 2003 Puestos: 195 Ayudó a: 5
| 04 de marzo 2004 3:29 Re: Cómo crear UART con Software (no se utiliza SBUF) en 8051 | | |
|
| intentar que
[hr: 5c6e3c7296] Fuego en el alambre: SM2:
|
|
| Volver arriba | |
 |
Ajay
Antigüedad: 29 de febrero 2004 Puestos: 31
| 08 de marzo 2004 12:28 Re: Cómo crear UART con Software (no se utiliza SBUF) en 8051 | | |
|
| | J_expoler2 escribió: | Hola Tengo una idea pero UART enviar datos sólo mediante temporizador 0 T232 poco como TxD MOV TMOD, # 22H MOV TH0, # 70H MOV TL0, # 70H SETB EA SETB ET0 SETB TR1 ; ; ; ; la función de envío de datos: CLR T232; bit de arranque SETB TR0 MOV R7, # 8
TX_LOOP: RRC A JNB TF0, $ MOV T232, C CLR TF0 DJNZ R7, TX_LOOP JNB TF0, $ SETB T232; STOP BIT CLR TF0 JNB TF0, $ RET que tal vez ayudar u BR. |
Esto sólo es buena para la transmisión. Problema viene cuando intenta recibir también. En primer lugar, este método de trabajo para NUNCA operación dúplex completa a menos que use dos temporizadores.
Además, para la recepción, tendrá que utilizar una interrupción de hardware que precisamente iniciar el temporizador en el momento adecuado y, a continuación, ayudarán a pasar los datos. Una vez más, este método sólo es bueno como un medio de comunicación dúplex.
Otra complejidad viene del hecho de que la interrupción de rutinas se convierten en largos y causará problemas por desaparecidos bits. Tenga en cuenta que el error se acumulan a lo largo de un período de tiempo!
La mejor manera es usar un chip que tiene más puertos serie (ARM, etc uPSD de ST)
Ajay |
|
| Volver arriba | |
 |