Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
/* quartz crystal frequency [Hz] */
#define xtal 4000000L //тут поставил 1000000L 1мегагерц я
//так понимаю
/* Baud rate */
#define baud 4800
void main(void) {
char k;
/* initialize the UART's baud rate */
после компиляции тут выдается ошибка
UBRR=xtal/16/baud-1;
/* initialize the UART control register
RX & TX enabled, no interrupts, 8 data bits */
UCR=0x18; тут тоже
while (1) {
/* receive the character */
k=getchar();
/* and echo it back */
putchar(k);
};
}
после компиляции выдает 2 ошибки
может регистры нужно изменить???
я воспользовался внутреним программным генератором чтобы настроить уарт, цикл программы остался тот же только добавились эти строки вместо тех что первом примере:
...
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud rate: 4800
UCSRA=0x00;
UCSRB=0x18;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x0C;
...
программа откомпилировалась но работет неправильно, отправляю с пк на авр к примеру "111" получаю ответ "üø"
Думаю что неправильно настраиваю уарт? Кто что подскажет???