Página 1 de 1

UART e Interrupção

MensagemEnviado: 04 Jun 2019 18:07
por Guri
Alguém entre os ilustres amigos, poderia me dizer como eu coloco de forma simples a serial do stm103 para receber por interrupção, utilizando o mikroc.

Eu sei, eu sei...porque eu não uso o truestudio...eu estou começando a brincar com ele e entender...mas por enquanto estou atado ao mikroc...

Obrigado :D

Re: UART e Interrupção

MensagemEnviado: 04 Jun 2019 22:48
por Guri
Pessoal, já resolvi

Fui direto no manual do stm...é bem simples.

Obrigado

Re: UART e Interrupção

MensagemEnviado: 05 Jun 2019 20:50
por tcpipchip
Por falar em uart e interruptcao

Alguem tem um exemplo de projeto em keil para este mesmo processsador F0 que gere interrupcao quando chega um dado pela serial ?

Se possivel com buffer circular

Abraços

Re: UART e Interrupção

MensagemEnviado: 06 Jun 2019 10:27
por Guri
tcpipchip, aqui esta a forma de como colocar na interrupção a uartx, no meu caso foi a uart1.

Esta no mikroc, porém esta muito simples usar em outras ides, porque as funções são bem simples de importar, dá uma olhadinha no manual. Mas qualquer dúvida estou a disposição para ajudar, dentro do meu conhecimento é claro. :oops:

cpp code
void InterruptRx()   // A cada interrupção o registro Receive acolhe o dado:

iv IVT_INT_USART1 ics ICS_AUTO //RX interrupt subroutine
{
if(USART1_SRbits.RXNE == 1) //RX buffer not empty
{
Receive = (0xFF & USART1_DR); //Read data from data register
}
}

void ConfigSetup() // Referencia no manual stm f103
{
RCC_APB2ENRbits.IOPAEN = 1; //Enable GPIOA
RCC_APB2ENRbits.USART1EN = 1; //Enable USART1
GPIOA_CRH = 0x4A0; //Set PA9 and PA10 as AFIO pins
USART1_BRR = 0x341; //Set value for required baud rate
USART1_CR1bits.UE = 1; //Set USART1
USART1_CR1bits.RE = 1; //Set USART1 RX to receive incoming data
USART1_CR1bits.TE = 1; //Set USART1 TX to send data
USART1_CR1bits.RXNEIE = 1; //Enable RX interrupt
NVIC_IntEnable(IVT_INT_USART1);
}

Re: UART e Interrupção

MensagemEnviado: 06 Jun 2019 10:29
por Guri
Não esqueça de configurar a inicialização da USART (eu escrive uart, peço desculpas) e configurar a baudrate e configurações de pinos.
Se fosse no mikroc bastaria usar as libs do próprio compilador USARTx.

Mas também poderia iniciar pela sua própria lib com base no manual do stm.

Espero ter ajudado.

Re: UART e Interrupção

MensagemEnviado: 06 Jun 2019 15:59
por tcpipchip
sim! Obrigado

mas keria para QUEIL C

Re: UART e Interrupção

MensagemEnviado: 06 Jun 2019 19:07
por Guri
Puxa vida, ai eu fico devendo...ainda estou engatinhando em C, inclusive nos compiladores.

Por comodidade ainda tô atado ao mikroc... :(

Re: UART e Interrupção

MensagemEnviado: 06 Jun 2019 20:27
por tcpipchip
entao vc é ainda um "Guri"