stm32f103 串口通讯

【嵌入式学习-STM32F103-USART串口通信】 本文记录了作者学习STM32串口通讯的内容,主要资料来源于江科大视频 阅读详情

串口通讯(SerialCommunication)是一种设备间非常常用的串行通讯方式,因为它简单 便捷,因此大部分电子设备都支持该通讯方式,电子工程师在调试设备时也经常使用该通讯方式输出调试信息。

	stm32f103 串口通讯大致可以分为这五步
	1.初始化gpio口,使能RX和TX引脚GPIO时钟
	2.初始化USART,和USART时钟;
	3.初始化nvic 总中断
	4.编写字符串发送函数
	5.编写USART 中断服务函数

1.初始化gpio口,使能RX和TX引脚GPIO时钟

void init_uart_gpio(void)
{
	GPIO_InitTypeDef tx;
	GPIO_InitTypeDef rx;
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
	
	tx.GPIO_Mode=GPIO_Mode_AF_PP;
	tx.GPIO_Pin=GPIO_Pin_9;
	tx.GPIO_Speed=GPIO_Speed_50MHz;
	
	
	rx.GPIO_Mode=GPIO_Mode_IN_FLOATING;
	rx.GPIO_Pin=GPIO_Pin_10;
	
	GPIO_Init(GPIOA,&tx);
	GPIO_Init(GPIOA,&rx);
}

2.初始化USART,和USART时钟;

void init_uart1()
{
	USART_InitTypeDef uart;
	RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);
	
	uart.USART_BaudRate=115200;
	uart.USART_HardwareFlowControl= USART_HardwareFlowControl_None;
	uart.USART_Parity=USART_Parity_No;
	uart.USART_StopBits=USART_StopBits_1;
	uart.USART_WordLength=USART_WordLength_8b;
	uart.USART_Mode= USART_Mode_Rx|USART_Mode_Tx;
	
	USART_Init(USART1,&uart);
	USART_ITConfig(USART1,USART_IT_RXNE,ENABLE);
	USART_Cmd(USART1,ENABLE);
	

3.初始化nvic 总中断

void init_uart_nvic(void)
{
	NVIC_InitTypeDef nvic;
	NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);
	
	nvic.NVIC_IRQChannel=USART1_IRQn;
	nvic.NVIC_IRQChannelPreemptionPriority=1;
	nvic.NVIC_IRQChannelSubPriority= 1;
	nvic.NVIC_IRQChannelCmd =ENABLE;
	NVIC_Init(&nvic);
}

4.编写字符串发送函数

void Usart_SendByte(USART_TypeDef *pUSARTx,uint8_t ch)
{
	USART_SendData(pUSARTx,ch);
	while(USART_GetFlagStatus(pUSARTx,USART_FLAG_TXE)==RESET);
}
void Usart_SendString(USART_TypeDef *pUSARTx,char *str)
{
	while(*str!='\0')
	{
		Usart_SendByte(pUSARTx,*str);
		str++;
	}
	while(USART_GetFlagStatus(pUSARTx,USART_FLAG_TC)==RESET);
}

5.编写USART 中断服务函数

void	USART_IRQHandler(void)
{
	uint8_t ucTemp;
	if(USART_GetITStatus(USART1,USART_IT_RXNE)!=RESET){
		ucTemp=USART_ReceiveData(USART1);
		USART_SendData(USART1,ucTemp);
	}
}
STM32F103串口通信 目录 一、串口 二、STM32系统给上位机(win10)连续发送“hello windows!” 1、接线: 2、代码实现 3、烧录 4、串口调试 一、串口 串口通讯 (Serial Communication) 是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式,电子工程师在调试设备时也经常使用该通讯方式输出调试信息。串口通讯的数据由发送设备通过自身的 TXD 接口传输到接收设备的 RXD 接口。 串口通信协议 在串口通讯的协议中,规定了数.. 阅读详情

相关推荐

STM32F103教程——UART串口通信

串口通信是一种设备间常用的串行通信方式,串口按位(bit)发送和接收字节。尽管比特字节(byte)的串行通信慢,但是串口可以在使用一根线发送数据的同时用另一根线接收数据。串口通信协议是指规定了数据包的内容,内容包含了起始位、主体数据、校验位及停止位,双方需要约定一致的数据包格式才能正常收发数据的有关规范。在串口通信中,常用的协议包括RS-232、RS-422 和 RS-485 等。随着科技的发展,RS-232 在工业上还有广泛的使用,但是在商业技术上,已经慢慢的使用。

