STM32无法使用IAR下载程序问题
2016-07-11 11:17
399 查看
一开始建立了工程,然后程序下载都很正常。不知道什么情况自己下载代码之后,再重新下载代码无法成功。
![](http://img.blog.csdn.net/20141031172843770?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGFuMTIwNTc2NjY0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](http://img.blog.csdn.net/20141031172954781?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGFuMTIwNTc2NjY0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
我按照提示找了一下FlashStm32f30x8.flash这个文件,却发现IAR的目录下没并没有。又怀疑是IAR文件丢失。
重新安装IAR,却发现问题仍然继续. ~~~~感觉像是芯片坏了~~~
于是通过STVP工具,读取一下。 奇迹发生了,竟然可以读取程序。 嗯~~那可以排除芯片的问题。
好吧,那我重新用IAR下载应该可以吧。 于是重新下载程序, 晕~~~居然还是弹出那个错误。
难道自己的程序竟然会引起这样的错误???
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
于是通过STVP将FLASH全部清空,再用IAR下载调试。嗯~~~成功了....
既然成功了,那就用F5全速跑一下吧。 晕,程序跑飞了。。。。。。。。。。
此时,我再用IAR下载时候,发现又弹出刚开始的错误了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
再通过STVP将FLASH全部清空,再用IAR下载调试,一步一步调试。发现程序跑到ST官方的库文件里面就出不来了。
继续跟踪,原来库在GPIO_OType参数的时候,没有判断值,直接就赋值给变量了.我的代码中确实没有对GPIO_OType变量进行赋值,因为感觉该口作用串口的输入输出应该不需要赋值.
后面对该值赋值后,问题再也没有重现了.
代码如下:
看来库,还是得小心使用,否则出问题的时候.查死你啦~~~
我按照提示找了一下FlashStm32f30x8.flash这个文件,却发现IAR的目录下没并没有。又怀疑是IAR文件丢失。
重新安装IAR,却发现问题仍然继续. ~~~~感觉像是芯片坏了~~~
于是通过STVP工具,读取一下。 奇迹发生了,竟然可以读取程序。 嗯~~那可以排除芯片的问题。
好吧,那我重新用IAR下载应该可以吧。 于是重新下载程序, 晕~~~居然还是弹出那个错误。
难道自己的程序竟然会引起这样的错误???
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
于是通过STVP将FLASH全部清空,再用IAR下载调试。嗯~~~成功了....
既然成功了,那就用F5全速跑一下吧。 晕,程序跑飞了。。。。。。。。。。
此时,我再用IAR下载时候,发现又弹出刚开始的错误了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
再通过STVP将FLASH全部清空,再用IAR下载调试,一步一步调试。发现程序跑到ST官方的库文件里面就出不来了。
继续跟踪,原来库在GPIO_OType参数的时候,没有判断值,直接就赋值给变量了.我的代码中确实没有对GPIO_OType变量进行赋值,因为感觉该口作用串口的输入输出应该不需要赋值.
后面对该值赋值后,问题再也没有重现了.
代码如下:
GPIO_PinAFConfig(GPIOA, GPIO_PinSource9,GPIO_AF_7); GPIO_PinAFConfig(GPIOA, GPIO_PinSource10,GPIO_AF_7); //TX PIN GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF; GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; GPIO_Init(GPIOA,&GPIO_InitStructure); //RX PIN GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10; GPIO_InitStructure.GPIO_OType = GPIO_OType_OD; GPIO_Init(GPIOA,&GPIO_InitStructure);
看来库,还是得小心使用,否则出问题的时候.查死你啦~~~
相关文章推荐
- tomcat 404 问题及解决方法
- openstack cinder-volume 的高可用(HA)
- 在FPGA开发中尽量避免全局复位的使用
- centos 杀死进程命令
- EC-JET喷码机开机报压力低故障
- android权限管理(包括相机权限,存储权限等等)
- js中函数表达式和函数声明
- Go中的用组合实现继承
- navigationbar下面有关于阴影的属性
- 【Linux】文件系统结构,文件目录树及功能详解
- Too many Cluster redirections
- 亦歌亦行呆呆熊
- Swoole定时器Timer特性分析与使用
- [JavaScript]jquery中各事件执行顺序
- Qt5.3.2(OpenGL)交叉编译
- hdu2089
- fopen的用法
- 火狐浏览器使用HttpRequester模拟发送http请求
- Android Studio中设置作者和创建日期等注释模板
- HYSBZ 1036 树链剖分