STM8不用手动复位进入自带Bootloader方法(串口下载)
源:STM8不用手动复位进入自带Bootloader方法(串口下载)
STM8不用手动复位进入自带Bootloader方法(串口下载)
除非STM8片子的空的,如果复位运行的是自带Bootloader,而且要通过串口下载程序的话,必须在1s内点击上位机,要不然就运行用户程序了。 这一步很麻烦,所以想把它给省掉。 后来发现上位机Flash Loader Demonstrator在启动画面点击Next后,会先从串口的DTR、RTS输出一个大概100多毫秒的脉冲,TTL电平就是负脉冲了,之后才会和单片机通信。 所以只要按照下面的图接线,如果单片机复位运行的是自带Bootloader,只要在Flash Loader Demonstrator启动画面点击Next,软件就会复位单片机,不用自己手动复位再点击Next就可以和单片机通信了。
还有就是下载STM8S或STM8L时候的Flash Loader Demonstrator启动画面设置不一样
STM8S是这样:
STM8L是这样:
还有关于复位是否运行自带Bootloader,至少符合下面两个条件之一就可以了
1、器件是空的(新买的就是空的)
2、optionbyte里的Bootloader是Enable的
新的器件optionbyte里的Bootloader是disable的,为了能不止一次使用串口下载程序,第一次下载的程序必须修改optionbyte使得Bootloader Enable
这是STM8S的程序:
#include "iostm8.h" void main(void) { FLASH_DUKR = 0xae; asm("nop"); FLASH_DUKR = 0x56; asm("nop"); while(!(FLASH_IAPSR & 0x08)); asm("nop"); FLASH_CR2 = 0x80; asm("nop"); FLASH_NCR2 = 0x7f; asm("nop"); *((unsigned char *)0x487e) = 0x55; asm("nop"); *((unsigned char *)0x487f) = 0xaa; while(1); }
点击此处下载 STM8S_BL_EN.rar (12.95 KB)
这是STM8L的程序:
#include "iostm8L152c6.h" void main(void) { FLASH_DUKR = 0xae; asm("nop"); FLASH_DUKR = 0x56; // 解除写保护 asm("nop"); while(!(FLASH_IAPSR & 0x08)); // 等待解锁 asm("nop"); FLASH_CR2 = 0x80; // 对选项字节进行写操作 asm("nop"); *((unsigned char *)0x480b) = 0x55; asm("nop"); *((unsigned char *)0x480c) = 0xaa; // 写入选项字节 while(1); }
STM8不用手动复位进入自带Bootloader方法(串口下载)相关推荐
- java带参方法上机一_Java带参方法的总结
定义一个带参方法 语法:访问修饰符 加返回类型 加方法名 加(参数列表) 参数可以带有一个参数 或多个参数 还可以用数组作为参数.' <用数组作为参数> 1 实例 public ...
- C# WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决办法...
C# WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决办法 原文:C# WebAPI中DateTime类型字段在使用微软自带的方法转json格式后默认含T的解决 ...
- Java中的带参方法
1.有返回值的带参方法 看下面代码: 1)字符串型: public String zhaZhi( String shuiGuo){ return shuiGuo+"汁"; 代码括号 ...
- Java05-day05【方法(概述、调用过程图解)、带参方法、带返回值方法、重载、方法参数传递(基本类型、引用类型)】
java零基础入门到精通(2019版)[黑马程序员] 视频+资料:[链接:https://pan.baidu.com/s/1MdFNUADVSFf-lVw3SJRvtg 提取码:zjxs] &qu ...
- 类的带参方法有哪几部分构成?
类的带参方法有哪几部分构成? 发布于2015-11-08 12:27 main函数可以不带参数,也可以带参数,这个参数可以认为是 main函数的形式参数. C语言规定main函数的参数只能有两个,还规 ...
- 带参方法的使用 0908
带参方法的使用 0908 定义带参方法 public void 方法名称(参数的类型 形参名称,参数n的类型 形参n名称){方法中的内容;方法中的内容; } 使用带参方法 对象.方法名(实参1,实参n ...
- 条码打印机换碳带的方法
条码打印机换碳带的方法?热转印功能的条码打印机,需要使用碳带,碳带用完了,就会出现打印不了的情况,需要更换碳带,下面,小编就来给大家介绍一下,条码打印机换碳带的方法. 设备.原料: 条码打印机.碳带 ...
- java无参_Java——类的无参、带参方法
>类的无参方法 什么是类的方法 类是由一组具有相同属性和共同行为的实体抽象而来.对象执行的操作是通过编写类的方法实现的.显而易见,类的方法是一个功能模块,其作用是"做一件事情" ...
- java中double身高_用JAVA编一个程序 输入10名同学的身高,找出最高升高,要求使用对象数组类型的带参方法来实现...
用JAVA编一个程序 输入10名同学的身高,找出最高升高,要求使用对象数组类型的带参方法来实现 关注:285 答案:5 mip版 解决时间 2021-02-05 07:44 提问者女人不需要倾国倾 ...
最新文章
- 方案里最常用的集群拓扑图(包含:多机集群、负载均衡、双机)
- Discuz x3论坛使用CDN后获取真实IP的解决方法
- Flash as3 以鼠标点为中心缩放效果
- amd建议超频吗_Amd 超频简单说明书——CPU篇
- Docker发布应用程序指南
- [html] 能否做到禁止打印页面?如果可以那要怎么做?
- Innodb中的buffer poll和redo undo log
- python csv修改文件_Python实例:对CSV文件的操作
- webview加载百度失败_移动AI系列百度paddle.js在助力开发智能化的微信小程序
- jqgrid 使用小记——与springboot jpa 一起使用的分页,翻页。(使用springboot jpa 原生的分页)...
- Java从入门到精通 第12章 类的封装、继承与多态
- 华为手表广告营销案例和广告策划案例PPT模板
- 实战 target 选择器,解放生产力
- 什么是等级保护?为什么要开展等级保护?
- Office2007中简繁体转换功能按钮消失解决
- 父类声明子类实例化对象详解
- python模拟登录163邮箱_python模拟登陆163邮箱并下载邮件内容(第三版代码片段)
- android WIFI连接,解决6.0及以上无法连接问题
- HTML标签及效果大全
- linux中编辑pdf文件,如何在Ubuntu中创建和编辑PDF文件
热门文章
- 数据结构和算法:全面的算法代码库
- java 环境部署——java源码包的安装——java-rpm包的安装
- 云上主机SSH秘钥对连接linux注意事项
- combobox 怎么实现对listview的类别查询_通过 Django Pagination 实现简单分页
- 电脑一开机出rebootand_北京联想电脑维修站【蓝伟博达笔记本维修吧】
- js时间搓化为今天明天_打乒乓球的搓球技巧!你掌握了吗?
- word doc怎么显示base64图片_win10系统word文档打印不出图片怎么办
- python ui框架_PyQt5GUI项目程序框架
- sharedpreferences 重启不保存_MMKV为什么可以替换SharedPreferences
- win2003 https 网站的图文配置教程