zoukankan      html  css  js  c++  java
  • STM32无法使用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);
    
    
        //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);

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

  • 相关阅读:
    斐波那契数
    组合数学
    网络流
    UVA 1104 【芯片难题 Chips Challenge】
    Luogu P3181 【[HAOI2016]找相同字符】
    Luogu P4101 【[HEOI2014]人人尽说江南好 】
    Luogu P5842 【[SCOI2012]Blinker 的仰慕者】
    BZOJ 4502 串
    Luogu P5840 【[COCI2015]Divljak】
    Luogu P3295 【[SCOI2016]萌萌哒】
  • 原文地址:https://www.cnblogs.com/alanfeng/p/5659637.html
Copyright © 2011-2022 走看看