Week16

Week16, 12/27 LSA

期中考 iptables 設定

參考答案

上週錯誤更正

:::info 因為之前共筆版本為去年的 Raspbian,當時預設的軟體源不同,故可能沒有辦法正確用 sed 取代 :::

  1. 先備份原始軟體源
sudo cp /etc/apt/sources.list /etc/apt/sources.list.$(date +%F)
  1. 修改套件庫來源

    改成就在隔壁的 ubuntu-tw 站

    這的步驟是將 /etc/apt/sources.list 中的字串 http://raspbian.raspberrypi.org/raspbian/ 替換為 http://ftp.ubuntu-tw.org/mirror/raspbian/raspbian/ [color=teal]

sudo sed -i 's"http://raspbian.raspberrypi.org/raspbian/"http://ftp.ubuntu-tw.org/mirror/raspbian/raspbian/"' /etc/apt/sources.list

GPIO

GPIO(英語:General-purpose input/output),通用型之輸入輸出的簡稱,其接腳可以供使用者由程式控制自由使用

麵包板

同一個數字列 ABCDE 欄互通,直排的 +- 各別互通

電阻

計算電阻

杜邦線

公頭 -> 凸的, 母頭 -> 凹的

樹莓派

:::info 上面灰色部分(左邊奇數 / 右邊偶數)為板子接腳順序編號 橘色部分寫著 GPIO編號 則為BCM編號 :::

Python 基本用法

# 引入函式庫
import RPi.GPIO as GPIO
# 設定編號模式
# GPIO.setmode(GPIO.BOARD) -> 利用板子上的順序編號
# GPIO.setmode(GPIO.BCM) -> 利用 GPIO 編號
GPIO.setmode(GPIO.BOARD)
# 設定接腳模式, GPIO.IN 輸入模式, GPIO.OUT 輸出模式
GPIO.setup(這邊填你的接腳, GPIO.OUT)
# 接腳讀取
GPIO.input(這邊填你的接腳)
# 接腳輸出, GPIO.HIGH = 高電位, GPIO.LOW = 低電位
GPIO.output(這邊填你的接腳, GPIO.HIGH)

先讓電燈亮一下

先跟著附誦一次 長正短負, LED長腳接正、短腳接負

把長腳接到某個可用的 PIN 腳,並且把短腳接 GND,再來看看對它用 python 做做看

:::info 教你如何 Google 關鍵字 raspberry pi 你的設備名稱 你想寫的語言 例如:raspberry pi 溫濕度 python 通常都有很詳細的教學 :::

DHT22

參考資源

## 先安裝 git
sudo apt-get install git
## clone 別人家寫好的程式
git clone https://github.com/adafruit/Adafruit_Python_DHT.git
## 裝一下函式庫
cd Adafruit_Python_DHT
sudo apt-get install build-essential python-dev python-openssl
sudo python setup.py install
## 切換資料夾
cd examples
## 執行程式
sudo ./AdafruitDHT.py 22 你的PIN腳

PWM SG90 伺服馬達

參考資源

MAX7219 8x8 LED 燈

參考資源

HC-SR04 超聲波感測器

參考來源

蜂鳴器

Ref

PIR 人體紅外線

參考資源

NCNU-OpenSource

連結

組別學號姓名Github帳號主題需要的設備(Sensor)
1106213019蘇美婷lulala88WaterLulala
2107213517楊宜明YeeSheep泡泡音樂盒
3105213007王 威OliverWangWei都看看是誰來了!
4106213022莊詠婷tiffany92257BLC
5105213019許家瑋JiaWeiHsuCamera應用Camera
6104321024蔡旻勳kent1201Music_Broadcast
7106321009羅罡兆jim5405窮人的防毒AP
8104321051林煒星seng96我不要熱死
9104321070鄭芷君paperelmo仙人掌不要死沉水馬達+土壤濕度模組+水管2條

報告順序

每組報告 15-20 分鐘

組別順序
1
2
3
4
5
6
7
8
9