- 博客(85)
- 资源 (5)
- 收藏
- 关注
原创 # 反码、补码、等各种码
机器数值在计算机中数值的表示方法为0或者1,所有的数字都有由0和1组合表示出来的,不同的0和1的组合赋予了不同的含义. 8个0或者1组合成了一个字节,就是所谓的一个字节由8位组成. 后面数值如果没有特殊说明,都默认为1个字节(8位).真值真值表示1个字节的绝对值:二进制十进制000000000······11111111255原码第一位为符号位(0表示正数,1表示负数),后七位为数值位二进制十进制000000000
2022-03-18 15:13:08
326
1
原创 typedef用法
typedef 可以给类型取一个新名字给普通类型取别名如:typedef unsigned char uint8_t;typedef unsigned short uint16_t;typedef unsigned int uint32_t;给结构体取别名如:typedef struct people { int age; int sex; char name[20];} people_t;------- 或 -------typedef struct {
2022-02-15 20:00:00
497
原创 可复用链表list.h
这种用法惊艳到我了!!!传统的教科书式的链表有个非常大的缺点: 一句话讲就是 复用性差每种类型的链表我们都需要编写不同的函数去实现增删改查等基本操作不仅效率低, 而且还容易出错而 linux内核 的 list.h 就是为了解决这一痛点而诞生的我们只需要添加基本的成员, 然后对 list.h 中的函数简单封装一下, 就能够实现想要的功能了须知我们使用的 list 是一种特殊双向环形链表,双向环形链表 大家可能比较好理解, 那么特...
2021-12-02 13:17:15
1026
3
原创 menuconfig 语法
menuconfig语法 在 Kconfig 中定义的配置宏,前缀都没有 CONFIG_ ,只有编译内核时,自动生成 autoconf.h 才会出现前缀.如果 XX_defconfig 板卡配置文件中定义新的宏=y 时,而在 Kconfig 并没有声明它,则内核编译出来的 autoconf.h 里也不会定义它的.如果 XX_defconfig 板卡配置文件中没有设置 CONFIG_MODULES=y 则编译make modules时将会失败,而 m
2021-11-17 15:57:20
1530
原创 STM32CubeMx + makefile --- 文件系统 fatfs
文章目录@[toc]环境添加串口打印printfSTM32CubeMX 配置配置 `SDMMC`配置 `FATFS`时钟配置设置栈空间生成 `makefile` 项目修改代码编译 (略)烧录 (略)运行环境工具版本说明开发板小熊派IoT开发板建议相同ubuntu16.04版本关系不大STM32CubeMXV6.3.0建议相同L4软件包STM32Cube FW_L4 V1.16.0建议相同STM3...
2021-10-07 17:21:43
580
原创 STM32CubeMx + makefile --- 开发环境搭建
>> 本文已同步至码云 - 点此链接进入仓库 <<环境工具版本说明开发板小熊派IoT开发板建议相同ubuntu16.04版本关系不大STM32CubeMXV6.3.0建议相同L4软件包STM32Cube FW_L4 V1.16.0建议相同STM32CubeProgrammerv2.8.0版本关系不大交叉编译工具链gcc-arm-none-eabi-10.3-2021.07版本关系不大小熊...
2021-09-04 18:35:22
2857
1
原创 STM32CubeMx + makefile --- 添加串口打印 printf
>> 本文已同步至码云 - 点击此链接获取最新 <<环境工具版本说明开发板小熊派IoT开发板建议相同ubuntu16.04版本关系不大STM32CubeMXV6.3.0建议相同L4软件包STM32Cube FW_L4 V1.16.0建议相同STM32CubeProgrammerv2.8.0版本关系不大交叉编译工具链gcc-arm-none-eabi-10.3-2021.07版本关系不大S...
2021-09-04 18:09:45
2254
3
原创 Git汉化
>> 本文已同步到码云 - 点击此链接获取最新 - 可进入码云提交修改 ! ! ! <<git-gui-zh-master.zip 点击下载软件汉化加压下载好的git-gui-zh-master.zipGit\mingw64\share\git-gui\lib\msgs目录下放入如下文件README.mdzh_cn.msg中文显示乱码在安装目录 *\Git\etc\gitconfig 后面添加如下文字[gui]encoding=utf-8备注..
2021-06-22 21:36:41
1064
原创 ubuntu打开Samba服务
>> 本文已同步到码云 - 点击此链接获取最新 - 可进入码云提交修改 ! ! ! <<安装Samba$ sudo apt-get install samba查看Samba是否安装成功, 输入samba:$ samba[2021/02/23 16:30:17.065666, 0] ../lib/util/debug.c:947(reopen_logs_internal)Unable to open new log file '/var/log/samba..
2021-03-26 15:55:06
3302
原创 VMware占用磁盘只增不减问题的解决
在虚拟机下面操作在虚拟机下面执行 ( 清除残留的安装包也可以不执行此步 )sudo apt-get clean然后执行 ( 将碎片空间填充上0, 结束的时候会提示磁盘空间不足, 忽略即可 )sudo dd if=/dev/zero of=/0bits bs=20M再执行 ( 删除填充 )sudo rm /0bits关闭虚拟机, 在windows下操作在vmware-vdiskmanager.exe所在的目录 ( 一般是VM的目录 ) 打开powershell 执行以下命令
2021-03-09 18:41:33
1256
1
原创 googletest 和 googlemock 的环境搭建
在很久以前, googletest ( 后面简称 gtest ) 和 googlemock ( 后面简称 gmock ) 仓库还没有合并, 他们分别对应 Github 的不同仓库, 不过现在他们都合并到了 gtest 仓库 gtest 的 Github 仓库现在我来教大家如何搭建 gtest 和 gmock 的环境下载 gtest 源码执行以下命令下载 gtest 的源码 ( 我使用 release-1.10.0 版本 )git clone --branch release-1.10.0
2021-02-03 23:36:49
1060
原创 ubuntu更新源
>> 本文已同步到码云 - 点击此链接获取最新 - 可进入码云提交修改 ! ! ! <<因为有 “墙” 的限制, 使用国内的网络访问国外的 “源” 会有诸多限制, 因此在安装 ubuntu 之后往往会更新 “源”.以 ubuntu18.04 更改为 阿里源 为例, 下面简述一下具体的更新步骤:备份原文件 ( 可选, 备份时一个好习惯, 防止改得连母亲都不认识了 )sudo cp /etc/apt/sources.list /etc/apt/sources.li...
2021-01-28 20:02:15
1035
原创 const 笔记
简介“const” 是constant的缩写, 表示"海枯石烂, 恒定不变, 一旦相伴, 永不变心".how to 理解将类型去掉看 const 修饰谁, 谁就拥有了不变的特性.举例const int a = 10;去掉 int, 变成了 const a = 10, a的值不变.int const a = 10;去掉 int, 变成了 const a = 10, a的值不变.const int a[10] = {1,2,3,4,5,6,7,8,9,10};去掉 int,
2021-01-27 22:20:33
188
原创 计算一个 unsigned int 中 “1“ 的个数
前段时间看到一个神奇的算法, 计算 unsigned int 类型中 1 的个数这个算法的厉害之处在于它的运行效率特别高, 下面是代码以及我做的笔记, 大家来讨论讨论.代码int count_bits(unsigned int a){ unsigned int x = a; x = x - ((x >> 1) & 0x55555555); ///< 1: ->相邻2位 "1" 的个数和 x = .
2021-01-27 22:07:12
325
原创 #和##的用法
简介C语言中经常用到 # 和 ##, 很多初学者不知道他们什么什么意思, 这儿我简单科普一下.#的用法当做 replacement-text令牌, 转换为引号引起来的字符串...#define TO_STR(x) #xint main(){ int value = 123; printf("TO_STR(value) = %s\n", TO_STR(value)); printf("TO_STR(123) = %s\n", TO_STR(value));}
2020-12-12 21:42:43
101377
9
原创 预处理指令 #define 的用法
在C/C++编程中, 进场会用到 #define 关键字, 但是在学习C/C++基础知识的时候老师一般很少会深入讲解它的所有功能, 一般是用的时候再去了解, 这人我总结了一下常见的用法, 如有遗漏欢迎指出.下面通过简单的说明几个例子说明这几个的用法修饰常亮...#define PI 3.14#define COUNTRY "CHINA"#define SECOND_PER_YEAR (60 * 60 * 365)int main(){ printf("PI = %f\n",
2020-11-22 23:54:17
815
原创 条件编译指令 #define #undef #ifdef #ifndef #endif
话不多说, 下面通过简单的说明几个例子说明这几个的用法定义与取消定义定义AAA为111#define AAA 111定义AAA, 但没定义AAA的值#define AAA取消定义AAA, 之前定义的AAA无效#undef AAA选择性定义如果定义了AAA, 那么就定义ZZZ为222#ifdef AAA #define ZZZ 222#endif如果没有定义AAA, 那么就定义ZZZ为222#ifndef AAA #define ZZ.
2020-11-17 23:42:14
1171
原创 自己写了一个串口调试助手
介绍作为一个嵌入式开发者, 经常用到串口, 也经常因为串口调试助手而烦恼. 于是决定自己做一款串口调试助手.更新点击左下角的更新链接,可查看最新的版本介绍软件下载 点击下载五叶草串口调试助手建议如果与有什么建议, 可以点击右下角加作者WX, 欢迎提出宝贵的建议!...
2020-04-03 11:44:00
2183
1
原创 STM32CubeMx开发之路—在线升级OTA—(进阶)
STM32CubeMx开发之路—在线升级OTA(1/4)—基础知识STM32CubeMx开发之路—在线升级OTA(2/4)—BootLoaderSTM32CubeMx开发之路—在线升级OTA(3/4)—AppSTM32CubeMx开发之路—在线升级OTA(4/4)—测试运行环境Windows10STM32CubeMX Version 5.4.0Keil5(MDK5) Vers...
2020-03-26 17:21:14
8507
14
原创 MOS管
提示 : 博主软件出生, 以下纯属个人的学习笔记. 如果有误导, 还望不吝赐教!下图为N-MOS和P-MOS的标准符号和简化符号常用作门电路分析分析分析标准符号, 如果遇到简化符号, 化成标准符号一般用来分析高低电平就够了高电平 = VDDV_{DD}VDD = 1 、低电平 = VSSV_{SS}VSS = 0比较 S 和 G 的电平, 如果箭头指向电平高的方向 S ...
2020-03-12 16:29:31
877
原创 三极管
温馨提示 : 博主软件出生, 以下纯属个人的学习笔记. 如果有误导, 还望不吝赐教!下图为三级管图, 通常NPN使用得比较多, 以下图中的 (NPN) 为例, 简述常见的三种状态:饱和区:条件:VC<VBV_C < V_BVC<VB, 且 βIB>ICβI_B > I_CβIB>IC , VCE≈0.3VV_{CE} ≈ 0.3VVCE≈...
2020-03-11 14:59:56
591
1
原创 二极管
温馨提示 : 博主软件出生, 以下纯属个人的学习笔记. 如果有误导, 还望不吝赐教!参考下面伏安特性曲线:P为正极, N为负极(硅管) 当 P端电压- N端电压>= 0.7V时二极管导通(锗管) 当 P端电压- N端电压>= 0.2V时二极管导通X负半轴为反向击穿电压(了解),当电压过高就会被击穿.一般情况下默认为硅管备注:提供一下个人微信号 Hleafleafle...
2020-03-11 14:58:59
477
原创 STM32CubeMx开发之路—在线升级OTA
STM32CubeMx开发之路—在线升级OTA(4/4)—测试STM32CubeMx开发之路—在线升级OTA(1/4)—基础知识STM32CubeMx开发之路—在线升级OTA(2/4)—BootLoaderSTM32CubeMx开发之路—在线升级OTA(3/4)—AppSTM32CubeMx开发之路—在线升级OTA(4/4)—测试运行环境Windows10STM32CubeM......
2020-03-05 10:42:37
15893
43
原创 temp1
STM32CubeMx开发之路—在线升级OTA(3/4)—AppSTM32CubeMx开发之路—在线升级OTA(1/4)—基础知识STM32CubeMx开发之路—在线升级OTA(2/4)—BootLoaderSTM32CubeMx开发之路—在线升级OTA(3/4)—AppSTM32CubeMx开发之路—在线升级OTA(4/4)—测试运行环境Windows10STM32Cube...
2020-03-05 10:41:49
5893
11
原创 temp
STM32CubeMx开发之路—在线升级OTA(2/4)—BootLoaderSTM32CubeMx开发之路—在线升级OTA(1/4)—基础知识STM32CubeMx开发之路—在线升级OTA(2/4)—BootLoaderSTM32CubeMx开发之路—在线升级OTA(3/4)—AppSTM32CubeMx开发之路—在线升级OTA(4/4)—测试运行环境Windows10ST...
2020-03-05 10:40:25
4644
10
原创 temp3
STM32CubeMx开发之路—在线升级OTA(1/4)—基础知识STM32CubeMx开发之路—在线升级OTA(1/4)—基础知识STM32CubeMx开发之路—在线升级OTA(2/4)—BootLoaderSTM32CubeMx开发之路—在线升级OTA(3/4)—AppSTM32CubeMx开发之路—在线升级OTA(4/4)—测试运行环境Windows10STM32Cub...
2020-03-05 10:39:24
11431
原创 如何利用Keil生成.bin文件
如何利用Keil生成.bin文件话不多说, 直接开始吧先理解原理, 找到keil安装包, 下的这个文件, 就是用这个应用生成.bin文件打开keil在keil项目按照如下方式选择上面的文件在后面添加如下代码 --bin --output 目的文件 源文件我后面添加的命令为 --bin --output .\STM32F103rb_App1\STM32F103rb_A...
2020-03-04 17:00:13
4481
STM32F103采用DMA实现USART2接收和发送
2019-03-08
STM32F103采用DMA实现USART3接收和发送
2018-11-26
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人