2014年11月24日 星期一

MPU6050 創意專題分享 - 多功能交通載具輔助系統


這是一份關於使用 MPU6050 所做的一個課堂上的專題報告,是利用 Arduino 取得 MPU6050 的六軸資料,利用互補濾波器去除加速度高頻雜訊與角速度的低頻影響,再經過運算得到腳踏車在轉彎時的角度數據。其中一軸的加速度用來控制煞車燈,另外運算所得的角度值作為腳踏車傾倒與方向燈的判別。

2014年11月17日 星期一

使用 Arduino UNO / Duemilnova 燒錄 Arduino bootloader


在網路上蒐一下 Arduino bootloader,可以找到下面這一段描述:
What is a Bootloader?
Atmel AVRs are great little ICs, but they can be a bit tricky to program. You need a special programmer and some fancy .hex files, and its not very beginner friendly. The Arduino has largely done away with these issues. They’ve put a .hex file on their AVR chips that allows you to program the board over the serial port, meaning all you need to program your Arduino is a USB cable.
The bootloader is basically a .hex file that runs when you turn on the board. It is very similar to the BIOS that runs on your PC. It does two things. First, it looks around to see if the computer is trying to program it. If it is, it grabs the program from the computer and uploads it into the ICs memory (in a specific location so as not to overwrite the bootloader). That is why when you try to upload code, the Arduino IDE resets the chip. This basically turns the IC off and back on again so the bootloader can start running again. If the computer isn’t trying to upload code, it tells the chip to run the code that’s already stored in memory. Once it locates and runs your program, the Arduino continuously loops through the program and does so as long as the board has power.

2014年11月8日 星期六

[ Wireless-RF@Arduino ] RGB LED 混色 - Arduino 的 Machester ( 曼徹斯特 ) 無線傳輸

本篇網頁中所使用到的零件可到下面商品網址訂購:


常常私底下被問到無線傳輸的一些問題,雖然不知道最後發問者是否解決了問題,但是總覺得是不是部落格關於無線模組的使用說明或是範例沒有能夠起到輔助的作用 !!!

從無線傳送端到無線接收端:
在傳送端的程式,先將所需要傳送的數據準備好;數據經過軟體計算之後產生編碼資料;編碼資料經過無線模組發送。
接收端的無線模組收到傳送端送來的資料之後,接收端開始解碼資料。解碼之後就是從傳送端送過來的未經編碼前的資料,這也是我們所要的。
ASK-433 或是 RF433MHz 兩個硬體雖然不同,但是因為硬體調制模式 ( Modulation Mode ) 是一樣的,所以傳送與接收端互換之後都還是可以正常接收資料的,而且只要資料編解碼是一致的,就能得到所需要的資料。