duotuoluan3934的博客 5476

STM32F103串口通信USART小试牛刀

本文主要叙述了STM32F103芯片实现USART串口通信简介,通过库函数实现STM32F103芯片给电脑发送"Hello,world!" 实验环境:keil μVision、xCOM 文章目录一、串口通信简介二、创建工程1.实验原理2.代码实现三、实验结果四、总结五、参考文献 一、串口通信简介 串口通信指串口按位(bit)发送和接收字节。尽管比特字节(byte)的串行通信慢,但串口可以在使用一根发送数据的同时用另一根线接收数据。常用协议包括RS-232(ANSI/EIA-232标准),一种IBM-PC.

江南烟浓雨的博客 1万+

Python与STM32F103串口通讯

文章目录准备工作Python 上位机程序STM32下位机程序效果展示 准备工作 要想用python与stm32通讯,首先就要安装python的相关库—pyserial。 其次准备一块32芯片烧录好串口收发程序准备测试,如果手头没有32的话,下载安装虚拟串口进行调试吧。具体安装方法自行百度。废话就不多说了直接上我的案例程序吧。 Python 上位机程序 以下功能具体封装成函数了,在实际开发中,接收...

Funny 8196

STM32F103(五)——串口通信

串口通信串口通信串行通信 参考资料: 《开发指南》P178 串口实验 《参考手册》P516 通用同步异步收发器 串口通信 通信双方(cpu与外部设备)之间通信的两种方式: 并行通信 ▶传输原理:数据各个位同时进行传输 ▶优点:速度快 ▶缺点:占用引脚资源多 串行通信 ▶传输原理:数据按位顺序传输 ▶优点:占用引脚资源少 ▶缺点:速度相对较慢 串行通信 按照数据传送方向,可分为: ▶单工: 数据传输只支持数据在一个方向上传输,如图: ▶半双工: 运行数据在两个方向上传输,但是在同一时刻只允许在一

weixin_45888152的博客 3492

cc2530串口通讯-收发字符串_STM32F103 串口的使用方法

串口通讯简介:串口通讯(Serial Communication)是一种设备间非常常用的串行通讯方式,因为它简单便捷,因此大部分电子设备都支持该通讯方式。通讯结构设备内部一般以TTL电平传输,设备之间是通过RS232/RS485电平标准传输。两个设备或者器件要想实现串口通讯,要电平匹配才能够正常通讯。电平标准根据使用的电平标准不同,串口通讯可分为 RS232标准及TTL标准,具体标准如下...

weixin_39611389的博客 2173

STM32F103RCT6 -- 基于FreeRTOS 的USART1 串口通讯

串口,串口通讯,串口通信,stmUSART1_Init 函数初始化 USART1,并使用 FreeRTOS 提供的 xQueueCreate 函数创建两个队列,一个用于接收数据,一个用于发送数据。在 USART1_IRQHandler 中,使用 xQueueSendFromISR 和 xQueueReceiveFromISR 函数将接收到的数据和需要发送的数据加入相应的队列中,并启用或禁用 USART1 的 TXE 中断来控制数据的发送。当 USART1 接收到新的数据时,会触发 USART1 的接收中断。

weixin_50212044的博客 8366

STM32F103RCT6 两个串口通讯程序

STM32F103RCT6 两个串口通讯程序 此程序为STM32F103RCT6单片机UART1 与UART3两个个串口通讯实验,UART1与UART3互相收发信息。两个串口需要同时与电脑相连接。串口1利用STM32自身串口,串口3通过CH340模块与电脑USB通讯。 串口1给串口3发送数据,串口3接收后打印“串口1给串口3发送数据” 串口3给串口1发送数据,串口1接收后打印“串口1给串口3发送数...

qq_42258981的博客 1万+

Ollama-OCR实战:5分钟搞定PDF文档转Markdown(附qwen2.5vl模型配置)

本文详细介绍了如何利用Ollama本地部署多模态大模型qwen2.5vl,结合OCR技术,实现PDF文档到Markdown的端到端智能转换。通过解析传统OCR的局限与AI方案的优势,并提供从环境搭建、提示词工程到处理复杂表格的完整实战指南,帮助用户高效构建自动化文档处理流水线,彻底重塑文档处理工作流。

yog99的博客 604

