
STM32
文章平均质量分 59
STM32
无为则无所不为
大四
展开
-
定时器按键消抖
冲原创 2022-12-29 20:41:38 · 826 阅读 · 1 评论 -
c8t6 开发 sg90舵机输出 两路 输出比较
哞哞弟舵机原创 2022-10-06 17:58:36 · 247 阅读 · 0 评论 -
ld3320 语音模块(串口版本)
哞哞弟原创 2022-08-23 20:47:53 · 1506 阅读 · 0 评论 -
基于c8t6芯片开发RC522模块实现呼吸灯
哞哞弟原创 2022-07-23 21:13:25 · 571 阅读 · 0 评论 -
继电器实现灯的闪烁基于C8T6的开发
一路继电器控制灯闪烁原创 2022-07-12 09:18:04 · 454 阅读 · 2 评论 -
上电之后main.c 如何在cpu中运行
目录前言复位的概念中断向量表中断向量表的位置复位过程总结前言前面一篇<中断服务子程序是如何被cpu执行的>讲了1 中断前保护现场,中断后恢复现场。2 中断向量表的组成和运行过程。3 堆栈在中断的占用情况。回顾一下1 中断前保护现场就是 会保存之前的数据 再进入中断 反之 中断后 恢复现场就是不保存中断数据 回到原先事件 2{ 中断向量表的每个表项都会对应 相应的中断源的子程序 并且直接从R14寄存器取出地址 进行函数执行 pc指针也会存入函数 以便准备下一次的运行。}3原创 2022-04-07 12:10:45 · 426 阅读 · 0 评论 -
中断服务子程序是如何被cpu执行的
目录前言回顾一 中断1 中断响应以及处理过程2 中断堆栈的占用3 中断向量表4 中断服务函数5 (#4==#5) 其实和这个函数是一样的前言回顾回顾 《程序如何在cpu中运行的》 举例了几个例子 我们回顾一下1 顺序执行时 pc指针存放在函数里 PC指针存放的是下一个地址的指令,pc指针寄存器这样的功能会让程序有序执行.2 条件分支:当前的 和存放的下一个地址指令 比较 如果 小于或者等于 就会发生跳转 所以 PC指针的下一个地址 应该是 下一个的下一个地址。3 一级调用函数 : 当发生函数调原创 2022-04-06 20:02:24 · 2337 阅读 · 1 评论 -
程序如何在CPU中运行(二)
pc指针如何有序运行前言寄存器组的介绍顺序执行条件分支一级函数调用二级函数 调用前言回顾 上一节说的 《程序如何在cpu中运行(一)》上一次讲了CPU的基本架构 ,控制器获取pc指针后 判断他的工作目的和工作方向 在根据他的操作数 的来源和单位运算结果存储位置,从而完成cpu指针要求。那么指令是如何有序运行的呢?我们利用点时间来讲讲.寄存器组的介绍寄存器大概分析图上意思寄存器通常分为4种 1 通用寄存器:用于数据操作2 堆栈指针:堆栈指针两个 但是某个时间点只能用一个 主堆栈指针原创 2022-04-05 11:24:14 · 1087 阅读 · 0 评论 -
程序如何在CPU中运行(一)
目录一 cpu和mcu的区别1 cpu的组成部分2 程序是如何被cpu运行的二 cpu的工作流程1逻辑运算单元和寄存器组2 逻辑运算单元和数据寄存器3 控制单元4 获取指令一 cpu和mcu的区别对于STM32 来说 我们平时说的最多的是 CPU MPU ..等等 他们区别在哪里呢CPU 不带外围器件 MCU 带外围元器件.可能你们对着这个概念比较模糊。就好比 MCU 在外围集成了 FLASH 和RAM 来存储数据和程序。对于我们个人的PC就好比分别对应 硬盘和内存条。所以 他们最大的区别就能很原创 2022-04-04 15:20:26 · 2593 阅读 · 1 评论 -
基于STM32按键的使用
按键一 按键扫描函数1扫描函数 加入标志位的跳转 过程二 加入细节处理前言按键无非就是 0 或者1 是浮空状态 有效就是1或者0 浮空是0 有效就是 1 反之 也成立。一 按键扫描函数按键函数 写法很多 下面讲解我习惯性的用法unsigned char key_scan() { static unsigned char PWMkey_up=0; //static 静态局部变量 储存在全局数据区 值不变。 switch(PWMkey_up) {原创 2022-03-30 16:13:22 · 2597 阅读 · 1 评论 -
库函数震动感应灯
接线led,32和继电器接线传感器和单片机接线shake.crelay.cmain.cled,32和继电器接线传感器和单片机接线代码led,32和继电器接线传感器和单片机接线shake.crelay.cmain.cshake.crelay.cmain.c原创 2022-02-18 14:32:05 · 457 阅读 · 0 评论 -
超声波模块(HC_SR04)串口打印距离
1 超声波模块2超声波模块原理3 结合主要讲解代码1 实物图引脚2超声波模块原理 我们在初始化 都要 发送和接收端 拉低 首先给输出端 至少 10us的 高电平持续时间 之后要把它拉低 等待输入高电平打开 定时器 计算 高电平持续的时间 最后一步 等待高电平的结束 就把定时器关闭 这时就证明 发送和返回的时间 已经算完了一次 就开始用 计算 距离并且注意高电平持续的时间 并不是定时器直接计算出来的 而是你通过...原创 2022-01-24 21:08:45 · 744 阅读 · 2 评论 -
STM32F10X(库版本)串口发送字符串到上位机
1 通讯的三种方式2异步同步的区别3 代码1 通讯的三种方式1)单工通讯 :一端只能是接收 一端也只能发送 只能单向传输 比如 打印机2)半双工 :两边都可以作为发送和接收 但是 是在某个时刻 比如 对讲机 一端是接收而一端只能发送 反过来也是可以的 3)全双工 :也就是和半双工的时间端相反 任意时刻都可以。2异步同步的 区别 我们只需看它本身有没有自带时钟 如果有 就是 同步 没有 就 不是3 代码时钟 我们用的是 GPIOA 并且 用了 串口...原创 2022-01-22 20:29:39 · 3534 阅读 · 0 评论 -
STM32F10X 单片机 发送字符 到 串口接收
一 通信的引入1单工2 半双工3全双工二数据同步方式 异步方式1 同步 特点2 异步的特点三 数据通信速率1 比特率2 波特率四 硬件 和 软件 部分五 代码实现一 通讯的引入1 单工 :只能单向发送或者接收2半双工:都可以接收和发送 但是某个时段是单向的3 全双工 :随时都可以接收和发送二数据同步的同步异步方式1 同步方式数据传送石以数据块 发送给串口一次传输中字符间无间隔传输过程中包含的数据块较多 所以接收和发送...原创 2021-12-05 22:03:03 · 628 阅读 · 0 评论 -
32库函数版本的输入捕获实现呼吸灯
1所需的硬件2 输入捕获原理介绍3 代码4 代码实现过程1 所需的硬件按键 和l ed灯按键的作用 :按键触发 边沿信号 捕获到高电平数据 led灯:输出捕获到的数据 通过灯来表现出来很多人疑惑了 为什么和输出比较 的 有所不一样 ,因为输入捕获 你想要实现呼吸灯 因为输入捕获只有一个对应的寄存器 而这个寄存器 不可以 同时配置 两种模式 要不然就会芭比Q了。这个很重要 。2 输入捕获原理 介绍1我们从原点看 首先我们的定时器设置了向上升沿捕获 开...原创 2022-01-12 16:36:38 · 313 阅读 · 0 评论 -
定时器中断实现灯的亮灭
定时器中断功能什么是中断事件定时器简介结构体介绍硬件展示软件设计中断事件的补充讲解中断优先级定时器的计算代码什么是中断事件结合生活实际 讲解中断概念例子:你在上班 ,突然来了个电话 妈妈说有急事 老板也突然叫你去出差 不管怎么样 最后你就继续回公司上班了。事件:你在上班触发中断事件:电话中断事件 :去妈妈那里解决好急事中断事件 :去出差其实中断事件 就是 你在做一个事件 然后突然跑去做新的事件 这时的事件 就可以叫做 中断事件 触发中断事件 :原来事件到新事件产生过程的条件定时原创 2022-02-20 13:19:04 · 1462 阅读 · 0 评论 -
串口发送字符控制灯亮灭
串口通信方式串口配置简介硬件展示软件设计代码通信方式通讯方式a)单工 :只能固定方为发送 一方为接收 并且是固定方向b)半双工 :两边都可 做发送或者接收 但是只能是某个时间段C):全双工 :两个都可做发送或者接收 任何时间段都可进行通信数据同步方式 @数据同步方式 类似RX :接收端 TX :发送端特点:1 数据传送是以数据块传送的(多个字符组成的数据块流)2 因为每一次传输的数据块中包含的数据较多,所以在接收时钟和发送时钟要严格同步 通常要用同步时钟 3 发送和接收是原创 2022-02-21 13:21:36 · 8113 阅读 · 0 评论 -
滴答定时器 systick
滴答定时器systicksystick定时器时间计算代码systick24位系统定时器 只能递减 存在内核中,嵌套在NVIC 所有的Cortex-M中都有这个系统定时器功能简述1)对照手册大概的思路重装载值 reload 递减,当递减到0 就会触发中断 判断标志位 并且会置countflag标志位为0 然后 reload 继续 从预设的值开始递减,周而复始。 这个滴答定时器 和 普通定时器没什么区别 只不过他只能递减 规律都是到了某个值就会 产生中断 然后判断标志位 把相应的位置零 置原创 2022-02-22 16:00:46 · 799 阅读 · 0 评论 -
STM32电容式按键 实现灯的闪烁
电容式按键电容充放电概念硬件设计软件设计电容充放电概念电容式按键就是触摸式按键 类似我们手机触摸屏的虚拟按键 使用方便 寿命长。A为没有按下的情况 B为按下的情况对图表详细介绍TPAD:电容式按键我们这里使用电容的充放电时间检测手是否有按下 CS 是TPAD与pcb之间的电容。这是没有按下的情况 CX是TPAD和手指之间形成的电容 也就是按下的情况充放电原理1浮空状态时:CX=R=0 也就是手指没有按下的情况2 有触发时:CX=0 V1=1 CX和V1形成电原创 2022-02-22 10:28:27 · 758 阅读 · 0 评论 -
基于stm32f103rbt6 实现输入捕获实验
提前要点输入捕获输出比较回顾代码设计输入捕获这个时序图为什么 我要这么圈呢 因为输入捕获 并不是一个 io 就可以实现的 它用分割线 分成了两半。 而它必须 要有两个 io 才可以 一端输出 之后 一端捕获数据 这样才叫输入捕获的过程定时器只要有io有对应的 定时器通道 我们就可以设置为输入捕获 或者输出比较这样我们用起来就很方便。输出比较回顾@接上一篇的输出比较 我们简单回顾一下其中的知识点占空比 就是 一个周期内高电平持续的时间和周期时间的比值 即 高电平时间:一周期时间原创 2022-03-24 20:57:44 · 691 阅读 · 0 评论 -
基于stm32f103rbt6输出固定的占空比
定时器定时器简述时基单元代码定时器简述定时器分为普通和高级定时器 他们最大的区别就是在结构体参数的配置上普通少了一个参数 他们的计算范围都差不多一样 也就是 2的16次方 0-65535定时器适用的场合用于测量输入脉冲宽度 (输入捕获)或者是测 产生输出波形(输出比较)每个定时器都是独立的 没有任何共享资源时基单元计数寄存器 (TIMx_CNT)自动装载值寄存器 (TIMx_ARR)预分频系数寄存器 (TIMx_PSC)计数 器计算定时器的时间 很好理解 自动装载值原创 2022-03-24 11:46:26 · 901 阅读 · 0 评论 -
基于STM32F103RBT6实现ADC转换
ADC一 ADC 简介二 ADC 框图讲解1电压输入范围2 输入通道转换顺序三 硬件搭建四 配置代码一 ADC 简介12位ADC是一个逐次必经型模式数字转换器。多达18个通道,可测量 16个外部 和2个内部信号源.每个通道的A/D转换可以单次,连续 扫描 或者 间断模式运行。时钟选择ADC 的输入时钟 不得超过 14Mhz 他是由Pclk2 经过分频 产生的。二 ADC 框图讲解我们想了解ADC的功能 第一步应该从看结构图开始 大概他的主要组成有7个部分 下面来对重点 部分组成原创 2022-03-28 20:00:01 · 3285 阅读 · 0 评论 -
L289N驱动小车方向
接线和原理l298n接线代码`l298n模块特点具有驱动能力强。可以使用内置的78M05通过驱动电源部分取电工作。使用了大量的滤波电容,继流保护二极管,可以提高可靠性。接线注意要同个电源 接出 切记电路板的跳帽 不用 拔掉 in1-in4 接单片机的ioout1-out4 接入电机 电源选择 12伏 gnd 可以保证驱动电源足够。代码` void car_init(void) { GPIO_InitTypeDef GPIO_InitStruct; RCC_APB2P原创 2022-02-27 13:54:42 · 2194 阅读 · 0 评论 -
使用硬件iic方式实现OLED的字符显示
IIC和OLED什么是oledoled的特点oled的接线oled的显存OLED的指令OLED 取模软件使用IIC协议的简述IIC的总线架构硬件IIC的特点IIC的总线协议IIC通信STM32的 iic特性及架构代码什么是oledOLED即有机发光管(Organic Light-Emitting Diode,OLED)。OLED显示技术具有自发光、广视角、几乎无穷高的对比度、较低功耗、极高反应速度、可用于绕曲性面板、使用温度范围广、构造及制程简单等有点,被认为是下一代的平面显示屏新兴应用技术。OLED原创 2022-02-23 15:51:08 · 3173 阅读 · 2 评论 -
捕获按键下降沿的值(基于STM32F10XRBT6)
输入捕获和按键前言一 按键二 输入捕获1 捕获2捕获事件3 代码实现前言获取按键的下降沿数据 会分成两种情况 1 发生了捕获事件 2 没有发生捕获事件 也就是他只是固定时间段的一种电平 (0或者1)一 按键1 按键的下降沿下降沿是 1-0 变化 就是他是一段时间的电平变化 就是完成了某个状态的跳变。不是固定的时间点的电平。(0或者1)上升沿也是如此(0-1)二 输入捕获1 捕获根据图上可以分析出来比如 你要捕获下降沿的数据 捕获他是一种时间点的固定电平 下降沿捕获的原创 2022-03-29 19:17:02 · 2367 阅读 · 0 评论 -
stm32f10x按键控制灯 (库函数版本)
1所需的硬件2准备的软件3各个硬件的原理图4使用的下载方式 及原理图5下载器的相关配置6程序的结构体进行讲解1所需的硬件2准备的软件3各个硬件的原理图按键的流水灯的按键和流水灯的 io口是属于APB2的 APB2的的频率为72兆4使用的下载方式及原理图5下载器的相关配置出现十六进制 证明我们的下载器可以用了6程序结构体的讲解第一步,配置io的时钟第二步,配置结构体并初始化根据原理图可以知道通过单片机输出低电平 让流水灯发光 这时我们的输出模式可原创 2021-11-28 14:11:39 · 1059 阅读 · 0 评论