라즈베리파이-UART

Posted 2016. 10. 5. 14:49

라즈베리파이2로 진행


일단 프로그램으로 들어가기 전에 라즈베리파이 setting상태를 점검해보자.

Raspberry Pi는 기본적으로 UART를 콘솔이 사용하도록 설정되어 있다.

제어 프로그램이 UART를 사용하려면 콘솔이UART를 잡고 있지 않도록 설정해 줄 필요가 있다.

현재 사용하고 있는 STM32보드와 시리얼 통신을 해보자.

1. cmdline.txt 파일 수정 : SD를 열어보면

 dwc_otg.lpm_enable=0 console=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait

으로 설정되어있다. 'console=ttyAMA0,115200' 부분을 삭제해준다.

2./etc/inittab 파일도 수정

 $sudo nano /etc/inittab

'ttyAMA0'가 있는 라인 맨 앞줄에 #을 붙여준 후 저장 -> 수정 후 나가기(Ctrl+x)  - >저장  y 엔터

$sudo reboot

테스트 프로그램을 작성해보자.

wringPI 기반으로 작업하였다.

#include <stdio.h>
#include <string.h>
#include <errno.h>

#include <wiringPi.h>
#include <wiringSerial.h>

int main ()
{
  int fd ;
  int count ;
  unsigned int nextTime ;

  if ((fd = serialOpen ("/dev/ttyAMA0", 9600)) < 0)
  {
    fprintf (stderr, "Unable to open serial device: %s\n", strerror (errno)) ;
    return 1 ;
  }

  if (wiringPiSetup () == -1)
  {
    fprintf (stdout, "Unable to start wiringPi: %s\n", strerror (errno)) ;
    return 1 ;
  }

  nextTime = millis () + 300 ;

  for (count = 0 ; count < 256 ; )
  {
    if (millis () > nextTime)
    {
      printf ("\nOut: %3d: ", count);
      fflush (stdout);
      serialPutchar (fd, count);
      nextTime += 300;
      ++count;
    }

    delay (3) ;

    while (serialDataAvail (fd))
    {
      printf (" -> %3d", serialGetchar (fd)) ;
      fflush (stdout);
    }
  }

  printf ("\n");
  return 0;
}

Write your message and submit

라즈베리파이3-GPIO

Posted 2016. 9. 7. 00:37

라즈베리파이3 에서 gpio test

일단 주의사항 숙지

gpio는 3.3v회로만 구성해야 하고 최대 30mA전류를 사용 할 수 있고 과전압 과전류 보호회로는 구성이 필요하고 버전별로 핀배열이 다르다!

gpio readall 자신의 라즈베리파이의 gpio확인

git clone git://git.drogon.net/wiringPi

wiringPi 프로젝트를 다운 받는다.

cd wiringPi

./build //설치

gpio readall을 실행해보면 아래와 같다.




프로그램 작성 gpio_test.c 에 간단한 gpio read/write 를 작성하고 printf로 출력창에 상태 확인.



컴파일 gcc -o gpio_test gpio_test.c -lwiringPi
실행 sudo ./ gpio_test

해서 printf로 입력 값 읽고 출력은 테스터기로 전압을 체크해서 테스트 해본다.




Write your message and submit

라즈베리파이2-SPI통신

Posted 2016. 9. 4. 02:51

라즈베리파이에서 SPI통신하기

개발하다보면 해봤던 일도 헷갈리고 삽질하는 시간이 생기기 마련이다.그래서 매번 정리해놔야지 하고 해결되면 또다른 바쁨 들로 지나가고 많은 시간이 지나고 또 필요할 일이 생기면 가물거리는 뇌를 탓하며 소모되가는 자신을 발견하며 또 시간을 소비하곤 한다.
잠깐 깨어있는 틈을 타 빠르게 기록해놓기로 한다.

요즘 stm32로 개발 진행을 하고 있는데 라즈베리파이와 spi통신 개통이 필요하여 잠깐 작업에 들어갔다.

sudo raspi-config //설정으로

Advanced Options

SPI선택 enable을 물어보면 yes를 선택

finish를 선택해 저장하고 재부팅

dmesg | grep SPI

spidev_test.c를 다운

wget https://raw.githubusercontent.com/opennetworklinux/linux-3.8.13/master/Documentation/spi/spidev_test.c

소스상에 아래와 같이 한줄 수정

static const char *device = "/dev/spidev0.0";

컴파일 프로그램 명령을 내린다 아래와 같이.

gcc spidev_test.c

자체적으로 spi 데이터 출력을 확인 해보기 위해

19번핀과 21번핀을 점퍼 케이블로 연결해주고 컴파일한

것을 실행.



이제 라즈베리파이에서 SPI통신 개통을 마치고.

