单片机引脚加上拉电阻后是不是只能读1?

来源:百度知道 编辑:UC知道 时间:2024/06/05 01:25:54
单片机引脚加上拉电阻后是不是其引脚永远为1?当单片机对该引脚写0时,是不是无效?
另外我直接用一个行程开关接到单片机的引脚,另一端接+5V,让单片机读取行程开关的状态。需不需要再在接什么电阻之类的?限流或什么的,或下拉电阻,
请赐教,谢谢,正确可以追加分数
还有个问题就是,我单片机一接通电源(带上电自动复位),电机就错误动作(应该是不动的),而事实上我没有给控制电机的芯片写任何数据,它应该是不动的!

上拉电阻一般是1-10k么?怎么是10-100k?

单片机的IO引脚驱动能力有限,当上拉电阻过小,电流超过它的驱动能力时,写0无效,只要电阻大小合适是可以输出0的。

如果行程开关接引脚和+5V时,需要加下拉电阻,建议按fzfh说的接引脚和GND,限流电阻可以不加。

补充的问题是因为单片机上电复位后所有IO引脚默认都是输出1的,需要程序置零,你的电机一般是设置在IO输出1时动作,需要更改电路使其在引脚输出0时工作,这样就不会误动作了。

直接用一个行程开关接到单片机的引脚,另一端接+5V,让单片机读取行程开关的状态---------行程开关接到单片机的引脚这一端加个4k7到10K的下拉电阻

加上拉电阻后,对该IO写0是有效的,但上拉电阻要取得合适,一般为10k到100k.--补充:写1其实也是有效的。

以下回答针对51单片机:
1、加上拉电阻后,对该IO写0是有效的,但上拉电阻要取得合适,一般为10k到100k.
2、行程开关的一端接单片机IO口,另一端接地,只有这样电路才能工作,如果你使用的是单片机的P0,那么必须要加一个上拉电阻。如果使用其它IO(如P2,P3,P1),则可以不加上拉。
注:如果使用的不是51系列单片机,另当别论。
gook luck!