自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (3)
  • 收藏
  • 关注

原创 AES CCM详解

AES CCM是一种对数据进行加密及完整性检查的算法,主要用到AES中的CBC(完整性检查)和CTR(对明文进行加密)

2024-09-26 14:43:42 619

原创 AES模式详解

Mode优点缺点ElectronicCodeBook(ECB)- 简单- 快- 支持并行地加密/解密- 明文中的重复数据将在密文中反映出来- 可以通过对密文的删除/替换达到操作明文的目的- 不能抵御重放攻击- 不应该被使用Chaining(CBC)- 支持并行地解密- 明文中的重复数据不会在密文中反映出来- 不支持并行加密- 错误的块会影响到后续所有的块(CFB)- 不用填充- 支持并行地解密- 不支持并行地加密- 错误的块会影响到后续所有的块(OFB)

2024-08-05 15:59:19 773

原创 HardFault分析

HardFault分析

2024-02-26 16:17:08 663 1

原创 What is Semihosting?

半主机模式没啥用甚至有坏处,直接禁用就行,这里提供一份在GCC和KEIL实现的禁用半主机及重定向串口的代码。

2024-02-26 11:25:21 1054 1

原创 函数调用与中断调用浅析

函数调用与中断调用浅析

2024-02-23 14:05:19 1099

原创 基于Vscode+WSL搭建STM32开发环境

搭建Vscode+wsl+arm-gcc的stm32开发环境

2023-02-25 15:46:33 1905 2

转载 PIP下载速度太慢

pip下载速度太慢怎么办?

2023-02-07 17:42:23 758

原创 自己实现堆的动态分配——my_malloc和my_free

C语言实现堆的管理

2023-01-31 20:27:01 668

原创 结构体的内存分配

介绍C语言结构体的内存分配,包括含有数组,嵌套结构体的情况分析

2022-12-12 20:20:21 5567 2

原创 ARM常见汇编指令总结

ARM常见汇编指令

2022-11-21 20:35:55 2510

原创 STM32 RCC浅析

stm32 rcc浅析

2022-06-18 18:21:07 1344

原创 vim常用命令

vim常用命令合集单词移动vim支持以单词为单位的光标移动w : 光标移动到下一个单词的开头b : 光标移动到上一个单词的开头行移动vim支持行粒度的光标移动, 当我们的光标需要在一行进行移动时可以使用以下命令$ : 将光标移动到当前行的行尾0 : 将光标移动到当前行的行首^ : 将光标移动到当前行的第一个非空字符2| : 将光标移动到当前行的第2列fx : 将光标移动到当前行的第一个字符x上3fx : 将光标移动到当前行的第三个字符x上% : 符号间的移动,在( )

2022-04-20 19:49:03 595

原创 svn图标不显示

svn图标不显示解决方案输入win + r,在命令行内输入regedit, 如下:点击确定后,会进入到注册表界面红框中的就是svn对应状态的图标名字,由于此列表中的名字是按照首字母顺序排布的,所以SVN的图标有可能排在后面,导致PC找不到对应的图标进行显示,因次将图标名称改一下使其位置靠前即可最简单的方式就是在图标名称前面加空格,图标名称前的空格越多,位置就越靠前修改完名称之后,重启电脑即可...

2022-04-19 13:42:46 636

原创 vscode无法找到python安装库

问题描述当使用pip下载好python的库以后,在python环境中也能将该库导入,但是使用vscode编写代码导入该库的语句并没有高亮,并提示找不到对应的库解决方案打开vscode专门用于配置的settings.json文件,在合适的地方加入如下代码:"python.autoComplete.extraPaths": ["c:/users/..."] //你的python库下载存放的路径保存配置后,重新打开工程即可。...

2022-04-12 13:49:40 3952 2

原创 FreeRTOS(一) 链表浅析

