본문 바로가기

softbox raspberrypi

(31)
라즈베리파이 OLED - SSD1306 0.96inch OLED 모듈 테스트 SSD1306 0.96inch OLED 모듈 테스트 : I2C 0.96” OLED Display Module OLED는 기존 LED와 다르게 유기물질을 이용해 자체 발광이 가능하게 만들어진 다이오드이다. OLED는 자체 발광형이며, 시야각이 넓고, 응답속도가 빠르며(LED의 1000배) 백라이트가 필요없기 때문에 소비 전력이 적다. 유기물질로 이루어져 있어 기존 LED와 다르게 휘어지며, 얇고, 가벼운 장점이 있다. - 출처 : 나무위키백과 - 자세한 OLED 설명 참고 : https://namu.wiki/w/OLED I2C 방식의 OLED를 라즈베리파이에서 사용하는 방법은 아두이노 보다 더 간단하다. I2C 0.96” OLED Display Module의 핀구성 라즈베리파이3 B+ 연결도는 아래와 같다..
미세먼지 공기청정기 메이커활동 제안서 미세먼지 공기청정기 메이커활동 제안서 ▢ 우리나라의 공기질과 미세먼지는 국내 산업과 중국의 영향으로 점점 더 악회되고 있다. 우리나라 공기질이 악회되는 원인은 ◈ 미국 예일대와 컬럼비아대 공동연구에서 발표한 환경성과지수에 따르면 우리나라 공기질은 조사대상 180개국중 173위로 나타남◈ 미세먼지의 주범으로 화력발전소와 경유차가 지목되는 가운데, 선진국들은청정화력발전계획을 통해 석탄→LNG로 연료를 교체하는 반면 우리나라는 석탄화력발전을 확대·증설하고 있고,◈ 유럽에서는 경유차의 도심 진입을 금지하는 정책이 진행되는 상황에서 우리나라는 비용적 경제성과 상대적으로 유리한 배출기준 등으로 경유차가 확대되는 사회적 구조의 문제점이 가장 큰 원인으로 지적 ▢ 시장에서는 고가의 소프트웨어교육을 주도하면서 창의성과 ..
아두이노나노 업로드 시간 오래 걸리면서 에러 날 때 아두이노나노 업로드 시간 오래 걸리면서 에러 날 때 1. 보드 설정을 arduino nano로 해주신 뒤 프로세서 설정을 atmega328p (old bootloader)로 설정해주시길 바랍니다.========>avrdude: Version 6.3-20171130 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2014 Joerg Wunsch System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf" Using Port : COM23 Using Programmer : arduino Over..
BMP180 : 고도센서, 기압센서, 온도센서 아두이노 실습코드 BMP180 : 고도센서, 기압센서, 온도센서 아두이노 실습코드 BMP180은 BMP085의 상위모델로 기압센서다. 기압 측정값을 이용해서 고도로 변환이 가능하다. 우선 BMP180 디지털 압력센서 데이터 쉬트는 아래 링크를 참고한다. BMP180 Digital pressure sensor - https://cdn-shop.adafruit.com/datasheets/BST-BMP180-DS000-09.pdf센서 사용법과 데이터 쉬트에 대한 자세한 설명은 아래 링크를 참고한다.BMP180 고도/압력 Barometer GY-68 3.3/5V 레귤레이터 내장형 센서 메뉴얼 - http://www.jkelec.co.kr/img/sensors/manual/bmp180_gy68/bmp180_gy68_manual.h..
라즈베리파이 2대를 사용한 UART 채팅 프로그램 C, Python 사용 라즈베리파이 2대를 사용한 UART 채팅 프로그램 C언어 사용 연결은 라즈베리파이 GPIO 번호 8번(TXD), 9번(RXD) 핀에 MAX232 통신 모듈이나, USB to Serial 포트 등을 양쪽으로 연결하여 테스트 해야 하지만 여기서는 간단하게 라즈베리파이 1과 라즈베리파이2 의 8, 9번 핀\을 크로스로 연결하여 테스트 한다. Python 코드는 아래 C언어 예제 코드 뒤에 나온다. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293..
라즈베리파이 UART loopback 테스트 - C, Python 구현 라즈베리파이 UART loopback 테스트 - C언어 구현 1234567891011121314151617181920212223242526272829303132333435363738394041#include #include #include #include #include int main(){ int ser , x; char *pstr = "Hello World!"; char *ptmp; if ((ser = serialOpen ("/dev/ttyAMA0", 9600))
라즈베리파이 GPIO 인터럽트 사용 Python 예제 라즈베리파이 GPIO 인터럽트 사용 Python 예제 1234567891011121314151617181920212223242526272829303132#!/usr/bin/env python import RPi.GPIO as GPIO #GPIO 라이브러리 버젼을 출력한다print GPIO.VERSION#핀 넘버링을 BCM 방식을 사용한다.GPIO.setmode(GPIO.BCM) #4번 핀을 입력모드로 설정GPIO.setup(4, GPIO.IN) globalCounter = 0 #인터럽트 함수가 호출되면 글로벌 변수 globalCounter 값을 1 증가시킨다.def myInterrupt(channel): global globalCounter globalCounter += 1 print " Done. co..
라즈베리파이 GPIO 인터럽트 사용 C 예제 라즈베리파이 GPIO 인터럽트 사용 C 예제 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748#include #include #include #include #include #define BUTTON_PIN 4 static volatile int globalCounter = 0 ; //인터럽트 함수가 호출되면 글로벌 변수 globalCounter 값을 1 증가시킨다.void myInterrupt (void) { ++globalCounter ; } int main (void) { int myCounter = 0 ; //핀 넘버링을 BCM 방식을 사용한다. if (wiringPiSetupGpio ()