Arduino Ethernet Shield W5100 乙太網路擴充版,使用 DHCP 取得 IP 位址

這裡介紹如何使用 Arduino Ethernet Shield W5100 乙太網路擴充版,透過 DHCP 自動取得 IP 位址。


這張是副廠的 Arduino Ethernet Shield W5100 乙太網路擴充版,相容於原廠的乙太網路擴充版,不過價格比較便宜,原廠的在網路上一張要價一千六百多,而這張只要三百多塊,如果沒有 POE 支援的更便宜,只要兩百多塊。

如何選擇最佳的 Wi-Fi 無線網路頻道,獲得最佳的傳輸速度

這裡介紹如何選擇最佳的 Wi-Fi 無線網路頻道(channel),減少訊號的干擾,提升網路品質。


架設 Wi-Fi 無線網路時,到底該使用哪一個頻道(channel)是大家都會問的問題,一般的建議是可以使用 1、6、11 這三個,原因在於這三個頻道所使用的頻段剛好都是分開的,沒有重疊,所以可以減少訊號互相干擾的狀況。

新年恭喜!英文的春聯

恭喜新年好!這是我走在路上看到的英文春聯,很有意思,跟大家分享一下。

英文春聯

這是我走經過一家美語教室看到的英文春聯,老實說我還是第一次看到英文寫的春聯,很有創意。

[食記] 王品舒果,新米蘭蔬食,適合素食者用餐

這次過年期間去台南的王品舒果聚餐,順便拍一些照片記錄一下。


由於跟家人一起吃飯,一邊吃一邊拍實在不是很方便,再加上又是用我的紅米手機拍的,所以照片拍的不是很好,實際上現場的狀況比照片中更好看,如果感覺我的照片不好看,可以上王品舒果的網站看看,這裡的照片大家就參考一下就好了。

C++11 Lambda Expression 語法教學與範例

C++11 標準中所新增的 lambda expression 語法,可以讓函數的定義與使用更加有彈性,程式碼看起來也更簡潔。


C++11 的標準中加入了一個新的 lambda expression 語法,如果您有一陣子沒有注意最新的 C++ 標準,看到這樣的寫法可能會感覺很奇怪,以下我們將介紹 lambda expression 的使用方式與時機,並提供幾個範例作為參考。

Lambda expression 是一種匿名函數的表示方式,它可以讓程式設計師將函數的內容直接以 inline 的方式寫在一般的程式碼之中,省去另外定義函數的麻煩,使用時機跟 functor 與 function pointer 類似,一般的狀況都是使用 lambda expression 定義一個匿名的函數,然後再將此函數當作另外一個函數的傳入參數來使用。

Google 洋灑新願電子春聯,分享自己創作的春聯給好友

Google 今年特別為了中國農曆新年設計了一項自己創作電子春聯的線上服務,讓大家不用拿毛筆也可以寫春聯送給朋友。


Google 今年在中國農曆春節期推出的「洋灑新願」電子春聯服務,使用者可以自電腦上透過滑鼠來寫毛筆字,他會依據滑鼠的移動速度來決定筆畫的深淺與粗細。

C++ 智慧型指標(Smart Pointer):自動管理與回收記憶體

智慧型指標是 C++ 中一個常用的設計模式,它可以讓 C++ 的程式自行管理記憶體的配置與回收,避免記憶體洩漏等問題。


在 C/C++ 語言中,我們常常會使用指標(pointer)來配置或存取記憶體,一個指標變數儲存了記憶體的位址,而程式設計師就可以運用這個記憶體位址來做出各種變化,是一個非常好用的型別,甚至在某些複雜的應用上,如果沒有指標這項功能的話,可能會讓程式設計師不知道如何開發程式。

雖然指標對於 C/C++ 程式設計師而言非常重要,不過它難以管理的問題,也常常讓程式開發者頭痛,如果記憶體沒有配置得當,很容易造成懸置指標(dangling pointer)、空指標例外(null pointer exception)與記憶體洩漏(memory leak)等問題,嚴重的話會讓直接讓整個程式當掉、無法執行,而且記憶體配置與指標的問題在除錯上比較麻煩,編譯器並不會因為存取不對的記憶體位址而發出警告,必須要靠程式設計師自己小心的來處理。

