'UART'에 해당되는 글 2건

  1. 2011.08.03 시리얼통신을 이용한 CLCD문자전송 (4)
  2. 2011.05.22 블루투스(FB155BC) LED 제어 (18)
안녕하세요 숭덕이 박제현 입니다. 오늘은 시리얼통신으로 LCD에 문자를 찍어볼텐데요 !!

일단 시리얼 통신을 하려면 FTDI 나 Silabs 사의 칩을 이용하여 하는데 저는 CP2102를 사용해서 하겠습니다.
CP2102같은 경우는 WIN7 일 경우 자동으로 드라이브를 찾아 설치해주니까 너무 좋은거 같네요 FTDI사의 칩도 그렇다는..
하지만 제가 사용하기에는 간단하게 편해서 씁니다!!


자 다음은 AVR 칩이 있어야 겠네요!!!!
RX,TX는 서로 크로스로 연결하셔야 합니다.


 


자 다음은 LCD 음 이제 준비물은 다 끝난거 같네요!!!
이렇게 3가지만 가지고 충분히 작품을 하나 만들겠군요!!!!1!!!

 



 

                     

#include <mega128.h>


#include <delay.h>


#asm


.equ __lcd_port=0x1B ;PORTA


#endasm


#include <lcd.h>


 


char rx[50]={0}, rx_cnt=0;         




interrupt[USART0_RXC]void usart0_rxc(void){


  rx[rx_cnt]=UDR0;


  if(++rx_cnt>=16)rx_cnt=0;


}  


void main(void){                              


    UBRR0H=0; UBRR0L=103; UCSR0B=0x98;


    lcd_init(16);


    #asm("sei")


    while(1){


        delay_ms(1000);


        lcd_gotoxy(0,0); lcd_puts(rx);


    }


} 
                                                                                                                                                          


       

 

Posted by 숭덕이

댓글을 달아 주세요

  1. 익명

    비밀댓글입니다

    2011.09.09 09:35 [ ADDR : EDIT/ DEL : REPLY ]
    • 엘레파츠나 디바이스마트 등 여러 전자부품이라고 네이버나 구글에서 치면 쉽게 찾을 수 있습니다.

      2011.09.09 10:40 신고 [ ADDR : EDIT/ DEL ]
  2. 형님!!

    궁금한게 많은데 도움좀 주시면 감사하겠습니다

    taeyun@nate.com 네이트온 친구추가좀해주세요(--)(__) 도와주세요!

    2012.04.21 17:46 [ ADDR : EDIT/ DEL : REPLY ]
    • 숭덕이

      죄송합니다.

      2012.04.23 19:35 [ ADDR : EDIT/ DEL ]

AVR 8BIT/통신(USART)2011. 5. 22. 04:07

안녕하세요 숭덕이 박제현입니다.

오늘 많이 삽질을 했습니다..

저녁에 와서 요즘 스트레스로 어깨가 많이 결려서 하루종일 침대에 누워있다가 이렇게 하면 안되겠다 싶어

주말에 올리기로 한 블루투스(FB155BC) 글을 올립니다.

현재 새벽 4:03분이네요 

컴파일은 코드비젼이고요 크리스탈은 14.7456 입니다. 이것때문에 많은 고생을 했다는...........

STM32만 매일 하다가 오랜만에 AVR 잡으니까 힘드네요 AVR은 무조건 16Mhz 인줄알았습니다. ^^

그래서 UBRR을 103으로 보레이트 9,600으로 했는데 아무리 해도 안되길래 이걸로 1시간 동안 고민했다는.....^^

소스는 쉽다보니...책에서 레지스터값만 찾아서 공부하시면 쉬울듯 합니다..


 

 SOURCE



#include <mega128.h>
#include <delay.h>

char rx;

interrupt[USART0_RXC]void usart0_rxc(void){
rx=UDR0;

레지스터에 데이터를 쓰면 송신 데이터버퍼 TXBn에 값이 써지고, UDRn 레지스터를 읽으면 데이터 버퍼 RXBn에
들어있는 내용이 읽어진다.

if(rx=='1')PORTC=1,delay_ms(300);
if(rx=='2')PORTC=2,delay_ms(300);
if(rx=='3')PORTC=4,delay_ms(300);
if(rx=='4')PORTC=8,delay_ms(300);
if(rx=='5')PORTC=16,delay_ms(300);
if(rx=='6')PORTC=32,delay_ms(300);
if(rx=='7')PORTC=64,delay_ms(300);
if(rx=='8')PORTC=128,delay_ms(300);

}

