跳到主要內容

發表文章

目前顯示的是 6月, 2020的文章

Arudino 教學(五):開關 + 數位輸入 + IF 語法

本次實作將使用 開關元件 ,並運用 Arduino 的 數位輸入 功能偵測信號,依照輸入信號執行 LED 燈號程序。內容比較複雜,將分次分階段進行。 本次實作每個同學需要抄寫「實作目的」、「線路說明」、「程式說明」與「進階」作為實作報告。 實作目的: 正確使用開關元件,並架構電位測量電路 正確使用 Arduino 數位輸入電路 使用 IF 語法,偵測數位輸入信號進行 LED 程序 階段一:認識開關元件 零件包內附的開關是4支腳位,分成兩組,從背面觀察(上圖下),從條紋來辨識,左邊2支腳位是互通的,右邊2支也是;而必須按下開關,左右兩邊才會連通。 階段二:Arduino 數位輸入與電位測量電路 Arduino 數位輸入是電位訊號而非電流,所以 不可以直接將電流直接導入 Arduino 腳位 。必須架構電位測量電路來達成數位訊號輸入。 本階段使用 Arduino UNO 的 6 號腳位 作為數位輸入,按下開關之後控制 內建 LED 。 digitalRead(6) :讀取 6 號腳位的訊號,高電位 HIGH,低電位 LOW 階段三:由開關控制 LED 程序 現在開始要結合前兩階段以及上個實作,由開關來啟動 LED 閃動程序。由 6 號腳位 接受數位輸入訊號。利用 IF 語法控制 LED 程序。LED 電路和程序和上一個實作相同。 電路圖: 線路說明: 8、10、12號腳位組成共陰極 LED 線路 6 號腳位連接由開關元件所組成的電位測量線路,作為數位輸入端 程式截圖: 程式說明: int var = 0; 表示宣告一個變數 var 作為後續讀取輸入訊號用 在 setup 區塊設定 6 號腳位為數位輸入端,8號、10號、12號腳位為數位輸出端 在 loop 區塊中,利用 var = digitalRead(6); 讀取 6 號腳位訊號到變數 var 中 利用 IF 語法,判斷變數 var 是否為 HIGH (高電位)。若是則開始執行 LED 程序 進階: 變更間隔時間與次數 增加 LED 或 燈號變化 使用雙分支結構增加變化 補充說明:IF 語法 if (判斷式){     …     (成立時執行的程序)     … }  雙分支結構 if (判斷式){     …     (成立時執行的程序)     … } else {     …     (不成立執行的程序)  

DNS 新增 CAA 紀錄

學校的網頁伺服器採用 HTTPS 模式時,均使用 Let's Encyrpt 認證服務。大多數的伺服器都依 Let's Encrypt 官網的說明,使用 Certbot 用戶端自動於過期前更新。 今天遇到 6/16 到期的 radius.tsh.tp.edu.tw 出現久違的 https 警告,發現該主機的 Certbot 並沒有自動更新。查詢相關資料後,用 sudo certbot renew 手動指令更新,出現下列的錯誤: 發現是 DNS CAA 錯誤問題。 摘錄「 https://ezbox.idv.tw/112/dns-caa-protec-ssl-tls-certificate/ 」說明: 目前全球簽發 SSL/TLS 憑證的機構已超過百個 要避免這些機構在某些情況下錯誤簽發憑證 (WoSign曾發生過) 就需要在簽發憑證前做一些檢查動作 在 RFC 6844 中定義了 DNS CAA Record 透過 DNS 的 CAA 紀錄,申明網域授權哪些機構可以簽發該網域的憑證 如果沒有設定 CAA 紀錄,則代表任何機構都可以簽發該網域的憑證 2013年1月 CA可以決定是否檢查該記錄,非強制性 2017年3月 CA/Browser 論壇決議 2017年9月起強制所有憑證發行機構在簽發憑證前必須檢查 DNS CAA 紀錄 如果是代管 DNS,則現行多數的DNS代管單位都可以直接設定 CAA 紀錄 若無法新增 CAA 紀錄,只能聯繫代管服務商要求提供協助設定 如果是自行管理DNS,則需要在自己的 DNS Server 上自行設定 解決方式只要用 SSLMate 提供的 CAA Record Helper 來協助產生紀錄,再輸入 BIND9 設定檔中即可。

新技能習得:Proxmox VE

伺服器開箱喔

學校採購一台機架型伺服器,主要作未來虛擬化主機使用。這是生平第一次全新的伺服器可以拆箱的。 開箱文 PO 到 FB 後,還被學生子澄發現記憶體沒有插滿。唉!不足記憶體沒滿,兩個 CPU 插槽也只有插一顆 CPU,我也很想都都插滿,但是沒有經費啊。     

Arudino 教學(四):迴圈

本次實作將練習 Arduino 程式中的重覆語法(迴圈),利用 for 迴圈來簡化重覆程式結構。 另外, 本次實作每個同學需要抄寫「實作目的」、「線路說明」、「程式說明」與「進階」作為實作報告。 實作目的: 熟悉 Arduino 重覆語法:for 迴圈的使用 利用 for 迴圈控制 LED 燈閃爍 電路圖: 線路說明: 選用紅色、黃色、綠色 LED,正極分別串接一個220Ω電阻後,連接至 Arduino 的12、10、8號腳位。 LED 負極共接後,連接至 Arduino GND 腳位 程式截圖: 程式說明: 在 setup 區塊中,設定第 8、10、12號腳位為輸出功能 在 loop 區塊中,先使 8 腳位點亮一秒 利用 for 迴圈使 10 腳位每隔 0.2 秒閃動十次 12腳位亮一秒後,使用 for 迴圈每隔 0.2 秒閃動五次 For 迴圈特別說明: for 迴圈語法是用在已知次數的重覆執行的情景下。   語法結構: for(int 變數起始值 ; 執行條件 ; 變數增減式 ){ … … }   進階: 變更間隔時間與次數 增加 LED 或 燈號變化

生平第一張 cisco 認證

CISCO IT Essentials