電子指南針工作原理 1,電路參考附件,如圖所示:2個電感表示傳感器,在安裝時,2個傳感器相互成90度,保持水平位置。由于大地是個磁場,傳感器受地理磁場的影響而改變電感量,地理磁場可以沿傳感器方向正交分解為X和Y。(參考附件2)。其中角度等于 TAN α=Y/X 所以α =ARC TAN Y/X; 2,剛開始,將X1,X2,Y1,Y1對應的單片機引腳設置為輸出”,同時把X1,X2,Y2,Y2設置為低電平.將”OUTPUT”設置為輸入. 3延時100MS,等待電路穩定后,置X1為1,這時與門的輸出高電平,經過R5,L1,R6流到另個與門的低電平,電感充電,經過一段時間,比較器番轉,輸出低電平,反饋給與門輸入端.使得2個與門輸出為低電平,電感放電,電壓下降,經過一段時間,比較器又翻轉,輸出高電平,回到開始狀態,這個過程一直在循環中.所以在”OUTPUT”一直輸出方波. 4在”OUTPUT”斷有方波輸出時,通過軟件定時計數的辦法來確定.為了提高測試精度,可以對200個或256個方波連續采樣,把連續的200個方波總時間測出來. 把測得數值記為X1 5測完以后, 置X1為0,延時100MS,再把X2置為1,與1同樣方法測方波周期. 把測得數值記為X2. 那么在X方向上的磁場應強度為X2-X1. 6,同3和4,可以把Y軸的磁場強度可以表示為Y2-Y1. 7那么計算的實際角度為TANα=(Y2-Y1)/(X2-X1); 如果Y2-Y10.X2-X10, α= ARC TAN(Y2-Y1)/(X2-X1); 如果Y2-Y10.X2-X10, α= ARC TAN(Y2-Y1)/(X2-X1); 如果Y2-Y10.X2-X10, α= 180 - ARC TAN(Y2-Y1)/(X2-X1); 如果Y2-Y10.X2-X10, α=180 + ARC TAN(Y2-Y1)/(X2-X1); 通過角度計算以后,把圖形在LCD上顯示出來,就OK了. 開發流程. 1,購買開發工具和電子源材料.(仿真器和燒錄器,芯片)軟件工程師需要在短時間內熟悉對其內部資源和語言集成開發環境.會進行IO口,定時寄存器,中斷等相關配置. 2,軟件工程師需能驅動液晶能正常顯示,顯示一些常見的數字,直線等符號. 3,按工作原理的3-7,進行編程,用示波器觀察是否在”OUTPUT”有方波輸出,否則要檢查硬件電路. 4,在仿真器上把電路調試好,看和實際情況是否一致否則檢查程序哪個地方有問題. 5,在調試通過以后,把程序燒寫到芯片里,焊在電路板上運行,看和仿真的結果是否一樣. 注意事項 1,程序里要用到反三角正切函數,需要調用庫函數頭文件來實現. 2,指南針指向的是地球磁場南極,而不是地理南極,這兩者之間有點區別. 3,該程序可能會出現誤差,用”多點校正”的辦法效果會更好.