霍爾傳感器的工作原理是 Edwin Hall 在 1869 年提出的霍爾效應。提出的聲明說:“霍爾效應是在導體上產生電壓差(霍爾電壓),橫向于導體中的電流以及垂直于電流的外加磁場。”
那么,什么是最簡單的陳述形式才能更好地理解它呢?在本教程中,它將通過實際示例逐步解釋。此處霍爾傳感器將與 Atmega16 微控制器連接,當磁鐵靠近霍爾傳感器時,一個 LED 將用于顯示效果。
什么是霍爾效應?
霍爾效應與磁場中的移動電荷有關。為了以實際的方式理解,將電池連接到導體,如下圖(a)所示。電流 (i) 將開始通過導體從電池的正極流向負極。
電子 (e - ) 的流動方向與電流的方向相反,即從電池的負極端子通過導體到電池的正極端子。此時,當我們測量導體之間的電壓時,如下圖(b)所示,電壓為零,即電位差為零。
現在帶上磁鐵并在導體之間產生磁場,如下圖(c)。
在這種情況下,當測量導體兩端的電壓時,將會產生一些電壓。這種產生的電壓稱為“霍爾電壓”,這種現象稱為“霍爾效應”。
所需組件
A3144 霍爾傳感器 IC
Atmega16微控制器IC
16Mhz 晶體振蕩器
兩個 100nF 電容器
兩個 22pF 電容器
按鈕
跳線
面包板
USBASP v2.0
LED(任何顏色)
電路原理圖
為霍爾傳感器編程 Atmega16
這里 Atmega16 使用 USBASP 和 Atmel Studio7.0 進行編程。完整的程序在項目結束時給出, 只需使用 JTAG 編程器和 Atmel Studio 7.0 上傳 Atmega16 中的程序,如上一教程所述。
對 Atmega16 進行編程將很容易,并且只使用兩個 PORT 引腳。一個端口引腳將用于從霍爾傳感器獲取讀數。其他 PORT 引腳將用于連接一個 LED。首先,在程序中包含所有必要的庫。
定義霍爾傳感器讀數的輸入引腳。
#define hallIn PA0
這里霍爾傳感器連接在 Atmega16 的 PORTA0 上,它被初始化用于讀取狀態。
DDRA=0xFE;
PINA=0x01;
如果磁鐵在傳感器附近,則打開 LED 或關閉 LED。檢測基于 PORT 引腳的狀態變化。
if(bit_is_clear(PINA,hallIn)){
PORTA=0b00000010;
}
否則{
PORTA = 0b00000000;
}
霍爾傳感器的應用
霍爾傳感器廣泛用于需要測量磁場強度或檢測磁極的任何地方。除此之外,通常可以找到很多應用程序。下面列出了一些應用程序:
作為手機中的接近傳感器
汽車中的換檔機構
旋轉霍爾效應傳感器
檢查管道和管道等材料
轉速檢測
-
微控制器
+關注
關注
48文章
7490瀏覽量
151057 -
ATmega16
+關注
關注
5文章
154瀏覽量
45779 -
霍爾傳感器
+關注
關注
27文章
705瀏覽量
63089
發布評論請先 登錄
相關推薦
評論