标题:
STC15w系列单片机为什么io配置了推挽模式没有作用
[打印本页]
作者:
702724152
时间:
2023-7-2 09:21
标题:
STC15w系列单片机为什么io配置了推挽模式没有作用
P3端为数码管段码。main主函数里配置p3m1=0x00.p3m0=0xff。为什么数码管亮度没有改变
P3io口
作者:
xuyaqi
时间:
2023-7-2 10:19
数码管亮度不光跟io口有关,跟数码管本身是否高亮,电路,程序都有关。
作者:
wulin
时间:
2023-7-2 13:44
配置了推挽模式数码管亮度没有改变,说明数码管亮度不足应该是代码问题,与端口模式没有什么关系。
作者:
188610329
时间:
2023-7-2 16:26
要么你限流电阻太大了,要么公共端你没有用三极管。不然是足够亮到你觉得刺眼的。
作者:
lyh04189999
时间:
2023-7-2 23:08
初始值和后面的代码有关
作者:
cnfloatleaf
时间:
2023-7-3 01:34
估计是你的(数码管公共端)的驱动电流不够,应该用三极管或者ULN来驱动。
作者:
HLzhou
时间:
2023-7-3 09:10
建议增加三极管或者相关逻辑驱动芯片做为数码管的驱动,增加驱动电流能力,然后可以通过软件调整刷新速度实现不同亮度的调节。。
作者:
702724152
时间:
2023-7-3 09:38
是程序问题,测试通过高亮显示,终于会了IO口配置。STC可以通过IO口配置省去外置三极管,电阻上拉下拉等增强电流方式
作者:
zhigang001
时间:
2023-7-3 09:51
不建议直接用IO口驱动数码管
作者:
real8799190
时间:
2023-7-3 12:52
STC15W 系列单片机的 P3 端口默认为开漏模式,即使配置了推挽输出模式也可能无效。这是因为在使用 STC15W 系列单片机时,配置 P3 端口的 IO 模式需要在软件中设置寄存器 P3M1 和 P3M0。
根据您提供的代码 p3m1=0x00; p3m0=0xff;,P3 端口被配置为推挽输出模式。但是,您还需要确保在设置 IO 模式之后,通过修改 P3 端口的数据来改变数码管的亮度。可以通过以下代码示例来实现:
c
P3M1 = 0x00;
P3M0 = 0xFF;
// 在 main 函数或其他适当的地方设置数码管的亮度
P3 = 0xFF; // 将 P3 端口设为高电平,点亮数码管(假设数码管为共阳极,高电平表示亮)
while (1) {
// 循环中可以根据需要改变数码管的亮度
P3 = 0xAA; // 假设将数码管的亮度设为一半
// 延时等待一段时间,然后再次修改 P3 的值改变亮度
// ...
}
请注意,在这个示例中,P3 端口被配置为推挽输出模式,通过设置 P3 的数据值来改变数码管的亮度。您可以根据实际需求修改 P3 的值以达到所需的亮度效果。
另外,也请确保数码管的其他相关连接正确,例如数码管的控制引脚和电源供应等。如果问题仍然存在,可能需要检查硬件电路和连接是否正确,或者咨询单片机的供应商或技术支持部门以获取更详细的帮助。
作者:
984905742
时间:
2023-7-13 18:11
增加驱动电流能力,驱动电流不够
作者:
npn
时间:
2023-7-13 21:49
cnfloatleaf 发表于 2023-7-3 01:34
估计是你的(数码管公共端)的驱动电流不够,应该用三极管或者ULN来驱动。
STC出现强推模式的目的,是为了不需要三极管驱动数码管或点阵等(大功率除外),STC89没有这些寄存器就需要了。
作者:
npn
时间:
2023-7-13 21:56
你驱动的是1位静态共阳数码管,位码接VCC准双向就可以驱动,打开强推挽也没用。
只有共阴位码接GND或接IO口控制才需要打开,动态数码管点阵无论共阴共阳必须开。
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1