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

网站制作公司 沈阳注册公司网上申请

网站制作公司 沈阳,注册公司网上申请,做配音任务的网站,网站301做下背光驱动模型也是基于HDF框架开发的#xff0c;整个框架如下#xff1a; 现在以RK3568为例#xff0c;来看看PWM背光整个驱动#xff0c;这里使用的是PWM占空比控制的背光#xff0c;默认基于hdf的pwm驱动已经OK#xff01; 需要注意的是#xff1a;这里是基于HDF实现的…背光驱动模型也是基于HDF框架开发的整个框架如下 现在以RK3568为例来看看PWM背光整个驱动这里使用的是PWM占空比控制的背光默认基于hdf的pwm驱动已经OK 需要注意的是这里是基于HDF实现的PWM和PWM背光所以Linux内核里面原生的PWM和PWM背光相关配置需要关闭 hcs device_info CODE display :: host {hostName display_host;device_pwm_bl :: device {device0 :: deviceNode {policy 0;priority 95;preload 0;moduleName PWM_BL;deviceMatchAttr pwm_bl_dev;}}device_backlight :: device {device0 :: deviceNode {policy 2;priority 90;preload 0;permission 0660;moduleName HDF_BL;serviceName hdf_bl;}} }config lcd_config.hcs CODE root {backlightConfig {pwmBacklightConfig {match_attr pwm_bl_dev;pwmDevNum 1;pwmMaxPeriod 25000;backlightDevName hdf_pwm;minBrightness 0;defBrightness 127;maxBrightness 255;}} }源码分析 PWM_BL驱动 PWM_BL驱动(pwm_bl.c)加载后在初始化时主要做了如下几个工作 //初始化相关PWM模块主要包括打开相应pwm模块从hcs获取pwm的配置并更新配置 //主要调用pwm相关的驱动接口如PwmOpenPwmSetConfig等 ret BlPwmDevInit(object, blPwmDev);//注册Backlight设备具体实现在后面的HDF_BL驱动这里最重要的就是注册的操作函数集 g_blDevOps后面有展开 blDev RegisterBlDev(blPwmDev-name, blPwmDev-props, g_blDevOps, blPwmDev);//更新Backlight状态 if (UpdateBacklightState(blDev, FB_POWER_ON) ! HDF_SUCCESS) {HDF_LOGE(%s: UpdateBacklightState fail, __func__); }//更新Backlight亮度 if (UpdateBrightness(blDev, blPwmDev-props.defBrightness) ! HDF_SUCCESS) {HDF_LOGE(%s: UpdateBrightness fail, __func__); }g_blDevOps函数集里面只有一个更新亮度的操作函数该函数会调用更底层的pwm的HDF驱动接口去更新PWM的占空比从而控制背光的亮度具体如下 static int32_t BlPwmUpdateBrightness(struct BacklightDev *blDev, uint32_t brightness) {int32_t ret;uint32_t duty;struct BlPwmDev *blPwmDev NULL;blPwmDev ToBlDevPriv(blDev);if (blPwmDev NULL) {HDF_LOGE(%s blPwmDev is null, __func__);return HDF_FAILURE;}if (blPwmDev-props.maxBrightness 0) {HDF_LOGE(%s maxBrightness is 0, __func__);return HDF_FAILURE;}if (brightness 0) {return PwmDisable(blPwmDev-pwmHandle);}duty (brightness * blPwmDev-config.period) / blPwmDev-props.maxBrightness;ret PwmSetDuty(blPwmDev-pwmHandle, duty);if (ret ! HDF_SUCCESS) {HDF_LOGE(%s: PwmSetDuty failed, ret %d, __func__, ret);return HDF_FAILURE;}return PwmEnable(blPwmDev-pwmHandle); }static struct BacklightOps g_blDevOps {.updateBrightness BlPwmUpdateBrightness, };HDF_BL驱动 HDF_BL驱动(hdf_bl.c)功能主要有2大块 对外提供IoService的 Dispatch 接口 主要涉及到一些对外命令的处理包括 static BlCmdHandle g_blDevCmdHandle[] {HdfGetMinBrightness, /*获取最小亮度*/HdfGetCurrBrightness, /*获取当前亮度*/HdfGetDefBrightness, /*获取默认亮度*/HdfGetMaxBrightness, /*获取最大亮度*/HdfGetBlDevList, /*获取背光设备列表*/HdfSetBrightness, /*设置亮度*/};RegisterBlDev()函数实现 主要是 BlDevManager 和 BacklightDev 的内存分配赋值等这里就略过了。 本文主要是对鸿蒙南向开发当中的部分技术解析更多的鸿蒙OpenHarmony南北向开发技术可以前往主页查找更多鸿蒙技术分布如下略缩图 高清完整版可前往主页或思信。附文档
http://www.zqtcl.cn/news/996457/

相关文章:

  • 网站架设建设如何做网站电话
  • 团购网站怎么推广app平台搭建步骤
  • 沂水建设局网站郑州企业微网站建设
  • 免费企业网站空间wordpress目录主题
  • 做网站的销售话术苏州网站设计哪家公司好
  • 足球梦网站建设的基本思路网站介绍词
  • 森马网站建设情况网站推广中应注意哪些事项
  • 简单网站vs2008不能新建网站
  • 牌具做网站可以吗海外广告投放公司
  • 响应式单页网站模板宁波企业自助建站
  • 网站广告收费标准装饰设计公司起名
  • 网站开发人员构成中国兰州网官网
  • 网站设计的提案旅游网站建设风格
  • 成都网站建设的公司做高大上分析的网站
  • 专业企业网站建设公司成都的网站
  • 广东省建设教育协会官方网站首页怎么设置wordpress头像
  • 图书网站建设论文页游中心
  • 建网站的流程及注意事项任务网站建设
  • 河北邯郸做网站的公司哪家好辽源市住房和城乡建设局网站
  • 网站系统建设技术服务费安康市网站建设
  • 网络运行管理系统seo关键词优化方法
  • 西安学校网站建设价格徐州网页关键词优化
  • 上海哪个网站能应聘做家教的营销网站中最重要的部分是
  • 一个设计网站多少钱WordPress的简约博客主题
  • 普通的宣传网站用什么做济南市工程建设技术监督局网站
  • 合肥网站建设公司还有不dw如何制作表格网页
  • 讯美智能网站建设自己域名做网站
  • 自己做网站优化韩国外贸平台
  • 齐河建设局网站长沙市住房和建设局官方网站
  • 萧山区住房和城乡建设局网站wordpress网站合并