avatar
文章
165
標籤
256
分類
17
首頁
文章分類
關於我
Hi 我劉昕
搜尋
首頁
文章分類
關於我

Hi 我劉昕

讀書筆記:《知識的錯覺》
更新於2025-05-25|讀書筆記
超憶症難道不是超能力嗎? 超憶症,擁有超常的情節記憶(我們在《最高學以致用法》討論過記憶的分類),可以記得一生中經歷過的所有事情。聽起來很屌,很像超能力,不是嗎?超強的記憶力,難道不具備十足的演化優勢嗎? 然而就結果論而言,並不是。(否則記憶力較差的群體應當早就被天擇掉了) 書中提到,如果這個世界鼓勵投機,那我們將會掌握機率與統計、如果鼓勵演繹推理,那我們將各個都是福爾摩斯。但事實是,我們在這兩方面都是一團糟。相反地,我們演化至今的世界由因果邏輯主導,這也是為什麼,人很擅長於因果分析。 後見之明告訴我們,人腦在這個世界必須具備的能力,相比「機率統計」、「演繹推理」、「強大的記憶力」,可能更偏向「因果分析」。 因果推理:不是任何刺激都能形成制約 巴甫洛夫的狗最後對鈴聲(中性刺激)產生了制約,巴甫洛夫認為此處的鈴聲可以替換成任意刺激,都會有效。(即,他認為狗勾沒有去思考兩者之間關係) 但後來針對老鼠的進一步實驗發現,閃光與電擊、噪音與電擊、糖水與胃痛可以形成制約,但閃光與胃痛、糖水與電擊,就沒辦法。(即,老鼠是有在進行簡易的因果推理的) 預測性推理/診斷式推理 預測性推理就是「由因...
利用 EasyButton 跟 OneButton 來防彈跳、判斷雙擊、長按
更新於2025-05-25|其他
一句話解釋按鍵的彈跳: 你來不及放開按鍵之前,程式已經來問第二次了,所以程式不知道你是按了第二次,還是你單純還沒放開。 如果你懶得管那麼多,不妨直接在 loop 裡面加入 delay(100),避開明顯的彈跳問題。 如果你想嚴謹一點,那就引用一些現成的庫來用吧。 (以下用例中,我的 MCU 是 ESP32) EasyButton 如果你什麼都不要,就只要防彈跳,可以考慮 EasyButton 這個 library。 使用方法很簡單,如下: 12345678910111213141516171819202122232425#include <ezButton.h>const int led = 19;ezButton btn(23);void setup(){ pinMode(led, OUTPUT);//pinMode(btn, INPUT_PULLUP); //ezButton已經幫你預設上拉了 btn.setDebounceTime(50); //如果你手速夠快(50ms內點兩下),你依然可以讓彈跳發生 }void loop...
ESP32 小筆記
更新於2025-05-25|其他
電源供應 可以直接從 VIN 供電。 但如果你接上 USB,VIN 就變成 5V 的輸出。 Touch(內建電容觸控) Touch 1 通常沒有 lay 出來。(因為共用了 GPIO0,很難正常作動) Touch 2 共用了 GPIO2 的內建 LED ,注意別一起用。 ADC ADC2 因為 wifi 驅動用了這隻腳,所以跟wifi不能同時使用 UART 通常只看得到 U0 跟 U2,因為 U1 沒有 lay 出來。 I2C 傳輸速度 I2C 比 UART 更快,但兩條線一條是數據、一條是時脈,所以只能是半雙工。相對的,UART 可以全雙工。 但 I2C 可以一對多。所以每個設備要有 I2C address。 while(!Serial) 若在 setup 裡面寫while(!Serial);,可以在你打開終端機之前,code 卡在這行等你。 Seiral.available() 當終端機有內容被輸入(按下enter後),Seiral.available()就會回傳大於零的訊息,可以利用這點拿來檢查是否有輸入。 硬體中斷 相較於 Arduino 只有兩個腳位有支援硬體中斷,ES...
Linux 系統架設 MQTT 伺服器
更新於2025-05-25|其他
本篇利用 Mosquitto 設置一個 MQTT 伺服器,伺服器的 OS 為 Ubuntu 24.04.1 LTS。 在開始之前,MQTT 預設使用的 Port 號是 1883,防火牆的傳出傳入規則務必要設定一下,記得打開。 安裝 Mosquitto 此例為 Linux 環境,我們利用 apt 進行 Mosquitto 套件的安裝: 1sudo apt install mosquitto mosquitto-clients -y 其中 mosquitto 套件是主要的 Mosquitto 伺服器,而 mosquitto-clients 包含了指令工具如 mosquitto_sub, mosquitto_pub。 而指令開頭的 sudo 的意思是: Super Idol 的笑容,都沒你的甜。八月正午的陽光,都沒你耀眼。 我開玩笑的,其實是 superuser do。 接著我們透過 configuration 設定一下我們 Mosquitto 的規則。我們在 /etc/mosquitto/conf.d/ 中,加入一個設定檔: 1sudo nano /etc/mosquitto/c...
OrCAD Capture 利用電晶體實作 Not Gate
更新於2025-05-25|其他
平常我們都把邏輯閘當做最小單位在把玩,但邏輯閘內部是怎麼實踐的呢?我們用電晶體來實作一個反向器看看,走起!(基礎操作請見使用 OrCAD Capture 設計電路) 本次的主角是這顆 Q2N2222,一顆 NPN 電晶體: 首先搜尋「Q2N2222」找到我們的電晶體: 組織一下電路: 我們搜尋「VPulse」來放置一個方波脈衝(簡單模擬一下數位訊號): 方波脈衝信號的參數分別代表什麼? V1:基準電壓 V2:脈衝電壓 TD:Time Delay,就是發出第一個 V2 之前的等待時間。 TR:Time Rise,就是 V1 上升到 V2 之間的時間差,值越小越陡峭。記得一定要設定,為 0 的話會報錯。 TF:Time Fall,同理,就是 V1 回到 V2 之間的時間差,一樣記得要設定。 PW:Pulse Width,每個 V2 的持續時間。 PER:Period,一個 V1 加上一個 V2 的持續時間。 理解之後,我們設置參數如下: 如此一來應該就看得懂了,這軟體真的也是很省字(汗顏)。 再來我們提供一個直流輸入源,設置為 3V: 根據我們的脈衝週期(100毫秒)...
讀書筆記:《人生順利的簡單法則》
更新於2025-05-25|讀書筆記
拖延、忙碌反而生產力高? 美國芝加哥大學和中國上海交通大學的研究顯示:即使繁忙程度被迫超過可負荷范圍,人還是會因為繁忙而感到幸福。許多人都相信悠閒會使人幸福,但事實反而相反。 令人遺憾的是,我找不到這篇文獻的出處,書中也沒有附註(事實上,全書沒有半個註腳)。 那拖延呢?這裡引用的是史丹佛大學哲學系教授 John Perry 的招式:待辦事項裡如果有個最棘手的傢伙,那麼其他事項就會顯得誘人。我們利用這點,拖延大魔王,讓其他小兵顯得可愛,我們就會一直去執行那些簡單的任務。 總地來說,其實結論是:忙碌反而會幸福、拖延反而有效率,才對。(「拖延、忙碌反而生產力高?」是書中原本的章節名稱) 姿勢的力量 作者在「想提升效率,從改變姿勢開始」章節中引用了 Cuddy 著名的「高權力姿勢」(Power Pose)。其研究指出,採取象徵自信的姿勢,會使得睪固酮濃度上升、皮質醇的濃度下降。這意味著…… 更多的自信與較低的壓力。而這樣的順序,有悖於我們的直覺——難道不是先「感到」自信,才進而「表現」得自信嗎? 類似這樣先後順序的討論,濫觴可能是「臉部回饋假說」(Facial Feedback Hyp...
將米家藍牙溫濕度計 2 刷成 Zigbee
更新於2025-06-14|智能家居
本文將引導大家「免接線」將「米家藍牙溫濕度計 2」(型號:LYWSD03MMC)刷成 Zigbee,方便後續透過 Zigbee2MQTT 接入 Home Assistant。 小米官方在韌體更新到 2.1.1_0159 後(2024 後出廠的基本上都是這個版本號),資訊傳輸多了加密,讓 OTA 刷法一度失效了一兩年之久,如今重出江湖! 事不宜遲,開刷。 設備先接入米家app 首先先按照小米官方指引,用常規的方式將你的溫度計設定妥當,接入米家。 此步驟為了後續可以得到溫度計的 ID、Token、Key。 取得設備Token 你可以用任何你會的方法取得 ID、Token、Key。 如果你沒有頭緒,可以使用:https://github.com/PiotrMachowski/Xiaomi-cloud-tokens-extractor 以我為例,我用 mac 找到我米家帳號下面設備們的資訊: 刷成過渡韌體 使用 Telink Flasher for Mi Thermostat 網頁工具(https://pvvx.github.io/ATC_MiThermometer/TelinkMi...
OrCAD Capture 二極管半波整流
更新於2025-05-25|其他
本篇我們來看看半導體的整流。基礎操作請見使用 OrCAD Capture 設計電路。 我們這次選用 1N4148 作為我們的二極管: 繪製電路如下: 進行電路模擬: 電路模擬如下: 其中紅色為訊源,而綠色就是經過半波整流後的結果咯。
智能家居 EP10:將多盞燈組合成燈組
更新於2025-05-25|智能家居
隨著我們的設備越來越多,會發現其實有些裝置總是同進同出,不太有分開來操作的需求,比如說同一組吊燈上的燈泡。 此時,我們就可以用到 Group 這個功能。 本來認為這應該是很常用,設定上應該要很簡單才對的功能,但 HA 的邏輯卻有點繞。 我們來一起操作看看,走起! 新增群組 進入「設定 > 裝置與服務 > 助手」,點擊右下角「新增助手」,找到「群組」: 群組藏在這個地方,實在是令人想不太到對吧 XD 我們選擇「燈光群組」,然後把你要組起來的燈都找進來: 我的四顆燈就組隊完畢了: 操作群組 組隊完畢後,你會發現…… 誒?剛剛組起來的群組,找不到人!以我為例,我要在自動化裡面,設定按下按鈕就打開整組客廳左右燈,但找了很久都只能找到落單的實體,而非群組。 出乎意料地,我們要去「執行動作」: 然後找到「燈光: 開關」(選項有點多,找不到就用搜尋的): 最後,我們才能在這個「動作」裡面找到我們設定好的燈光群組: 如此我們就可以成功操控燈光群組咯 :) 所以我說,這邏輯確實很繞對吧?
OrCAD Capture 透過 Parameters 討論變數
更新於2025-05-25|其他
在使用 OrCAD Capture 設計電路中我們已經學會如何繪製電路圖,並且使用 PSpice 模擬電路的運作情形。 今天我們要在同一個電路架構之下,設定一個參數作為變數,針對不同的輸入值繪製對應的圖形。 先來一個 RC 電路,訊號源是一個漂亮的方波脈衝: 用 PSpice 模擬後發現,誠如我們對 RC 電路的認識,方波被 RC 電路磨去了棱角(方波的高頻諧波被我們過濾掉了): 那麼現在,我想知道不同的電容值,會對我的方波造成什麼不同的影響。 於是我們要來把圖中的電容(C1)設為變數。 我們從元件裡面搜尋「PARAM」找到「PARAM/SPECIAL」,放到圖中: 接著雙擊 C1,將 C1 的電容值設定為 {C}。其中大括號裡面就是宣告一個變數。 再來雙擊圖中的「PARAMETERS:」,會出現如下畫面,此時點擊「New Property」: 此時添加我們剛剛設定的變數 C,電容值可以先隨便給一個: 添加成功: 回到我們的 PSpice 裡面,點擊左側「Edit Simulation Settings」,或是在電路圖上方選單的「PSpice > Edit S...
1234…17
avatar
Shuai
Hi 我劉昕啦!Shuai 是我的英文名字,唸作帥,取其義。
文章
165
標籤
256
分類
17
關於我
分類
  • Self Hosting4
  • 其他36
  • 台股筆記4
  • 和弦筆記18
  • 家教筆記15
    • 高中數學10
    • 高中生物3
    • 高中通識2
  • 數位音樂製作8
    • Logic Pro X2
  • 智能家居12
  • 架站筆記14
  • 語言筆記15
    • 台語筆記3
    • 日文筆記6
    • 韓文筆記5
  • 讀書筆記39
標籤
影片 天文 Google Podcasts 安妮亞 真珠美人魚 Self Hosting Chrome 當兵 2顆星書籍 物理 延近輝之 IPA 金六結 綜合除法 吕口口 ntfy Atwater system 貝氏定理 北斗神拳 自由意志 智能家居 人魚的旋律 Rufus 條件機率 多巴胺 張翰 鋼琴鍵盤 國泰證券 心靈 宋念宇 排列組合 現沖賣 軍事訓練役 GUI 等響曲線 定期定額 immich 串流平台 二項式定理 Windows Proxy 法律 EPS 劉若英 ヤキモチ Hexo 青峰 X11 王巨星 快樂 SEO 文學 Lupo Groinig 買辣椒也用券 C++ 哲學 黃俊郎 Channel Strip 農作物 HNC羅馬字輸入法
網站資訊
文章數量 :
165
最後更新時間 :
© 2022 - 2026 By Shuai