ESP8266-12f 获取天气(心知API)基于ArduinoIDE

今天我就来记录一下之前做的一个小玩意ESP8266+OLED获取天气。首先我使用的核心是ESP8266-12f开发板,某宝上面十几块钱就是下图的这块板子。这块板子的固件是NodeMCU固件,买回来的原装固件不要弄错了。开发环境用的是ArduinoIDE。前期工作准备好了我们就进入正题了。天气源的获取这个问题其实对我们新手来说是非常关键的,这个小项目很久之前就想做了,但是苦于当时找不到天气资料的获取网站,所以一直迟迟没做。但在这里我找到了两个很好用的天气源API接口。首先推荐的第一个是心知天气。就是下_.
分类: 其他 发布时间: 08-04 23:31 阅读次数: 0

基于cubemx6.0的stm32l5trustzone使用(三)-非安全区调用安全区代码

STM32L5trustzone使用(三)访问权限说明访问权限说明stm32l5trustzone开启时,访问权限如下:1、安全空间的代码可以访问安全和非安全的外设。2、非安全空间的代码不可访问安全的外设。3、安全空间的代码可以随意调用非安全空间的代码。4、非安全空间的代码只能调用安全空间允许的代码。..._.
分类: 其他 发布时间: 08-04 23:31 阅读次数: 0

蓝桥杯试题 快速排序 QuickSort

