Google
 

星期一, 6月 20, 2022

CR-V 5.5代保險絲更換

 上週找到一個舊的逆變器, 想試試它能不能正常使用。於是把它接上CR-V的點煙器插座,然後接上我的二代強力旋風打氣機試試看。

沒想到打氣機才轉了幾秒鐘就不動了,結果是點煙器的保險絲燒掉了。

翻了一下車主手冊,找了從來沒看過的保險絲盒的位置,原來就在方向盤左下角的角落。



但手邊沒有多的保險絲(後來才發現其實車上就有備用的,還有拔保險絲的工具),所以就回原廠去處理了。

跟原廠技師聊了一下,原來引擎蓋打開裡面就有備用保險絲。


蓋子上就有備用保險絲,白色那個夾子就是拔保險絲的工具。

點煙器保險絲是20A的,在29號的位置。



順便跟原廠多備2顆20A的保險絲(是有那麼常燒嗎?)。技師提醒,保險絲不要亂拔,有些裝置斷電後可能要重新設定。所以除非很清楚你在做什麼,否則就不要亂動啊!
不過說到原廠換保險絲,我覺得還蠻佛心的。換個保險絲也沒收工錢,只收材料費。包含外加2支備用的保險絲,總共3支才48元。日後換車本田還是優先考慮哦!














星期五, 5月 13, 2022

食物營養成份查詢


台灣食品營養成分資料庫

這裡蒐集了2140種台灣常見的食物, 大部份日常看得到的食物都可以查得到。

還可以下載CSV檔。


美國食品藥物管理局 FOOD SEARCH

有些東西在台灣這邊查不到, 可以來這裡找。例如在台灣這我找不到巴西堅果, 所以就可以到FDC的資料庫找。在左邊輸入 Brazil nuts, 按下Search就出來了。




星期四, 4月 21, 2022

Kotlin的繼承與override

 在Kotlin中若要override父類別的function, 則需要用override修飾字。

但若在父類別中沒有加修飾字, 則Kotlin會預設將此function視為final。

這時編譯器會出現這樣的錯誤:

[fun] in [parent class] is final and cannot be overriden 


解決方式是在父類別的function前加上open即可。

而在子類別中亦可用super.function名稱呼叫父類別的function。

如下:

fun main() {


    val squareCabin = SquareCabin(5)

    val roundHut = RoundHut(3)

    

    squareCabin.print()


    roundHut.print()

}


abstract class Dwelling(private var residents: Int) {

    abstract val buildingMaterial: String

    abstract val capacity: Int

       

    fun hasRoom(): Boolean {

       return residents < capacity

   }

    

   open fun print() {

        println("Capacity: ${capacity}")

        println("Material: ${buildingMaterial}")

        println("Has room? ${hasRoom()}")

    }

}


class SquareCabin(residents: Int) : Dwelling(residents) {

    override val buildingMaterial = "Wood"

    override val capacity = 6

    

    override fun print() {

        println("\nSquare Cabin\n==============")

        super.print()

    }

}


class RoundHut(residents: Int): Dwelling(residents) {

    override val buildingMaterial = "Straw"

    override val capacity = 4


    override fun print() {

        println("\nRound Hut\n==============")

        super.print()

    }

}


此外, 在宣告一個class後, 這個class預設為final的class, 是無法被繼承的。若class要能被繼承, 則需要在定義class時使用open修飾class, 如下:

open class RoundHut(residents: Int): Dwelling(residents) {

    override val buildingMaterial = "Straw"

    override val capacity = 4


    override fun print() {

        println("\nRound Hut\n==============")

        super.print()

    }

}


class RoundTower(residents: Int): RoundHut(residents) {

    override val buildingMaterial = "Stone"

    override val capacity = 4


    override fun print() {

        println("\nRound Tower\n==============")

        super.print()

    }

}


星期三, 3月 09, 2022

用iPhone或Android手機當電腦麥克風

用iphone當電腦麥克風? 怎麼會有這種想法??

請聽我慢慢道來...

本來只是想把電腦操作的過程錄起來, 過程中加上一些講解, 就這樣一個目的。

試了電腦本身的麥克風, 還有手邊的耳麥, 覺得錄音效果都不太好。

所以起了一個 "買麥克風" 的念頭。

上網搜尋了一下, 發現麥克風的價差真的很大, 從幾百塊的到一萬多的都有。

在Youtube中看了很多人用的Rode VideoMicro, 價位也還可以接受。再想想, 如果這麥克風不只能接電腦, 出門時也能用的話那不是更好?

找來找去, 看到一個老外錄的影片, 發現原來iphone的內建麥克風比外接Rode VideoMicro還好。

