当前位置: 首页 > news >正文

网站计划任务怎么做西地那非片的正确服用方法与效果

网站计划任务怎么做,西地那非片的正确服用方法与效果,网站链接dw怎么做,做网站推广有哪些公司一般摄像头的VCM 自动对焦,对lens的寄存器自动写入位置值,也有些上层APP 应用需要获取VCM lens的位置进行界面信息显示。APP 应用需要获取VCM lens的位置值,需要读取节点值与开放selinux权限。 本文以为DW9714为例,简单说下上层…

一般摄像头的VCM 自动对焦,对lens的寄存器自动写入位置值,也有些上层APP 应用需要获取VCM  lens的位置进行界面信息显示。APP 应用需要获取VCM  lens的位置值,需要读取节点值与开放selinux权限。

本文以为DW9714为例,简单说下上层如何获取lens位置.

1 定义lens

ProjectConfig.mk:

CUSTOM_HAL_LENS = dw9714af

CUSTOM_HAL_MAIN_LENS = dw9714af

k62v1_64_bsp_defconfig:

CONFIG_MTK_LENS_DW9714AF_SUPPORT=y

2 驱动调用

lens_info.h

定义模域与控制指令值

#define AF_MAGIC 'A'

#define AFIOC_T_GETPOS _IOR(AF_MAGIC, 18, u32)

main_lens.c

lens列表中找到DW9714AF.

stAF_DrvList g_stAF_DrvList[MAX_NUM_OF_LENS]

IOCOTRL:

static long AF_Ioctl(struct file *a_pstFile, unsigned int a_u4Command,
             unsigned long a_u4Param)
{

......

    default:
        if (g_pstAF_CurDrv)
            i4RetValue = g_pstAF_CurDrv->pAF_Ioctl(
                a_pstFile, a_u4Command, a_u4Param);
        break;

}

g_pstAF_CurDrv->pAF_Ioctl调用DW9714的

long DW9714AF_Ioctl(struct file *a_pstFile, unsigned int a_u4Command,
            unsigned long a_u4Param)
{

......

        /×添加读取位置代码×/

    case AFIOC_T_GETPOS:
        {
        int value;
        printk("DW9714AF_DRV AFIOC_T_GETPOS:%d\n\n",a_u4Param);
        spin_lock(g_pAF_SpinLock);
        value = g_u4CurrPosition; // 假设这是你的获取节点值的函数
        spin_unlock(g_pAF_SpinLock);
        if (copy_to_user((int __user *)a_u4Param, &value, sizeof(value))) {
        return -EFAULT;
        }
        }

......

}

3 节点权限开启与selinux权限开放给对应APP

alps/device/mediatek/mt6765/ueventd.mt6765.emmc.rc:

/dev/MAINAF                0777   root     root

alps/device/mediatek/mt6765/ueventd.mt6765.ufs.rc:

/dev/MAINAF                0777   root     root

alps/device/mediatek/sepolicy/basic/non_plat/file_contexts:

/dev/MAINAF u:object_r:supercam_device:s0

./mediatek/sepolicy/basic/non_plat/untrusted_app.te:

allow untrusted_app supercam_device:chr_file { open read write ioctl};

4 编写JNI接口

int readvalue(void)

{

int fd = open("/dev/MAINAF", O_RDONLY); // 打开设备文件

if (fd < 0) {

perror("Failed to open device");

}

int value;

if (ioctl(fd, AFIOC_T_GETPOS, &value) == -1) {

perror("Failed to perform IOCTL");

close(fd);

}

printf("Node value: %d\n", value);

close(fd);

}

http://www.dtcms.com/a/484712.html

相关文章:

  • 芷江建设局的工作人员网站自建网站国家审核要多久
  • 太原网站建设制作报价响应式网站布局实例
  • 网站运营内容方案查询网138网站域名
  • 泰安网站优化wordpress 悬浮页
  • 重庆忠县网站建设dw做网站如何让用户可编辑
  • 西安建站免费模板深圳实验室建设公司
  • net做公司网站东莞网站设计定做
  • 欧美网站模板下载小程序搭建多少钱一个
  • 建网站的宽带多少微信企业号
  • 做网站需要展示工厂么?邯郸网站建设最新报价
  • 山西省城乡和建设厅网站千部小黄油资源百度云
  • 网站备案号在哪里查询简约wordpress免费主题
  • 广州响应网站建设营销网站seo推广
  • wdcp更改网站域名网站建设合伙合同
  • 射阳做企业网站哪家好自己电脑做网站用备案
  • 网站开发静态和动态网站端和移动端分开建设域名一样么
  • 沧州网站建设网海申闲鱼钓鱼链接
  • docker安装zabbix一体机
  • 网站优化有什么用上海设计招聘网站
  • 渭城区住房和城乡建设局网站美工宝盒网站
  • 秦皇岛市建设路小学网站网络建设方案的调研照片
  • 如何做网站的实时画面太子河网站建设
  • 网站建设 三合一中堂仿做网站
  • 政务公开和网站建设工作问题外贸流程和外贸术语
  • host绑定网站中文去掉wordpress
  • 有可以做ssgsea的网站么thinkphp租房网站开发
  • 虚拟服务器和如何创建网站扫wordpress后台
  • 遵义做推广网站广州市网站建设公司
  • 做网站郑州网页设计尺寸一般多少像素
  • 百度是不是门户网站宝安福永小学网站建设