草庐IT

【STM32】GPIO之蜂鸣器

文章目录00.目录01.蜂鸣器简介02.硬件设计03.程序示例一04.程序示例二05.程序实例三06.附录07.声明01. 蜂鸣器简介蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣器和电磁式蜂鸣器两种类型。探索者STM32F4开发板板载的蜂鸣器是电磁式的有源蜂鸣器,如图7.1.1所示: 这里的有源不是指电源的“源”,而是指有没有自带震荡电路,有源蜂鸣器自带了震荡电路,一通电就会发声;无源蜂鸣器则没有自带震荡电路,必须外部提供2~5Khz左右的方波驱动,才能发声

STM32(HAL库)通过ADC读取MQ2数据

目录1、简介2、CubeMX初始化配置2.1基础配置2.1.1SYS配置 2.1.2RCC配置2.2ADC外设配置2.3 串口外设配置 2.4项目生成 3、KEIL端程序整合3.1串口重映射3.2ADC数据采集3.3主函数代3.4效果展示1、简介本文通过STM32F103C8T6单片机通过HAL库方式对MQ2烟雾传感器进行数据的读取,并通过串口来进行显示。2、CubeMX初始化配置2.1基础配置2.1.1SYS配置 2.1.2RCC配置2.2ADC外设配置2.3 串口外设配置 2.4项目生成 3、KEIL端程序整合3.1串口重映射具体步骤:stm32(HAL库)使用printf函数打印到串口3

STM-32:USART串口协议、串口外设—数据发送/数据发送+接收

目录一、串口通信1.1通信接口1.2串口通信1.2.1简介1.2.2硬件电路1.2.3串口参数及时序二、STM32的USART外设2.1USART简介2.2USART框图三、数据传输3.1数据帧3.2输入数据策略3.2.1起始位侦测3.2.2数据采样3.3波特率发生器3.4数据模式四、实际用例4.1串口发送4.1.1接线图4.1.2程序代码4.2串口发送+接收4.2.1接线图4.2.2程序代码一、串口通信1.1通信接口通信的目的:将一个设备的数据传送到另一个设备,扩展硬件系统。比如STM32芯片里面集成了很多功能模块,如定时器计数、PWM输出、AD采集等等,这些都是芯片内部的电路,它们的配置寄

STM32MP157驱动开发——按键驱动(tasklet)

文章目录“tasklet”机制:内核函数定义tasklet使能/禁止tasklet调度tasklet删除tasklettasklet软中断方式的按键驱动程序(stm32mp157)tasklet使用方法:button_test.cgpio_key_drv.cMakefile修改设备树文件编译测试“tasklet”机制:阅读Linux系统中异常与中断可知,Linux系统对中断处理的演进过程中,实现了中断的扩展:硬件中断、软件中断硬件中断有:GPIO,网络中断(net),系统滴答中断(tick)等软件中断有:定时器,tasklet等内核中的软中断:该数组里面有个action成员,该成员是个函数,函

LVGL的初步了解以及移植到STM32

1、LVGL简介        LVGL是最受欢迎的免费开源嵌入式图形库,可为任何MCU、MPU和显示器类型创建漂亮的用户界面。使用SquareLine工作室,使用拖放UI编辑器来简化开发。1.1、LVGL源码下载lvgl在github上的开源代码https://github.com/lvgl/lvgl下载的源码包里面所有的        1.2、LVGL移植要求16、32或64位微控制器或处理器建议速度大于16MHz闪存/ROM:>64kB(建议180kB)内存:8kB(建议24kB)1个帧缓冲器:在MCU、外部RAM或显示控制器中LVGL的图形缓冲:>“水平分辨率”像素(推荐1/10“屏幕

使用jetson nano的串口与stm32进行通信

首先,jetsonnano可以跑python,那就简单了:importserialasserse=ser.Serial("/dev/ttyTHS1",115200,timeout=1)#se.open()se.write("hello北冥\r".encode("GB2312"))#se.write(str("hello,北冥\r\n").encode("GB2312"))se.close()端口就是:GND,8,10,分别接到我STM32F4最小系统板子的UART2:板子为了方便观察,就用uart2接收,用uart1发送,为啥不用同一个串口呢?嗯…我乐意…/*USERCODEBEGINHead

STM32 RS485串口DMA发送问题记录及调试解决

文章目录@[toc]STM32RS485串口DMA接收及发送,问题记录及调试解决1.数据接收2.数据发送2.1调用HAL_UART_Transmit()进行发送2.2调用HAL_UART_Transmit_DMA()进行发送STM32RS485串口DMA接收及发送,问题记录及调试解决芯片型号:STM32F767IGT6、SP3485,如图1、图2所示。图1主芯片型号图2485芯片型号开发环境:KeiluVision5、STM32CubeMX,如图3、图4所示。图3KeiluVision版本信息图4STM32CubeMX版本信息之前与上层设备的通讯协议是基于MODBUSTCP进行地相应开发,但因

【FreeRTOS】FreeRTOS移植stm32详细步骤介绍

我在查找FreeRTOS移植的相关教程特别少,所以想非常详细的介绍FreeRTOS移植stm32详细步骤,包括源码的下载,源码介绍,系统移植,代码验证等,每一步都有对应的介绍和解释,希望可以帮助到你们。文章目录1.FreeRTOS源码的下载2.FreeRTOS源码介绍3.FreeRTOS系统移植4.系统代码验证1.FreeRTOS源码的下载官网下载,仓库下载,镜像下载,百度网盘下载,私信我1.1可以直到FreeRTOS官网去下载,【FreeRTOS官网传送门】,但是下载速度很慢,不翻墙的话不建议使用这个方法下载。1.1.1官网页面如下,点击右上角或下方的下载入口1.1.2进入下载页面有两个下载

STM32外设介绍

STM32F1系列所有外设大致介绍(可参考数据手册中的外设资源表)GPIO:通用的IO口,可用于点灯,读取按键等AFIO:复用IO口,完成复用功能端口的重定义,中断端口的配置EXIT:外部中断(配置好外部中断时,当引脚有电平变化时,就可以触发中断,让CPU处理任务)TIM:定时器(分为高级定时器、通用定时器和基本定时器)ADC:模数转换器(直接读取IO口的模拟电压值,无需外部连接AD芯片)DMA:直接内存访问USART:同步/异步串口通信(UART是异步串口)I2C和SPI:I2C通信和SPI通信(STM32内置了它们的控制器,可以用硬件来输出时序波形,还可以用通用IO口来模拟时序波形)CAN

STM32F103标准库开发:Keil5新建STM32工程

STM32标准库版工程模板链接STM32F103标准库开发—目录首先需要搭建Keil5编译环境,才可以新建STM32工程。Keil5编译环境搭建流程----STM32和GD32新建STM32工程步骤一:创建工程模板文件新建一个文件夹template在文件夹template里面新建四个文件(1)CMSIS:存放内核驱动程序和启动引导文件(2)FWLIB:存放库函数文件(3)Project:存放工程文件(4)User:存放用户程序(主函数)具体效果图如下:步骤二:导入stm32固件库STM32固件库的下载链接1.打开STM32F10x固件库文件其中需要用到的两个文件:Libraries和Proje