0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

英创信息技术ESM335x WEC7背光使用方法

英创信息技术 来源:英创信息技术 作者:英创信息技术 2020-02-04 10:36 次阅读

英创所有嵌入式主板都提供了屏幕背光控制方案,本文将详细介绍如何在ESM335X WEC7上进行屏幕背光控制。

自动背光设置

设置自动背光时间,可以让系统在停止操作一定时间后自动关闭屏幕背光,当恢复操作后自动打开屏幕背光,设置方法如下:

打开控制面板->电源,选择“方案”页,选择“电源使用方案”为“交流电源”,选择“将状态切换为用户空闲”选项的时间,这个时间即自动关闭背光的时间。

手动控制背光开关

有时客户希望在自己应用程序中能够自由控制背光的开关,那么可以参考我们例程进行如下调用。

#include

#include "winioctl.h"

#include "pm.h"

#define FILE_DEVICE_POWER FILE_DEVICE_ACPI

#define IOCTL_POWER_SET CTL_CODE(FILE_DEVICE_POWER, 0x402, METHOD_BUFFERED, FILE_ANY_ACCESS)

HANDLE hBLK;

CEDEVICE_POWER_STATE power;

DWORD dwReturn;

//操作背光前需要先打开背光驱动

hBLK = CreateFile(L"BKL1:", // name of device

GENERIC_READ|GENERIC_WRITE, // desired access

FILE_SHARE_READ|FILE_SHARE_WRITE, // sharing mode

NULL, // security attributes (ignored)

OPEN_EXISTING, // creation disposition

FILE_FLAG_RANDOM_ACCESS, // flags/attributes

NULL); // template file (ignored)

//获得屏幕背光状态

BOOL success;

success = DeviceIoControl(hBLK,

IOCTL_POWER_GET,

NULL,

0,

&power,

sizeof(CEDEVICE_POWER_STATE),

NULL,

NULL);

//关闭屏幕背光,恢复操作(鼠标移动,按键等)屏幕背光不会打开

power = D4;

success = DeviceIoControl(hBLK,

IOCTL_POWER_SET,

NULL,

0,

&power,

sizeof(CEDEVICE_POWER_STATE),

&dwReturn,

NULL);

//关闭屏幕背光,恢复操作(鼠标移动,按键等)屏幕背光自动打开

power = D1;

success = DeviceIoControl(hBLK,

IOCTL_POWER_SET,

NULL,

0,

&power,

sizeof(CEDEVICE_POWER_STATE),

&dwReturn,

NULL);

//打开屏幕背光

power = D0;

success = DeviceIoControl(hBLK,

IOCTL_POWER_SET,

NULL,

0,

&power,

sizeof(CEDEVICE_POWER_STATE),

&dwReturn,

NULL);

//关闭背光驱动

if(hBLK != NULL)

{

CloseHandle(hBLK);

}

操作时需要先打开背光驱动,操作完成后需关闭背光驱动,D0为开,D4为关。

控制屏幕背光亮度

ESM335X WEC7除了控制屏幕开关,还可以调节屏幕亮度,操作代码如下:

#defineIOCTL_BKL_GET_SETTINGS CTL_CODE(FILE_DEVICE_BACKLIGHT, 0x102, METHOD_BUFFERED, FILE_ANY_ACCESS)

#defineIOCTL_BKL_SET_SETTINGS CTL_CODE(FILE_DEVICE_BACKLIGHT, 0x103, METHOD_BUFFERED, FILE_ANY_ACCESS)

BKL_SETTINGS_INFO bklInfo;

//操作背光前需要先打开背光驱动

hBLK = CreateFile(L"BKL1:", // name of device

GENERIC_READ|GENERIC_WRITE, // desired access

FILE_SHARE_READ|FILE_SHARE_WRITE, // sharing mode

NULL, // security attributes (ignored)

OPEN_EXISTING, // creation disposition

FILE_FLAG_RANDOM_ACCESS, // flags/attributes

NULL);

//先调用IOCTL_BKL_GET_SETTINGS获得当前BKL_SETTINGS_INFO

success = DeviceIoControl(hBLK,

IOCTL_BKL_GET_SETTINGS,

NULL,

0,

&bklInfo,

sizeof(BKL_SETTINGS_INFO),

&dwReturn,

NULL);

//通过修改BKL_SETTINGS_INFO的dwBrightness_ExPower,让屏幕从亮变暗

for(inti=0xff; i>=0; )

{

bklInfo.dwBrightness_ExPower = i;

success = DeviceIoControl(hBLK,

IOCTL_BKL_SET_SETTINGS,

&bklInfo,

sizeof(BKL_SETTINGS_INFO),

NULL,

0,

&dwReturn,

NULL);

Sleep(100);

i -= 5;

}

//通过修改BKL_SETTINGS_INFO的dwBrightness_ExPower,让屏幕从暗变亮

for(inti=0; i<=0xff; )

{

bklInfo.dwBrightness_ExPower = i;

success = DeviceIoControl(hBLK,

IOCTL_BKL_SET_SETTINGS,

&bklInfo,

sizeof(BKL_SETTINGS_INFO),

NULL,

0,

&dwReturn,

NULL);

Sleep(100);

i+= 5;

}

if(hBLK != NULL)

{

CloseHandle(hBLK);

}

操作时需要先打开背光驱动,需要先调用IOCTL_BKL_GET_SETTINGS获得背光参数,然后调用IOCTL_BKL_SET_SETTINGS设置亮度范围。亮度范围为0到255,0表示最暗,255表示最亮。

