本帖最後由 rx93amuro 於 2015-1-31 21:28 編輯
各位iArduino高手好:
我正在測試將儀器輸入的sin波信號用藍芽傳送到電腦(環境設定如附件圖1所示), 目的是要將類比輸入信號(0V~5V)轉換成1 bytes, 16進制的data (00~FF), 藉由藍芽發送出去. 然後藉由USB藍芽dongle來接收藍芽模組發送出來的data (如附件圖2所示), 發生了一些問題 (程式碼如附件"Analog_bt_01.rar "). 當我將輸入的sin波信號(信號範圍: 0.4V~1.4V)除以32再以HEX格式發送出去時, 電腦藉由NI LabView軟體將接收到的data轉換成十進制並即時描繪波形, 轉換後的數值介於50~57之間(如圖3所示). 但如果同樣的輸入信號除以16再發送出去, 波形就會出錯 (如圖4所示), 只要除數比32小, data描繪出來的波型都會錯誤, 除數太大data還原的數值範圍又過小. 所以想請教一下我該怎麼修改Arduino程式碼, 才能將類比信號(0~5V)正常地轉換成HEX格式(00~FF)呢? 懇請各位幫忙, 感激不盡~~~ |