打印

一个关于I/O口的问题

[复制链接]
2337|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
王培1|  楼主 | 2009-1-6 09:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的IO初始化是不是有点问题,PA口输出电平不对,是不是我忽略了什么
if ( 1 ) {
      ADCSC1 = 0x00;
      
      /*A¿Ú³õʼ»¯*/
      PTADD = (unsigned char)0xFF;
      PTAPE = (unsigned char)0x00;//½ûÖ¹A¿ÚÉÏÀ­
      PTASE = (unsigned char)0x00;//²»ÏÞÖÆA¿Ú°ÚÂÊ
      PTADS = (unsigned char)0x0F;
      PTASC = (unsigned char)0x00;
      PTAPS = (unsigned char)0x00;
      PTAES = (unsigned char)0x00;
      PTAD  = (unsigned char)0xFF;
      
      /*B¿Ú³õʼ»¯*/
      PTBDD = (unsigned char)0x06;
      PTBPE = (unsigned char)0x00;//½ûÖ¹B¿ÚÉÏÀ­
      PTBSE = (unsigned char)0x00;//²»ÏÞÖÆB¿Ú°ÚÂÊ
      PTBDS = (unsigned char)0x00;
      PTBSC = (unsigned char)0x00;
      PTBPS = (unsigned char)0x00;
      PTBES = (unsigned char)0x00;
      PTBD  = (unsigned char)0x00;
      /*C¿Ú³õʼ»¯*/
      PTCDD = (unsigned char)0xFB;//·½Ïò¿Ú¿ØÖÆ
      PTCPE = (unsigned char)0x00;//½ûÖ¹ÉÏÀ­
      PTCSE = (unsigned char)0x00;//²»ÏÞÖÆ°ÚÂÊ
      PTCDS = (unsigned char)0x08;//½ûֹǿÇý¶¯
      PTCD  = (unsigned char)0x00;
      //GNGC = £¨unsigned char)0x00;?      PTCD  = (unsigned char)0x00;
      ADCSC1 = 0x00;
    }
     else{
      
     }
是不是还有什么寄存器需要设置一下,变成普通的IO使用

相关帖子

沙发
王培1|  楼主 | 2009-1-6 09:33 | 只看该作者

Ganged Output这个是什么意思

在SH4 MCU里面 Ganged Output是用来干什么呢

使用特权

评论回复
板凳
张明峰| | 2009-1-6 11:31 | 只看该作者

PTA复用

PTA4/5和RESET/BKGD复用,必须设SOPT1将其置为IO

ganged output是多路IO并联输出,以增强外部负载的驱动能力。一旦相关引脚被设为“ganged output”,所有相关控制将自动和PTC0保持一致,亦即PTC0代表了其它所有“ganged output”引脚的功能:这也许是学习了我D精髓**后的结果???

使用特权

评论回复
地板
王培1|  楼主 | 2009-1-6 11:57 | 只看该作者

IO输出原因找到了

我为了实现4个I/O不同的功能做了一些跳线,这跳线虚焊造成,电平不对,还好,呵呵,看来这种跳线用的时候也好小心
2,至于ganged output,是不是一旦设置,当PTC0作为PWM或者比较输入的时候,其它脚也具有这个功能了?

使用特权

评论回复
5
王培1|  楼主 | 2009-1-6 12:37 | 只看该作者

在软仿真的时候怎么看秒表

在软仿真的时候怎么看秒表,看一个DELAY函数跑了多少机器周期

使用特权

评论回复
6
张明峰| | 2009-1-7 17:00 | 只看该作者

看CPU Cycles

在调试界面上有一个"Register"窗口,上面有CPU Cycles计数。前后人工减一次就有结果了。

使用特权

评论回复
7
王培1|  楼主 | 2009-1-7 21:09 | 只看该作者

恩,看见了

感谢张教主指点,我看见了,我把实现步骤写一下,如果没有看见的朋友可以参考下面的步骤
1: 左上角view
2: Customize
3:在"可用工具栏按钮"里面选择"Register",点舔加就可以了

使用特权

评论回复
8
lemx| | 2009-2-27 00:46 | 只看该作者

hhhhh

dingyixia

使用特权

评论回复
9
win2000_li| | 2009-3-7 20:24 | 只看该作者

HHHH

不好意思啊,我用你的办法试了一下没有看到CPU cycle啊???

我用的是6.2版本的.HCS08

使用特权

评论回复
10
王培1|  楼主 | 2009-3-9 13:12 | 只看该作者

再看看

1:首先进入软件仿真的界面
2:然后....
win2000_li你留下邮箱,我传给你,这里上传文件忒慢了

使用特权

评论回复
11
张明峰| | 2009-3-9 14:22 | 只看该作者

必须是"Full Chip Simulation"模式

才能看到CPU Cycle
9楼估计是在硬件BDM调试模式

使用特权

评论回复
12
win2000_li| | 2009-3-9 15:32 | 只看该作者

谢谢!!

说的对,我用的是硬件BDM.

明白了.

谢谢王培,谢谢张老师.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

37

主题

142

帖子

0

粉丝