开发板CMOS接口用的是BPWM作为CMOS的输入时钟信号,BPWM输出100KHz时是方波,但是输出10MHz时波形有点像三角波,波形如图片所示。请问这是什么原因造成的?谢谢
用的是BSPSampleCodeStdDriverBPWM_SwitchDuty的代码
/* Enable BPWM0 clock source */
CLK_EnableModuleClock(BPWM0_MODULE);
/* Select BPWM module clock source */
CLK_SetModuleClock(BPWM0_MODULE, CLK_CLKSEL2_BPWM0SEL_PLL, 0);
SYS_ResetModule(BPWM0_MODULE);
/* Set PG.10 multi-function pin for BPWM0 channel 4 */
SYS->GPG_MFPH = ~SYS_GPG_MFPH_PG10MFP_Msk;
SYS->GPG_MFPH |= SYS_GPG_MFPH_PG10MFP_BPWM0_CH4;
/* BPWM0 channel 4 frequency is 10000000Hz, duty 50%, */
BPWM_ConfigOutputChannel(BPWM0, 4, 10000000, 50);
/* Enable output of BPWM0 channel 4 */
BPWM_EnableOutput(BPWM0, BPWM_CH_4_MASK);
/* Start BPWM counter */
BPWM_Start(BPWM0, BPWM_CH_4_MASK);
共2条
1/1 1 跳转至页
M483KG开发板CMOS接口的BPWM输出10MHz时不是方波是什么原因造成的?
关键词: CMOS 输出时钟 方波 M483KG
2楼
BPWM的输出波形不是一个理想的方波而更类似于三角波,可能有以下几个原因:
1. 驱动能力不足:CMOS接口在10MHz的高频时钟信号下,可能超出了BPWM的驱动能力,导致输出波形变形。
2. 输出阻抗不匹配:开发板的CMOS接口与BPWM的输出阻抗不匹配,导致信号传输过程中产生了受到阻抗差异影响的波形变形。
3. 电源噪声:当输出频率较高时,电源噪声可能会对信号产生干扰,导致波形变形。
为了解决这个问题,可以尝试以下几种方法:
1. 检查开发板的CMOS接口是否支持10MHz的高频信号,如果不支持可以考虑使用其他接口或者降低BPWM输出频率。
2. 使用更强大的驱动器:选择一个具有更高输出能力的BPWM驱动器。
3. 优化输出阻抗匹配:检查开发板和BPWM之间的输出阻抗匹配情况,确保阻抗匹配。
4. 减少电源噪声:通过加入电源滤波器或使用稳定的电源来减少电源噪声的影响。
共2条
1/1 1 跳转至页
回复
我要赚赏金打赏帖 |
|
|---|---|
| 【S32DS】S32K3 RTD7.0.1 HSE 组件配置报错问题解决被打赏¥27元 | |
| 【S32K3XX】MCME 启动 CORE1被打赏¥23元 | |
| AG32VH407下温度大气压传感器及其检测被打赏¥20元 | |
| AG32VH407下光照强度传感器BH1750及其检测被打赏¥22元 | |
| AT32VH407下使用温湿度传感器DHT22进行检测被打赏¥20元 | |
| DIY一个婴儿澡盆温度计被打赏¥34元 | |
| 【FreeRtos】FreeRtos+MPU region 配置规则被打赏¥23元 | |
| 【分享开发笔记,赚取电动螺丝刀】三分钟快速上手驱动墨水屏(ArduinoIDE)被打赏¥28元 | |
| 【S32K3XX】LIN 通讯模块使用被打赏¥31元 | |
| 【FreeRtos】FreeRtos + MPU模块的配置使用被打赏¥32元 | |
我要赚赏金
