自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(174)
  • 资源 (4)
  • 收藏
  • 关注

原创 【Python学习笔记】字符编码

Python3语言里面的字符串对象是unicode字符串,在内存中实际存储时,使用的是 UTF16 编码。当我们的Python程序从文件中读入文字信息, 从网络上接收文字信息,获取的数据通常是使用某种字符编码后的 字节串。所以,Python语言要对字符串对象 进行存储和传输的时候,通常要使用字符串的encode方法,参数指定编码方式,编码为一个 bytes 对象。要解码字节串,必须要知道这个字节串是用什么字符编码的方式进行编码的。bytes对象的底层就是用一个个的字节来存储字符串中的文字的。

2023-10-24 18:35:38 300

原创 【单片机学习笔记】Windows+Vscode+STM32F4+freeRTOS+FatFs gcc环境搭建

在.vscode文件夹下根据需要添加目录索引及相关宏定义即可。

2023-10-23 23:07:50 1762

原创 【Python学习笔记】循环

Python中有两种类型的循环:循环 和循环。

2023-10-22 23:28:04 446

原创 【Python学习笔记】字符串格式化

s 是一种格式化符号, Python 解释器 看到 %s , 就会调用内置函数 str(),并将对应的格式化对象作为参数传入 , 返回的结果字符串填入对应占位符。str()内置函数的参数 可以是任何类型的对象,比如:字符串、 整数、 浮点数、列表、元组 等等,都可以。所以 %s 为占位符, 对应的格式化对象, 不仅仅是字符串,还可以是整数、 浮点数、列表、元组 等等。像这种只有一个格式化对象的情况下,可以直接就用格式化对象,不需要放到元组里面,像这样。同样,为了输出对齐,我们需要指定填入的字符串的宽度。

2023-10-20 19:17:38 297

原创 【Python学习笔记】对象、方法

对象通常都拥有属于自己的方法(英文叫method对象的方法其实可以看成是对象所拥有的函数。也就是说 这个方法,是属于这个对象的函数。调用对象的方法,和调用函数差不多,只要在前面加上所属对象和一个点# var1 是一个列表对象# 列表对象都有 reverse方法这里, reverse就是列表对象的一个方法,该方法将列表元素倒过来。语句就会将列表变量var1 里面的元素倒过来存放。运行结果就是 var1就变成了 [7, 6, 5, 4, 3, 2, 1]对象的方法是和这个对象类型紧密相关的。

2023-10-18 23:15:42 315

原创 【Python学习笔记】判断语句

比如,我们要求 如果用户输入的 手机号码长度正确,要给出输入正确的提示。注意, else 和 if 对齐,else 情况下的代码 也要缩进。决定是否要执行一些代码。返回值为 True,这个表达式。

2023-10-17 08:57:03 159

原创 【Python学习笔记】列表、元组

Python中的(英文叫list) 和(英文叫tuple) 也是序列特性的,。

2023-10-16 08:59:49 180

原创 【Python学习笔记】函数

Python的设计者 为我们总结了一些常用的函数,放到了Python解释器中,这些函数我们直接就可以使用。当解释器 执行到这行调用函数的代码时,就会跑到 函数 function 里面,去执行函数里面的语句。我们通常会把常用的代码放到函数里面,这样要使用这些代码 ,只需要调用那些函数就可以了。这样,在调用这个函数的时候,如果para2参数还是传入60 就可以不用写了,像这样。,下面的缩进的代码表示这个函数名字代表的具体动作是什么,称之为。函数的参数定义,一旦有缺省值后,后面所有的参数必须都有缺省值。

2023-10-15 09:45:19 166

原创 【Python学习笔记】字符串

Python字符串相关

2023-10-14 22:23:31 300

原创 【Python学习笔记】类型/运算/变量/注释

人生苦短,追求生产力,做一只时代风口的猪,应该学python。

2023-10-13 21:55:22 278

原创 嵌入式不定长的任务消息传递组件的实现

嵌入式不定长的任务消息传递组件的实现

2023-02-24 14:40:38 303 1

原创 Source Insight大括号位置对齐正下方设置

Source Insight大括号位置对齐正下方设置

2022-07-11 16:12:15 1051 1

原创 【LVGL学习笔记】image图像相关接口

【LVGL学习笔记】image图像相关接口

2022-06-22 12:00:08 1541

原创 同时支持蓝牙 WIFI 2G 4G的微信扫码支付充电桩方案 计时器 投币器等

同时支持蓝牙 WIFI 2G 4G的微信扫码支付充电桩方案 计时器 投币器等

2022-06-22 01:14:25 866

转载 ESP SDK FATAL EXCEPTION 28 29问题原因及解决办法

被这个错误困扰好久,最终通过打印找到对应位置,并发现语法格式错误,搜到其他类似的解决办法如下:总结一下今天遇到的两个EXCEPTION复位原因,分享给有需要的朋友。1)FATAL EXCEPTION 28的问题解决自己的代码问题:原因是在打印的过程中,错误的打印了字符串比如:正确的用例:os_printf(“string = %s”,p);//p为指针,指向字符串错误的用例:os_printf(“string = %s”,*p);//p为指针,指向字符串比如:正确的用例:os_printf(“

