[DSP编程] 一个关于GPIO的问题

[复制链接]
2360|9
 楼主| sunsundsp 发表于 2014-11-25 12:23 | 显示全部楼层 |阅读模式
        1、用A0经过三极管驱动蜂鸣器,高电平蜂鸣器响。我认为GPIO在上电时定义过的IO应该是低电平,但是每当我Reset CPU之后重新下载程序,A口是高电平,蜂鸣器响了。接着我不Reset 又重新下载,这样初始化gpio之后就是正常的。
        2、我想着在初始化gpio后加一句 人为的拉低,程序运行过这句话确实没响,接着运行接下来的又响了,而且在程序中任何地方设断点都没有停下来,可是程序好像也没有跑飞,按键什么的都是可以用。
     好吧,说了这么多不知道有人看懂没?
   程序好像是到 Set DBGIER(IER);这句话开始 蜂鸣器又响了,进不去断点的。         
 楼主| sunsundsp 发表于 2014-11-25 12:37 | 显示全部楼层
再加一点 程序现在可以过了 Set DBGIER(IER) 这句话。不是这句话有问题。但是我就更加困惑了·····接下来是一段EEPROM的读程序
wangch_sh 发表于 2014-11-25 14:12 | 显示全部楼层
哪个型号的DSP?
 楼主| sunsundsp 发表于 2014-11-25 14:53 | 显示全部楼层
wangch_sh 发表于 2014-11-25 14:12
哪个型号的DSP?

2812
zhangmangui 发表于 2014-11-25 22:31 | 显示全部楼层
程序都是固化到内部ROM中或外扩flash中   上电加载到执行 需要一段时间
这段时间GPIO是不能被控的  一般默认为高  所以蜂鸣器会响
这个默认状态有时候不定   还需要查看手册
蜂鸣器除了上电后   没有使能就响了    查查是哪儿改了GPIO的输出电压
jing43 发表于 2014-11-29 23:51 | 显示全部楼层
1,芯片从上电到第一条指令的执行,是要一点时间的,这段时间 GPIO 默认 20K 电阻弱上拉,GPIO 接电阻接到三极管的基极,基极还应该接一个电阻到地。
2,芯片执行到 main 函数之前,虽然执行了很多代码,但这段时间,可以确认 CPU 没有操作过 GPIO,也就是说,你定义了 GPIO 输出低电平,那也是还没有执行的。你要从 main 单步执行,看看你设置 GPIO 为低电平是在哪里执行的,如果你的程序没有飞,你一定可以看到的。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

29

主题

122

帖子

2

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