void main(void)
{

DDRC=0xff;
UCSR0B=0x98; //RXEN , TXEN Enable
UCSR0C=0x06; //8bit mode
UBRR0H=0;
UBRR0L=95;

 

UBRRL = (F_CPU/(UART_BAUD_RATE*16L)-1; // 보레이트 계산식입니다.

보레이트때문에 고생을 많이 했네요 14.7456Mhz로 계산결과 97이 나왔는데 데이터시트에는
95로 적혀있길래 95로 사용하였고요 또한 에러율은 0% 마음에 드네요 속도면서 크게 문제가
되지는 않을거 같습니다.

#asm("sei")

}


 

결과물



'AVR 8BIT > 통신(USART)' 카테고리의 다른 글

블루투스(FB155BC)를 이용한 CDS센서 값 USART 찍기  (0) 2011.05.24
블루투스(FB155BC) LED 제어  (18) 2011.05.22
ATMEGA USART 이론  (0) 2011.05.20
Posted by 숭덕이

댓글을 달아 주세요

  1. 이혜진

    질문있어서 올려요 ㅠ.ㅠ 지금 atmega128 모듈을 사용하고, fb133bc 블루투스를 사용하고 있습니다. ㅠㅠ
    아트메가 128과 블루투스를 연결한 후 컴퓨터에 연결된 블루투스와 통신을 하려고하는데
    아트메가와 연결한 블루투스가 잡히지 않아 통신이 안되고있습니다 ㅠ.ㅠ
    혹시 아시면 ㅠㅠ 답변쫌 해주세요

    atmega128에 블루투스가 쏘아주는 신호를 받는 소스를 만들어서 넣어야할것같은데 잘 모르겠네요 ㅠㅠ
    아는 소스있으니면 쫌 보내주시면 더 감사하겠습니당 ㅠ.ㅠ.ㅠ.ㅠ.ㅠ.

    2011.08.16 18:35 [ ADDR : EDIT/ DEL : REPLY ]
  2. 숭덕이

    안녕하세요 질문을 잘 받습니다 FB133BC가 아닌 FB755BC나 FB155BC 인거 같습니다. 일단 블루투스는 슬레이브와 마스터를 잡아야 합니다. 인터페이스를 직접 제작을 하거나 아니면 인터페이스보드를 구매하셔야 합니다. 조금 정확하게 말씀을 안적어놓으셔서 잘 모르겠지만 말입니다. 정확한 질문을 주시기 바랍니다.

    2011.08.16 19:08 [ ADDR : EDIT/ DEL : REPLY ]
  3. 이혜진

    네 오타가 있었네요 ㅠ.ㅠ fb155bc 모델을 사용하고있습니다.
    블루투스를 컴퓨터와 연결하여서 마스터를 잡습니다! 그러면 이제 아트메가와 연결된 블루투스가 슬레이브가 되는것 인데요
    그 아트메가와 연결된 블루투스가 마스터에서 블루투스 잡는 at+btinq? 를 하면 주소값이 떠야하는데
    블루투스가 뜨질 않아요 ㅠㅠ
    정리하자면 아트메가와 연결된 블루투스가 마스터 쪽에서 잡히질 않아서
    설정을 할수가 없는 상태입니다. ㅠㅠ 일단 님 이 해놓으신 led 제어를 해보려고하는데 블루투스 자체가 잡히질 않으니 ㅠㅠ어떻해야할지 막막합니다.
    따로master는 컴퓨터랑은 보드를사용하고 slave 는 아트메가 128과 연결해서 하드웨어를구성하였습니다.

    2011.08.16 19:35 [ ADDR : EDIT/ DEL : REPLY ]
  4. 숭덕이

    원격이 되신 다면 도와드리겠습니다. bongpjh@nate.com 네이트입니다.

    2011.08.16 19:36 [ ADDR : EDIT/ DEL : REPLY ]
  5. 이혜진

    친구추가했어요!

    2011.08.16 19:47 [ ADDR : EDIT/ DEL : REPLY ]
  6. 이혜진

    저기여 factocom프로그램에서 마스터로 돌리면 계속 글자가 무한반복으로 뜹니다 ㅜ

    2011.08.17 17:41 [ ADDR : EDIT/ DEL : REPLY ]
    • 무슨말씀이신지 잘모르겠습니다. 쪽지 주시면 확인해보겠습니다.

      2011.08.17 16:41 신고 [ ADDR : EDIT/ DEL ]
  7. 이혜진

    저기여 궁금한게있어서그런대요.. 오실로스코프로 신호를 맞추어밨는대 아트메가128에 신호 전송이 그대로 나왓습니다. 그러면 소스가 잘못된것인가요 아트메가에서 인식을못하는것일까요??

    2011.08.18 15:56 [ ADDR : EDIT/ DEL : REPLY ]
    • 회로도와 소스 보내줘보세요!!
      무슨말인지 모르겠네요
      통신단자에 오실로스코프를 맞춰봤는데 신호가 그대로 나온다는게 무슨말씀이신지 모르겠습니다.

      2011.08.18 16:20 신고 [ ADDR : EDIT/ DEL ]
  8. 이재상

    안녕하십니까. 블루투스 막시작한 초보인데요 질문드릴게 많은데 네이트온 으로 궁금한 사항들 좀 여쭤바도 될까요?

    제 아이디는 noravosa@nate.com입니다.

    2012.01.16 23:09 [ ADDR : EDIT/ DEL : REPLY ]
  9. 익명

    비밀댓글입니다

    2012.02.16 17:57 [ ADDR : EDIT/ DEL : REPLY ]
    • 숭덕이

      음 데이터시트 보면 다 나옵니다
      ALLDATASHEET.CO.KR 들어가세요..

      2012.02.16 21:30 [ ADDR : EDIT/ DEL ]
  10. 유승환

    질문 있어요.
    이 블루투스 모델에 대해서, 인터넷을 뒤졌더니. 보통 마우스나 키보드로 입력을 받아서 사용하던데,
    반대로 핸드폰에서 입력한 것들이 블루투스를 통해서 mcu를 컨트롤 할 수 있나요?

    2012.03.21 14:15 [ ADDR : EDIT/ DEL : REPLY ]
    • 숭덕이

      안되는것은 없습니다....
      많은 자료를 찾아보고 검색하고 또 검색하고 생각해서
      만드시기를 기원합니다.

      2012.03.21 22:11 [ ADDR : EDIT/ DEL ]
  11. 와이키키

    저 혹시 블루투스 설정하실때 모드 몇번을 하셨나요?
    저는 studio4로 프로그램 했는데 아무리 봐도 프로그램은 문제없는거 같은데
    1번 누르면 led 1개 켜지고 2번 누르면 꺼지는 간단한건데..
    128avr다운로드 하면 factocom에서 쓰레기 값만 한번 나오고 안되거든요.. 설정 탓인가 해서...
    모드를 몇번으로 하셨고 설정을 어떻게 하셨는지 궁금해요

    2012.05.05 02:41 [ ADDR : EDIT/ DEL : REPLY ]
  12. 문경현

    질문 할게 많은데요.....
    제가 지금 하려고하는게 안드로이드스마트폰에 있는 블루투스기능을 통해서 아트메가 + 블루투스로 구성한 자동차를 제어하려고하는데요... 아트메가128과 블루투스(하드웨어)를 구성하려고 하는데, 어떻게 납땜을 해야할지를 모르겠습니다..ㅠㅠ 조금 가르쳐주실수있나요 ㅠㅠ ihyuny0422@sayclub.com 네이트온 친추 신청하였습니다..ㅠㅠ

    2012.07.08 20:19 [ ADDR : EDIT/ DEL : REPLY ]
  13. 익명

    비밀댓글입니다

    2013.09.05 14:01 [ ADDR : EDIT/ DEL : REPLY ]
  14. 임현수

    블루투스 모듈인 fb155와 컴퓨터와의 통신은 어떻게 했나요??
    제가 fb155와 인터페이스보드는 가지구 있거든요
    인터페이스보드에 fb155를 꼽아서 펌테크에서 지원하는 소프트웨어를 깔아서 통신설정해서 fb155를 슬레이브로 해서 PC가 보내주는 숫자키 받아서 led를 키는거 아닌가여??

    근데 컴퓨터와 블루투스 통신이 어떻게 하는지는 모르겠네요..

    2014.09.29 23:32 [ ADDR : EDIT/ DEL : REPLY ]