stm32f103之串口实验,串口相互通讯即用同一个单片机的串口1与串口3相互通讯

  串口1,串口3都接到电脑上,选上”Use MicroLIB”这是KEIL自带的一个简易的库,例如你用printf函数的时候,就会从串口1 输出字符串,直接默认定向到串口1。(此程序中两个波特率不匹配,接受会出错,在实践中要设置串口一致的波特率)以下是程序 #ifndef __USART_H//头文件 #define __USART_H #include "stdio.h" #in...

Heronita的博客 1万+

基于单片机红外线遥控Proteus仿真电路发射接收

*单片机设计介绍,基于单片机红外线遥控Proteus仿真电路发射接收。

2201_75940997的博客 3942

OpenEarthMap 与 xBD 数据集合并

整合好的数据:链接: https://pan.baidu.com/s/1uJ_Zg6n-s3u1D49OW52D7Q?pwd=2vwx 提取码: 2vwx完整整合步骤与代码如下。

qq_60293814的博客 1593

基于STM32F103的二维码识别项目——串口通讯篇

此系列用于记录做过的项目,这篇文章介绍基于STM32F103的二维码识别项目之串口通讯模块。

beyourself_he的博客 1425

PCB激光直接成像(LDI)设备技术解析与优化方案

激光直接成像(LDI)是PCB制造中的关键数字化工艺,通过激光束直接在基板上形成电路图案。其核心技术在于高精度光学系统与智能控制算法的结合,工作精度可达微米级。在HDI板、柔性电路等高端PCB制造中,LDI技术能显著提升线宽精度和层间对位准确性。当前行业面临材料适配性、热变形控制等挑战,动态能量补偿、多波长曝光等创新方案正在突破这些瓶颈。随着模块化设计、预测性维护等工程实践的普及,LDI设备综合效率持续提升,为5G、汽车电子等领域的精密电路生产提供关键技术支撑。

weixin_29168393的博客 390

探索STM32F103蓝牙串口通讯的无限可能

探索STM32F103蓝牙串口通讯的无限可能 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在嵌入式开发领域,STM32F103系列微控制器因其强大的性能和丰富的外设接口而备受开发者青睐。为了帮助初学者快速入门STM32F103的蓝牙串口通讯开发,我们推出了这个开源项目。本项目提供了一套完整的资源文件,包括源码和串口调试助手软件,旨在为开发者提供一个便捷的学习和调试平...

gitblog_09802的博客 842

Qwen2.5-VL模型微调实战:从零到部署的完整流程(附避坑指南)

本文详细介绍了Qwen2.5-VL视觉语言模型从零开始的完整微调与部署流程。内容涵盖使用LLaMA-Factory进行LoRA微调的关键参数配置与避坑指南,以及如何将训练好的模型权重合并,并最终利用vLLM高性能推理引擎进行部署,为开发者提供了一套可落地的实战方案。

oo7890的博客 591

iStoreOS等软路由插件卸载的残留?分享一款软路由高级卸载工具,自定义卸载,轻松解决卸载残留问题

iStoreOS用户看过来!👀 还在被插件包残留困扰吗?本文分享一款“高级卸载”的插件,助你深度清理iStoreOS系统,彻底解决软件卸载不净的痛点,告别频繁恢复出厂设置的烦恼!🚀

XiaoqiangClub的博客 1537

STM32F103RCT6 多串口通讯程序

STM32F103RCT6 多串口通讯程序 去发现同类优质开源项目:https://gitcode.com/ 简介 本仓库提供了一个基于STM32F103RCT6微控制器的多串口通讯程序。该程序是在正点原子例程的基础上进行修改和扩展的,旨在演示如何配置和使用STM32F103RCT6的多个串口(UART1~6)进行通讯。 功能描述 多串口配置:程序中配置了UART1~6,支持多个串口同时工作。 ...

gitblog_09743的博客 659

置顶必读(2) |《滚雪球学数学建模》专栏目录 & 历年国赛/美赛真题库 & 真题解析(持续更新中)

本专栏《滚雪球学数学建模》采用“从零开始、逐步滚雪球”的学习路径,把数学建模的基础理论、方法工具与大量实战真题(尤其是国赛题,涵盖2025-1992所有真题)有机融合,形成一套系统化训练路线。非常适合零基础入门、希望提升模型与工程化能力的本科/研究生,以及备战全国大学生数学建模竞赛(国赛/省赛)的同学。加油,我们一起把建模能力打造成可迁移的核心竞争力!

**My Coding Family** 26万+

STM32F103RCT语音模块LD3320串口通讯资源介绍

