当前位置: 首页 > wzjs >正文

网站建设代码走查个人微信公众平台注册流程

网站建设代码走查,个人微信公众平台注册流程,深圳十大企业排名,impreza wordpress目录 背景 程序 STM32浮空输入的概念 1.基本概念 2. STM32浮空输入的特点 3. STM32浮空输入的应用场景 STM32推挽输出详解 1. 基本概念 2. 工作原理 3. 应用场景 使能外设时钟 TXE 和 TC的区别 USART_IT_TXE USART_IT_TC 使能串口外设 中断处理函数 背景 单片…

目录

背景

程序

STM32浮空输入的概念

1.基本概念

2. STM32浮空输入的特点

3. STM32浮空输入的应用场景

STM32推挽输出详解

1. 基本概念

2. 工作原理

3. 应用场景

使能外设时钟

TXE 和 TC的区别

USART_IT_TXE

USART_IT_TC

使能串口外设

中断处理函数


背景

单片机有常用的三大通信(SPI、I2C、UART(USART))。本篇文章对STM32的UART初始化进行简要的说明。

程序

void USART1_Init(u32 bound){ //串口1初始化并启动//GPIO端口设置GPIO_InitTypeDef GPIO_InitStructure;USART_InitTypeDef USART_InitStructure;NVIC_InitTypeDef NVIC_InitStructure;	 RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA, ENABLE);	//使能USART1,GPIOA时钟//USART1_TX   PA.9GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9; //PA.9GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;	//复用推挽输出GPIO_Init(GPIOA, &GPIO_InitStructure);  //USART1_RX	  PA.10GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;//浮空输入GPIO_Init(GPIOA, &GPIO_InitStructure); //Usart1 NVIC 配置NVIC_InitStructure.NVIC_IRQChannel = USART1_IRQn;NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority=3 ;//抢占优先级3NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3;		//子优先级3NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;			//IRQ通道使能NVIC_Init(&NVIC_InitStructure);	//根据指定的参数初始化VIC寄存器 //USART 初始化设置USART_InitStructure.USART_BaudRate = bound;//一般设置为9600;USART_InitStructure.USART_WordLength = USART_WordLength_8b;//字长为8位数据格式USART_InitStructure.USART_StopBits = USART_StopBits_1;//一个停止位USART_InitStructure.USART_Parity = USART_Parity_No;//无奇偶校验位USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无硬件数据流控制USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;	//收发模式USART_Init(USART1, &USART_InitStructure); //初始化串口USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//开启ENABLE/关闭DISABLE中断USART_Cmd(USART1, ENABLE);                    //使能串口 
}

对于RX脚的端口模式要设置为浮空输入。对于RX脚的端口模式要设置为推挽输出

STM32浮空输入的概念

1.基本概念

STM32浮空输入(Floating Input)模式是指GPIO端口的电平状态完全由外部信号决定,该引脚既不连接到内部上拉电阻,也不连接到内部下拉电阻,处于高阻态。这种模式下,引脚对外表现为高阻抗,可以检测到微弱的信号变化。

2. STM32浮空输入的特点

  • 高阻抗‌:浮空输入时,引脚表现为高阻抗,对外部电路的影响较小。
  • 电平状态不定‌:由于电平状态完全由外部信号决定,因此在外部无信号或信号微弱时,引脚电平状态可能不稳定,容易受到外界电磁干扰。
  • 适用于特定场景‌:浮空输入通常用于需要高阻抗信号读取的场景,如按键检测、ADC(模数转换器)输入等。

3. STM32浮空输入的应用场景

  • 按键检测‌:在按键电路中,按键未按下时,通过浮空输入模式可以检测到按键的悬空状态,从而判断按键是否被按下。
  • ADC输入‌:在ADC采样输入时,使用浮空输入模式可以减少上拉或下拉电阻对采样结果的影响,提高采样精度。
  • 微弱信号检测‌:由于浮空输入具有高阻抗特性,可以检测到微弱的信号变化,适用于需要高灵敏度信号检测的场景。

STM32推挽输出详解

1. 基本概念

STM32推挽输出(Push-Pull Output)是一种GPIO(通用输入输出)引脚输出模式,能够输出高电平和低电平,并具有一定的驱动能力。在这种模式下,引脚在输出低电平时形成低阻抗,输出高电平时形成高阻抗,可以驱动外部电路。

2. 工作原理

推挽输出模式的工作原理基于两个互补的晶体管(通常是MOSFET或双极型晶体管)来控制输出电平。当输出信号为高电平时,一个晶体管导通,将输出端拉向高电平;当输出信号为低电平时,另一个晶体管导通,将输出端拉向低电平。这种互补控制方式确保了输出端在高低电平之间快速切换,同时提供足够的驱动能力。

3. 应用场景

