xxkj2010 发表于 2024-8-17 18:10:46

请教一下 12C5616AD的IO端口设置的问题

手头有几只 12C5616AD-SKDIP28,设置端口(例如P16)为准双向模式并置1时,测得的电压是5V,但设置为推挽输出模式并置1时,端口电压只有1.6V。
说明:端口未接入任何器件。




这是为什么?是不是 12C5616AD端口损坏了?


DebugLab 发表于 2024-8-17 18:12:44

这个型号P1M0和P1M1的定义是反的

xxkj2010 发表于 2024-8-17 18:15:18

DebugLab 发表于 2024-8-17 18:12
老型号P1M0和P1M1的定义是反的

哦,原来如此,我改一下试试。

autopccopy 发表于 2024-8-17 20:21:47

DebugLab 发表于 2024-8-17 18:12
老型号P1M0和P1M1的定义是反的

但组合定义也是反的,故最终的效果是相同。这是早期在大虾网与厂家人员沟通得知的。。。{:lol:}

autopccopy 发表于 2024-8-17 20:23:18

xxkj2010 发表于 2024-8-17 18:15
哦,原来如此,我改一下试试。

换一个新的芯片测试一下。或者将4个模式的测试一下,看看是代码的问题还是硬件的问题。。。

xxkj2010 发表于 2024-8-17 20:53:07

autopccopy 发表于 2024-8-17 20:23
换一个新的芯片测试一下。或者将4个模式的测试一下,看看是代码的问题还是硬件的问题。。。 ...

原来是:
P1M0 = 0x40; P1M1 = 0x01;
现在改为:
P1M1 = 0x40; P1M0 = 0x01;
行了!

xxkj2010 发表于 2024-8-17 20:59:02

我翻开芯片手册,对比了 8H和这个 12C5616AD旧型号,的确P1M1和P1M0是颠倒的:


这是 8H的:



这是 12C5616AD的







我刚好用到了推挽输出模式,所以无法实现效果,准双向和开漏就没有区别。

DebugLab 发表于 2024-8-17 22:13:18

autopccopy 发表于 2024-8-17 20:21
但组合定义也是反的,故最终的效果是相同。这是早期在大虾网与厂家人员沟通得知的。。。 ...

只有组合定义是反的,寄存器地址相同,不存在最终效果相同的说法
12系列:
PnM0=0 PnM1=1 推挽
PnM0=1 PnM1=0 高阻
15系列及更新的:
PnM0=0 PnM1=1 高阻
PnM0=1 PnM1=0 推挽


lyldzxx 发表于 2024-8-18 18:05:58

果真大神云集,学习了!

xxkj2010 发表于 2024-8-18 18:56:11

lyldzxx 发表于 2024-8-18 18:05
果真大神云集,学习了!

是的,论坛中的大神太多了。
页: [1] 2
查看完整版本: 请教一下 12C5616AD的IO端口设置的问题