自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 STM32---ADC

众所周知,GPIO只能读入高电平或者低电平,那如果现有一个模拟量,该如何读取呢,比如电压的范围是0~3.3v,如何获取电压的值。就需要ADC(Analog-Digital Converter)了。ADC可以将引脚上连续变化的模拟电压转变为内存中存储的数字变量,建立模拟电路到数字电路的桥梁。stm32f103自带的是12位逐次逼近型ADC,1us转换时间,这样最多可以输出0-4095的数字量。

2024-03-10 11:54:51 1869

原创 STM32---定时器输入捕获

输入捕获模式下,当通道输入引脚出现指定电平跳变时,当前CNT的值将被锁存到CCR中,可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数。可配置为PWMI模式,同时测量频率和占空比可配合主从触发模式,实现硬件全自动测量。

2024-03-08 09:38:13 1881

原创 GRPC入门笔记

Grpc通过protocol进行编解码,无需关心何为protocol。1、首先编写protocol,在里面定义类的方法,需要的数据结构等2、然后执行命令,会生成两个代码文件3、在服务器中实现刚定义的类,然后开启grpc监听,4、在客户端中连接grpc服务器,就能直接使用方法。接下来逐步讲解。

2024-03-07 21:36:15 272

原创 Golang:net初窥

原来是调用net中的Listen来监听addr,这里的Listen会开启一个监听socket,并返回该socket,即ln。奇怪,第二个参数接收Handler,为什么传入的是ServeMux呢,原来,ServeMux实现了Handler接口。至此,路由规则和对应的处理函数就一一对应然后存放在了mux.m中。中的传入参数handler也可以作为其第二参数,但。原来它是空的ServeMux换了一个名字。如果没错误,直接就Accept后,进入。,没错,终于进行到了第二行。一样,因此可以认为,

2024-03-06 20:29:58 261

原创 STM32-定时器输出比较

这里的电平翻转的时机就靠CNT和CCR比较而来,假设在PWM1模式下,向上计数。如上图A所示,CCR为30,99为ARR,CNT向上自增,在CNT小于CCR的时候,输出高电平,当CNT大于CCR(30)的时候,就输出低电平,自增到ARR时,变为0,重新开始自增。即72MHz经过720分频:72M/72=100w,即计100w个数是1s,那么计20ms需要:20000;输出比较通过设置CNT与CCR寄存器的值的关系,来对输出电平进行置1、置0和翻转操作。传入一个角度,经过计算得到占空比,赋值给CCR。

2024-03-05 17:14:55 1248

原创 STM32-定时器中断

TIMx挂载在APB2上,这里选择内部时钟72MHz。经过PSC分频后得到驱动CNT的频率。以向上计数为例,CNT从0开始以PSC后的频率开始自增计数,当CNT==ARR时,触发中断或者中断事件(右边)。如果在下面加入捕获比较电路,就可以输出PWM。定一个时,时间到了产生一次中断。

2024-03-05 17:14:22 310

原创 STM32笔记-外部中断

注:Pin号相同的引脚(如GPIOA_Pin0、GPIOB_Pin0、GPIOC_Pin0)连接的是同一个外部中断线。中断的发生是在外部,在CPU接收中断之前,存在NVIC对各个中断进行优先级仲裁。本节考虑仅考虑,EXTI0…EXTI4、EXTI9_5、EXTI15_10。,程序只需要配置一次中断分组,一般放在程序运行开始。代码示例:GPIOB_Pin14引脚为例。注意,要使用中断,就要。

2024-03-04 23:39:00 255

原创 STM32笔记-系统框图、时钟树

M3就是CPU,负责运算。

2024-03-04 23:38:15 776

原创 C++设计模式:工厂模式和单例模式

C++设计模式:简单工厂模式、工厂模式、抽象工厂魔术、单例模式(懒汉、饿汉)

2022-12-28 20:44:41 182 1

原创 Linux高性能服务器开发:进程通信(共享内存)

进程通信(共享内存)

2022-11-22 12:02:08 214

原创 Linux高性能服务器开发:进程通信(内存映射)

内存映射mmap的用法

2022-11-22 11:48:28 131

原创 Linux高性能服务器开发:进程通信(管道)

有名管道fifo和匿名管道pipe

2022-11-18 21:01:02 414

原创 Linux高性能服务器开发:进程2

这一章介绍进程退出,和回收,僵尸进程和孤儿进程。

2022-11-16 15:26:04 178

原创 Linux高性能服务器开发:进程1

创建子进程、exec函数族

2022-11-14 19:26:10 180

原创 Linux高性能服务器开发:Makefile基础用法

makefile的基本用法

2022-11-02 20:37:15 88

原创 Linux高性能服务器开发:静态库和动态库

介绍了动态库和静态库的区别以及制作和使用的方法,最后介绍了动态库在使用过程中连接失败问题的原因。

2022-11-01 22:00:26 125

原创 Linux高性能服务器开发:gcc和gdb

gcc和g++都可以编译c或者cpp文件,但是g++会进行连接 g++ cppfile gcc不会 需要加参数 gcc -lstdc++ cppfile G++在编译的时候仍然调用的是gcc,为了方便 c文件用gcc cpp文件用g++

2022-11-01 21:56:48 85

原创 C++ 读写文件操作

C++ 读写文件操作

2022-10-30 15:52:48 673

原创 几种排序算法 C++实现

排序算法 C++实现 包括 冒泡 选择 插入 快排 后续更新中

2022-10-23 17:18:27 181

原创 《C++笔记》 C++ 11 中的随机数

C++中的随机数

2022-10-21 12:29:31 1735

原创 《CPP提高之STL全攻略-我的STL手册》

stl是CPP的一个扩展库

2022-10-21 11:11:29 306

原创 LeetCode hot100 第3题:无重复字符的最长子串

第3题:无重复字符的最长子串 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。

2022-10-20 14:13:30 129

原创 LeetCode hot100 第2题:两数相加

第2题:两数相加给你两个 **非空** 的链表,表示两个非负的整数。它们每位数字都是按照 **逆序** 的方式存储的,并且每个节点只能存储 **一位** 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。

2022-10-16 21:36:58 70

原创 企业链表 C实现

所谓企业链表,就是在生产中经常使用的链表。

2022-10-16 13:49:03 199

原创 单链表 C实现

单链表的C实现

2022-10-15 23:30:55 99

原创 动态数组的C++实现 《第一版》

动态数组的实现C/C++

2022-10-14 17:36:25 168

原创 联系人管理系统C++实现

联系人管理系统,c++实现,最简单的版本

2022-10-14 11:39:19 296

空空如也

空空如也

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

TA关注的人

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