今天心血来潮想写点东西 做比赛这么久了,应该写点东西,一是为了给自己学的知识一个总结,二是可以锻炼自己的写作能力与表达能力,帮助他人避免自己走过的坑stm32 USB VPC虚拟串口简介很多stm32的开发版都带有一个usb接口,可以用cubeMx将其配置成一个虚拟串口,使用USB线就可以打印调试信息,省去了用TTL转USB的步骤,而且USB虚拟串口的速度和稳定性比TTL转USB要好,在开发中,这
转载
2024-08-06 21:23:36
276阅读
转载自: 百度网盘内容存在,本人测试例程可用,并转载保存,以便日后学习移植方法与思路。以下为转载博主思路与方法: 串口调试在项目中被使用越来越多,串口资源的紧缺也变的尤为突出。很多本本人群,更是深有体会,不准备一个USB转串口工具就没办法进行开发。本章节来简单概述STM32低端芯片上的USB虚拟串口的移植。在官方DEMO中已经提供了现成的程序,这里对修改方法做简单说明。&nbs
转载
2024-09-30 18:01:37
504阅读
文章目录一、串口通信简介1.1 百度百科解释1.2 通信接口1.3 串口通信分类1.4 STM32串行通信的通信方式二、STM32的串口通信2.1 功能引脚2.2 数据寄存器2.3 控制器2.4 小数波特率生成三、总结 一、串口通信简介 1.1 百度百科解释来源百度百科 串行接口是一种可以将接收来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接收的串行数据流转换为并
一般只能通过三种方式下载程序到stm32单片机中: 1.JTAG 2.ISP 3.IAP 具体可参考:单片机程序下载方式ISP、IAP、JTAG接下来介绍如何ISP烧录代码: 要通过ISP方式下载程序,需要用到单片机内部自带的Bootloader,这个Bootloader是预制在单片机内部的,出厂自带的,它在出厂后就不能修改或擦除。因此首先要将BOOT0=1,BOOT1=0 让单片机从系统存储器启
1.问题描述这是在调试串口升级功能时遇到的问题,是用的STM32CubeMX生成的代码,BootLoader参考的正点原子的例程。在BootLoader中仅初始化了串口DMA功能,用串口来接收升级程序。前期一切正常,能够正常响应串口中断,文件检查,消息发送等等。跳转指令也能正常执行,跳转后程序卡死调试模式下暂停后发现卡在DMA中断里面。2.调试过程1.刚开始的时候我以为是程序烧写不正确。但是后面手
第一步 使用stm32cubeMX配置串口可以在NVIC里面设置串口的优先级,避免bug的出现。第二步 生成代码并修改串口打印重定向在usart.c里面添加/** * @brief 串口重定向 */#include <stdio.h>int fputc(int ch, FILE *f){ HAL_UART_Transmit(&huart2, (uint8_t *)&ch, 1, 0xFFFF); return ch;}在使用的地方要
原创
2021-06-08 14:41:03
3615阅读
目录串口通讯配置1、初始化IO口 2、初始化串口1——发送一个字节2——发送数组3——发送字符串4——发送半字5——串口的重定向中断配置串口通讯 串口通讯 (Serial Communication) 是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此 大部分电子设备都支持该通讯方式,电子
项目场景:stm32H743使用串口MDA发送数据,减轻MCU负担问题描述通过stm32cubeMX配置串口3,使用DMA发送数据,生成工程后DMA发送数据没问题,但是发送的数据全部为0x00,并不是我发的数据,通过仿真查看发现直到DMA发送函数内部数组的数据都是正确的,但是发出来的数据就变成了0x00,经过各种查找,网上搜索终于发现问题。 参考文章: 1、没修改前串口3DMA发送的数据如下图:
目录概述USB全速设备接口USB OTG全速(OTG_FS)主机模式功能设备模式功能概述Stm32F103集成了USB全速设备接口(USB)和USB OTG全速(OTG_FS)两个模块。USB全速设备接口只支持做USB设备,OTG_FS是双重角色设备(DRD)控制器,支持主机端和设备端的功能。图 1USB设备框图图 2OTG_FS框图USB全速设备接口标准USB共四根线组成,除VCC/GND外,另
STM32 USB endpoint 地址设置说明 文章目录STM32 USB endpoint 地址设置说明前言疑问分析结论拓展 前言 移植STM32 usb功能时发现usb_prop.c文件中usb初始化需要设置usb的endpoint地址,之前使用的时候都是直接使用demo程序,没有细致研究,本次使用STM32的usb是想把与virtual com与Mass storage融合在一起,而这
转载
2024-10-13 13:28:11
229阅读
一、RS232,TTL简介RS232是个人计算机的通讯接口之一,一般会有两组RS323接口,分别为COM1和COM2,电平标准为+12V为逻辑负,-12为逻辑正。 TTL电平为5V为逻辑正,0为逻辑负,这样的数据通信及电平规定方式,被称做TTL(晶体管-晶体管逻辑电平)信号系统。这是计算机处理器控制的设备内部各部分之间通信的标准技术。二、串口通讯原理了解了RS232和TTL两种通信标准后,就可以开
前言学习stm32 USB接口使用,学会用CUBE工具快速创建USB设备工程及调试,关于usb的相关知道请读者提前准备并学习,当然如果不想深究其中原理的话,跟着本文来操作就可以实现基于USB的设备开发了。需要提示的是,stm32在使用usb接口功能是一般需要在DP引脚上上拉一个1.5K电阻到3.3V(部分MCU内部会上拉)。 示例详解基于硬件平台: STM32F10C8T6最小系统板,
前言学习stm32 USB接口使用,学会用CUBE工具快速创建USB设备工程及调试,关于usb的相关知道请读者提前准备并学习,当然如果不想深究其中原理的话,跟着本文来操作就可以实现基于USB的设备开发了。需要提示的是,stm32在使用usb接口功能是一般需要在DP引脚上上拉一个1.5K电阻到3.3V(部分MCU内部会上拉)。 示例详解基于硬件平台: STM32F10C8T6最小系统板,
学习stm32已经很长时间了,但是一直没有过多的学习stm32的USB部分,因为实际工作还是用的比较少。说起USB那就有的说了,因为USB的功能很强大,这里主要重点记录一下STM32的USB部分,这个官方给的有专门USB库,笔者目前使用的是Cotex-M3内核的STM32F103系列,实验的芯片为STM32F103C8,这个是目前市场上性价比非常高的芯片,也是用的非常多的芯片。USB基础知识USB
STM32CubeMX串口通讯
原创
精选
2024-03-09 08:20:25
383阅读
STM32 串口的使用–以串口调试助手为例@(STM32基本外设)串口介绍USART ((Universal Synchronous Asynchronous Receiver and Transmitter, 通用同步异步收发器), 是一 个串行通信设备,可以灵活地与外部设备进行全双工数据交换。有别于 USART 还有一个 UART(Universal Asynchronous Receiver
转载
2024-09-24 20:05:10
181阅读
STM32F10x 的USART 支持DMA 方式,并且在DMA完成后可以产生中断。这对于需要接收或发送大量数据的应用情景是很有帮助的。在普通的8位或16位单片机中很少有包含DMA控制器的,所以可能许多嵌入式程序员对DMA方式并不熟悉。简单的说,直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。由于无须CPU干预,数据可以通过DM
STM32F10x 系列单片机中都包含了USART 模块,所谓USART,就是通用同步异步收发器。通用同步异步收发器(USART)提供了一种灵活的方法与使用工业标准NRZ异步串行数据格式的外部设备之间进行全双工数据交换。它支持同步单向通信和半双工单线通信,也支持LIN(局部互连网),智能卡协议和IrDA(红外数据组织)SIR ENDEC规范,以及调制解调器(CTS/R
本文在前两篇USART串口通信的基础上,使用DMA控制器来实现串口通信 文章目录一、DMA1.DMA简介2.DMA主要特性3.部分代码原理二、实验代码三、实验结果四、总结 一、DMA1.DMA简介DMA全称Direct Memory Access,即直接存储器访问。直接存储器存取(DMA)用来提供在外设和存储器之间或者存储器和存储器之间的高速数据传输。DMA传输方式无需CPU直接控制传输,也没有中
转载
2024-07-12 04:30:15
473阅读
基本知识串口通讯 (Serial Communication) 串口中断其实也是依靠判断寄存器的状态进行中断服务的通信的速率Bitrate—比特率:每秒钟传输的二进制位数,单位为比特每秒(bit/s) Baudrate—波特率:表示每秒钟传输的码元个数 一个二进制位表示一个码元 0V —— 0