你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

求助!!程序烧错

[复制链接]
lvfeng123 提问时间:2019-5-5 01:16 /
本帖最后由 lvfeng123 于 2019-5-5 17:39 编辑

在弄那个休眠模式。
由于平生首次做嵌入式的程序,不太熟练。 测试的时候不小心。  cpu进入休眠模式退不出来了。

结果再烧程序的时候 报错Internal command error Flash download failed target dll has been canceled
网上查询解决办法: 按住reset键烧再写。 可是我按住还是报错无法停止COTEX_M;

应该怎样做才能让板子退出休眠模式啊?

板子型号是:Nucleo-144 STM32L496
开发工具也是第一次使用不熟练, 是keil-5
收藏 评论10 发布时间:2019-5-5 01:16

举报

10个回答
lvfeng123 回答时间:2019-5-5 01:22:16
补充下我的代码: 逻辑有问题,启动后或者唤醒后会马上休眠.
        while(1){
        if(dataState == 1){
                        dataState =0;
                        HAL_UART_Transmit(&Lpuart1,rxBuffer,DLen,0xFFFF);
            }else
              SYS_Sleep(&Lpuart1);                       
        }

休眠函数:

void SYS_Sleep(UART_HandleTypeDef *lpuart){
        UART_WakeUpTypeDef WakeUpSelection;
        WakeUpSelection.WakeUpEvent = UART_WAKEUP_ON_READDATA_NONEMPTY;
        HAL_UARTEx_StopModeWakeUpSourceConfig(lpuart,WakeUpSelection);       
       
        __HAL_UART_ENABLE_IT(lpuart, UART_IT_WUF);
        HAL_UARTEx_EnableStopMode(lpuart);
        //HAL_PWR_EnableSleepOnExit();
  __HAL_RCC_PWR_CLK_ENABLE();
        //__HAL_RCC_PWR_CLK_SLEEP_ENABLE();
        __HAL_RCC_WAKEUPSTOP_CLK_CONFIG(RCC_STOP_WAKEUPCLOCK_HSI);

        //HAL_RTCEx_DeactivateWakeUpTimer(lpuart);
        HAL_PWREx_EnterSTOP1Mode(PWR_STOPENTRY_WFI);
        //SYSCLKConfig_STOP();
}
wenyangzeng 回答时间:2019-5-5 07:21:05
本帖最后由 wenyangzeng 于 2019-5-5 07:22 编辑

按住RESET点击下载后要放开RESET,要多试几次。
也可以在ST-LINK UTILITY工具里整片删除

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

大陶 回答时间:2019-5-5 09:32:23
先按住RESET,点击下载,然后松开RESET
或者用ISP,更换一个程序也可以。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

废鱼 回答时间:2019-5-5 09:47:14
将boot设置为ISP模式,重新烧写即可。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

七哥 回答时间:2019-5-5 10:26:56
把boot0接1,CN11的5、7脚短接,然后上电或按复位按钮,即启动ISP方式。
在ISP方正刷个正常的程序。

20190505101431.jpg

20190505101610.jpg

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

五哥1 回答时间:2019-5-5 11:18:14
BOOT0置1,串口下载正常程序,然后BOOT0置0,然后用STLNK试下。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

maxtch 回答时间:2019-5-5 12:15:53
如果没有记错的话 J-Link 是支持在复位下连接 CPU 然后由调试器解除复位的。你可以试试看把板载 ST-Link 刷成 J-Link OB 再试试。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

lvfeng123 回答时间:2019-5-5 12:53:03
谢谢各位,解决了, 我下了个  STM32 ST-LINK Utility  reset模式下连接st-link. 擦除了内容。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2 总结解决方法

查看全部评分

STM1024 回答时间:2019-5-5 13:28:07
按住Reset不放,点击下载,然后松开Reset

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

tanic 回答时间:2019-5-5 15:47:44
如图
图片1.png

评分

参与人数 1蝴蝶豆 +3 收起 理由
STMCU + 3

查看全部评分

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版