dsi_set_cmdq 用法

编辑框1有如下内容
B9 FF 83 79
B1 44 18 18 31 51 90 D0 EE
通过按钮转换为如下格式,输出到编辑框2里
a[0] = 00043902; //这个参数里面的4为第一行内容的个数
a[1] = 7983FFB9; //第一行内容,倒序输出
dsi_set_cmdq(&a, 2, 1); //括号里的数字2是a[]的个数

a[0] = 00093902; //这个参数里面的09为第二行内容的个数
a[1] = 181844B1; //第二行内容,倒序输出,4个一组,超出4个换行
a[2] = D0905131;
a[3] = 000000EE;//不足4个的用00补齐
dsi_set_cmdq(&data_array, 4, 1); //括号里的数字4是a[]的个数

READ
static unsigned int lcm_esd_check(void)
{
PLINE;

ifndef BUILD_LK

char  buffer[3];
int   array[4];

array[0] = 0x00013700;
dsi_set_cmdq(array, 1, 1);

read_reg_v2(0x53, buffer, 1);

if(buffer[0] != 0x24)
{
    printk("[LCM ERROR] [0x53]=0x%02x\n", buffer[0]);
    return TRUE;
}
else
{
    printk("[LCM NORMAL] [0x53]=0x%02x\n", buffer[0]);
    return FALSE;
}

else

return FALSE;

endif

}

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在case DSI_BACKLIGHT_EXTERNAL下同时并发执行lcd_bl_set_led_brightness和lcd_bias_set_led_brightness两个函数来设置背光亮度,可以使用多线程来实现。以下是一个简单的示例代码: ```c int dsi_panel_set_backlight(struct dsi_panel *panel, u32 bl_lvl) { int rc = 0; struct dsi_backlight_config *bl = &panel->bl_config; if (panel->host_config.ext_bridge_mode) return 0; DSI_DEBUG("backlight type:%d lvl:%d\n", bl->type, bl_lvl); switch (bl->type) { case DSI_BACKLIGHT_WLED: rc = backlight_device_set_brightness(bl->raw_bd, bl_lvl); break; case DSI_BACKLIGHT_DCS: rc = dsi_panel_update_backlight(panel, bl_lvl); break; case DSI_BACKLIGHT_EXTERNAL: { pthread_t thread1, thread2; int bl_lvl1 = bl_lvl, bl_lvl2 = bl_lvl; // 创建两个线程,分别执行lcd_bl_set_led_brightness和lcd_bias_set_led_brightness函数 pthread_create(&thread1, NULL, lcd_bl_set_led_brightness, (void *)&bl_lvl1); pthread_create(&thread2, NULL, lcd_bias_set_led_brightness, (void *)&bl_lvl2); // 等待线程结束 pthread_join(thread1, NULL); pthread_join(thread2, NULL); } break; case DSI_BACKLIGHT_PWM: rc = dsi_panel_update_pwm_backlight(panel, bl_lvl); break; default: DSI_ERR("Backlight type(%d) not supported\n", bl->type); rc = -ENOTSUPP; } return rc; } ``` 在case DSI_BACKLIGHT_EXTERNAL下,我们创建了两个线程,分别执行lcd_bl_set_led_brightness和lcd_bias_set_led_brightness函数。线程的创建和等待使用了pthread库中的函数pthread_create和pthread_join。注意,在多线程编程中,需要注意线程安全问题,例如共享变量的访问等。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值