강의 내용
os
이후 설치에 대한 자세한 내용은 ppt참조
이미지 굽기 완료 후
그리고 개발환경 구성 ppt참조
원래 라즈베리파이 연결은
라즈베리파이-공유기-노트북
하지만 공유기가 없음으로
라즈베리파이->노트북<-공유기
노트북에서 공유기능을 사용한다.
Accept
누르면 아래와 같이 접속 가능하다.Loginas에 pi입력후 password에 raspberry입력하면 로그인 완료
password에는 문구가 출력되지 않음
ls, pwd
ls -al
ls -alh
tree
그외 기본 명령어들
vi - editor
i - 입력
shift+; - 명령 대기
wq - 저정후 종료
vi 입력키에 대해서는 숙지하자
리눅스 기반에서 자주 사용한다.
nano <파일명>
이것도 수정하는 것
실무에서는 visual studio code로 진행 할 것이다.
새창이 뜰것이다.
교제,(진짜 코딩하며 배우는 라즈베리파이4) 참고
p78
_01_print.py 실행
_02_while_true.py 문 실행
_03_try_except.py
_04_time.py
_05_print.py
_05_1_sum.py
_07_list.py
_05_print_5.py
라즈베리파이 상에서 파이썬은 얼마나 빨리 동작할까? 여기서 라즈베리파이 상에서 파이썬이 얼마나 빨리 동작하는지 테스트 해보자.
cnt 변수를 천만번 세는데 raspberry3 modelB은 9.51초 정도가 걸렸다.
참고로 i5-10210U CPU기반인 노트북에서는 0.88초정도 걸린다.
_08_test.py
ppt보고 연습해도좋다(딕셔너리)
_11_ifelse.py
_12_for.py
_13_while.py
_14_func.py
p89~
import RPi.GPIO as GPIO
led_pin = 17 # GPIO17
GPIO.setmode(GPIO.BCM)
GPIO.setup(led_pin, GPIO.OUT)
GPIO.output(led_pin, True)
try:
while True:
pass
except KeyboardInterrupt:
pass
GPIO.cleanup()
import RPi.GPIO as GPIO
import time
led_pin = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(led_pin, GPIO.OUT)
pwm = GPIO.PWM(led_pin, 1.0) # 1.0Hz
pwm.start(50.0) # 0.0~100.0
try:
while True:
pass
except KeyboardInterrupt:
pass
pwm.stop()
GPIO.cleanup()
GPIO.cleanup()
import RPi.GPIO as GPIO
import time
buzzer_pin = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(buzzer_pin, GPIO.OUT)
pwm = GPIO.PWM(buzzer_pin, 262) # 1.0Hz
pwm.start(50.0) # 0.0~100.0
time.sleep(2.0)
pwm.ChangeDutyCycle(0.0)
pwm.stop()
GPIO.cleanup()
import RPi.GPIO as GPIO
import time
buzzer_pin = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(buzzer_pin, GPIO.OUT)
pwm = GPIO.PWM(buzzer_pin, 1.0) # 1.0Hz
pwm.start(50.0) # 0.0~100.0
melody = [262,294,330,349,392,440,494,523]
for note in range(0,8):
pwm.ChangeFrequency(melody[note])
time.sleep(0.5)
pwm.ChangeDutyCycle(0.0)
pwm.stop()
GPIO.cleanup()
import RPi.GPIO as GPIO
import time
servo_pin = 18
GPIO.setmode(GPIO.BCM)
GPIO.setup(servo_pin, GPIO.OUT)
//pwm.stop() //신호가 계속 나와서 가만히 있어도 모터가 돌아감
pwm = GPIO.PWM(servo_pin, 50) # 50hz
pwm.start(10.0) #0.6ms
time.sleep(2.0)
pwm.ChangeDutyCycle(0.0)
pwm.stop()
GPIO.cleanup()
잘안됨;
import RPi.GPIO as GPIO
import time
button_pin = 27
GPIO.setmode(GPIO.BCM)
GPIO.setup(button_pin, GPIO.IN)
try:
while True:
buttonInput = GPIO.input(button_pin)
print(buttonInput)
except KeyboardInterrupt:
pass
GPIO.cleanup()