2022-06-07 16:05:04 479

原创 LVGL学习-timer组件的API了解及使用

关于LVGL的定时器组件

2022-05-24 11:07:18 8503 4

原创 【单片机笔记】基于Cotex-M3的RT-Thread的移植

1、下载官方github源码 NANO版本https://github.com/RT-Thread/rtthread-nano/archive/refs/heads/master.ziphttps://github.com/RT-Thread/rtthread-nano/archive/refs/heads/master.zip完整发行版rt-thread 标签 - Gitee.comhttps://gitee.com/rtthread/rt-thread/tags...

2022-04-05 16:01:42 919

原创 【ESP32开发】入坑—PIP换成国内源教程

最近在开发过程发现py的下载速度键值让人崩溃。。。换源的作用是可以加快python下载库的速度。Ubuntu操作系统本文作者列出在Terminal中运行的命令,读者按顺序执行即可。1.运行命令cd ~进入当前用户的主目录。2.运行命令mkdir .pip创建文件夹.pip3.运行命令cd .pip进入文件夹.pip4.运行命令gedit pip.conf编辑pip配置文件pip.conf将以下内容复制到pip配置文件pip.conf中,保存退出即可。[global]index-

2022-04-04 19:17:12 1188

原创 【数据结构】二叉搜索树复习及创建、求高度代码实现

