• 2024-06-22DMA学习笔记(天空星stmf4开发板)
    目录    #DMA介绍#相关数据传输方法介绍#DMA相关数据手册框图介绍#DMA相关涉及概念介绍  #软件实现DMA传输数据    #DMA介绍#相关数据传输方法介绍    DirectMemoryAccess 即DMA ,芯片开发板,片上外设的一种,相关作用:进行传输数据不
  • 2024-06-17STM学习记录(六)————串口的发送接收
    文章目录前言一、串口结构体及库函数二、实现串口发送(库函数)1.程序设计2.代码三.串口接收1.串口接收(普通)2.串口中断接收3.串口发送字符串函数4.串口实现printf(重定向)5.串口实现scanf(重定向)前言一个学习单片机的小白~有错误评论区或私信指出~一、串口结构体及
  • 2024-04-03【STM32嵌入式系统设计与开发】——16InputCapture(输入捕获应用)
    这里写目录标题STM32资料包:百度网盘下载链接:链接:https://pan.baidu.com/s/1mWx9Asaipk-2z9HY17wYXQ?pwd=8888提取码:8888一、任务描述二、任务实施1、工程文件夹创建2、函数编辑(1)主函数编辑(2)USART1初始化函数(usart1_init())(3)USART数据发送函数(USART1_Send_Data())(4)USART
  • 2024-03-27基于STM32的ModBus实现(一)移植FreeMODBUS RTU
    一、FreeMODBUSFreeModbus是一个开源的Modbus通信协议栈实现。它允许开发者在各种平台上轻松地实现Modbus通信功能,包括串口和以太网。FreeMODBUS提供了用于从设备和主站通信的功能,支持ModbusRTU和ModbusTCP协议。在工业控制和自动化领域广泛应用。FreeModBus可通过官
  • 2024-03-01STM32标准库串口DMA空闲中断接收
    STM32标准库串口DMA空闲中断接收.md1.DMA配置(USART配置在USART中已实现,不再重复叙述)需要使用标准库头文件“stm32f10x_dma.h”DMA_InitTypeDefUsart_DMA;//定义DMA结构体 DMA_DeInit(DMA1_Channel5);//初始化DMA通道 Usart_DMA.DMA_BufferSize=256;//定义DMA缓存区
  • 2024-01-11STM32CubeMX教程12 DMA 直接内存读取
    使用STM32CubeMX软件配置STM32F407开发板上串口USART1进行DMA传输数据,然后实现与实验“STM32CubeMX教程9USART/UART异步通信”相同的目标1、准备材料开发板(正点原子stm32f407探索者开发板V2.4)ST-LINK/V2驱动STM32CubeMX软件(Version6.10.0)keilµVision5IDE(MDK-Arm)CH340G
  • 2023-12-26stm32学习总结:4、Proteus8+STM32CubeMX+MDK仿真串口收发
    stm32学习总结:4、Proteus8+STM32CubeMX+MDK仿真串口收发文章目录stm32学习总结:4、Proteus8+STM32CubeMX+MDK仿真串口收发一、前言二、资料收集三、STM32CubeMX配置串口1、配置开启USART12、设置usart中断优先级3、配置外设独立生成.c和.h四、MDK串口收发代码(中断回调接收后发送接
  • 2023-12-06遇到问题总结
    待完成:需要完善通讯1.增加数据格式的判断2.增加其他路电阻值的写入收获:调试了一个可用的串口代码遇到的问题记录:1.串口接收中断没有被调用,是因为两个TTL的影响解决方案:使用232串口连接2.串口数据接收完成标志不能被触发(串口中断分包接收数据)原因:发送的数据格式不对3.进
  • 2023-11-252023版 STM32实战7 通用同步/异步收发器(串口)F103/F407
    串口简介和习惯-1-通用同步异步收发器(USART)能够灵活地与外部设备进行全双工数据交换,满足外部设备对工业标准NRZ异步串行数据格式的要求。-2-硬件流控制一般是关闭的-3-波特率指单位时间传输bit个数-4-数据位一般是8位-5-一般无校验位编写代码思路-1-参考帮助手册(F1/F4都有)-2
  • 2023-11-252023版 STM32实战7 通用同步/异步收发器(串口)F103/F407
    串口简介和习惯-1-通用同步异步收发器(USART)能够灵活地与外部设备进行全双工数据交换,满足外部设备对工业标准NRZ异步串行数据格式的要求。 -2-硬件流控制一般是关闭的 -3-波特率指单位时间传输bit个数 -4-数据位一般是8位 -5-一般无校验位 编写代码思路 -
  • 2023-10-28STM32-基于标准库的中断串口通信
    目录STM32-标准库实现中断方式的串口通信实验任务实验过程总结体会参考STM32-标准库实现中断方式的串口通信实验任务使用标准库方式,设置USART1波特率为115200,1位停止位,无校验位,采用中断方式完成下列任务:STM32系统给上位机(win10)连续发送“hellowindows!”;当上位机给stm32发
  • 2023-09-25USART-通信详解
    目录一.通信基本概念1.根据数据传输方式划分2.根据数据传输方向划分3.根据数据同步方式划分二.USART流程分析1.USART协议2.USART框图分析3.寄存器分析三.USART驱动代码1.寄存器方式驱动2.固件库方式驱动一.通信基本概念1.根据数据传输方式划分串行通信:一般是8
  • 2023-08-23STM23学习记录2:外部中断,串口通信,定时器
    外部中断:向量表:异常+中断所有端口的PIN0对应着EXTI0中短线,PIN1对应EXTI1中断线,依次类推16个外部中断线,对应7个外部中断入口地址配置中断优先级的4位要同时完成抢占优先级和响应优先级(子优先级或副优先级)的配置:两组优先级2+2,2^2抢占,2^2响应比较常用使用NVIC_PriorityGroupCon
  • 2023-08-03串口通信
    UART、I2C、SPI、USB的异同点#通信协议#​​​​​名称引脚双工时钟电平设备通信距离传输速率USARTTX、RX全双工异步单端点对点远(最多1200m)慢(波特率设置)I2CSCL、SDA半双工同步单端多设备(一主多从,寻址)近慢SPISCLK、MOSI、MISO、CS全双工同
  • 2023-07-30异步通信点灯
    目录前言一、串口通信二、异步通信和同步通信三、异步通信的端口四、实现异步通信1.设置引脚2.设置异步通信3.完整代码4.编写测试代码5.串口发送字符串6.通过串口控制LED亮灭五、使用中断串口通信来控制LED1.打开串口的中断六、上位机总结前言前面我们学习了PWM定时器脉冲来进行
  • 2023-07-23STM32F103C8T6串口通信
     首先来看一下需要操作的函数,以及配置的步骤:图1                         图2  Code:usart.c#include"usart.h"voidustart_Init(void){GPIO_InitTypeDefGPIO_Init_Ustar;//定义
  • 2023-07-14CH32V307 串口
    由于官方的link(USB转串口模块)和板子都设置了防反二极管,使用时串联为2倍的二极管压降,导致串口下载不成功:下载时需要移除TX_0、RX_0的跳线帽。经过验证,涉及到使用USART1时也需要移除,否则串口调试助手会无法回显数据"""voidUSART1_IRQHandler(void){uint8_tRxBuffer;/*如
  • 2023-07-03STM32/GD32串口接收不定长数据
    RYMCU嵌入式开源https://rymcu.com编者注:单片机串口接收不定长数据时,必须面对的一个问题为:怎么判断这一包数据接收完成了呢?常见的方法主要有以下两种:1.在接收数据时启动一个定时器,在指定时间间隔内没有接收到新数据,认为数据接收完成;2.在数据中加入帧
  • 2023-06-27STM32 USART1 改成 UART4 出现问题
    STM32USART1改成UART4出现问题群里面叫了半天,野火胸也不出来,那么久没有办法了,我自己发个帖子解决下问了一下度娘,网上有很多关于stm32uart4的问题,有时进不去串口中断的,有发送乱码的,那么我就在这里总结一下首先我们看一下文档我用的stm32f103vet6的,所以USART是模式是3+2,
  • 2023-06-13STM32F429 Discovery开发板应用:使用FreeRTOS队列+DMA双缓存实现串口数据接收
     参考帖子:https://blog.csdn.net/freedompoi/article/details/122350866目前想要实现STM32F4自带的DMA双缓冲区,尝试过一版,结果不能预期,就使用了RxHalfCplt和RxCplt去实现DMA双缓冲区的效果。现在有时间了,又重新实现STM32F4自带的DMA双缓冲区,作为参考。 MCU:STM32F429ZIT6
  • 2023-06-09stm32f103实现uart收发数据操作
      //stm32f103c8t6实现usart接收到0xFF0xFF0xCE0xCE,//发送0xEE0xEE0x010xCE//然后PA6输出高电平,否则为低电平//中断写法#include"stm32f10x.h#include"stm32f10x_usart.h"#defineRX_BUFFER_SIZE4uint8_trxBuffer[RX_BUFFER_SIZE];uint8_ttxBuffer[]={0
  • 2023-04-23KEIL5--Error: L6915E: Library reports error: __use_no_semihosting was requested报错解决方法
    __use_no_semihostingwasrequested:要求不使用半主机模式。 比较简单的一个解决方法就是点击“魔术棒”,在Target标签下有个UseMicroLIB,勾选UseMicroLIB,再编译就不会报错了。”Use MicroLIB”,这是KEIL自带的一个简易的库,使用Use MicroLIB微库不需要强调不使用半主机(nos
  • 2023-04-22STM32CubeMx配置串口,并控制LED灯亮灭
    一、环境配置软件:stm32cubemx6.4.0keil5.30大虾丁丁串口调试助手硬件:正点原子stm32f103ZET6开发板二、配置stm32cubemx项目选择USART1,Asynchronous(异步通讯),RS232是异步通讯,就是没有同步时钟也没有同步线进行通讯。 设置串口基础配置:波特率:115200Bit/s;数据长度8位;无校
  • 2023-03-07STM32串口通信
    STM32串口通信目录STM32串口通信串口常用寄存器串口配置的步骤和函数完整程序串口常用寄存器USART_SR 状态寄存器USART_DR数据寄存器USART_BRR波特率寄存器
  • 2023-02-26stm32f407探索者开发板(十八)——串口通信实验讲解(USART_RX_STA流程图详解)
    文章目录​​一、uart_init(串口初始化)​​​​二、USART1_IRQHandler(串口1中断服务程序)​​​​三、main.c(主函数)​​​​四、关于printf的支持​​一、uart_init(串口初始化