Прием - передача через UART

Материал из Automata.

(Различия между версиями)
Перейти к: навигация, поиск
м (Полностью удалено содержимое страницы)
м (Правки Kern (обсуждение) откачены к версии 95.104.138.49)
 
Строка 1: Строка 1:
 +
#include <avr/io.h>
 +
#include <stdint.h>
 +
#define BAUDRATE 9600
 +
 +
int main(void)
 +
{
 +
UBRRH = 0;
 +
UBRRL = 51;
 +
UCSRB = _BV(RXEN)|_BV(TXEN);
 +
UCSRC = _BV(URSEL)|_BV(USBS)|_BV(UCSZ0)|_BV(UCSZ1);
 +
static uint8_t x=1;
 +
while (1) {
 +
while (!(UCSRA & _BV(RXC)));
 +
uint8_t x = UDR;
 +
while (!(UCSRA & _BV(UDRE)));
 +
UDR = x++;
 +
}
 +
}

Текущая версия

#include <avr/io.h>
#include <stdint.h>
#define BAUDRATE 9600
int main(void)
{
  UBRRH = 0;
  UBRRL = 51;
  UCSRB = _BV(RXEN)|_BV(TXEN);
  UCSRC = _BV(URSEL)|_BV(USBS)|_BV(UCSZ0)|_BV(UCSZ1);
  static uint8_t x=1;
  while (1) {
       while (!(UCSRA & _BV(RXC)));
       uint8_t x = UDR;
       while (!(UCSRA & _BV(UDRE)));
       UDR = x++;
  }
}
Личные инструменты
Микроконтроллеры