当前位置:首页 > 单片机 > 单片机
[导读]一开始建立了工程,然后程序下载都很正常。不知道什么情况自己下载代码之后,再重新下载代码无法成功。我按照提示找了一下FlashStm32f30x8.flash这个文件,却发现IAR的目录下没并没有。又怀疑是IAR文件丢失。重新安装

一开始建立了工程,然后程序下载都很正常。不知道什么情况自己下载代码之后,再重新下载代码无法成功。



我按照提示找了一下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);//TXPINGPIO_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);//RXPINGPIO_InitStructure.GPIO_Pin=GPIO_Pin_10;GPIO_InitStructure.GPIO_OType=GPIO_OType_OD;GPIO_Init(GPIOA,&GPIO_InitStructure);

看来库,还是得小心使用,否则出问题的时候.查死你啦~~~


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
换一批
延伸阅读
关闭