上电pwm管脚就输出高电平怎么配置

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

上电pwm管脚就输出高电平怎么配置

8,558件の閲覧回数
wumr
Contributor I

由于pwm管脚驱动蜂鸣器,但是由于电路设计为低电平导通蜂鸣器,所以要使得pwm管脚一上电就配置为高电平。

ラベル(4)
タグ(1)
0 件の賞賛
返信
5 返答(返信)

7,484件の閲覧回数
weidong_sun
NXP TechSupport
NXP TechSupport

Hi Wu,

不清楚你使用的那个CPU,我以I.MX6Q为例,PWM1可以从三个CPU pad复用出来:DISP0_DAT8,GPIO_9,SD1_DAT3。那么,假设你使用GPIO_9复用出来。

 (1)GPIO_9引脚在Power on reset时的状态。

通过查datasheet,POR时,此引脚是 INPUT  ,  100K拉高。那么,意味着此引脚并不是LOW电平。

(2)您电路中的300K拉低问题。

我查看了一下您的电路,这个300K拉低,我没太看懂在这里的必要性。而且即使要拉低的话,10K比较好,300K太大了吧。建议把R103去掉吧。不用这个电阻了。

(3)上拉

既然您需要的是PWM低电平时控制,且初始电平希望是HIGH,那么这个PWM1脚,应该有一个10K的上来电阻才对吧。

请您考虑一下我的建议!

Have a nice day!

TIC weidong sun

0 件の賞賛
返信

7,485件の閲覧回数
wumr
Contributor I

Hi Wigros Sun

我使用的是IMX6Q,是SD1_DAT3,硬件是由于一点几伏特就可以导通蜂鸣器。

0 件の賞賛
返信

7,485件の閲覧回数
weidong_sun
NXP TechSupport
NXP TechSupport

Hello wu,

       SD1_DAT3,POR之后,也是100K拉高的。 你原问题是:要一上电就需要PWM脚输出HIGH。那么,您说的“硬件是由于一点几伏特就可以导通蜂鸣器。” 与 “电路设计为低电平导通蜂鸣器”,这是矛盾的。

Have a nice day!

Weidong Sun

0 件の賞賛
返信

7,485件の閲覧回数
wumr
Contributor I
QQ图片20180126174402.png
GPIO的上电复位后默认输出电平
0 件の賞賛
返信

7,485件の閲覧回数
wumr
Contributor I

Hi Wigros Sun,

     由于一点几伏特就可以导通MOS控制蜂鸣器响,所以硬件才修改为取反电路的,对了,你说“SD1_DAT3,POR之后,也是100K拉高的”,但是实际上一上电内核启动蜂鸣器就一直响,pwm1一直输出低电平而不是高电平。从i.MX 6Dual/6Quad ApplicationsProcessor Reference Manual手册哪个章节可以看到管脚POR之后的状态啊?以下是pwm在设备树中的设置。

pwm-beed {
pwms = <&pwm1 0 1000000000>;
pwm-names = "pwm-beed";
};

&pwm1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_pwm1>;
status = "okay";
};

pinctrl_pwm1: pwm1grp {
fsl,pins = <
MX6QDL_PAD_SD1_DAT3__PWM1_OUT 0x1b0b1
>;
};

0 件の賞賛
返信