找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1314|回复: 16
打印 上一主题 下一主题
收起左侧

请教如何STC15w408单片机上电时IO口设置成低平?

[复制链接]
跳转到指定楼层
楼主
ID:284571 发表于 2023-11-23 18:18 来自手机 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
各位大侠请指点STC15w408上电时IO口设置成低平丶
默认上电是高平丶电路需要设成低电平、谢谢。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:57657 发表于 2023-11-23 20:43 | 只看该作者
选择STC8或STC32系列任意一型号,除P3.0和P3.1外其余IO口上电瞬间均为高阻态,先将IO口拉低再配置为准双向或强推挽即可。
其余系列上电瞬间为准双向模式的高电平,加一片74HC04或74HC14等非门反相器翻转即可。
回复

使用道具 举报

板凳
ID:213173 发表于 2023-11-23 21:17 | 只看该作者

回复

使用道具 举报

地板
ID:284571 发表于 2023-11-24 04:57 来自手机 | 只看该作者
wulin 发表于 2023-11-23 21:17

谢谢、我试过加下拉电阻、我的电路是控制SG3525的8脚`电压微弱了丶加了下拉就不能正常工作了、必须上电就是低电平
回复

使用道具 举报

5#
ID:213173 发表于 2023-11-24 09:47 | 只看该作者
WCM1998 发表于 2023-11-24 04:57
谢谢、我试过加下拉电阻、我的电路是控制SG3525的8脚`电压微弱了丶加了下拉就不能正常工作了、必须上电就 ...

加下拉电阻只是措施之一,还得将该IO口设置为推挽模式。程序开始,端口初始化=0,再将该IO口设置为推挽模式。否则后续程序操作该端口=1时无法建立高电平。
回复

使用道具 举报

6#
ID:123289 发表于 2023-11-24 10:44 | 只看该作者
在外设上电前,先上CPU的电,CPU得电后才能逻辑正常。
这样,对于外设来说,默认上电状态就受控了。

单纯的要求IO上电时是低电平:IO对地接一个电容C。由于上电前C上无电压,这样上电的瞬间,IO电压必为0。
回复

使用道具 举报

7#
ID:284571 发表于 2023-11-24 18:04 来自手机 | 只看该作者
yzwzfyz 发表于 2023-11-24 10:44
在外设上电前,先上CPU的电,CPU得电后才能逻辑正常。
这样,对于外设来说,默认上电状态就受控了。


谢谢、我试试看
回复

使用道具 举报

8#
ID:284571 发表于 2023-11-24 18:08 来自手机 | 只看该作者
wulin 发表于 2023-11-24 09:47
加下拉电阻只是措施之一,还得将该IO口设置为推挽模式。程序开始,端口初始化=0,再将该IO口设置为推挽模 ...

谢谢、我控制的电压是5v电流50uA、所以加下拉电阻不行丶电流太小了带不了下拉电阻
回复

使用道具 举报

9#
ID:1034262 发表于 2023-11-24 20:40 | 只看该作者
下拉3K电阻到GND,上电就是低电平,初始化时先输出低电平,再设置为推挽输出。
回复

使用道具 举报

10#
ID:284571 发表于 2023-11-25 06:45 来自手机 | 只看该作者
coody_sz 发表于 2023-11-24 20:40
下拉3K电阻到GND,上电就是低电平,初始化时先输出低电平,再设置为推挽输出。

pwm输出引脚p0.1上电输出低位怎么样设置?
回复

使用道具 举报

11#
ID:1034262 发表于 2023-11-25 21:35 | 只看该作者
WCM1998 发表于 2023-11-25 06:45
pwm输出引脚p0.1上电输出低位怎么样设置?

PCA-PWM连续输出0或1的方法,以PCA0(PWM0-CCP0)为例:

PCA_PWM0 &= ~0x02;        // PWM0正常输出
PCA_PWM0 |= 0x3f, CCAP0H = 0xff, CCAP0L = 0xff;        // PWM0一直输出0
PCA_PWM0 &= 0xc0, CCAP0H = 0,    CCAP0L = 0;        // PWM0一直输出1
回复

使用道具 举报

12#
ID:284571 发表于 2023-11-26 06:54 来自手机 | 只看该作者
coody_sz 发表于 2023-11-25 21:35
PCA-PWM连续输出0或1的方法,以PCA0(PWM0-CCP0)为例:

PCA_PWM0 &= ~0x02;        // PWM0正常输出

谢谢、但是上电总有一个瞬间高电平脉冲呀丶无法消除、
回复

使用道具 举报

13#
ID:284571 发表于 2023-11-26 09:17 来自手机 | 只看该作者
coody_sz 发表于 2023-11-25 21:35
PCA-PWM连续输出0或1的方法,以PCA0(PWM0-CCP0)为例:

PCA_PWM0 &= ~0x02;        // PWM0正常输出

但是PWM引脚上电也有一高电平、电机就会抖一下、Pwm输出接Lks561驱动芯片
回复

使用道具 举报

14#
ID:284571 发表于 2023-11-26 10:23 来自手机 | 只看该作者
有人说改变STARTUP.A51可以改变上电时IO口电平丶可操作不来
回复

使用道具 举报

15#
ID:213173 发表于 2023-11-26 15:03 | 只看该作者
WCM1998 发表于 2023-11-26 10:23
有人说改变STARTUP.A51可以改变上电时IO口电平丶可操作不来

至少对STC15W408来说没有用,我在5楼的建议是经实践切实可行的。只是你没有掌握好步骤。对于默认的PWM输出脚,必需在初始化PWM时设置:
        CCAP0H = CCAP0L = 0xFF; //PWM0的占空比为0%
        //CCAP1H = CCAP1L = 0xFF; //PWM1的占空比为0%       
因为一旦启动PWM,默认的PWM输出脚就会按PWM寄存器设置输出高/低电平。原先对该端口高/低电平的设置无效。
回复

使用道具 举报

16#
ID:284571 发表于 2023-11-26 17:46 来自手机 | 只看该作者
wulin 发表于 2023-11-26 15:03
至少对STC15W408来说没有用,我在5楼的建议是经实践切实可行的。只是你没有掌握好步骤。对于默认的PWM输 ...

谢谢大侠、我试试看.向你请教学习
回复

使用道具 举报

17#
ID:284571 发表于 2023-11-28 04:21 来自手机 | 只看该作者
wulin 发表于 2023-11-26 15:03
至少对STC15W408来说没有用,我在5楼的建议是经实践切实可行的。只是你没有掌握好步骤。对于默认的PWM输 ...

大侠、向你学习请教
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表