Linux3.5下的PWM蜂鸣器驱动测试 (2)
2014-08-01 18:46
204 查看
在前面一章的测试程序的基础上,修改了另外一个pwm蜂鸣器驱动测试程序,这个相对更简单。不多说,直接上程序。
参考:http://wenku.baidu.com/link?url=5KOYBTboPYqI1r_100QifRT1J_C7ETTVVnKdHfdWTHseL9cQMVERyLzu8jrOyJ4MvQe5pVzd8c4eV4eqzFy2K1nCpuy7TkluG-ESukAMvGG
1.编写PWM蜂鸣器驱动的测试程序。文件名:pwm_test.c.
2.在linux上交叉编译测试应用程序。
3.将生成的pwm_test复制到EM4412开发板的system目录下,然后进入开发板的system目录,给pwm_test权限。
4.运行pwm_test。
这时候你可以输入从1到2000的任意值,蜂鸣器就响了,输入0就关闭。
参考:
1.编写PWM蜂鸣器驱动的测试程序。文件名:pwm_test.c.
<preclass="html"name="code">#include<stdio.h>//必要的头文件--输入输出函数定义 #include<stdlib.h>//标准函数库定义 #include<unistd.h>//Unix标准函数定义 #include<sys/ioctl.h> #include<sys/stat.h> #include<fcntl.h>//定义了很多宏和open,fcntl函数原型 intmain(intargc,char**argv) { intfd; unsignedlongtemp=0; inti; fd=open("/dev/pwm",O_RDWR);//打开蜂鸣器的设备文件 if(fd<0)//打开失败 { perror("opendevicepwm"); exit(1);//打开错误,则终止进程。退出参数为1 } printf("opendevicesucess\n"); for(i=0;i<2000;i++)//响应输入的蜂鸣器频率 { scanf("%d",&temp); printf("temp=%d\n",temp); ioctl(fd,1,temp); if(temp==0) //当输入为0是时退出 break; } ioctl(fd,0);//停止蜂鸣器 close(fd);//关闭设备驱动程序文件 return0; }
2.在linux上交叉编译测试应用程序。
#arm-linux-gcc-opwm_testpwm_test.c-static
3.将生成的pwm_test复制到EM4412开发板的system目录下,然后进入开发板的system目录,给pwm_test权限。
#chmod777pwm_test
4.运行pwm_test。
#./pwm_test
这时候你可以输入从1到2000的任意值,蜂鸣器就响了,输入0就关闭。
相关文章推荐
- Linux3.5下的蜂鸣器驱动测试
- 嵌入式Linux之我行——PWM在ARM Linux中的原理和蜂鸣器驱动实例开发
- Linux-2.6.32.2内核在mini2440上的移植(十七)---移植PWM控制蜂鸣器驱动 .
- 嵌入式Linux之我行——PWM在ARM Linux中的原理和蜂鸣器驱动实例开发
- 基于S3C2440的Linux-3.6.6移植 PWM蜂鸣器驱动
- 基于S3C2440的Linux-3.6.6移植——PWM蜂鸣器驱动
- linux驱动开发之九鼎板载蜂鸣器驱动测试【转】
- s3c2440 linux3.0下PWM使用之蜂鸣器驱动移植
- .Linux-2.6.32.2内核在mini2440上的移植(十七)---移植PWM控制蜂鸣器驱动
- Linux-2.6.32.2内核在mini2440上的移植(十七)---移植PWM控制蜂鸣器驱动
- Linux下简易蜂鸣器驱动代码及测试实例
- [S5PV210 Linux字符驱动之PWM蜂鸣器驱动
- linux驱动开发之pwm蜂鸣器
- [S5PV210 Linux字符驱动之PWM蜂鸣器驱动
- linux驱动开发之pwm蜂鸣器
- smart210 linux3.0.8内核蜂鸣器pwm驱动分析
- linux-2.6.32在mini2440开发板上移植(18)之移植PWM蜂鸣器驱动
- 【引用】Linux-2.6.32.2内核在mini2440上的移植(十七)---移植PWM控制蜂鸣器驱动
- Linux-2.6.32.2内核在mini2440上的移植(十七)---移植PWM控制蜂鸣器驱动
- PWM在ARM Linux中的原理和蜂鸣器驱动实例开发