- 博客(12)
- 资源 (4)
- 收藏
- 关注
原创 线性代数系列(1)行列式
逆序、逆序数、对换、奇偶排列、n阶行列式、上下三角形行列式、对角行列式、转置行列式、余子式、代数余子式、k阶子式、k阶子式的余子式、k阶子式的代数余子式、对称行列式、反对称行列式、系数行列式、零解、非零解行列式的概念是从解线性方程组的问题中产生的,比如二元线性方程组:{a11x1+a12x2=b1a21x1+a22x2=b2\LARGE\left\{\begin{matrix} a_{11}x_1 + a_{12}x_2 = b_1 \\a_{21}x_1 + a_{22}x_2 = b_2 \\
2022-11-03 15:38:59
1111
1
原创 嵌入式学习:共用体和结构体
对于32bit的CPU,其寻址的步长为4个字节(即unsigned int 字节长度),这就是常说的“4字节对齐”。可见,正好印证了上述的说法,补齐之后结构体成员a1、a2、a3的地址之间正好相差4个字节,a3与a4之间相差两个字节也是因为在其中多留出了1个空白字节。但是这样虽然效率上提高了,但是也会带来一些麻烦,我们在处理一些特定数据的时候,如果不进行1字节对齐的话可能会出现意想不到的结果,那么我们怎么才能使结构体1字节对齐呢?,这里我们回到上面的代码,我们可以看到,这个串口的总结构体。
2022-08-20 10:05:02
572
原创 电机系列(1) - foc最基本原理、clark变换 、park变换、附代码
什么是FOC?FOC(Field-Oriented Control),直译是磁场定向控制,也被称作矢量控制 (VC,Vector Control) ,是目前无刷直流电机(BLDC)和永磁同步电机(PMSM)高效控制的最优方法之一。FOC旨在通过精确地控制磁场大小与方向,使得电机的运动转矩平稳、噪声小、效率高,并且具有高速的动态响应。简单来说就是,FOC是一种对无刷电机的驱动控制方法,它可以让我们对无刷电机进行 “像素级” 控制,实现很多传统电机控制方法所无法达到的效果。因为所谓的“矢量控制”其实就是
2022-03-17 13:38:39
50013
14
原创 AT32 bootloader 跳转到app无法运行的问题
文章目录问题解决方法使用问题之前在GD32、STM32上开发过bootloader,都是没有问题的,现在不知道为什么,代码都是正常的情况下,bootloader程序无法跳转到app解决方法在app,应用程序的代码中,开头加上一段延时,比如这样: for (uint32_t i = 0; i <= 0xFFFF; i++) //添加延时,bootloader才能正常跳转 { for (uint32_t j = 0; j <= 20; j++) __NOP(); }
2022-03-06 16:54:24
3916
原创 C过渡到C++ - 变量和基本类型(1)
变量和基本类型2.1 基本内置类型和c基本一样2.2 变量定义列表初始化现在要定义一个名为 “x” 的int变量,并初始化为0,下列4条语句都可以实现int x = 0;int x = {0};int x{0};int x(0);作为C++11新标准的一部分,用花括号来初始化变量得到了全面应用,我们暂时先将这种初始化形式称为列表初始化。当用于内置类型的变量时,这种初始化有一个重要的特点:如果我们使用在列表初始化且初始值存在求实信息的风险时,编译器会报错:long doub
2021-11-30 09:24:49
321
原创 c++ 输入任意整数,用空格隔开,最后输出所有数的和
程序#include <iostream>#include <assert.h>using namespace std;int main(){ int i; int sum = 0; // 请输入一段整数,并用空格隔开,然后会输出结果 cout << "Please enter a string of positive numbers separated by Spaces: " << endl; wh
2021-11-22 23:31:24
10705
2
原创 openOCD和Jlink仿真器
文章目录升级Jlink驱动起因下载zadig软件还原其他方法升级Jlink驱动https://blog.youkuaiyun.com/whik1194/article/details/90582724https://blog.youkuaiyun.com/qingwufeiyang12346/article/details/45954595起因想用CLion开发STM32,但用这个的话,就必须用 OpenOCD ,但是安装了jlink驱动,导致OpenOCD识别不到jlink说的直白一些就是 openOCD 只把
2021-10-05 16:14:55
4788
1
原创 嵌入式 C语言 补充
文章目录前言C语言结构体中__packed 和位段的理解1、__packed对齐2、位段共用体 union作用:举个例子assert()assert() 的用法和机制NDEBUG 宏C typedef为基本数据类型定义新的类型名为自定义数据类型(结构体、共用体和枚举类型)定义简洁的类型名称为了加深对 typedef 的理解,我们再来看一个结构体例子,如下面的代码所示:为数组定义简洁的类型名称为指针定义简洁的名称实际应用#defineC 标准库 - 前言下面的内容很多都是做一些整理和搬运,借鉴了别人的文章,
2021-10-01 17:08:18
849
原创 Markdown进阶
文章目录Markdown进阶一、更改字体、大小、颜色二、为文字添加背景色三、设置图片大小1、设置设置图片百分比2、设置图片大小3、设置图片居中四、打开本地文件绝对路径:相对路径:向下跳转同级跳转向上跳转五、latex公式六、PicGo+GitHub图传设置七、跳转八、支持的 HTML 元素九、转义十、LaTeX公式十一、删除线(Strikethrough)十二、任务列表(Task Lists)十三、表情符号(Emoji)复制并粘贴表情符号使用表情符号的简码(Shortcodes)十四、禁止自动将 URL 转
2021-10-01 11:29:06
508
原创 使用STM32固件库开发GD32 汇总
文章目录GD32与STM32异同1. 相同点2. 外围硬件区别3. 内部结构差别4. 功耗区别(以128k以下容量的作为参考)5. 内部FLASH 区别使用STM32库开发时钟配置区别1. 晶振起振区别描述解决方法2. 部分客户使用有源晶振出现问题,在 GD32F103 小容量产品,发现会在 MCU 的复 位管脚一直把电平拉到0.89V,电平不能保持在高电平描述解决方法3. GD32 MCU 主频支持 108MHz 高性能,在代码移植方面需要注意事项1. 以72MHz运行2. 以108MHz运行(方法一)原
2021-10-01 00:20:14
13853
4
原创 stm32 高效串口收发
文章目录串口通讯串口USART 中断串口模式配置使用 DMA 进行连续通信使用 DMA 进行发送使用 DMA 进行接收编程接收流程主函数:中断处理函数:初始化(标准库)发送流程开启串口发送完成中断开启DMA发送完成中断DMA发送函数解析程序1程序2`fifo_buff`代码`fifo_buff.c``fifo_buff.h`完整代码和使用示例参考串口通讯串口串行接口简称串口,也称串行通信接口或串行通讯接口(通常指COM接口),是采用串行通信方式的扩展接口。串行接口(SerialInterface)是指
2021-09-28 19:30:22
6838
1
原创 CLion+cubemx stm32开发
文章目录为什么是CLion安装所需工具、软件MinGW简介安装添加环境变量MinGW使用测试编译编译test执行OpenOCDarm-none-eabi-gcccubemxjava:warning:JAVA选择旧一点的版本安装!!!不要更新!!!CubeMX`.cfg` 文件配置clion 安装clion 配置Git 配置其他问题编译错误问题`printf`重定向问题添加文件/目录下载问题:warning:注意:books:参考文章最后最后的最后最后的最后的最后为什么是CLion做嵌入式开发的人对STM
2021-09-28 16:27:08
1322
3
HLW8110 8112 官方设计资料 有例程代码 demo版原理图
2022-08-20
环形队列 无锁队列 用于串口收发提高效率,在32位单片机中验证过 利用 串口+DMA+IDLE中断+无锁队列,提高串口接收效
2022-08-19
keil5 MDK536.rar
2021-11-11
GD32常用芯片包.rar
2021-11-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人