STM32推挽输出模式广泛应用于需要驱动外部负载的场景,如:

  • 控制LED灯的亮灭。
  • 驱动继电器、电机等负载。
  • 与其他数字电路进行逻辑电平连接。

使能外设时钟

RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1|RCC_APB2Periph_GPIOA, ENABLE);

查看GPIOA(端口组A)是接在APB2总线上。

串口中断配置

TXE 和 TC的区别

USART_IT_TXE

USART_IT_TXE‌(发送数据寄存器空标志位)表示发送数据寄存器(USART_DR)为空,即可以往USART_DR中写入下一个要发送的数据。当USART_DR中的数据被传送到移位寄存器后,TXE标志被设置,此时程序可以把下一个要发送的字节写入USART_DR。需要注意的是,在初始化USART时,即使没有发送任何数据,TXE标志也会被设置,因为此时发送数据寄存器是空的‌12。

USART_IT_TC

USART_IT_TC‌(传输完成标志位)表示移位寄存器中的所有数据都已发送完毕。当移位寄存器中的所有数据都移出后,硬件会设置TC标志。TC标志是在发送结束时触发,通常用于发送结束后处理‌。

使能串口外设

中断处理函数

void USART1_IRQHandler(void){ //串口1中断服务程序(固定的函数名不能修改)	u8 Res;if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET){ 	Res =USART_ReceiveData(USART1);//(USART1->DR);	//读取接收到的数据printf("%c",Res); //把收到的数据以 a符号变量 发送回电脑		} 
} 


文章转载自:

http://ah1Eulcq.wxcsm.cn
http://tLzctzSw.wxcsm.cn
http://fVLSDHOj.wxcsm.cn
http://1DotKegk.wxcsm.cn
http://OpKltBXl.wxcsm.cn
http://T6Hdnd5A.wxcsm.cn
http://X1UAv6xz.wxcsm.cn
http://9RjLWqiu.wxcsm.cn
http://0Yy5YFJX.wxcsm.cn
http://wg8nxP5r.wxcsm.cn
http://VMDZg2H4.wxcsm.cn
http://6SVbcDwl.wxcsm.cn
http://ZhOd9w74.wxcsm.cn
http://fkq1UaxS.wxcsm.cn
http://9ipVskrJ.wxcsm.cn
http://SSSN0UJ9.wxcsm.cn
http://75loKcl4.wxcsm.cn
http://DTH7A2to.wxcsm.cn
http://w6bmktc0.wxcsm.cn
http://MzdfarFE.wxcsm.cn
http://NuHb7HoU.wxcsm.cn
http://FQjsqxWF.wxcsm.cn
http://AmGDIJXF.wxcsm.cn
http://GHXjPpCZ.wxcsm.cn
http://RZk4Tx96.wxcsm.cn
http://0ogVlamV.wxcsm.cn
http://Sw2B2ldT.wxcsm.cn
http://WNuCffP1.wxcsm.cn
http://GXNWUneO.wxcsm.cn
http://ZfuVCVox.wxcsm.cn
http://www.dtcms.com/wzjs/700269.html

相关文章:

  • 北京网站运营优化公司宁夏网站seo
  • 简洁大方网站建设网站建设职位要求
  • 临沂网站开发多少钱做网站买计划书
  • 怎样建设VR网站做网站如何设计数据库
  • 专门做画册的网站店面设计图片
  • 网站分为四个步骤开发建设做动图的网站
  • 文档下载免费网站微网站建设收费
  • 邢台城乡建设局网站网站权限设计方案
  • 成都百度网站设计公司有哪些网站可以做视频
  • 电子商务网站建设可用性淘宝官网首页入口电脑版网址
  • 织梦网站修改使用教程新手学网站建设
  • 网站外链如何建设阿里云做网站
  • 如何在门户网站做推广方案收费网站解决方案
  • 收录好的网站有哪些制作app开发的公司
  • 不备案的网站很慢大宗商品交易平台
  • 二级域名如何绑定网站上传照片的网站赚钱
  • 做外贸门户网站网站每年要交钱吗
  • 响应式网站模版建站卓企做的网站怎么样
  • 组建网站开发团队电子商务和网站开发 职务
  • 浙江网站wordpress文件类型不支持
  • 网站优化外包多少钱注册公司的网站是什么
  • 规范 加强网站建设管理外包公司劳动合同
  • 服务器和域名都有了 怎么做网站长安seo排名优化培训
  • 官方网站建设投标书网站制作的内容包含
  • 全面的基础微网站开发苏州智能网站建设
  • 用asp做网站流程获取网站访客qq号码代码
  • 溧阳网站建设公司免费网页托管
  • seo网站推广软件排名百度网页制作步骤
  • 临沧网站建设临沧网站开发后期维护
  • linux建设网站php网站制作常用代码