关于管脚的操作

[复制链接]
2759|13
 楼主| wangzsa 发表于 2010-6-26 19:07 | 显示全部楼层 |阅读模式
在cypress中对PD1脚进行操作,程序如下:  
第一种方式:
while(1)
  {
          PD1 = 0x00;
    SYNCDELAY;
    SYNCDELAY;
    PD1 = 0x01;
    SYNCDELAY;
    SYNCDELAY;
  }
第二种方式:
  while(1)
  {
    IFCONFIG = 0x00;
SYNCDELAY;
SYNCDELAY;
IFCONFIG = 0xFF;
SYNCDELAY;
SYNCDELAY;
  }
两种方式分别将生成的HEX文件download到芯片中,用示波器测量PD1脚都没有波形输出
zhuww 发表于 2010-6-26 19:08 | 显示全部楼层
对PD1的描述你知道吗?
 楼主| wangzsa 发表于 2010-6-26 19:08 | 显示全部楼层
Multiplexed pin whose function is selected by the
IFCONFIG[1..0] and EPxFIFOCFG.0 (wordwide) bits.
FD[9] is the bidirectional FIFO/GPIF data bus.
zhanglli 发表于 2010-6-26 19:18 | 显示全部楼层
1肯定不对
 楼主| wangzsa 发表于 2010-6-26 19:18 | 显示全部楼层
为什么啊?
zhanglli 发表于 2010-6-26 19:19 | 显示全部楼层
既要对IFCONFIG[1..0] 设置2位,也要对 EPxFIFOCFG.0 设置1位。
 楼主| wangzsa 发表于 2010-6-26 19:24 | 显示全部楼层
?那该怎么弄?
zhanglli 发表于 2010-6-26 19:35 | 显示全部楼层
看起来要社3bit才能。
 楼主| wangzsa 发表于 2010-6-26 19:36 | 显示全部楼层
不好意思,第一种方式也是对PD1分别写0x00,0xff
 楼主| wangzsa 发表于 2010-6-26 19:36 | 显示全部楼层
如果我单纯对PD1进行操作,也需要什么必要的设置吗?
zhanglli 发表于 2010-6-26 19:37 | 显示全部楼层
是不是有方向寄存器需要设置?
hanwe 发表于 2010-6-27 12:32 | 显示全部楼层
小工程师 发表于 2010-6-27 12:52 | 显示全部楼层
首先要设置IFCONFIG[1..0]为00使I/O工作在Port模式,10是GPIF模式,11是SlaveFIFO模式
同时EPxFIFOCFG.0 (wordwide) bits设为0,Prot D为GPIO状态,若为1就是Port D为FD [15:8].
然后去设置寄存器OED(控制I/O的方向Input还是Output)和IOD(I/O的读写)...
LZ可以去看看数据参考手册TRM 13.2 I/O Ports
yufe 发表于 2010-6-27 21:52 | 显示全部楼层
小工程师回答的相当好了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

914

主题

9040

帖子

5

粉丝
快速回复 在线客服 返回列表 返回顶部