其它屏幕背光参数控制说明

使用远程注册表工具打开ESM335X WEC7注册表,找到背光驱动信息处。

这里的PwmFreq值为屏幕背光频率值,默认为400Hz,用户可以根据自身选购屏参数性能自由调节该频率值。

本文提及的例程均可联系英创工程师获得。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式主板
    +关注

    关注

    7

    文章

    6083

    浏览量

    35003
收藏 人收藏

    评论

    相关推荐

    国产化背景下的工控主板发展现状

    ,是信息技术应用创新产业的简称,于2016年“信工委会”(信息技术应用创新工作委员会)提出,目的就是要推动我们国内软硬件关键技术的研发
    的头像 发表于 09-21 16:15 142次阅读

    AM335x硬件设计指南

    电子发烧友网站提供《AM335x硬件设计指南.pdf》资料免费下载
    发表于 09-19 11:05 0次下载
    AM<b class='flag-5'>335x</b>硬件设计指南

    AM335x原理图核对表

    电子发烧友网站提供《AM335x原理图核对表.pdf》资料免费下载
    发表于 09-19 11:03 0次下载
    AM<b class='flag-5'>335x</b>原理图核对表

    梯度科技入选2023年信息技术应用创新解决方案名单

    日前,工业和信息化部网络安全产业发展中心(工业和信息化部信息中心)在天津举办2024信息技术应用创新发展大会暨解决方案应用推广大会。会上正式公布了2023年
    的头像 发表于 09-09 16:29 294次阅读

    MSP430 FRAM技术使用方法和最佳实践

    电子发烧友网站提供《MSP430 FRAM技术使用方法和最佳实践.pdf》资料免费下载
    发表于 08-23 09:23 0次下载
    MSP430 FRAM<b class='flag-5'>技术</b>–<b class='flag-5'>使用方法</b>和最佳实践

    GB/T 35590-2017信息技术 便携式数字设备用移动电源推荐标准

    GB/T 35590-2017是《信息技术 便携式数字设备用移动电源通用规范》的国家标准,这是一项由全国信息安全标准化技术委员会归口管理,并联合锂离子电池业内产学研用多家单位联合制定的标准。该标准自
    的头像 发表于 08-12 16:47 536次阅读
    GB/T 35590-2017<b class='flag-5'>信息技术</b> 便携式数字设备用移动电源推荐标准

    龙芯中科突破“卡脖子”难题,构建新型信息技术体系

    胡伟武强调,在Wintel和AA体系主导全球电子产业的环境下,中国需建立独立于X86和ARM的第三套信息技术体系和产业生态,解决关键技术被封锁的困境,加速形成新质生产力,从而创造新的竞争优势。
    的头像 发表于 05-20 16:12 463次阅读

    手柄控制代码及使用方法

    手柄控制代码及使用方法
    的头像 发表于 05-15 10:19 1151次阅读

    龙芯中科三项信方案入围工信部2023年信息技术应用创新应用示范案例名单

    近日,工业和信息化部通报了2023年信息技术应用创新解决方案征集遴选结果,本次共评选出典型解决方案173个、应用示范案例83个、单项创新案例64个。
    的头像 发表于 03-07 16:45 696次阅读
    龙芯中科三项信<b class='flag-5'>创</b>方案入围工信部2023年<b class='flag-5'>信息技术</b>应用创新应用示范案例名单

    软通动力与捷技术签订战略合作协议

    近日,软通动力信息技术(集团)股份有限公司(以下简称“软通动力”)与宁波捷技术股份有限公司(以下简称“捷技术”)正式签订战略合作协议,并
    的头像 发表于 02-03 16:35 1025次阅读

    阐述量子信息技术的研究现状与未来

    20世纪 80 年代, 科学家将量子力学应用到信息领域, 从而诞生了量子信息技术, 诸如量子计算机、量子密码、量子传感等. 这些技术的运行规律遵从量子力学, 因此不仅其原理是量子力学, 器件本身也
    发表于 11-22 11:40 707次阅读
    阐述量子<b class='flag-5'>信息技术</b>的研究现状与未来

    米尔AM62x核心板,高配价低,AM335x升级首选

    AM335x是TI经典的工业MPU,它引领了一个时代,即工业市场从MCU向MPU演进,帮助产业界从Arm9迅速迁移至高性能Cortex-A8处理器。随着工业4.0的发展,HMI人机交互、工业工控
    的头像 发表于 11-20 11:32 581次阅读
    米尔AM62<b class='flag-5'>x</b>核心板,高配价低,AM<b class='flag-5'>335x</b>升级首选

    开鸿智谷受邀参加2023软件和信息技术服务业创新发展论坛

    10月18日,以“智荟雄安想未来”为主题的雄安新区2023软件和信息技术服务业创新发展论坛在雄安新区国际酒店会议中心召开。本次论坛以推动软件和信息技术服务业创新发展为目的,邀行政校企各级单位共商共建。开鸿智
    的头像 发表于 10-20 08:30 706次阅读
    开鸿智谷受邀参加2023软件和<b class='flag-5'>信息技术</b>服务业创新发展论坛

    AM335x开发资料

    am335xam335x:am335x是ti(德州仪器)基于
    发表于 10-10 06:53

    EVB-335X/EVB-T335开发资料打包

    电子发烧友网站提供《EVB-335X/EVB-T335开发资料打包.rar》资料免费下载
    发表于 10-07 15:39 1次下载
    EVB-<b class='flag-5'>335X</b>/EVB-T<b class='flag-5'>335</b>开发资料打包