snifer

(原创)霍尔开关模块(干簧管霍)模块在嵌入式平台下的应用

0
阅读(3555)

 
马上要竞赛要截止了,抓紧冲刺一下啦,哈哈。。。。

昨晚上弄了一下干簧管的使用,觉得嵌入式平台确实够厉害,处理速度也快,接口丰富,有单片机无法比拟的优势。

下面我讲一下这个模块在嵌入式平台中的应用,我用的是是S3C2410

连接方式:此模块使用外部中断,连接嵌入式模块的P5端口
1进入目录:
[sprife@localhost UP-Magic_Moudles]$ cd hall/
[sprife@localhost hall]$ ls
driver  test  UP-Magic-0309.pdf
[sprife@localhost hall]$  
 
2、编译驱动程序
[sprife@localhost hall]$ cd driver/
[sprife@localhost driver]$ ls  

magic_hall_switch.c  Makefile
[sprife@localhost driver]$  
 
需要修改 Makfile 编译规则文件,在其中指定用户自己的内核源文件目录核驱动程序)
通过修改宏KERNELDIR ?变量来指定内核源码目录:
KERNELDIR ?= /home/sprife/UP-Magic/kernel/linux-2.6.24.4/
使用make命令编译红外驱动程序
[sprife@localhost driver]$ make  
[sprife@localhost driver]$ ls
magic_hall_switch.c   magic_hall_switch.mod.c  magic_hall_switch.o 
Module.symvers
magic_hall_switch.ko  magic_hall_switch.mod.o  Makefile
[sprife@localhost driver]$  
 
当前目录下生成驱动程序magic_hall_switch.ko
 
2、编译应用程序
[sprife@localhost hall]$ ls
driver  test  UP-Magic-0309.pdf
[sprife@localhost hall]$ cd test/
[sprife@localhost test]$ ls
hall_switch_test.c  install.sh  Makefile
[sprife@localhost test]$ make
arm-linux-gcc -o hall_switch_test hall_switch_test.c  
[sprife@localhost test]$ ls
hall_switch_test  hall_switch_test.c  install.sh  Makefile
[sprife@localhost test]$
此时当前目录生成测试文件hall_switch_test
 
♦  NFS挂载实验目录测试
1、嵌入式开发板,连好网线、串口线。将配套霍尔开关模块插入底板
P5扩展端口。通过串口终端挂载宿主机实验目录。
设置开发板 IP:192.168.1.199 (默认宿主机 LINUX IP 192.168.1.43,NFS 共享目录
/home/sprife)
 
up-tech:~ #ifconfig eth0 192.168.1.199
up-tech:~ #mount -t nfs -o nolock,rsize=4096,wsize=4096 192.168.1.43:/home/sprife
/mnt/nfs
 
2、进入串口终端的NFS共享实验目录。
up-tech:~ #cd /mnt/nfs/UP-Magic/UP-Magic_Moudles/hall/ up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/hall #ls
UP-Magic-0309.pdf  driver             test
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/hall #
 
3、加载驱动程序
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/hall #insmod driver/magic_hall_switch.ko
hall_switch initialized
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/hall #  
4、执行测试程序
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/hall #cd test/
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/hall/test #ls
Makefile            hall_switch_test.c
hall_switch_test    install.sh
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/hall/test #./install.sh
hall has 1 times!
reed has 1 times!
 
此时用户可以使用磁铁靠近霍尔开关,观察开关变化,同时模块上的 LED 灯会有开关状态
显示。