ESA2GJK1DH1K升级篇: IAP详解】的更多相关文章

前言: 源码下载链接: https://gitee.com/yang456/STM32_IAP_Learn.git 后期所有出售的升级程序皆在此代码之上进行优化和开发 请必须把此文章各个的地方的说明看懂,其它教程不再重复叙述. 下载bootloader程序  我用stlink下载哈,方便 选择程序文件 首先需要发送一条指令 updata start 然后发送程序文件 说明接收并运行了咱写的APP程序. IAP详细说明: 所谓单片机的升级实质上就是把手动用软件下载程序,改为咱人为通过某种方式写到F…
这是Mysql系列第8篇. 环境:mysql5.7.25,cmd命令中进行演示. 代码中被[]包含的表示可选,|符号分开的表示可选其一. 本章内容 详解排序查询 详解limit limit存在的坑 分页查询中的坑 排序查询(order by) 电商中:我们想查看今天所有成交的订单,按照交易额从高到低排序,此时我们可以使用数据库中的排序功能来完成. 排序语法: select 字段名 from 表名 order by 字段1 [asc|desc],字段2 [asc|desc]; 需要排序的字段跟在o…
这是Mysql系列第9篇. 环境:mysql5.7.25,cmd命令中进行演示. 本篇内容 分组查询语法 聚合函数 单字段分组 多字段分组 分组前筛选数据 分组后筛选数据 where和having的区别 分组后排序 where & group by & having & order by & limit 一起协作 mysql分组中的坑 in多列查询的使用 分组查询 语法: SELECT column, group_function,... FROM table [WHERE…
这是Mysql系列第14篇. 环境:mysql5.7.25,cmd命令中进行演示. 开发过程中,会经常用到数据库事务,所以本章非常重要. 本篇内容 什么是事务,它有什么用? 事务的几个特性 事务常见操作指令详解 事务的隔离级别详解 脏读.不可重复读.可重复读.幻读详解 演示各种隔离级别产生的现象 关于隔离级别的选择 什么是事务? 数据库中的事务是指对数据库执行一批操作,这些操作最终要么全部执行成功,要么全部失败,不会存在部分成功的情况. 举个例子 比如A用户给B用户转账100操作,过程如下: 1…
Scrapy-Redis 详解 通常我们在一个站站点进行采集的时候,如果是小站的话 我们使用scrapy本身就可以满足. 但是如果在面对一些比较大型的站点的时候,单个scrapy就显得力不从心了. 要是我们能够多个Scrapy一起采集该多好啊 人多力量大. 很遗憾Scrapy官方并不支持多个同时采集一个站点,虽然官方给出一个方法: **将一个站点的分割成几部分 交给不同的scrapy去采集** 似乎是个解决办法,但是很麻烦诶!毕竟分割很麻烦的哇 下面就改轮到我们的额主角Scrapy-Redis登…
学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 9 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第一篇) 入门详解 - 精简归纳 一.使用GitHub (1).目的 (2).基本概念 <1>.仓库(Repository) <2>.收藏(Star) <3>.复制克隆项目(Fork) <4>.发送请求(Pull Request) <5>.关注(Watch) <6>.事务…
学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第二篇) 入门详解 - 精简归纳 一.目的 二.Git的下载及安装 三.初次使用Git前的配置 四.Git理论基础 (1).Git记录的是什么 (2).Git的三棵树 五.查看工作状态和历史提交 (1).查看状态 六.回到过去 附 一.目的 通过Git这个版本控制系统管理本地项目同时管理GitHub平台托管项目代码! 二.Git的…
学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 JERRY_Z. ~ 2020 / 10 / 25 转载请注明出处!️ 目录 学会Git玩转GitHub(第三篇) 入门详解 - 精简归纳 一.再次总结Git工作原理 二.修改仓库文件 三.删除仓库文件 四.附 一.再次总结Git工作原理 假设已经在工作区域中创建了test.c文件并已经提交到本地仓库中 二.修改仓库文件 三.删除仓库文件 四.附 交流方式: ️ ️ ️ QQ: 1846334075 WeChat: zhoujirui…
1.简介 上一篇中,宏哥说的宏哥在最后提到网站的反爬虫机制,那么宏哥在自己本地做一个网页,没有那个反爬虫的机制,谷歌浏览器是不是就可以验证成功了,宏哥就想验证一下自己想法,于是写了这一篇文章,另外也是相对前边做一个简单的总结分享给小伙伴们或者童鞋们.废话不多数,直接进入今天的主题. 2.鼠标操作 WebElement的click()方法可实现元素的点击操作,但是没有提供鼠标的右击/双击/悬停/鼠标拖动等操作.这些操作需要通过Action类提供的方法来实现! 2.1Action常用的API Act…
1.简介 前边几篇文章是宏哥自己在本地弄了一个单选和多选的demo,然后又找了网上相关联的例子给小伙伴或童鞋们演示了一下如何自动化测试,这一篇宏哥在网上找了一个问卷调查,给小伙伴或童鞋们来演示一下.上一篇中的一些单选和多选的基本概念都介绍了,这里就不做赘述了.直接上项目实战. 2.项目实战 2.1问卷调查 1.测试问卷调查的地址: https://www.sojump.com/m/2792226.aspx/ 2.问卷页面,如下图所示: 2.2答题思路 自动化测试答题思路,其实和前边单选多选的遍历…
1.简介 在使用appium写app自动化的时候介绍toast的相关元素的定位,在Web UI测试过程中,也经常遇到一些toast,那么这个toast我们这边如何进行测试呢?今天宏哥就分两篇介绍一下. 2.什么是toast? Android中的Toast是一种简易的消息提示框.当视图显示给用户,在应用程序中显示为浮动.和Dialog不一样的是,它永远不会获得焦点,无法被点击.用户将可能是在中间键入别的东西.Toast类的思想就是尽可能不引人注意,同时还向用户显示信息,希望他们看到.而且Toast…
1.简介 终于经过宏哥的不懈努力,偶然发现了一个toast的web页面,所以直接就用这个页面来夯实一下,上一篇学过的知识-处理toast元素. 2.安居客 事先声明啊,宏哥没有收他们的广告费啊,纯粹是为了学习和实战的. 2.1被测网址 1.被测网址的地址: https://login.anjuke.com/login/form?history=aHR0cHM6Ly9iZWlqaW5nLmFuanVrZS5jb20v 2.网页如下图: 2.2代码设计 2.3参考代码 package lessons…
1.简介 经过前边几篇知识点的介绍,今天宏哥就在实际测试中应用一下前边所学的依赖测试.这一篇主要介绍在TestNG中一个类中有多个测试方法的时候,多个测试方法的执行顺序或者依赖关系的问题.如果不用dependsOnMethods,testNG会自动根据@Test方法名称的首字母排序来执行测试方法,而不是按照你设计的测试用例来执行方法.多的不说,少的不唠,我们开始今天讲解和分享. 2.测试场景 在这里宏哥给小伙伴们或者童鞋们模拟一个测试场景:打开百度首页,搜索selenium的相关内容,看到很多s…
在java提高篇-----详解内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意的事项.如何初始化匿名内部类.匿名内部类使用的形参为何要为final. 一.使用匿名内部类内部类 匿名内部类由于没有名字,所以它的创建方式有点儿奇怪.创建格式如下: new 父类构造器(参数列表)|实现接口() { //匿名内部类的类体部分 } 在这里我们看到使用匿名内部类我们必须要继承一个父类或者实现一个接口,当…
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面看是非常容易理解的,无非就是在一个类的内部在定义一个类. public class OuterClass { private String name ; private int age; public String getName() { return name; } public void set…
原文网址:http://www.cnblogs.com/chenssy/p/3390871.html 在java提高篇-----详解内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意的事项.如何初始化匿名内部类.匿名内部类使用的形参为何要为final. 一.使用匿名内部类内部类 匿名内部类由于没有名字,所以它的创建方式有点儿奇怪.创建格式如下: new 父类构造器(参数列表)|实现接口() {…
SpriteKit详解 SpriteKit,iOS/Mac游戏制作的新纪元 这是我的WWDC2013系列笔记中的一篇,完整的笔记列表请参看这篇总览.本文仅作为个人记录使用,也欢迎在许可协议范围内转载或使用,但是还烦请保留原文链接,谢谢您的理解合作.如果您觉得本站对您能有帮助,您可以使用RSS或邮件方式订阅本站,这样您将能在第一时间获取本站信息. 本文涉及到的WWDC2013 Session有 Session 502 Introduction to Sprite Kit Session 503 D…
Masonry详解 前言 MagicNumber -> autoresizingMask -> autolayout 以上是纯手写代码所经历的关于页面布局的三个时期 在iphone1-iphone3gs时代 window的size固定为(320,480) 我们只需要简单计算一下相对位置就好了 在iphone4-iphone4s时代 苹果推出了retina屏 但是给了码农们非常大的福利:window的size不变 在iphone5-iphone5s时代 window的size变了(320,568…
在java提高篇-----详解内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意的事项.如何初始化匿名内部类.匿名内部类使用的形参为何要为final. 一.使用匿名内部类内部类 匿名内部类由于没有名字,所以它的创建方式有点儿奇怪.创建格式如下: new 父类构造器(参数列表)|实现接口() { //匿名内部类的类体部分 } 在这里我们看到使用匿名内部类我们必须要继承一个父类或者实现一个接口,当…
1.简介 2.安装配置 3.配置文件介绍 4.启动.停止.平滑重启.升级 一.Nginx简介 Nginx(engine x)是俄罗斯人Igor Sysoev编写的一款高性能的http和反向代理服务器.在连接高并发的情况下,nginx是apache服务器不错的替代品,它能够支持50000个并发连接数的响应,而内存.cpu等系统资源资源消耗却非常低,运行非常稳定. 性能优势: 作为web服务器,处理静态文件.索引文件及自动索引效率高 作为代理服务器,快速高效反向代理 作为负载均衡服务器 性能,支持多…
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面看是非常容易理解的,无非就是在一个类的内部在定义一个类. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 public class OuterClass {     private String name…
这篇博客是接着总篇iOS GCD NSOperation NSThread等多线程各种举例详解写的一个支篇.总篇也包含了此文的链接.本文讲解的知识点有NSBlockOperationClick,队列,队列中如何加Operation,Operation中如何加任务,Operation之间的串行.并行,监控任务完成时机及其他一些关于NSOperation的方法,每个知识点都有例子和详细分析.附上demo下载地址 一.NSOperation介绍 NSOperation 是苹果公司对 GCD 的封装,完…
这篇博客是接着总篇iOS GCD NSOperation NSThread等多线程各种举例详解写的一个支篇.总篇也包含了此文的链接.本文讲解的知识点有NSThread的开始.取消.在当前线程执行任务.线程通信.线程同步.延时函数等.附上:demo下载地址. 一.NSThread介绍 优点:NSThread 比其他两个轻量级. 缺点:需要自己管理线程的生命周期,线程同步.线程同步对数据的加锁会有一定的系统开销. 二.开始和取消 举个例子,注释写的很详细,不多说啦. //开始 - (IBAction…
实现功能概要 前面的版本都是,定时访问云端的程序版本,如果版本不一致,然后下载最新的升级文件,实现升级. 这一节,在用户程序里面加入MQTT通信,执行用户程序的时候,通过接收MQTT的升级命令实现升级 注意:BootLoader程序还是用以前的程序. 一开始设计这个升级篇的时候,我就规定好了大的框架 BootLoader只是负责升级,其它一概不管 用户程序只是写入升级标志,然后重启,所有的升级步骤全部交给BootLoader! 协议: 注:所有的实现MQTT的软件,统称为MQTT上位机 一,MQ…
实现功能概要 这节和上一节的功能一样(只不过上节是利用Wi-Fi模块,这节是利用GPRS模块) 用户程序里面加入MQTT通信,执行用户程序的时候, 通过接收MQTT的升级命令实现升级. 凡是可以实现MQTT通信的上位机皆可控制单片机升级. 通信控制协议和上一节一样 注:所有的实现MQTT的软件,统称为MQTT上位机 一,MQTT上位机通过MQTT发送获取设备信息指令 {"data":"updata","cmd":"DeviceInfo&…
装备升级功能可以指定升级物品及属性,按指定机率得到结果.需要升级的装备物品必须放在身上.命令格式UPGRADEITEMEX 物品位置(0-12) 属性位置(0-14) 成功机率(0-100) 点数机率(0-255) 是否破碎(0,1) 物品位置:    0  盔甲    1  武器    2  照明物(蜡烛,此物品属性升级无效)    3  项链    4  头盔    5  右手镯    6  左手镯    7  右戒指    8  右戒指    9  无(放护身符位置)    10 腰带 …
1.简介 Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”. 意思是说,逻辑控制器可以控制采样器(samplers)的执行顺序.由此可知,控制器需要和采样器一起使用,否则控制器就没有什么意义了.放在控制器下面的所有的采样器都会当做一个整体,执行时也会一起被执行. JMeter逻辑控制器可以对元件的执行逻辑进行控制,除仅一次控制器外,其他可以嵌套别的种类的逻辑控制器…
*文章来源:https://blog.egsec.cn/archives/601 *本文将主要说明:本文主要叙述什么是DNS.域名的层级.DNS 解析过程.DNS的缓存时间.DNS 的记录类型.DNS 报文结构.DNS劫持与HTTP劫持以及手动清理本地缓存的方法. DNS属于应用层.DNS即域名系统,其作用是将字符串域名解析成相对于的服务器IP地址,免除人们记忆IP地址的单调和苦恼,属于为用户排忧解难之举,因此划归为应用层.DNS不属于协议,它是域名解析. 什么是DNS DNS是 Domain…
Alamofire详解 预览图 Swift Alamofire 简介 Alamofire是 Swift 语言的 HTTP 网络开发工具包,相当于Swift实现AFNetworking版本. 当然,AFNetworking非常稳定,在Mac OSX与iOS中也能像其他Objective-C代码一样用Swift编写.不过Alamofire更适合Swift语言风格习惯(Alamofire与AFNetworking可以共存一个项目中,互不影响). Alamofire 取名来源于Alamo Fire fl…
事件处理详解 一:事件处理 事件处理常见属性: 事件类型 @property(nonatomic,readonly) UIEventType     type; @property(nonatomic,readonly) UIEventSubtype  subtype; 事件产生的时间 @property(nonatomic,readonly) NSTimeInterval  timestamp; 事件传递 - hitTest:withEvent: SWIFT func hitTest(_ po…