지난번 올렸던 C언어로 라즈베리파이 3의 LED제어 했던 것에 이어서 글을 올립니다. C언어로 Raspberry Pi 3의 GPIO 레지스터 접근하여 LED켜보기 https://webnautes.tistory.com/1915 이번엔 버튼을 하나 추가하여 버튼을 누른 동안에는 LED가 켜지고 손을 떼면 LED가 꺼지게 됩니다.. GPIO18번에 LED가 연결되어 있고 아래 사진처럼 GPIO17번에는 버튼을 연결하고 풀다운저항을 추가했습니다. GPFSEL1레지스터를 접근하여 핀을 입력으로 쓸지 출력으로 쓸지 결정해주어야 합니다. 입력의 경우에 디폴드값이 000이므로 아래 FSEL17는 건드릴 필요가 없습니다. LED를 켜야하므로 FSEL18은 001로 해주어 출력으로 해주어야 합니다. 핀으로부터 입력을 읽어..
복잡하게 디바이스 드라이버까지 작성하지 않고 간단하게 mmap을 사용하여 레지스터에 접근하여 LED를 제어해보려고 합니다. 핀번호 6번 그라운드와 핀번호 12번 GPIO18에 LED를 연결해주었습니다. BCM2835 데이터 시트에 따르면 LED를 켜고 끄는 데에는 다음 레지스터들을 사용하면 됩니다. 라즈베리파이3에선 BCM2837이지만 동일하게 동작했습니다. GPFSELx – GPIO핀을 Input 또는 Ouput으로 사용할지 결정. GPSETx – GPIO핀을 하이레벨로 만들어줌. Led가 켜진 상태. GPCLRx – GPIO핀을 로우 레벨로 만들어줌. Led가 꺼지는 상태. GPIO Base Address가 아래처럼 0x 7E20 0000으로 나와 있지만 BCM2835 데이터시트의 1.2.3 ARM ..
웹용 언어인줄로만 알았던 자바스크립트인데 하드웨어 제어도 됩니다. 참 신기합니다. 어떤 장점이 있어서 사용하게 되었는지도 궁금하구요.. 찾아보면 Node.js나 비슷한 류를 기반으로 하는 임베디드 보드들도 꽤 있습니다.. 2015.11.272109. 08.12 - node 설치 방법 변경 문제없이 동작하는 Node.js 버전이 정해져 있어서 해당 버전을 사용해야 합니다. onoff 깃허브 페이지에서 확인 가능합니다. 주소는 참고 [2]에 있습니다. 다음과 같은 방법을 Node.js 4.8.4를 설치해줍니다. $ sudo npm cache clean -f $ sudo npm install -g n $ sudo n 4.8.4 문제 없으면 다음처럼 버전으로 4.8.4가 출력됩니다. $ node -vv4.8.4..