STM32F103RCT语音模块LD3320串口通讯资源介绍 去发现同类优质开源项目:https://gitcode.com/ 项目的核心功能/场景:实现STM32F103RCT与LD3320语音模块的串口通讯,语音控制STM32端口。 项目介绍 在智能化趋势不断深入的今天,语音控制技术已经成为了智能家居、智能机器人等领域的重要技术之一。本文将为您介绍一款开源项目——STM32F103RCT语音模...

gitblog_06754的博客 1033

CloudCompare 多窗口联动显示点云

CloudCompare支持多窗口联动显示多个点云数据,可以用来比对原始点云数据与语义分割后的结果。 一、创建多个视窗 打开CloudCompare后会默认有一个视图,我们要同时打开两个数据就需要再创建一个视图,选择菜单栏里的3D Views,在下拉菜单中点击new,这样就创建了一个新的视图,这时3D Views的下拉菜单中有3D View 1和3D View 2两个视图,然后点击3D Views下拉菜单中的Title,这时在数据展示区就会出现两个并列的窗口。 二、分别加载点云数据 将数据分别拖进两个

zhaoguanhua的博客 2739

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

【亲测免费】 探索STM32F103RCT6的多串口通讯世界

探索STM32F103RCT6的多串口通讯世界 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在嵌入式系统开发领域,STM32F103RCT6微控制器因其强大的性能和丰富的外设接口而备受青睐。本项目提供了一个基于STM32F103RCT6的多串口通讯程序,旨在帮助开发者更好地理解和利用该微控制器的多串口功能。该项目在正点原子例程的基础上进行了修改和扩展,支持配置和使用...

gitblog_09719的博客 653

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

【大彩串口屏】与STM32F103单片机通讯-程序模板

【大彩串口屏】与STM32F103单片机通讯-程序模板 【下载地址】大彩串口屏与STM32F103单片机通讯-程序模板 本仓库致力于简化【大彩串口屏】与STM32F103系列单片机之间的通讯工作,通过将官方模板进行二次开发和优化,使之更加契合野火及正点原子等国内流行的开发板环境。此资源极大地缩短了开发者的学习与集成时间,...

gitblog_09788的博客 527

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

STM32F103串口2DMA通讯资源文件

STM32F103串口2DMA通讯资源文件 去发现同类优质开源项目:https://gitcode.com/ 简介 本资源文件提供了关于STM32F103系列微控制器中串口2(USART2)使用DMA进行通讯的详细说明和示例代码。通过使用DMA(直接内存访问),可以显著提高串口通讯的效率,减少CPU的负担,适用于需要高速数据传输的应用场景。 内容概述 硬件平台:STM32F103系列微控制器 通...

gitblog_09763的博客 361

高效数据传输利器:STM32F103串口2 DMA通讯资源文件

高效数据传输利器:STM32F103串口2 DMA通讯资源文件 去发现同类优质开源项目:https://gitcode.com/ 项目介绍 在嵌入式系统开发中,串口通讯是不可或缺的一部分。然而,传统的串口通讯方式往往需要CPU频繁介入,导致资源占用高、效率低下。为了解决这一问题,我们推出了STM32F103串口2 DMA通讯资源文件,旨在通过DMA(直接内存访问)技术,显著提升串口通讯的效率,减少...

gitblog_09730的博客 930

【亲测免费】 【大彩串口屏】与STM32F103单片机通讯-程序模板:高效开发利器

【大彩串口屏】与STM32F103单片机通讯-程序模板:高效开发利器 【下载地址】大彩串口屏与STM32F103单片机通讯-程序模板 本仓库致力于简化【大彩串口屏】与STM32F103系列单片机之间的通讯工作,通过将官方模板进行二次开发和优化,使之更加契合野火及正点原子等国内流行的开发板环境。此资源极大地缩短了开发者的学...

gitblog_09745的博客 1008

STM32F103RCT语音模块LD3320 串口通讯资源介绍

STM32F103RCT语音模块LD3320 串口通讯资源介绍 去发现同类优质开源项目:https://gitcode.com/ 此资源库包含了STM32F103RCT与LD3320语音模块进行串口通讯的详细教程及所需资源文件。以下是该资源文件的具体介绍: 资源简介 本资源中的LD3320模块,核心基于51单片机,具备语音识别功能。当输入不同的语音指令时,LD3320能够通过串口输出相应的代码。通...

gitblog_06744的博客 870
上一篇: stm32f103 -SysTick系统定时器
下一篇: stm32 -IIC(读写EEPROM)
四夕、
博客等级 码龄8年 19粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值