2015.05.01 18:16

이전에서는 LED를 주기적으로 깜밖이는 것만 했었다. 이번에는 두가지를 복합적으로 해봐야겠다. 


이거 다음엔 바로 인터넷 라디오로 간다. -0-a


일단 오늘의 보드는 아래와 같이 설정한다.




LED : 11번 핀에서 입력을 받아 330옴 저항을 통해 LED의 긴다리(+)로 연결되고 짧은다리(-)에서 GND로 나간다. 


YELLOW BUTTON : 3.3V로 전원이 들어가고 10K옴을 통해 버튼으로 들어간다. 위 그림에서 위 오른쪽 다리 방향으로 GND로 이어지고, 버튼의 입력은 18번 핀으로 받도록 설정했다. 


Raspberry pi2 이름로 각 핀의 wiringpi 번호는 아래와 같다. 



개발 목표는 버튼을 누르면 10초간 LED가 켜지고, 지정한 사운드를 출력하도록 한다. 출력 중 입력이 다시 들어오면 기존의 사운드를 중지하고 다시 출력하도록 하자. 


코드는 아래와 같다. 

#include <stdio.h>

#include <stdlib.h>

#include <wiringPi.h>


int main (void)

{

  int SWITCH = 5; //  pin 18

  int LED = 0; // pin 11

  int sndPID = 0;

  

  if(-1 == wiringPiSetup())

    return 1;

  pinMode( SWITCH, INPUT); // 버튼의 입력을 받는다.

  pinMode (LED, OUTPUT) ;  // LED에 신호를 보낸다.


  for (;;)

  {

    digitalWrite (LED, 0) ;

    if( digitalRead(SWITCH) == 0)

    {

       digitalWrite (LED, 1) ;

       sndPID = fork();

       if(sndPID == 0)

       {

          // 사운드 출력에는 mplayer를 사용한다. 기존에 출력 중이라면 중지시킨다.

          system("killall mplayer");

          execlp("/usr/bin/mplayer", " ", "/home/pi/media/sound/dragon.wav", NULL);  

       }


       delay(10000); // ms. 10초간 불을 켜둔다.

    }

  }

  return 0 ;

}


mplayer 설치법은 여기 를 참고하길 바란다.


테스트 사운드는 아이가 가지고 노는 요괴워치 중 하나를 녹음 한거라 음질이 엄청 나쁘니 양해 바란다. ^^a





이상. 다음은 인터넷 라디오 프로토타입으로 하단의 "인터넷 라디오" 카테고리에 업데이트 됩니다. ^^

저작자 표시 비영리 동일 조건 변경 허락
신고

'개발/경험 > RaspberryPi' 카테고리의 다른 글

버튼으로 LED, Sound 처리하기  (0) 2015.05.01
blink 샘플 실행  (0) 2015.04.29
기본적이지만 중요 정보 몇가지  (0) 2015.04.18
드디어 왔다!!  (0) 2015.04.17
2015.04.18 22:06

이 글은 개인적으로, 라즈베리파이를 활용한 첫번째 프로젝트이다. 


아내가 집 안쪽에서 라디오 안잡혀서 힘들다고 불평이었다. ipad에 라디오 어플을 설치해줘도 각 방송사마다 별도 어플을 설치해야 되서 힘들다고.. 


고민끝에 라파이로 라디오를 만들어주기로 했다. 


그래서 최근에 라파이를 구매했고, 오늘 라이브러리 설치해서 테스트까지는 했다. 


과정은 아래와 같다.

(* 아래 과정은 http://kocoafab.cc/tutorial/view/340 블로그의 내용을 참고해서 제작되었으며, 짧은 진행을 위해 불필요한 과정 생략, 내 환경과 틀린 부분을 수정하여 제작되었음을 알립니다.)


(* command의 모든 과정은 sudo 명령을 먼저 입력하고 진행하자. 혹은 귀찮다면 나처럼, sudo su를 입력해서 권환을 획득 후 진행해도 된다.) 


1. 일단 패키지 설치를 위해 apt-get 업데이트를 해보자.

   apt-get update

   apt-get upgrade


2. 사운드 드라이버가 설치되었는지 확인합니다. 



만약 설치가 안되었다면 아래 명령을 통해 설치를 해보시기 바랍니다. 

modprobe snd-bcm2835


3. 이제 라디오 방송을 듣기 위해 mplayer를 설치합니다.
우리나라의 라디오 방송은 대부분 Microsoft Media Server (mms , http://goo.gl/XPTGJv 참고)로 전송됩니다. 이를 플레이 할 수 있는 대표적인 플레이어 입니다. 

apt-get install mplayer

설치 후 mplayer config에서 오디오 출력장치에 대한 설정을 수정해야 합니다. 

ctrl+w 로  ao=pulse, alsa, sdl: aalib 부분을 찾아 주석을 처리해 주세요. 

4. 이제 들어봅시다.

아래와 같이 입력해서 라디오를 들어봅시다. 

mms 주소는 인터넷으로 검색해 보시면 많이 나옵니다. 



이상입니다. 


다음 과정은 아래와 같이 진행될 예정입니다. 진행에 문제가 발생할 수 있어, 아래 과정은 변경될 수 있습니다.


1. 라즈베리파이 설정 

2. 전용 플레이어 프로그램 구현

3. 여러 mms 주소를 입력해두고 채널을 전환하는 과정 구현

4. 외부 스위치를 통해 채널 전환하는 과정

5. 설치 구동 영상 


저작자 표시 비영리 동일 조건 변경 허락
신고