不管你信不信, 我是信了! (因為可以省錢! 哈哈!!)

那這樣事情就更簡單了, 出門就直接用iphone錄就好了。那電腦的麥克風, 如果也能用iphone, 是不是就完美了呢?

當然第一個想到最簡單的方式, 就是在錄電腦畫面時, 同時把iphone開著錄音, 然後再把畫面和錄音同步就可以了。

這個方式雖然很直接又有效, 但似乎太沒有挑戰性了。

所以就繼續思考怎麼把iphone變成電腦麥克風的方法。結果還真的有辦法。

在這裡跟大家講一下怎麼做。

基本概念是這樣的。首先在Windows 10裡透過藍芽將iphone配對, 讓iphone的聲音可以透過藍牙傳送到電腦, 這裡會透過A2DP(Advanced Audio Distribution Profile)傳送聲音訊號。然後把iphone麥克風打開, 將麥克風聲音送到電腦端。


步驟一、藍牙配對

在Windows 10上選新增藍牙裝置 -> 新增藍牙或其他裝置 -> 藍牙, 選擇你的iphone(或Android手機也可以)。



連線後, 點選 控制台 -> 聲音 -> 錄製 就可以看到有一個A2DP SNK的線路。A2DP SNK是指接收端, 發送端為A2DP SRC。


步驟二、打開A2DP連線

在Microsoft Store搜尋Bluetooth Audio Receiver, 安裝後開啟。


Bluetooth Audio Receiver中選擇你的手機, 然後點Open Connection。




至此, 你的iphone就可以把聲音串流到電腦上了。這時你只要在iphone上播放音樂, 聲音就可以從電腦傳出來。


步驟三、打開iphone麥克風

在App store中搜尋megaphone, 安裝。(其它可以打開手機麥克風的軟體也可以。但這個Mega phone可以選擇用哪一個麥克風, 比較方便。)


在Mega phone裡打開麥克風即可收音。聲音就會直接傳到電腦上透過電腦喇叭播出來。






星期六, 12月 04, 2021

擋廣告利器Adguard的使用問題

Adguard是個很好的擋廣告利器, 在擋廣告的部份它絕對是非常稱職, 尤其在電腦的網頁瀏灠器上。至於在手機上因為有一些app可以置入一些專有的廣告, 這部份只能說是放不勝防。

雖然Adguard很好用, 但在使用過程中我也遇到一些問題。在這裡把這些問題以及解決方式整理一下, 好讓大家可以參考。

若大家在使用Adguard有遇到其他問題, 也可以留言討論一下。


第一個問題是在切換網路連線時, 例如將wifi切換成有線網路, 會發生無法連線的問題。

暫時的解決方式, 可以將Adguard暫停約30秒到一分鐘, 待網路連線正常後再將Adguard開啟。

什麼? 這樣很麻煩?

沒錯, 所以這裡提供另一個方式。

開啟Adguard設定, 選擇一般的設定 -> 進階的設定



往下捲動, 找到 "使用重新導向驅動程式模式", 勾選後按下儲存。


這樣應該就能解決這個問題。


第二個問題是它會影響讀卡機的運作。

最近換了新手機, 一些常用的功能都要重新設定。其中一個有點麻煩的是網銀App的設定。

以我在使用的台新銀行為例, 它的網銀基本設定還算簡單, 下載台新銀行App後按照指示設定, 基本上只要帳號密碼沒問題, 就可以完成設定。

但要用它的網銀App轉帳, 則需要重新針對新手機進行認證才能在手機上進行轉帳。

做法是用電腦登入台新網路銀行後, 執行 個人設定 -> 申請/取消裝備認證。



接下來, 按下 "新增裝置", 然後選擇 "晶片金融卡+讀卡機"。

輸入晶片卡密碼和網銀密碼與驗證碼後按下確認, 系統就會產生一組裝置認證密碼。

然後回到手機上用網銀App登入, App就會提示要求輸入裝置認證密碼和網銀密碼。正確輸入後就可以使用轉帳功能。

但我在過程中卻因為台新網路銀行找不到讀卡機而卡了很久。嘗試過從台新下載讀卡機安裝程式安裝, 安裝過程沒有任何問題, 結果卻仍找不到讀卡機。

後來我想到我電腦上有裝Adguard, 之前也曾經因為Adguard而導致某些網站功能失效。

後來把Adguard暫時停用, 重新登入網銀執行裝置認證程序, 果然就可以了。


Adguard雖然是擋廣告的利器, 但它所使用的技術有時也會造成網站某些功能失常。下次如果遇到這類的狀況, 記得把Adguard停用試試看。