博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
I.MX6 Linux、Jni ioctl 差异
阅读量:7071 次
发布时间:2019-06-28

本文共 1820 字,大约阅读时间需要 6 分钟。

/*********************************************************************** *                      I.MX6 Linux、Jni ioctl 差异 * 声明: *     在使用Jni的ioctl()的过程中,发现不能像普通的Linux函数那样使用, * 必须使用3各参数的ioctl()函数。 *  *                                   2015-12-20 深圳 南山平山村 曾剑锋 **********************************************************************/#include 
#include
#include
#include
#include
#include
#include "android/log.h"static const char *TAG="Buzz";#define LOGE(fmt, args...) __android_log_print(ANDROID_LOG_ERROR, TAG, fmt, ##args)#define BUZZER_ENABLE 82#define BUZZER_FREQENCY 83#define BUZZER_DISABLE 84/* * Class: com_android_buzz_Buzz * Method: enable * Signature: ()V */JNIEXPORT void JNICALL Java_com_android_buzz_Buzz_enable (JNIEnv *env, jobject obj) { int fd = open("/dev/buzzer", O_RDWR); if ( fd == -1 ) { LOGE("open buzzer device error."); return; } // ioctl(fd, BUZZER_ENABLE); // 不能这样使用 ioctl(fd, BUZZER_ENABLE, 0); // 得这么使用 close(fd); //LOGE("enable buzzer device. ");}/* * Class: com_android_buzz_Buzz * Method: setFrequency * Signature: (I)V */JNIEXPORT void JNICALL Java_com_android_buzz_Buzz_setFrequency (JNIEnv *env, jobject obj, jint frequency) { int fd = open("/dev/buzzer", O_RDWR); if ( fd == -1 ) { LOGE("open buzzer device error."); return; } ioctl(fd, BUZZER_FREQENCY, frequency); close(fd); //LOGE("set buzzer device frequency. ");}/* * Class: com_android_buzz_Buzz * Method: disable * Signature: ()V */JNIEXPORT void JNICALL Java_com_android_buzz_Buzz_disable (JNIEnv *env, jobject obj) { int fd = open("/dev/buzzer", O_RDWR); if ( fd == -1 ) { LOGE("open buzzer device error."); return; } // ioctl(fd, BUZZER_DISABLE); // 不能这样使用 ioctl(fd, BUZZER_DISABLE, 0); // 得这么使用 close(fd); //LOGE("disable buzzer device. ");}

 

转载地址:http://tezml.baihongyu.com/

你可能感兴趣的文章
三大家族轻松管理CentOS 7网络属性配置
查看>>
Silverlight外包公司【技术展望】— Silverlight5.1.2最新版本发布
查看>>
js和css在线压缩工具
查看>>
Django 数据库ORM 操作 - 字段的类型和参数
查看>>
组托管服务帐户(Group Managed Service Accounts,即gMSAs)
查看>>
mysql体系架构
查看>>
Docker如何管理数据
查看>>
Apache所有项目介绍
查看>>
Puppet apply命令参数介绍(五)
查看>>
linux系统命令su和su - 区别验证
查看>>
VMware vCloud Director Administration Guide
查看>>
pptpd *** 老是连接不上内网排错
查看>>
图文并茂超详细搭建redis缓存服务器(nginx+tomcat+redis+mysql实现session会话共享)
查看>>
云计算大数据(Hadoop)开发工程师项目实战视频教程(九部分)
查看>>
Verizon:2012年数据破坏调查报告
查看>>
《iPhone与iPad开发实战—iOS经典应用剖析》连载四
查看>>
手动完成输入校验
查看>>
直击Dell World 2014: 戴尔现在挺好的
查看>>
⑨③-不能浪费拥有的年轻资本
查看>>
自定义编译安装python简单笔记。
查看>>