Arduino 更改 IIC(I2C)Baud Rate 為 400 KHz,增加傳輸速率

這裡介紹如何更改 Arduino 內建的 Wire 函式庫,提高 I2C 傳輸協定的 baud rate 到 400 KHz,增加資料傳輸的速度。

示波器

一般市面上的感測器(sensors)中,如果傳輸的資料量不大的話,大概都會使用 I2C 這種傳輸協定,而 Arduino 內建的 Wire 函式庫本身就有支援 I2C,這種傳輸協定的特色就是接線簡單,它只需要串列資料(SDA)及串列時脈(SCL)兩條線就可以進行資料的傳輸,再加上供應電源的 VCC 與 GND,總共只需要接四條線,不過缺點就是資料傳輸的速率比較慢一些。

艾草薰香避邪,適用於貴氣的嬰兒或小朋友

艾草是一個很容易取得,價格又便宜的避邪物品,如果家裡有貴氣的嬰兒或小朋友哭鬧、不好睡,也可以使用艾草。


古代人認為艾草可以祛除邪毒、招百福,使人身體健康、治百病,針灸裡的灸療,用的就是艾草,而黃帝內經與本草綱目等著名的醫書也都記載了艾草的各種功效,許多食品中也都會添加艾草(例如客家人清明時節吃的艾草粄),艾草的功用可以說是五花八門。

使用 chattr 指令設定檔案屬性,在 Linux 中預防檔案被更改或刪除

在 Linux 中有一個 chattr 指令,它可以用來設定檔案的各種屬性,防止檔案被刪除或是更改,即使是有管理者權限的時候也無法更動。


在 Linux 系統中有時候我們會需要保護某些重要的檔案,避免這些檔案不小心被更改或是刪除,像是 /etc 下面的一些系統設定檔案,我們可能會不希望系統的套件管理程式在升級套件時更改掉我們已經設定好的設定檔,當然您也可以使用 chownchmod 將重要的檔案改成 root 管理者才能夠寫入,不過這也很難預防您在使用 root 權限的時候誤刪檔案的問題。

[DIY] 自製數位電視天線教學,既便宜收訊又好!

這裡教大家如何自己製作數位電視天線,成本不用幾塊錢,收訊品質也很不錯!


市售的數位電視天線通常都要好幾百塊,其實自己拿一簡單的工具與線材來 DIY,成本只要幾塊錢,而且收訊品質不會輸市售的天線。

Arduino 使用 1602 IIC(I2C) LCD 點陣液晶模組

這裡介紹如何在 Arduino 上面使用 Hitachi HD44780U 1602 LCD 點陣液晶模組,顯示簡單的文字。


這是一片 Hitachi HD44780U 1602 LCD 點陣液晶模組,這個模組很便宜,拍賣網站上買的話,不用一百元就可以買到。

[開箱] Arduino UNO R3 義大利原廠開發板,入門使用教學

這是義大利原裝進口的 Arduino UNO R3 原廠開發板,適合用來開發各類的感測器或物聯網應用。

Arduino UNO

Arduino 是一個開放原始碼的開發平台,包含硬體與軟體都是以開放原始碼的方式釋出的,使用者可以使用它來開發各式各樣的應用,以下是簡單的開箱介紹。

如何在 Windows 中查詢主機板的型號?不用拆機殼

這裡介紹如何不用拆電腦的機殼,在 Windows 中直接查看主機板的型號。


在升級電腦、更新驅動程式或是更換電腦周邊零件的時候,時常會需要查詢自己電腦的主機板型號,例如添購新的記憶體時,要先查一下自己的主機板支援度如何,才知道該買怎麼樣的記憶體。

通常最直接的做法是直接拆機殼,看看主機板上面的型號,不過其實有更方便的做法。

樹莓派(Raspberry Pi)安裝 DHCP 伺服器,配發 IP 位址

這裡介紹如何在樹莓派(Raspberry Pi)安裝 DHCP 伺服器,讓它負責配發與管理區域網路上的 IP 位址。


樹莓派是一個迷你型的電腦,可運行各種 Linux 系統,因此非常適合拿來作為輕量化的伺服器使用,一般 DHCP 伺服器的負載都很輕,以樹莓派這樣的硬體來說是綽綽有餘,以下是在 Raspbian 系統中安裝與設定 DHCP 伺服器的流程。