ST72F321的PE3口不受控制

RCC1978   2007-9-16 11:10 楼主
最近在做ST72F321控制nRF2401的无线通信时遇到的问题,发现PE3口的输出始终在1.87V。电路是用5V供电的,高电平应该在3.5V以上。检查了程序和电路,都没有问题。
断开单片机和nRF2401的连接,单独测试IO口,发现就PE3口始终在4V以上,无法置0。连换了三块单片机,总共测试了四块,PE3口都不能工作,这回确实不知道问题出哪了。

回复评论 (7)

疑问如下:

看了321的数据手册,PE3是一个非HS的普通GPIO。
1、IO口状态设置的是什么?推挽、开漏?
2、外围电路是什么样的结构?有没有上拉、下拉?
3、断开负载测,我想知道你是如何知道在你测试的时候,MCU的IO会满足你测试的要求。我担心是否是代码的问题?
4、有没有挂上DVP3试试?

你给的资料太不详细了。

以前我有个客户用EMU2,当时也是发现有个IO老是不能置零,后来检查来检查去,能用得上得方法都用了,最后发现问题竟然是那个刚买回来还不到3个月的EMU2仿真的那个IO坏了。
点赞  2007-9-16 22:59

先回答一下qigongwei的问题

1.IO口状态设置的是推挽输出
2.外围电路是接nRF2401的CE端,中间有一个分压电路,以满足3V供电的要求,因为nRF2401是3V供电的.没有上拉或下拉.
3.我有indart的仿真器,可以单步进行调试,同样的代码测试了很多端口,不可能是代码的问题.
4.DVP3,说实话我不清楚是什么东西.
如果说是仿真的IO坏了的话,我把程序下载进去再执行应该没有问题,但是确实还是不行.
点赞  2007-9-17 08:36

补充一下

做仿真的时候,用STVD7自带的仿真,置1清0都没问题.
#define SET_NRF2401_CE    (PEDR |= 0x08)
#define CLR_NRF2401_CE    (PEDR &= 0xF7)

在程序中的初始化是这样的:
PEDR &=0xF7;
PEDDR|=0x08;
PEOR |=0x08;
点赞  2007-9-17 09:53

看datasheet去,你说的PE3如果我没记错的话,是PIN63

再看看datasheet去,

你说的PE3如果我没记错的话,是PIN63

那个脚不可作输出脚用,,
点赞  2007-9-18 12:14

看datasheet去,你说的PE3如果我没记错的话,是PIN63

                                 是PIN64
点赞  2007-9-18 14:20

PIN64是可以正常输出的,设成1,1即可(上拉输出)

                                  
点赞  2007-9-18 15:36

呵呵,中午在公用机上上网,刚刚看了看自己做的,才回得,呵呵

                                 我一直设为1,1的,上拉输出,,没有问题的,呵呵
点赞  2007-9-18 15:39
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复