FreeRTOS 链表浅析C语言链表简介列表及列表项链表相关操作C语言链表简介链表好比一个圆形的晾衣架,上面有很多的钩子,钩子首尾相连。链表由许多节点组成,节点与节点之 间首尾相连。晾衣架的钩子本身不能代表很多东西,但是钩子本身可以挂很多东西。同样链表也类似,链表的节点本身不能存储太多东西,但是节点跟晾衣架的钩子一样,可以挂很多数据。列表及列表项列表项/* 列表节点数据结构定义[list.h] */typedef struct xLIST_ITEM { TickType_t xI

2022-04-10 12:17:34 1150

原创 ARM GCC常见用法

ARM GCC常见用法GCC是GNU的编译器套件(GNU Compiler Collection),在执行编译工作是,需要一下4步:预处理器将源文件预处理后变为 .i 的文件编译器将预处理后的 .i 文件转换成汇编文件( .s文件)汇编器将汇编文件转换为可重定位的目标文件( .o文件 )链接器将各个可重定位的目标文件链接生成为可执行的目标文件( .elf 文件)参数介绍-S只激活预处理器和编译器,将源文件编译成汇编代码-c只激活预处理器,编译器和汇编器,将源文件变为可

2021-12-25 14:32:12 1156

原创 虚拟机Ubuntu隔一段时间后不能上网

在VMware中安装Ubuntu后,最开始能上网,但是下一次打开后却不能上网现象宿主机可以上网;虚拟机却无法访问网页虚拟机ping不通任何网站,用浏览器显示error一般情况下将虚拟机关闭之后,在“编辑”中使用“虚拟网络编辑器”即可完成网络的恢复,但是耗时很大,并且重置了很多网络,因此在网上找了另一个方案:sudo service network-manager stopsudo rm /var/lib/NetworkManager/NetworkManager.state sudo ser

2021-09-25 09:53:01 812 2

原创 CRC校验查表法详解

CRC校验的查表法理解算法原理基础计算查表法原理及计算查表法中的表CRC校验中数据逆序CRC校验中的其它参数算法原理CRC(Cyclic Redundance Check)循环冗余校验,是基于某个多项式计算出一组校验码,用于核对数据传输过程中是否被更改或传输错误基础计算假设需要检验的数据 g :10100111,这串二进制码可以表示为代数多项式g(x) = x^7 + x^5 + x^2 + x +1, 而作为除数的多项式 h(x) 可以自由选择或者按照国际标准选择,一般h(x)的阶数如果是m

2021-09-04 15:26:56 15420 7

原创 Python 串口数据打包与解析

Python 串口数据打包与解析介绍从字符串到字节流对字节流的解析介绍通常用python写好上位机要与板子通过串口通信的时候(比如命令,参数等),对于这之间的数据格式转换是有特定要求的,比如上位机到板子之间是以字节流进行数据传输,而用户输入到上位机的数据通常是字符串;当接收数据时,又需要将字节流进行相应格式的组合解析。从字符串到字节流法1:使用bytes(arg)函数,因为参数arg需要时列表[ ]类型,所以需要将传入的数据进行转换,直接上代码,如下:解析:input():获取用户输入的参数

2021-08-07 17:37:33 3507

原创 Cortex-M3/M4芯片启动流程概括

Cortex-M3/M4芯片启动流程理解启动模式烧录方式(ISP ICP IAP的区别)中断向量表SystemInit__main启动模式首先从芯片的启动模式讲起,如下图所示这是STM32的三种启动方式BOOT0拉低,BOOT1任意,芯片从Main Flash memory(0x08000000)启动BOOT0拉高,BOOT1拉低,芯片从系统存储System Memory启动BOOT0拉高,BOOT1拉高,芯片从SRAM(0x20000000)启动STM32的部分存储区域见下图(为方便讲

2021-07-31 17:38:45 5580

原创 STM32的HAL库___串口数据处理

本文目录前言一、中断方式二、空闲中断+DMA总结前言在STM32常用串口协议实现与其它外设交互数据,发送数据简单,但是如何方便快捷的处理通过串口接收到的数据并没那么简单。在STM32中,USART发送接收有三种方式:轮询,中断,DMA。其中轮询的方式过于笨拙,一般本人不会选择这种方式,下文中将从中断方式,IDLE+DMA方式进行介绍,以及如何对循环数组中的数据提取当次接收的数据。一、中断方式发送方式:HAL_UART_Transmit(&huart1, (uint8_t*)"test.

2021-05-30 16:45:32 2899

原创 printf重定向

重定向printf函数到串口输出前言一、printf函数介绍二、重定向实现在MDK中使用MicroLib库总结前言在初学C语言时,最常用的一种调试方式或者显示数据方式就是利用printf函数将自己想看的数据显示出来,但是到了STM32上,并没有直接提供这样的函数,往往想看一些变量的值的时候,没法简单的直接打印出来,因此本文介绍在STM32上printf函数的实现方式。一、printf函数介绍printf函数定义在<stdio.h>头文件中,如下:int printf(const c

2021-05-29 21:48:52 1010

hardfault debug

hardfault debug

2024-02-26

半主机在gcc,keil的禁用代码

半主机在gcc,keil的禁用代码

2024-02-26

mingw_version_8_1_0.7z

mingw的离线安装包,版本8.1.0

2021-09-12

CRC校验算法的C语言实现

按照自己的需求修改表里面的数据,即可实现不同的crc校验

2021-09-04

IDLE+DMA_USART.zip

里面包含了完整工程和STM32CUbeMX的配置文件,自己测试是没问题的,有不明白的地方可以相互交流

2021-05-30

空空如也

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

TA关注的人

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