二叉搜索树(Binary Search Tree)的一些关键特点:1)根节点 > 左孩子2)根节点 < 右孩子3)中序遍历是一个递增排序的数据4)所有数据不能重复typedef struct node{ int data; struct node *left; struct node *right;}NODE_T,*PNODE_T;typedef struct{ PNODE_T root;}TREE_T,*PTREE_T;/*先序遍历:根->

2021-11-07 18:30:35 161

原创 【数据结构】关于二叉树的先序遍历、中序遍历及后续遍历复习笔记

树的概念就不多说了,直接上最简单的代码,关键的一点需要复习下【递归】的概念。typedef struct node{ int data; struct node *left; struct node *right;}NODE_T,*PNODE_T;/*先序遍历:根->左->右*/void preorder(PNODE_T pNode){ if(NULL != pNode) { printf(" %d",pNode->data); preorder(pN

2021-11-07 17:44:37 183

原创 C语言中“#“和“##“的区别及用法

#:把宏参数变为一个字符串##:把两个宏参数连接在一起举例:#include <stdio>#define __STRING(s) #s#define __LINK(a,b) int(a##b)int main(){ printf(__STRING(1234sfasdf)); // 输出字符串"1234sfasdf" printf("%d\n", __LINK(2,3)); // 输出:23

2021-10-12 15:28:23 852

原创 【单片机笔记】关于MCU芯片大端模式和小端模式的问题

晚上写程序总是不对,于是检查了下内存,写了段代码,一测发现猫腻,芯片为STM32F0 cortexM0系列的测试代码如下:void test(void){ u32 uiData = 0x11223344; u8 *p = (u8 *)&uiData; printf("\n\n\n"); printf("[0x%08X] D3[0x%02X] D3[0x%02X] D3[0x%02X] D3[0x%02X]\n" ,uiData ,BYTE3(uiData) ,BYTE2

2021-08-14 01:05:09 814

原创 【单片机笔记】如何编写一个清晰的串口日志输出DEBUG文件(附源码)

前言:相信大多数嵌入式开发者都会碰到对程序进行调试或者查找BUG的情况,常见的两种方法都是仿真和通过日志进行的。有条件仿真的是更好,单是在编写嵌入式软件程序过程中,并不是所有的硬件都支持仿真或者方便仿真,这样大多数方法便是加打印信息进行找问题。打印的接口有很多种,比如串口,网络,显示等等。简单的硬件开发串口估计是最常用的。这里简单记录下我最近设计的一种日志打印方法。目的:1)方便查找打印日志2)日志格式规范3)可以查看用户添加信息,文件信息,函数接口,以及文件所在行号4)支持form

2021-08-07 14:34:58 1788 2

原创 【单片机笔记】ASCII与HEX数组互转的C语言实现

最近项目要用到这个功能,于是花了点时间自己写了一套,个人感觉比较好用,分享出来:/** @fn u16 hex_to_str(u8 *pAscii,u8 *pHex,u16 unStrLen) * @brief hex数组转字符串 * @param pAscii:字符串 * @param pHex:数组 * @param unHexLen:数组长度 * @return 转换结果 0:失败,其他:字符串长度 * @note 转换后的字符串字符全部大写 */u16 hex_to_str(

2021-06-09 21:49:26 3013 4

原创 【单片机笔记】基于2G、4G通信的物联网数据方案及扫码支付方案

此方案使用的是合宙物联的通信模组:AIR202及AIR724方案板支持功能:PWM+运放模拟DAC输出电压 远程OTA升级(合宙物联平台) TFT彩屏 音频audio播放 屏幕二维码显示 计时功能 按键输入 gpio驱动继电器输出 串口(可扩展485)输出 基站定位 NTP服务器时间校准 MQTT连接物联(支付平台) ADC接口(未使用)2G方案(AIR202)与20年已经实现量产平台是私有平台,支持PC端管理,支持小程序,支持微信支付,支持主账户,管理员,店家三种角色

2021-05-05 22:10:55 2335 8

原创 【单片机笔记】基于XL4015的可调电源

做这个diy电源原本目的只是为了验证XL4015的性能及新入手的灵动微单片机方案,结果就做成了一个可调电源,能够满足日常的硬件调试电源供给。原本想用此方案做成使用单片机通过pwm模拟dac调节达到恒压、恒流的方案,但最终项目没有用到。在电源性能上输入受到稳压器7533的限制,最高只能24V输入,(XL4015支持40V),电流可以达到5A,长时间需要加散热片。硬件平台:电源芯片:XL4015 降压芯片:7533 显示:0.56寸共阴4位数码管 运放:LM358 处理器:MM32f00

2021-05-05 21:36:19 9951 5

原创 【通信协议学习】关于Xmodem、Ymodem、Zmodem、ASCII、Binary传输协议

不同传输协议简介XmodemYModemYModem分成YModem-1K与YModem-g。YModem的数据格式如下:BinaryAscii不同传输协议简介串行通信的文件传输协议主要和常用的有:Xmodem、Ymodem、Zmodem以及KERMIT、Ymodem-G、ASCII等。ASCII:这是最快的传输协议,但只能传送文本文件。Xmodem:这种古老的传输协议速度较慢,但由于使用了CRC错误侦测方法,传输的准确率可高达99.6%。Ymodem:这是X..

2021-04-16 11:14:34 5999

原创 【数据结构学习】非常适合嵌入式的环形队列,支持单字节、不定长度写入和读取

此代码方便用于各外设模块数据量大且高速通信的环境,可以保证接收和发送的异步和数据完整性。#include <stdio.h>typedef signed char s8;typedef signed short s16;typedef signed int s32;typedef unsigned char u8;typedef unsigned short u16;typedef unsigned int u32;typedef unsigned char Da

2021-04-14 15:15:25 453 2

转载 【网络协议学习】吃透TCP的“三次握手”和“四次挥手”(下)

四、TCP的四次挥手(Four-Way Wavehand)0.前言对于"三次握手"我们耳熟能详,因为其相对的简单。但是,我们却不常听见“四次挥手”,就算听过也未必能详细地说明白它的具体过程。下面就为大家详尽,直观,完整地介绍“四次挥手”的过程。1.“四次挥手”的详解所谓的四次挥手即TCP连接的释放(解除)。连接的释放必须是一方主动释放,另一方被动释放。以下为客户端主动发起释放连接的图解:挥手之前主动释放连接的客户端结束ESTABLISHED阶段。随后开始“四次挥手”:

2021-03-26 17:21:19 186

转载 【网络协议学习】吃透TCP的“三次握手”和“四次挥手”(上)

一、TCP connection客户端与服务器之间数据的发送和返回的过程当中需要创建一个叫TCP connection的东西;由于TCP不存在连接的概念,只存在请求和响应,请求和响应都是数据包,它们之间都是经过由TCP创建的一个从客户端发起,服务器接收的类似连接的通道,这个连接可以一直保持,http请求是在这个连接的基础上发送的;在一个TCP连接上是可以发送多个http请求的,不同的版本这个模式不一样。在HTTP/1.0中这个TCP连接是在http请求创建的时候同步创建的,http请求发送

2021-03-25 16:23:22 151

原创 【网络学习】source insight软件的初始配置及使用

目录简介SI工程建立界面窗口配置背景颜色(好看+护眼)常用的窗口Project WindowRelation WindowContext Window字体的设置常用功能及快捷键高亮 View:Highlight Word前进 Navigation: Go Forward,设置为:Ctrl +→后退 Navigation: Go Back,设置为:Ctrl + ←简介Source Insight下文简称SI)是一个面向项目开发的程序编辑器和代...

2021-03-25 01:17:45 1492 3

原创 【网络学习】Coverity代码检查工具详细介绍

目录Coverity Prevent SQS检测缺陷(C/C++)解决缺陷(C/C++)能够发现的C/C++缺陷并发性能下降导致崩溃的缺陷不正确的程序行为不正确的APIs使用C/C++安全性问题安全编码缺陷隐含的缺陷Coverity Prevent SQSPrevent SQS(软件质量系统)是检测和解决C、C++、Java源代码中严重缺领先的自动化方法。可以对构建环境、源代码和开发的过程给出一个完整的分析,Prevent SQS建立了获得高质量...

2021-03-23 10:39:33 4970 5

原创 【网络学习】对TortoiseSVN的基本了解及简单操作

目录1、TortoiseSVN介绍2、使用方法记录:1、创建代码仓库(Repository)2、关于trunk、brancheshe、tages3、创建工程并添加到SVN3、代码更新4.版本控制5、多人协作6、历史版本1、TortoiseSVN介绍TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录。文件保存在中央版本库,除了能记住文件和目录的每次修改以外,版本库非常像普通的文件服务器。你可以将文件恢复到

2021-03-22 20:26:51 10779

原创 【网络协议学习】解决Tomcat服务器软件运行窗口乱码问题

Tomcat软件下载官网:https://tomcat.apache.org/上面以win10 64位为例,下载下来是个压缩包,解压出来就好。运行之后发现小黑窗的中文编码乱码,但不影响正常使用此时可以更改配置文件找到并打开conf文件夹中的logging.properties文件保存并再次运行:测试连接:打开网页输入http://http://localhost:8080测试okBy Urien 2021年3月9日 13:36:47..

2021-03-09 13:37:08 132

原创 【单片机笔记】单个按键的状态机程序方式实现【单击】【双击】【三击】【长按】【长按保持】【长按抬起】【无键】7种状态

按键的硬件方式为独立按键方法,原理图如下:上图使用了两个按键,测试平台为:STM8S003,IAR环境底层代码:#include "fy_key.h"void Key_Configuration(void){ GPIO_Init(GPIOD,GPIO_PIN_3, GPIO_MODE_IN_PU_NO_IT); //KEY1 GPIO_Init(GPIOD,GPIO_PIN_4, GPIO_MODE_IN_PU_NO_IT); //KEY2}//只读取初次按键电平

2021-03-03 10:27:13 3901 2

原创 【单片机笔记】基于LM358的差分放大,电流检测电路

在要求不高的情况下,电流检测电路可以通过运放放大转换成电压,反推算负载的电流大小。其中检测电流分为高端检测和低端检测,高低端检测都有其各自的优缺点。区别高端检测:采样电阻靠近电源正端低端检测:采样电阻靠近电源负端其中低端检测可以看我之前发布的文章:低端电流检测方案下面主要记录高端电流检测:原理图如下:上图为仿真电路,推算原理如下:首先看从V1经R1和R6到地这一回路。严格来说,经过R1的电流应该等于流进放大器正相输入端的电流和经过R6电阻的电流之和。但是放大器的.

2021-02-28 17:25:20 34973 25

原创 【单片机笔记】K型热电偶单运放放大,单片机ADC采集电路

**********************************************************以下内容来自百科**********************************************************K型热电偶作为一种温度传感器,K型热电偶通常和显示仪表,记录仪表和电子调节器配套使用。K型热电偶可以直接测量各种生产中从0℃到1300℃范围的液体蒸汽和气体介质以及固体的表面温度。高清K型热电偶图片K型热电偶是目前用量最大的廉金属热电偶,其用量为其他热

2021-02-05 17:21:47 13223 4

原创 【数据结构学习】双向循环链表的插入、删除、查找、遍历、释放操作的C语言实现

插入测试:查找元素删除元素

2021-02-04 17:52:54 1133

原创 【数据结构学习】双向链表的增、删、查、遍历、释放操作的C语言实现

双向链表也叫双链表,是链表的一种,它的每个数据结点中都有两个指针,分别指向直接后继和直接前驱。所以,从双向链表中的任意一个结点开始,都可以很方便地访问它的前驱结点和后继结点。单向链表和双向链表优缺点:双向链表:增加删除节点复杂,需要多分配一个指针存储空间。双向链表:从双向链表中的任意一个结点开始,都可以很方便地访问前驱结点和后继结点。单向链表:结点的删除非常方便,不需要像线性结构那样移动剩下的数据,但是平均的访问效率低于线性表。单向链表:单个结点创建非常方便,普通的线性内存通常在创建

2021-02-04 17:52:26 842

原创 【数据结构学习】单向循环链表的创建,指定位置插入、查找、删除及释放

循环列表同单向链表唯一的区别是链表的最后一个结点中的指针域不再为NULL,而是指向头结点,如下图所示:所以在单向的程序判定的条件上需要做些改动头文件#ifndef __FY_CIRCULARLIST_H#define __FY_CIRCULARLIST_Htypedef int data_t;struct node{ data_t data; struct node* next;};//创建一个结点struct node * creatNode(data_t dat

2021-02-04 00:22:52 1581

15.Aliyun.rar

基于STM32 ESP8266 AT方式连接阿里云源代码,wifi模块使用的是ESP8266-01,单片机是STM32F103C8T6

2019-06-13

14.STM32F103C8-USART-IAP.rar

基于STM32的串口环形队列IAP,使用1K缓存的办法可以更新任意大小的固件。

2019-05-14

nudemcu相关工具和固件(测试稳定)

nudemcu相关工具和固件(测试稳定,比较适合入门的新手!

2018-07-04

marschen老师的安卓视频教程 重置版第一季

marschen老师的安卓视频教程 重置版第一季 为了下载教程又没有C币只好通过此渠道了

2018-06-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除