Aula de programação C – 19

19. PRÁTICA 19: COMUNICAÇÃO SERIAL ENTRE PLACAS – ESCRITA (SEM PONTE)

Referencial Teórico: Comunicação Serial – USART.

Objetivo: Preparar um dispositivo para comunicação no barramento e protocolo SERIAL RS-232.

Materiais: Utilizar botão e led presentes na placa. A prática necessita da ligação física entre placas.

19.1 Arquivo Principal

#include "iniciog.h"
#include "pratica.h"

void main(){

	configura_portas();
	configura_serial();

	while(1){
		escrever_serial();
	}
}

19.2 Arquivo Secundário

// acrescentar ao iniciog.h ou arquivo pratica.h

//#include <sw_uart.h>

// definicoes

// tx - rc6 - p25 - md41 - h10
// rx - rc7 - p26 - md42 - h15

//#define PIN_C6 PIN_A3 //6 // TX // MD41 // h10
//#define PIN_C7 PIN_A5 //7 // RX // MD42 // h15
//#define TX PIN_A3
//#define RX PIN_A5

unsigned char dado_recebido[] = {"        "};

unsigned char n_dado;

void configura_serial(){
	OpenUSART(USART_TX_INT_OFF		//desabilita interrupção de transmissão
				& USART_RX_INT_OFF	//desabilita interrupção de recepção
				& USART_ASYNCH_MODE	//modo assíncrono
				& USART_EIGHT_BIT		//transmissão e recepção em 8 bits
				& USART_BRGH_HIGH,	//Baud Rate em alta velocidade
				156);					//SPBRG p/ 19200 bps
}

//void escrever_serial(char letra){
void escrever_serial(){
	putcUSART("H");			//Envia o caractere H
	while (BusyUSART());	//Aguarda o final da transmissão
	putsUSART("GOGO\r\n");			//Envia o caractere GOGO
	while (BusyUSART());	//Aguarda o final da transmissão
	Delay1KTCYx(250);
}