新手求助:为何已经配置了IO口模式,但是无法按照预想的输出高电平
void main(void)
{
P3M0=0x00;
P3M1=0x00;
P1M0=0x00;
P1M1=0x00;
P10=1;
while(1)
{
P34=1;P35=0;
TX1_RGB(255,255,0);
}
}
我用的是STC8G1K08-16pin的单片机
在这段代码里只有配置的四行代码起作用,比如:P3M0=0x00;P3M1=0x00;时P3口为双向io口,但是除p30和p31之外均为低电平,哪怕在while里命令其他管脚输出高电平也不行
但是如果配置:P3M0=0xff;P3M1=0x00;即p3口未推挽输出,p3就全都是高电平了;
不知道哪里出了问题,希望有大神解答
找到原因了,是烧录的程序太大,部分移到了eeprom区导致异常,
是否有什么办法可以在不修改代码量的情况使程序运行正常呢
STC8H / STC32G 不用的I/O口如何设置:【高阻输入】+【关闭数字输入】 - I/O读写及点灯,外部中断 ,所有I/O都支持的普通I/O中断,按键扫描 国芯技术交流网站 - STC全球32位8051爱好者互助交流社区https://www.stcaimcu.com/forum.php?mod=viewthread&tid=2368
代码没啥问题,电路图呢? 准双向上拉较弱,检查是否被外部电路拉低 如果设置成上拉模式,应该会高电平吧,准双向上拉能力好像有限。 Lkck8210 发表于 2024-8-7 17:35
代码没啥问题,电路图呢?
驱动的是直流电机驱动芯片,而且不止这两个接了驱动芯片的管脚输出不了,其他的空闲管脚也输出不了高电平 DebugLab 发表于 2024-8-7 18:45
准双向上拉较弱,检查是否被外部电路拉低
驱动的是直流电机驱动芯片,而且不止这两个接了驱动芯片的管脚输出不了,其他的空闲管脚也输出不了高电平 wnagming 发表于 2024-8-8 05:30
电机芯片型号,还有你单片机用的几伏电?
电机芯片用的是rz7899。单片机是用ldo提供的3.3v电,电机芯片是外部提供的5v电 这是目前的电路图
wnagming 发表于 2024-8-7 21:34
说白了就是带不动,一个小孩把石头推上山,肯定费劲,有可能还推不上去;换个壮汉就解决了,所以一般确定的 ...
如果是带不动的话,需要换成哪一款的芯片可以带动啊,只有幻彩灯,电机和无线接收
页:
[1]
2