Está en la página 1de 5

Instituto Tecnológico de Morelia

"José María Morelos y Pavón"

Reporte 6 – Comunicación UART

Jorge Chávez Rico


Manuel Avilés Jr
Microcontroladores

Rodríguez Herrejon Javier Alejandro

Fecha de Entrega 26/11/2019 Morelia, Mich.


Índice

Introducción.....................................................................................................................................................2
Desarrollo:.......................................................................................................................................................3
Código del Arduino.........................................................................................................................................3
Código MSP430...............................................................................................................................................4
Conclusiones....................................................................................................................................................5

Introducción
Para enviar los datos a las líneas debemos usar un hardware que esté diseñado para llevar a cabo esa tarea y en
este caso lo llamamos UART. Esta se encargará de leer datos cuando llegan, generar y gestionar interrupciones,
enviar datos y gestionar los tiempos de bit. En general la UART se encarga de hacer todo el trabajo por
nosotros. Si usamos un microcontrolador, es muy posible que no necesitemos hacer nada especial ya que la
UART estará integrada en el propio microcontrolador. Si usamos una FPGA o similar es posible que tengamos
que diseñar el hardware de la UART o usar un diseño ya existente.
El funcionamiento de la UART es el mismo en todos los dispositivos ya que si no fuera así, no se podrían
comunicar entre sí.
El principal beneficio de la atenuación PWM a analógica es su funcionamiento de bajo ruido, debido a que la
corriente del LED siempre es continua en la salida, es esencialmente libre de ruido. Por tanto, la ventaja es una
mayor eficiencia, se necesita menos disipación de calor y una mayor potencia de salida para el mismo tipo de
componente regulador. En el controlador de atenuación PWM a analógico, los niveles de brillo más bajos
siempre obligan a las pérdidas de conducción más bajas.

2
Desarrollo:

Código del Arduino


Código MSP430
int main(void){
WDTCTL = WDTPW + WDTHOLD; // Stop WDT
BCSCTL1 = CALBC1_1MHZ;
DCOCTL = CALDCO_1MHZ;
P1DIR = 0xE7; // All P1.x outputs
P1OUT = 0; // All P1.x reset
P2DIR = 0xFF; // All P3.x outputs // All P3.x reset

UCA0CTL1 |= UCSSEL_2; // CLK = ACLK


UCA0BR0 = 104; // 32kHz/9600 = 3.41
UCA0BR1 = 0x00; //
UCA0MCTL = UCBRS1 + UCBRS0; // Modulation UCBRSx = 3
UCA0CTL1 &= ~UCSWRST; // **Initialize USCI state machine**
IE2 |= UCA0RXIE; // Enable USCI_A0 RX interrupt

__bis_SR_register(GIE); // Enter LPM3, interrupts enabled // All P2.x outputs


P2OUT = 0; // All P2.x reset
P1SEL = BIT1 + BIT2 ; // P1.1 = RXD, P1.2=TXD
P1SEL2 = BIT1 + BIT2 ; // P1.1 = RXD, P1.2=TXD

#if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)


#pragma vector=USCIAB0TX_VECTOR
__interrupt void USCI0TX_ISR(void)
#elif defined(__GNUC__)
void __attribute__ ((interrupt(USCIAB0TX_VECTOR))) USCI0TX_ISR (void)
#else
#endif
{

4
Conclusiones
En esta práctica hicimos uso de comunicación serial de un microcontrolador a otro que fue del MSP a un
Arduino con el objetivo de usar la comunicación UART entre esos 2 micros y en el Arduino poder hacer otro
programa que regulaba la velocidad de un motor mediante sensor es que iba leyendo el MSP. Esto nos facilita
de una forma u otra lo que podemos llegar a hacer en dado caso ya que en Arduino es más fácil hacer un
programa para motores o controlar sensores y todo eso, utilizando la comunicación serial podemos hacer eso
fácilmente, que en un micro lea valores y en el otro haga diferentes acciones. Jorge Chávez Rico

En esta práctica observamos la importancia de controlar y saber relacionar diferentes tipos de controladores de
distinto nivel, ya que nos ayuda a desarrollar un mejor el programa que queremos llevar acabo porque facilita la
acción final tiene el código sobre el resultado, y podría emplearse en distintas situaciones que se nos pueden
presentar a lo largo de los procesos de programación Manuel Avilés Jr

También podría gustarte