회원가입 ID/PW 찾기
AA

#define F_CPU 16000000    //Clock frequency

#include <avr/io.h>

void USART_Init()
{
    unsigned int ubrr = 103; // 9600 for 16MHz
    // Set baud rate
    UBRR0H = (unsigned char)(ubrr>>8);
    UBRR0L = (unsigned char)ubrr;

    // Enable receiver and transmitter
    UCSR0B = (1<<RXEN0)|(1<<TXEN0);
    // Set frame format: 8N1
    UCSR0C = (1<<UCSZ01)|(1<<UCSZ00);
}

void USART_putc( unsigned char data )
{
    // Wait for empty transmit buffer
    while( !( UCSR0A & (1<<UDRE0)) )    ;
    // Put data into buffer, sends the data
    UDR0 = data;
}

unsigned char USART_getc( void )
{
    // Wait for data to be received
    while( !(UCSR0A & (1<<RXC0)) )    ;
    // Get and return received data from buffer
    return UDR0;
}

int main(void)
{
    unsigned char c;
    // Setup USART
    USART_Init();   
    while(1)
    {
        c = USART_getc();
        USART_putc(c);
    }
    return 0;
}



AVRStudio 4 컴파일하고
Tera Term 이용하고 있는데

1을 입력하면 다시 1을 입력받는 코드인데

계속 돌아가지가 않네요.

어느 부분이 잘못됐는지 알수있을까요?



댓글 1

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
  • 사랑은 사람들을 치료한다. 사랑을 받는 사람, 사랑을 주는 사람 할것 없이.
    - 메닝거
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.