Witam !
Założenia kodu:
- port B ustawiony jako wyjście;
- dane odebrane z portu szeregowego są przesyłane na port B
- stan portu B jest z powrotem wysyłany za pośrednictwem portu szeregowego
Czy kod jest napisany poprawnie ? (To mój pierwszy program w C pod AVR i nie wiem czy takie ujęci kodu będzie odpowiednie czy o niczym nie zapomniałem)
Pozdrawiam
Poprawiłem tytuł:
https://www.elektroda.pl/rtvforum/topic1015361.html
[c_p]
Założenia kodu:
- port B ustawiony jako wyjście;
- dane odebrane z portu szeregowego są przesyłane na port B
- stan portu B jest z powrotem wysyłany za pośrednictwem portu szeregowego
#include<avr/io.h>
#include<util/delay.h>
#include<avr/signal.h>
#include<avr/interrupt.h>
void InitUSART(void)
{
UBRRH = 0x00;
UBRRL = 0x0f; //REJESTRY USTAWIAJĄCE PRĘDKOŚĆ TRANSMISJI (57600)
UCSRA = 0X00;
UCSRB = _BV(RXEN) | _BV(TXEN) | _BV(RXCIE); //WL MODULU ODBIORCZEGO I NADAWCZEGO I OBSLUGI PRZER.Rx
UCSRC = _BV(URSEL) | _BV(UCSZ0) | _BV(UCSZ1); //USTAW TRANSMISJI DL SLOWA NA 8 BITOWE
}
SIGNAL(SIG_USART_RECV)
{
unsigned char byte;
byte = UDR;
PORTB = byte;
UDR = PINB;
}
SIGNAL(SIG_USART_TRANS)
{
PORTB = 0x00;
}
void main(void)
{
DDRB = 0Xff;
sei();
UART_init();
while(1)
{
}
}
Czy kod jest napisany poprawnie ? (To mój pierwszy program w C pod AVR i nie wiem czy takie ujęci kodu będzie odpowiednie czy o niczym nie zapomniałem)
Pozdrawiam
Poprawiłem tytuł:
https://www.elektroda.pl/rtvforum/topic1015361.html
[c_p]