蓝桥杯试题 ------快速排序问题描述  用递归来实现快速排序(quick sort)算法。快速排序算法的基本思路是:假设要对一个数组a进行排序,且a[0] = x。首先对数组中的元素进行调整,使x放在正确的位置上。同时,所有比x小的数都位于它的左边,所有比x大的数都位于它的右边。然后对于左、右两段区域,递归地调用快速排序算法来进行排序。  输入格式:输入只有一行,包括若干个整数(不超过1..._.
分类: 其他 发布时间: 08-04 23:31 阅读次数: 0

汉诺塔问题思路清晰粗暴递归

汉诺塔问题(java)问题描述   汉诺塔问题源于印度一个古老传说。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上。并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。思路:  一、如果只有一个盘那么直接从A移至C,结束;   二、如果有两个盘,那么先使一个盘..._汉诺塔的求解思路
分类: 其他 发布时间: 08-04 23:31 阅读次数: 0

回文数判定中的收获

回文数判定问题描述   判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。说明   这篇文章仅仅记录自己的收获,在刷题路上遇到的新思路总是能给你惊喜。世界这么大,多看看眼界会开阔很多,学习也一样,多看看他人的解题思路,自己的眼界也会开阔很多。就像这次的回文数判定,原来拿到题目就是解完就算了,也不管时间复杂度,反正通过就完事了。前天第一次在leetcode上提交了自己的第一个粗糙的答案,顺手看了看了他人题解后,果然世界美好无比,我瞬间就爱上了这个网站,但我相信我们_对于每一组输入数据
分类: 其他 发布时间: 08-04 23:30 阅读次数: 0

SpringBoot整合Mybatis之一对一查询

背景  在学校大三下学期的软件建模课程的期末考核大作业中,我选择了基于SpringBoot的宿舍管理系统。因为这门课重点在于UML,所以代码实现只要有基本的CRUD即可,我在数据库设计中,选择了三张表,分别是学生表、宿舍楼表和宿舍管理员表。宿舍楼和学生的关系是一对多的关系,在查询时可以选择隐式内连接方式。实现  我个人的习惯是先写sql然后实现代码。在这个项目中我采用的是使用xml文件来实现。先上sql: SELECT s.sid,s.`name`,s.gender,s.did,d.dname_spring boot mybatis 一对一查询
分类: 其他 发布时间: 08-04 23:30 阅读次数: 0

leetcode 70、爬楼梯问题

动态规划解爬楼梯问题问题描述假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。解题思路当我拿到这个问题时,首先想到就是动态规划,..._.
分类: 其他 发布时间: 08-04 23:30 阅读次数: 0

Thymeleaf each嵌套解决前端一对多查询的问题

问题描述  今天写代码的时候用到了一个一对多的查询,使用的是springboot和Mybatis,在把查询出来的结果传给前端(使用的是thymeleaf模板引擎)显示的时候遇到了问题,因为后端传过来的数据是集合中套着集合,所以前端应该进行两次循环遍历从而得出我想要的对象属性。先丢我的错误代码:<tr th:each=dormitory:${dormitories} th:each=repair:${dormitory.getRepairs()}> <td th:text_.
分类: 其他 发布时间: 08-04 23:30 阅读次数: 0

项目总结---基于SpringBoot的宿舍管理系统

项目背景  2020年7月6日开始了为期一周的软件工程课设。我带领着我们小组,和小张、小李进行了基于springboot的宿舍管理系统开发。很开心最后能够按期完成了预期设计功能,顺利收官。项目介绍宿舍管理系统参与者有两个,分别是宿舍管理员和学生用户:  1.管理员用户:可以对所有的学生用户,公告信息进行增删改查,对维修信息进行更新状态和删除过时的维修信息。并且管理员可以查看所有宿舍的状态,即可以查看每个宿舍能够住几人,现已入住几人,还能入住几人。  2.学生用户:可以查看所有公告信息,查看个人信息_springboot实现学生宿舍管理系统
分类: 其他 发布时间: 08-04 23:29 阅读次数: 0

整数拆分题解

整数拆分题解问题描述  给定一个正整数 n,将其拆分为至少两个正整数的和,并使这些整数的乘积最大化。 返回你可以获得的最大乘积。示例 1:输入: 2输出: 1解释: 2 = 1 + 1, 1 × 1 = 1示例 2:输入: 10输出: 36解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36说明: 你可以假设 n 不小于 2 且不大于 58题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/integer-bre_整数拆分
分类: 其他 发布时间: 08-04 23:29 阅读次数: 0

数据结构之红黑树新增节点

红黑树定义红黑树的每个节点或是红的,或是黑的根节点是黑的每个叶子节点是黑的如果一个节点是红的,则它的两个子节点是黑的对每个节点,从该节点到其子孙节点的所有路径上包含相同数目的黑节点。补充解释:1.对第四条的定义可以解释为不能出现连续两个红节点2.新增节点时,节点的初始颜色应该是红色的,否则会违反定义第五条。3.能通过变色解决的问题就别旋转4.新增节点后整棵树必须仍然满足上面五条定义的规则。红黑树新增节点情况图解分析  1.没有根节点,变色  2.父节点是黑色时,不用进行操作_.
分类: 其他 发布时间: 08-04 23:29 阅读次数: 0

Android 数据存储-本地数据库SQLite具体使用(参考代码)

我最近做项目用到了这个SQLite本地数据库,所以写篇博客总结一下,希望也能对小白有所帮助涉及问题:什么时候用SQLite? SQLiteDatabase数据库管理类。 SQLiteOpenHelper数据库帮助器。 数据库操作的工具类:在这个类中,封装保证数据库安全的必要方法,包括获取单例对象、打开数据库连接、关闭数据库连接,并且封装对表记录进行增加、删除、修改、查询的操作方法。_.
分类: 其他 发布时间: 08-04 23:28 阅读次数: 0

Android -列表视图ListView 基本适配器BaseAdapter具体使用方法(附参考代码)

我最近做项目用到了基本适配器BaseAdapter,所以写篇博客总结一下,希望也能对你有所帮助什么时候用BaseAdapter(同一项存在多个控件,复杂的列表时)Android中Adapter类其实就是把数据源绑定到指定的View上,然后再返回该View,而返回来的这个View就是ListView中的某一行item。这里返回来的View正是由我们的Adapter中的getView方法返回的。这样就会容易理解数据是怎样一条一条显示在ListView 中的。简单的ListView可使用ArrayAdapt_.
分类: 其他 发布时间: 08-04 23:28 阅读次数: 0

读薄《C和指针》-第1、2章 C语言基本概念

这是我读《C和指针》第1、2章做的笔记,比较基础,主要内容是我以前使用C语言时没有注意到的地方,希望也能对你有所帮助注释在有些语言中,注释有时用于把一段代码“注释掉”,也就是使这段代码在程序中不起作用,但并不将其真正从源文件中删除。如果你试图在一段C语言代码的首尾分别加上/和/符号来“注释掉”这段代码,你不一定能如愿。如果这段代码内部原先就有注释存在,这样做就会出问题。要从逻辑上删除一段C代码,更好的办法是使用#if指令:预处理指令预处理指令有两种:#include XXX 和 #define X_.
分类: 其他 发布时间: 08-04 23:28 阅读次数: 0

读薄《C和指针》-第3章 数据

这是我读《C和指针》第3章做的笔记,主要内容是C语言中数据的类型、不同类型的特点和使用以及变量的三个属性--作用域、链接属性和存储类型,希望能对你有所帮助。涉及:基本数据类型,整型,浮点型,指针,typedef,const常量,作用域,链接属性:external(外部)、internal(内部)和none(无),存储类型,static关键字_.
分类: 其他 发布时间: 08-04 23:28 阅读次数: 0

读薄《C和指针》-第4章 语句

这是我读《C和指针》第4章做的笔记,复习一下C语言中各种各样的语句,希望能对你有所帮助。涉及:空语句、if语句、break和continue语句、while语句、for语句、switch语句、goto语句_.
分类: 其他 发布时间: 08-04 23:27 阅读次数: 0

Android 实现长按列表item出现菜单-弹窗AlertDialog 上下文菜单ContextMenu的具体使用(附参考代码)

弹窗AlertDialog 上下文菜单ContextMenu这两个结合可以实现长按列表item出现菜单,点击菜单项弹出对话框进行进一步操作。对话框AlertDialogAlertDialog是Android中最常用的对话框,可以完成常见的交互操作,如提示、确认、选择等功能。 AlertDialog没有公开的构造函数,必须借助AlertDialog.Builder才能完成参数设置,AlertDialog.Builder的常用方法如下。setIcon:设置标题的图标。 setTitle:设置标题的文本。_.
分类: 其他 发布时间: 08-04 23:27 阅读次数: 0

读薄《C和指针》-第5章 操作符和表达式

这是我读《C和指针》第5章做的笔记,复习一下C语言中各种各样的操作符,希望能对你有所帮助。位移操作符 >>、<<左移位操作符为<<,右移位操作符为>>。左操作数的值将移动由右操作数指定的位数。两个操作数都必须是整型类型。标准说明无符号值执行的所有移位操作都是逻辑移位,但对于有符号值,到底是采用逻辑移位还是算术移位取决于编译器。因此,一个程序如果使用了有符号数的右移位操作,它就是不可移植的。位操作符 & | ^要求操作数为整数类型,它们对操作数_.
分类: 其他 发布时间: 08-04 23:27 阅读次数: 0

读薄《C和指针》第6章 指针

这是我读《C和指针》第6章做的笔记,过一遍指针知识点,希望能对你有所帮助。内存每个字节(byte)包含8个位,可以存储无符号值0至255,或有符号值-128至127。每个字节通过地址来标识。为了存储更大的值,我们把两个或更多个字节合在一起作为一个更大的内存单位。例如四个字节的字,由于它们包含了更多的位,每个字可以容纳的无符号整数的范围是从0至429496729(232-1),可以容纳的有符号整数的范围是从-2147483648(-231)至2147483647(231-1)。尽管一个字包含了4个字节_.
分类: 其他 发布时间: 08-04 23:27 阅读次数: 0

JDK API常见对象:Object类、Scanner类、String类、StringBuffer类

Android虽然我上手做有了一段时间,但基本上是遇到了难题就goole学一点怎么实现功能。很多基础的知识我没有什么概念,所以刷网课补习一下,顺手做下笔记,希望对你有帮助kkkObject类所有类的根类,Java中所有类都直接或间接的继承该类Object类的int hashCode():返回对象的哈希码值a.返回该对象的哈希码值,这个值和地址有关。b.不同对象的,hashCode()一般来说不会相同。但是同一个对象的hashCode()值肯定相同。c.不是对象的实际地址值,可以理解为逻辑地址值_.
分类: 其他 发布时间: 08-04 23:27 阅读次数: 0