我正在尝试使用AVR代码编写Arduino Uno,因为我不允许将Arduino库用于9月开始的高级项目。我找到了数据表,让数字引脚工作,然后继续试图通过USB串口连接与我的电脑通话。我已经阅读了本手册第19章(1)太多次了,我仍然迷失了。我从库文档本身和数据表中复制并粘贴了代码,但仍然说未解决和/或找不到任何内容。任何帮助表示赞赏。
代码:
#include <stdio.h>
#include <avr/io.h>
#include <util/delay.h>
#include <util/setbaud.h>
#define analog1 PC0
#define LED PB5
#define BAUD 9600
//#define F_CPU 16000000
void init_io(){
DDRB |= (1<<LED);
DDRC |= (0<<analog1);
}
static void
uart_9600(void)
{
UBRRH = UBRRH_VALUE;
UBRRL = UBRRL_VALUE;
#if USE_2X
UCSRA |= (1 << U2X);
#else
UCSRA &= ~(1 << U2X);
#endif
}
void USART_Transmit( unsigned char data )
{
/* Wait for empty transmit buffer */
while ( !( UCSRnA & (1<<UDREn)) )
;
/* Put data into buffer, sends the data */
UDRn= data;
}
int main(){
int analog_value = 1000;
while(1){
//analog_value = PINC;
if(analog_value > 500){
PORTB |= (1<<LED);
_delay_ms(500);
PORTB &= ~(1<<LED);
_delay_ms(500);
putchar(analog_value);
}
}
}
非常感谢!