라즈베리파이가 master , STM32F103을 slave설정하여 테스트 하였는데 그부분은 다음에 정리하여 올리기로.

라즈베리파이 3에서도 테스트.동일하게 적용된다.

Write your message and submit

벌써 라즈베리파이3가 나왔는데 어쩌나.
두아이의 엄마로 살기가 생각 이상이므로 나는 소신껏 당분간은 2로 진행하기로 한다.당장이라도 3를 사고 싶지만 지름신은 당분간 넣어두는걸로.

지난번 포스트때 lcd지지대가 없는 불편함에 대해 이야기 하였다. 그때까지만해도 호환 케이스가 시중에 없었는데 요즘 드문드문 보이기 시작하여 적당한 걸로 사용해보기로 했다.




별도로 추가한 통합센서보드를 연결할 수 있을까 의문이었는데 뒷면이 오픈되는 타입이라 눈으로 확인가능하여 led테스트일 때 좋을 것 같다.같이 연결하여 조립하였다.

이 케이스를 사용하면 한가지 작업해서 사용해야 하는 불편함이 있는데 그것은 lcd방향!

설정해보도록한다.


​​​터미널창을 띄운다.


config.txt 파일을 연다.


lcd_lotate 값을 2로 설정한다.


재부팅한다.우리는 터치와 lcd방향이 180도 바뀐것을 확인 할 수 있다.

통합센서모듈의 led까지 개통식을 해볼라고 했으나 자야한다.

번외. 오늘 저녁 아이들을 씻기고 블럭놀이를 했는데 순식간에 본인의 작품을 만들고 있는 부쩍 커버린 고작 4살첫째 딸.처음 몇분도 안되 뚝딱뚝딱 쌓아 올리더니 자꾸 무너지는 것에 속상해하길래 다시 튼튼하게 쌓아보면 어떠니 라고하자 또 혼자 끙끙 만들더니 이러면 튼튼하겠지요 라고 한다.아이들은 하루하루의 성장이 눈에 보인다.새삼 감동이다 ㅠ




Write your message and submit



위의 설명은 공식적인 터치스크린 조립및 설치 방법 이미지를 퍼온 것임. 공식케이스를 별도로 구매했으나 터치스크린과 연결할때는 맞지 않기때문에 분리하여 사용하였다.



케이스나 지지대가 필요하다는 것을 체감하고있다.
조립및 연결을 하니 사용할 때 세우지도 눞히지도 못하는 사태가 벌어진다.일단 불편한 상태로 진행하기로 한다.



update 와 upgrade 가 끝났다.

위의 설명에 따라 연결하고 재부팅 ->

sudo reboot

터치스크린 작동 확인해보자.

startx

​​​




산딸기 화면이 등장하고 터치로 화면 사용이 가능하다.

동영상으로 터치 화면을 사용하는 것을 올리고 싶었으나 업로드가 핸드폰에서 직접 되지 않는다.

아쉬운 마음에 캡처하여 두장 올려본다.

이제 뭐해볼까나!




Write your message and submit

라즈베리파이2-라즈비안설치

Posted 2015. 11. 25. 01:00

라즈베리파이 홈페이지에서 최신 라즈비안을 다운받는다. 다운로드는 아래 링크로->
https://www.raspberrypi.org/downloads/


다운받은 파일을 마이크로SD카드에 넣는다.
Win32 Disck Imager를 실행하여 sd카드에 넣는다.
​​​​​​​​​​​


sd카드를 보드에 꼽고 모니터 마우스 랜선등을 꼽고 전원을 인가한다.



화면이 켜지며 아래와 같이


설정화면이 나오고 일단 패스




로그인 화면이 나오면
login : pi
Password : raspberry


패스워드까지 치면
" pi@raspberrypi ~ $ " 가 나오면 "startx" 치고 엔터

드디어 산딸기 화면 등장!



설치하여 산딸기화면을 만났다.얼마만에 느껴보는 기쁨인지 아무것도 안하고 설치만 했는데 벌써 뿌듯하다.
구성이 되있는 상용화 제품을 사용하는 것은 엄청난 시간을 절약해준다.이제 뭘 해바야 하나!

자야한다 이젠.bye~


Write your message and submit



어김 없이 조금 늦어진 첫 수유를 하고 아침이 다되어서 라이딩 시작. 자전거에 오르자 예상했던 엉덩이 통증에 꾸역꾸역 페달을 밟는다.
엉뽕바지가 간절한 순간이다.

냉동실에 얼려둔 얼음을 첫개시하여 디카페나토 아이스커피 한잔을 가져간 덕분에 목적지에서 벤치에 앉아 잠시 휴식을 취하며 마시니 집에서 마시던 커피에 비할 바가 아니다.

이어폰으로 들리는 Lost Stars 그리고 디카페나토 아이스커피 한잔이면 충분하다.

Write your message and submit