繁体   English   中英

AVR mega2560 uart 示例错误

[英]AVR mega2560 uart example errors

当我尝试编译 nongnu avr 用户手册上的示例时,出现错误:

这是示例:

#include <stdio.h>
static int uart_putchar(char c, FILE *stream);
static FILE mystdout = FDEV_SETUP_STREAM(uart_putchar, NULL,
                                         _FDEV_SETUP_WRITE);
static int
uart_putchar(char c, FILE *stream)
{
  if (c == '\n')
    uart_putchar('\r', stream);
  loop_until_bit_is_set(UCSRA, UDRE);
  UDR = c;
  return 0;
}
int
main(void)
{
  init_uart();
  stdout = &mystdout;
  printf("Hello, world!\n");
  return 0;
}

当我尝试编译它时,出现 UDR、UCSRA、UDRE 和 loop_until_bit_is_set 未声明的错误。 为什么会这样?

谢谢!

我通过还包含 <avr/io.h>、添加一些名称并实现 init_uart function 来解决它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM