OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 9597|回复: 8

2、按键输入实验

[复制链接]

5

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2011-5-12
在线时间
3 小时
发表于 2011-5-15 11:49:25 | 显示全部楼层 |阅读模式
      实验遇到的问题:HEX文件大于11.3KB时,下载到实验板不能运行,反之则完全正常
      做第一个实验时就遇到了个奇怪的问题,程序在软件里仿真是正确的,而下载到实验板就运行不了,在不断的尝试修改后终于正常了,但还是没有找出具体的原因,可是不能在这个问题上停滞不前啊,所以开始了按键输入的实验。
      按键输入实验其实也很简单,相比第一个实验就是增加了将按键接口配置为输入模式一步,然后就可以和单片机一样来操作了。我在实验板上将8只LED连到PB[15:8],独立按键分别接在PB[7:0],程序实现的功能是 一只按键控制一个LED,比如KEY0按一次,LED0亮,再按一次,LED0灭…;KEY1按一次,LED1亮,再按一次,LED1灭…
      很快,程序写好了,编译后照着手册上的步骤用软件进行仿真,没有问题,就下载到实验板了,邪门啊,又没反应了,和第一个实验一样,下载到板子就不运行了,纳闷!
 不管怎么样,先回过头来查代码,没查出什么问题,崩溃边缘!好吧,这时我想,既然8个按键控制8个LED不运行,那再简单点,先只用1个按键控制1个LED,然后把端口重新配置了,将主函数里控制LED1--LED7亮灭的处理代码和按键扫描函数里的KEY1--KEY7的处理代码都注释掉了,再下载,呵呵,可以了。接下来,我就一个按键一个LED的往上加,当加到5个按键控制5个LED时,下载到实验板的程序又不运行了,将第五个注释掉,又可以;加第六个,也不行,我又把前4个都注释掉,单独试第5个和第6个,都是可以的,再加第7个和第8个,都没问题,这时我就任意注释掉4个,都是可以的,奇怪了,难道只支持最多4个KEY控制4个LED,显然不可能!
      一下子又没有头绪了,后来突然想到,会不会是RV MDK的问题,以前看到网上有帖子说keil有代码大小限制,是未破解的版本。我就又打开工程,先把8只按键8只LED都加到程序里,然后将SYS.C和delay.c文件里未用到的函数注释掉,再试,完全正常了,难道我的猜想是对的,真有代码限制,我的可是破解过的哦,不管,先把注册机打开,重新注册,之后再恢复所有程序,又没反应,不可能是代码大小有限制把,我反复的试,然后每次编译后看看 HEX文件的大小,这时我发现,只要HEX文件小于11.3K程序就能正常运行,反之就不行。我用的是芯片是 STM32F103C8,  查了一下,程序存储器有64K的,也不会是程序装不下的。谁知道这时什么原因啊!

手册学习实践 实验2.rar

292.33 KB, 下载次数: 545

想…要壮志凌云,干…要脚踏实地!
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2011-5-15 12:53:32 | 显示全部楼层
回复【楼主位】chzfmx:
-------------------------------
应该不会有你 这样的问题吧。
代码问题多点。
C8确实是64K的。

你在主程序里面运行一个循环电灯的代码,告诉你系统在运行。你再看看,是没运行,还是真的代码超过11.3k就不行了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

5

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2011-5-12
在线时间
3 小时
 楼主| 发表于 2011-5-15 17:09:07 | 显示全部楼层
回复【2楼】正点原子:
-------------------------------
呵呵,我在试的时候就是在主程序里放了LED闪烁的代码来看程序是不是运行的,我试过好多次了,刚刚我又把跑马灯程序拿出来改了一下,在主程序里加代码,直到HEX文件为11.3K,实验板就没反应了,减掉一点代码,变成11.2K,又正常了,肯定不是代码的问题了
想…要壮志凌云,干…要脚踏实地!
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2011-5-15 19:20:47 | 显示全部楼层
回复【3楼】chzfmx:
-------------------------------
那我也没辙了,呵呵.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

5

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2011-5-12
在线时间
3 小时
 楼主| 发表于 2011-5-15 20:25:56 | 显示全部楼层
回复【4楼】正点原子:
-------------------------------
嘿嘿,估计是实验板的问题了,我测试了一下实验板光盘里的例程,大于11.3K的几个实验没反应,我去找卖家了
想…要壮志凌云,干…要脚踏实地!
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2011-5-16 01:02:40 | 显示全部楼层
回复 支持 反对

使用道具 举报

5

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
73
金钱
73
注册时间
2011-5-12
在线时间
3 小时
 楼主| 发表于 2011-5-16 10:48:46 | 显示全部楼层
回复【6楼】正点原子:
-------------------------------
呵呵,问题解决了,怎么就没想到是程序下载软件的问题呢,下载软件更新到最新版,测试完全OK了!
想…要壮志凌云,干…要脚踏实地!
回复 支持 反对

使用道具 举报

18

主题

158

帖子

1

精华

中级会员

Rank: 3Rank: 3

积分
400
金钱
400
注册时间
2011-11-23
在线时间
0 小时
发表于 2012-7-24 10:41:42 | 显示全部楼层
回复【7楼】chzfmx:
---------------------------------
程序下载软件要激活,你的肯定是试用版的,要用注册机激活一下,就可以了~
回复 支持 反对

使用道具 举报

4

主题

17

帖子

0

精华

初级会员

Rank: 2

积分
54
金钱
54
注册时间
2013-4-26
在线时间
0 小时
发表于 2013-8-21 15:33:02 | 显示全部楼层
回复【7楼】chzfmx:
---------------------------------
我现在也遇到和你类似的问题了,我用的mcuisp v0.993。用的单片机是STM32F103RBT6,我那个HEX文件已经有39.1kb了,现在不知道如何解决,请大侠给予帮助
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-14 19:07

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表