非也 发表于 2019-7-22 11:15:25

如何解决TQ335XB_V2工控板蜂鸣器不响问题

  蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。TQ335XB_V2工控板上载有一路蜂鸣器,通过烧写Linux+QT系统后发现使用蜂鸣器不响,该如何解决?其实方法很简单,AM335X旧版本内核源码的蜂鸣器驱动有BUG,可向天嵌科技技术支持或者客服获取可用的tq3358_beep.c的文件替换到drivers/char/tq3358_beep.c,然后修改arch/arm/mach-omap2/board-tq335x_coreb_v2.c 文件,添加以下代码:

#ifdef CONFIG_TQ3358_BEEP
static struct platform_pwm_beep_data beep_data = {
.pwm_id = "ehrpwm.0",
.ch = 1,
};
static struct platform_device pwm_beep = {
.name = "pwm-beeper",
.id = -1,
.dev = {
.platform_data = &beep_data,
},
};
static void beep_init(int evm_id, int profile)
{
int err;
setup_pin_mux(ehrpwm0B_pin_mux);
//gany mask
err = platform_device_register(&pwm_beep);
if (err)
pr_err("failed to register gpio led device\n");
}
#endif
  并且在TQ3358_EVM_dev_cfg 中添加:
#ifdef CONFIG_TQ3358_BEEP
{beep_init, DEV_ON_BASEBOARD, PROFILE_2},
#endif
重新编译烧写内核即可。


页: [1]
查看完整版本: 如何解决TQ335XB_V2工控板蜂鸣器不响问题