또 자문자답이지만… 해결했습니다
이 명령어가 리눅스에서 기본으로 사용할 수 있는 명령어인줄 알았더니
wiringPi 명령어더군요… wiringPi 핀맵을 보고 사용하니 정상 작동합니다
하지만 아직 의문인점은 왜 기본 신호가 0인것이 있고 1인 것이 있는지 모르겠습니다… 기본이 0인 핀은 버튼으로 입력을 해도 반응이 없고 기본이 1인 핀만 버튼 입력에 반응합니다
써머스비굳
@써머스비굳
써머스비굳 님이 작성한 포스트
-
RE: gpio read 하는 shell script 작성중 이상현상 질문 드립니다.
-
gpio read 하는 shell script 작성중 이상현상 질문 드립니다.
안녕하세요 shell script를 이용해서 볼륨조절, 카메라로 사진찍기, 이미지처리(c++코드) 를 하려고 하는데 shell script를 처음 사용해봐서 이것저것 막히는게 많네요ㅜㅜ
우선 gpio read명령어로 볼륨을 높이는 기능은 되는데 낮추는 버튼이 먹지를 않습니다… 그래서 값을 확인해본 결과 버튼을 눌르기 전에 7번핀 값을 받아와 echo를 해보면 1이 출력되고(이부분도 의문입니다 버튼 입력 전이면 0이 출력되어야 하는게 맞다고 생각하는데 1이 출력되네요…) 버튼을 누르면 0이 출력됩니다 그래서 0일 경우 amixer의 값을 높여주는 방식으로 잘 돌아갔습니다.
문제는 down버튼을 누렀을때 echo로 확인한 8번핀의 값의 변화가 없습니다… 어떤 문제떄문에 값이 변하지 않는걸까요…?
문제 원인을 아시거나 gpio버튼 입력을 받아오는 다른 방법 아시는분 답변좀 주시면 감사하겠습니다!
제가 확인해본 방법
- 버튼, 선은 다른걸로 바꿔서 실험(증상이 똑같았습니다)
- 다른 핀에 물려서 실험
->8번핀(volume down) 말고 다른 핀에 물려봐도 같은 증상입니다 - gpio readall로 확인결과 10번 핀이 7번 핀과 같이 기본값이 1이길래
down을 10번 핀에 물리고 버튼을 누른상태에서 readall로 확인했더니 값이 변했습니다 그러나 코드로 확인했을때는 여전히 값을 제대로 읽어오지 못합니다… - 참고사이트 2를 참고하여 upButton=
gpio -g read 7
(gpio -g read 7 앞뒤에 `가 있습니다 이 홈페이지 텍스트 편집기에서 표시되지 않네요)
이런식의 코드로 고쳐봤지만 이렇게 고치니 볼륨+버튼도 먹지 않습니다
참고사이트
(1) https://raspberrypi.stackexchange.com/questions/15283/how-to-get-the-state-of-a-gpio-pin-bash
(2) http://blog.naver.com/PostView.nhn?blogId=junsung9182&logNo=220680692687&parentCategoryNo=&categoryNo=&viewDate=&isShowPopularPosts=false&from=postView
원래 코드
#!/bin/sh#set pin
gpio mode 7 in
gpio mode 8 in#init vol
vol=200while true
do
#set
upButton=$(gpio read 7)
downButton=$(gpio read 8)
#출력
echo "up : "$upButton
echo "down : "$downButton#볼륨 + 버튼 입력시 if [ $upButton -eq 0 ]; then vol=`expr $vol + 50` sudo amixer cset numid=1 $vol fi #볼륨 - 버튼 입력시 if [ $downButton -eq 0 ]; then vol=`expr $vol - 50` sudo amixer cset numid=1 $vol fi sleep 2
done
-
RE: .desktop 관련 에러 겪어보신분 계신가요?!
lxde를 설치하여 기존처럼 사용 가능해졌습니다
-
.desktop 관련 에러 겪어보신분 계신가요?!
안녕하세요!
raspbian jessie 운영체제에서 작업중 터미널을 하나 더 실행하려고 하니까
/usr/share/raspi-ui-overrides/applications/lxterminal.desktop 이 경로에 문제가 있어 실행할 수 없다고 실행이 안되네요
(너무 많은 작업을 해서 무슨 작업 후 에러가 발생했는지는 모르겠지만…)
재부팅을 하니 터미널만 실행되는 이런 화면으로 실행되는데 이런 증상 겪어 보신분 있으신가요?아래는 제가 했던 작업중 기억나는 작업입니다.
ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ
googleVision API 설치 중- python명령어가 실행되지 않아 기존 설치되어있는 python 2.7 3.0 3.4버전 삭제 후 3.5버전 설치
$ python -m nltk.downloader stopwords
$ python -m nltk.downloader punkt
이 명령어 실행시 에러가 있어 검색하다보니
export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python3.5/site-packages
환경변수를 등록하라는 글을 봐서 환경변수 등록(/etc/profile)많은 작업을 했지만 기억이 나는건 이 두개 뿐이네요…