snifer

(原创)压力传感器如何在嵌入式系统中应用

0
阅读(4162)

太热了,睡不着,在写一下如何使用压力传感器

压力传感器使用 LINUX 内核目录树中的的 ADC 驱动,因此无需另外编译 AD 驱动。直接可以
在内核源码的 driver/char 目录下找到 AD 的驱动程序 s3c2410-adc.c
另外需要注意的是魔法师开发板的内核自带了静态编译的触摸屏驱动程序,该驱动与 AD 驱
动有冲突,因此在使用 AD 驱动程序的时候需要重新编译内核,将触摸屏驱动程序卸载掉或
模块化编译方可。
参考如下:
-> Device Drivers
-> Input device support
-> Touchscreens (INPUT_TOUCHSCREEN [=y]) 将触摸屏驱动编译成 M 模块形式,重新编译内核,下载至开发板,方可正确运行压力传感
器实验。

2、编译压力传感器应用程序
[sprife@localhost press_ductor]$ ls
test driver
[sprife@localhost press_ductor]$ cd test/
[sprife@localhost test]$ ls
install.sh Makefile press_ductor_test.c
[sprife@localhost test]$ make
arm-linux-gcc -o press_ductor main.o -lpthread
[sprife@localhost test]$ ls
hardware.h main.c main.o Makefile press_ductor s3c2410-adc.h
[sprife@localhost test]$
当前目录下生成压力传感器测试程序 press_ductor 及测试脚本 install.sh

NFS挂载实验目录测试
1、启动 UP-Magic 魔法师实训开发板,连好网线、串口线。将配套压力传感器模块插入底
板 P4 扩展端口。通过串口终端挂载宿主机实验目录。
设置开发板 IP:192.168.1.199 (默认宿主机 LINUX IP 192.168.1.43,NFS 共享目录
/home/sprife) 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/press_ductor
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/press_ductor #ls
driver test
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/press_ductor #

3、加载 AD 驱动程序

up-tech:~/press_ductor #cd driver/
up-tech:~/press_ductor/driver #ls
s3c2410-adc.ko
up-tech:~/press_ductor #insmod s3c2410-adc.ko
add s3c2410_adc ok!!!!!!!!!!!!
4、执行测试程序
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/press_ductor #cd test/
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/press_ductor/test #ls
Makefile install.sh press_ductor_test press_ductor_test.c
up-tech:/mnt/nfs/UP-Magic/UP-Magic_Moudles/press_ductor/test #./install.sh
up-tech:~/press_ductor #./press_ductor

Press Enter key exit!
Voltage: 3.2936(v) Quality:8755.9785(g)

Baidu
map