- 博客(31)
- 收藏
- 关注
原创 IWDG --- 独立看门狗
独立看门狗是一个12当计数器的值从某个值一直减到0的时候,系统就会产生一个复位信号,即IWDG_RESET。如果在计数没减到0之前,刷新了计数器的值的话,那么就不会产生复位信号,这个动作就是我们经常说的喂狗。看门狗功能由 VDD 电压域供电,在停止模式和待机模式下仍能工作。
2024-01-05 20:56:06
1285
原创 三.Free RTOS
什么是临界段:临界段代码也叫做临界区,是指那些必须完整运行,不能被打断的代码段。外设:需严格按照时序初始化的外设:IIC、SPI等等;系统:系统自身需求;用户:用户需求。中断、任务调度可以打断当前程序的运行。FreeRTOS 在进入临界段代码的时候需要关闭中断,当处理完临界段代码以后再打开中断。函数描述任务级进入临界段任务级退出临界段中断级进入临界段中断级退出临界段… … /* 临界区 */… … /* 临界区 */成对使用;支持嵌套;尽量保持临界段耗时短;
2023-10-29 17:24:25
157
原创 二.Free RTOS基础知识
调度算法Free RTOS一共支持三种任务调度方式:抢占式调度:主要针对优先级不同的任务,每个任务都有一个优先级,优先级高的任务可以抢占优先级低的任务。(数值越大,优先级越高。时间片调度:主要针对优先级相同的任务,当多个任务的优先级相同时,任务调度器会在每一次系统时钟实拍到的时候切换任务。(按照时间顺序循环执行任务)协程式调度:当前执行任务将会一直运行,同时高优先级的任务不会抢占低优先级的任务,FreeRTOS现在虽然还支持,但是官方已经表示不再更新协程式调度。实时性较差。
2023-10-28 14:39:07
652
原创 一.Free RTOS入门
Free RTOS是一个免费的嵌入式实时操作系统。免费开源:商业产品中使用,无潜在商业风险,无须担心;可裁剪:Free RTOS的核心代码9000+行,包含在3个.c文件中;简单:简单易用,可移植性非常好;优先级不限:任务优先级(软件)分配没有限制,多任务可同一优先级;任务不限:可创建的实时任务数量没有软件限制(但在硬件上有限制,因为每分配一个任务MCU都要给其一定的任务堆栈大小);抢占/协程/时间片:支持抢占式,协程式、时间片流转任务调度。Free RTOS。
2023-10-27 18:06:43
110
原创 RTC --- 实时时钟
使用LSE(32.768kHz)作为时钟源。RTC_PRL、RTC_ALR、RTC_CNT和RTC_DIV寄存器不会被系统复位;RTC和后备寄存器不会被系统或电源复位源复位;当从待机模式唤醒时,也不会被复位。后备寄存器可用于保存掉电时的数据;RTC和后备寄存器通过一个开关供电,在VDD有效时该开关选择VDD供电,否则由VBAT引脚供电。在VBAT供电时仍可可继续工作;APB1接口由系统复位;RTC核心只能由后备域复位。使能PWR&&BKP时钟使能后备域和RTC的访问权限。
2023-10-20 21:38:08
5048
原创 LOW POWER --- 低功耗模式
寄存器名称作用SCB_SCR系统控制寄存器选择休眠和深度休眠模式,用于其他低功耗特性的控制PWR_CR电源控制寄存器可以设置低功耗相关(清楚标记位、模式)PWR_CSR电源控制/状态寄存器用于查看系统当前状态(待机/唤醒标志 使能唤醒引脚)系统控制寄存器(SCB_SCR)注意:进入停止模式或者待机模式,SLEEPDEEP置为1。停止模式:PDDS清0,LPDS选调节器模式;待机模式:PDDS置1,清除唤醒位CWUF。在待机模式下,使用WKUP引脚唤醒并需要清楚WUF标记位;
2023-10-20 12:31:43
717
1
原创 CAN --- 控制器局域网总线
CAN收发器芯片:TJA1050、TJA1042、SIT1050T(支持高速CAN,传输速率可达1Mbps)。D:CAN发送引脚;R:CAN接收引脚;CANL:低电平CAN电压输入输出端;CANH:高电位CAN电压输入输出端;Vref:参考电压输出;RS:高速/静音模式选择(低电平为高速)。CAN总线以“位同步”机制,实现对电平的正确采样。位数据都由四段组成:同步段(SS)、传播时间段(PTS)、相位缓冲段1(PSB1)和相位缓冲段2(PSB2),每段又由多个位时序Tq组成。
2023-10-19 19:15:01
2277
原创 (硬件)SPI --- 串行外设设备接口
NSS一般用软件的,硬件的另有用处。数据发送:主机模式帧格式:8bit/16bit;MSB在先/LSB在先;数据接收:主机模式。SPI的引脚信息MISO()主设备数据输入,从设备数据输出。MOSI)主设备数据输出,从设备数据输入。SCLK)时钟信号,由主设备产生。CS)从设备片选信号,由主设备产生。SPI的工作原理在主机和从机都有一个串行移位寄存器,主机通过向它的SPI串行寄存器写入一个字节来发起一次传输。串行移位寄存器通过MOSI信号线将字节传送给从机,从机。
2023-10-18 20:16:33
932
1
原创 DAC --- 数模转换器
实际操作DHRyyy:自动、软件、外部事件DORx:不能直接写入数据输出缓存(BOFF1):可减少阻抗,使输出能力会强一些,但无法输出0。
2023-10-17 20:52:17
1194
原创 ADC---模数转换器
还有两个规则序列寄存器没有展示;通过ADC1通道(PA16)采集芯片内部温度传感器的电压,将电压值换算成温度后显示;核心是一个PN结,对光强非常敏感,单向导电性,工作时需加反向电压。
2023-10-17 18:33:13
1790
原创 DMA---直接存储器访问
DMA就是建立数据传输通道寄存器名称作用DMA_CCRxDMA通道x配置寄存器用于配置DMA(核心控制寄存器)DMA_ISRDMA中断状态寄存器用于查询当前DMA传输状态DMA_IFCRDMA中断标志清除寄存器用来清除DMA_ISR对应位DMA_CNDTRxDMA通道x传输数量寄存器用于控制DMA通道x每次传输的数据量DMA_CPARxDMA通道x外设地址寄存器用于存储STM32外设地址DMA_CMARxDMA通道x存储器地址寄存器用于存放存储器的地址。
2023-10-15 16:10:46
840
1
原创 Keil5新建HAL库工程
打开,选择驱动;选择芯片厂家和内核型号;找到对应的pack点击下载即可,下载完成后双击下载即可。温馨提示:下载速度可能比较慢,建议科学上网。
2023-10-14 11:03:07
3270
1
原创 串口 --- 数据通信模式
Universal synchronous asynchronous receiver transmitter,通用同步异步收发器;Universal asynchronous receiver transmitter,通用异步收发器。USART/UART都可以与外部设备进行全双工异步通信;USART,我们常用的也是异步通信。设置好控制和波特率寄存器后,往该寄存器(DR)写入数据即可发送,接收数据则读该寄存器。
2023-10-08 19:08:09
1700
1
原创 - 中断 -
Nested vectored interrupt controller,嵌套向量中断控制器,属于内核(M3/4/7)。NVIC支持:256个中断(16内核+240外部),支持:256个优先级,允许裁剪。高抢占优先级可以打断正在执行的低抢占优先级中断;当抢占优先级相同时,响应优先级高的先执行,但是不能相互打断;中断向量表的优先级;抢占和响应都相同的情况下,自然优先级高的先执行;数值越小,表示优先级越高。
2023-10-07 18:56:33
114
1
原创 时钟树、SYSTICK、printf函数重定向
delay_init():初始化系统嘀答定时器;delay_us():用系统嘀嗒定时器实现微秒延时;delay_ms():用微秒延时函数实现毫秒延时。SysTick控制及状态寄存器(CTRL)CLKSOURCE位ST公司将其设置为外部时钟源,可以选择8分频或1分频。
2023-10-06 15:09:21
145
1
原创 GPIO --- 通用输入输出端口
不同型号,IO口数量可能不一样,可通过选型手册快速查询;快速翻转,每次翻转最快只需要两个时钟周期(F1最高速度可以达到50Mhz);每个IO口都可以做中断;支持8种工作模式。F1系列每个IO口由4个位来控制模式和速度。
2023-10-05 20:10:25
1418
原创 IIC --- 集成电路总线
IIC:Inter Integrated Circuit,集成电路总线,是一种同步 串行 半双工的通信总线。总线(硬件):传输数据的通道;协议(软件):传输数据的规则。EEPROM是一种掉电后数据不丢失的储存器,常用来存储一些配置信息,在系统重新上电时就可以加载。TA24C02是一个2K bit的EEPROM存储器,使用IIC通信方式。A0/1/2:设备地址决定引脚WP():写保护引脚,没有上划线表示高电平有效,在此模块中无效SCL:时钟线SDA:数据线。
2023-10-03 12:57:27
657
原创 通信方式的分类
适用于数据收集系统,如气象数据的收集、电话费的集中计算等,如计算机和打印机之间的通信。,相当于起始位,用于通知接收方一个帧已经到达,还能够确保接收方的采样速度和比特的到达速度保持一致,使收发双方进入同步;,前提是接收端已经做好了接受数据的准备也正是因为发送方的不确定性,所以接收方要时时刻刻的准备好接受数据,单位是字符。,即要使用相同的时钟频率,发送方的发送频率和接受方的接受频率要同步,传输单位是比特流(数据帧)。同步传输:妈妈叫你去吃饭,如果你没有听到,妈妈会一直叫你直到你听到。,同一帧内,数据无间隔;
2023-09-28 16:54:50
283
原创 学习日志-05
IIC(Inter-Integrated Circuit)总线是一种由NXP(原PHILIPS)公司开发的两线式串行总线,用于连接微控制器及其外围设备。多用于主控制器和从器件间的主从通信,在小数据量场合使用,传输距离短,任意时刻只能有一个主机等特性。在 CPU 与被控 IC 之间、IC 与 IC 之间进行双向传送,高速 IIC 总线一般可达 400kbps 以上。PS: 这里要注意IIC是为了与低速设备通信而发明的,所以IIC的传输速率比不上SPI。
2023-09-21 22:39:19
68
原创 脉冲宽度调制(PWM)
脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用在从测量、通信到功率控制与变换的许多领域中。步进电机28BYJ-48名称含义:28:表示步进电机的有效最大外径为28毫米B:表示步进电机“步”字汉语拼音首字母Y:表示永磁式“永”字汉语拼音首字母,永磁式表示转子为永磁体J:表示减速型“减”字汉语拼音首字母BYJ:组合即为永磁式减速步进电机48:表示四相八拍,后续介绍。
2023-09-18 22:22:29
2959
原创 学习日志-02
中断:是一种特殊的处理程序,能够 临时中断 正在运行的程序,以 处理紧急 的事件,然后 恢复 正在运行的程序。当 外部事件发生 时,中断程序 会被 调用,以 处理这些事件。USART收发数据时,可以 在数据接收之后立即触发中断,以此提高数据传输效率。中断优先级:抢占优先级:抢占优先级可以实现中断嵌套,抢占 优先级级数低的可抢占级数高的。子优先级 :子优先级无法实现中断嵌套,同一时刻 两个子 优先级不同 的 中断 来临,则 先处理优先级高的 即优先级级数低的中断。
2023-09-16 23:33:42
54
1
原创 嵌入式软件学习日志-01
稍微有些基础,打算边做项目边学习嵌入式软件,对了,还得准备考四级,现在大四了,不考研得为找工作准备起来了,可能每天还要背些八股文。现在打算做一个送药机器人,目标100天内做出来,产品需求和需要使用的计划已经大概定下来了,打算先从主控板PCB做起,然后写代码测试,最后外观设计,但是因为资金有限打算做一个小型的,主要是为了学习不是商用,所以要求也就没有那么高。主控板分为哪几个模块呢,主控MCU模块,电机模块,蓝牙模块,网络模块,定位模块,摄像头模块,药箱模块。
2023-09-15 23:38:15
170
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人