1、电平标准 根据通讯使用的电平标准不同,串口通讯可分为TTL标准和RS-232标准,如下表: 从图中可以看到,TTL电平标准使用5V表示高电平,使用0V表示低电平。在R232电平标准中,为了增加串口通讯的远距离传输及抗干扰能力,使用的是-15V表示高电平,使用+15V表示低电平。如下图为RS232和TLL电平标准表示同一个信号时的对比。 在电子电路中,一般使用TTL电平进行通
DAC可以将数字信号转换成模拟信号,在嵌入式系统开发中运用的十分广泛。在STM32实际运用中,可直接将数值映射成端口的电压值,通过大量的采样点输出,可达到输出指定波形的目的。1、设置系统时钟(Clock)2、打开DAC输出通道3、生成代码后,在User Code 2 处开启DAC通道HAL_DAC_Start(&hdac,DAC1_CHANNEL_1); 4、通过DAC显示方波m
转载
2024-07-08 12:46:03
0阅读
前言前段时间需要做一款频率采集设备,由于成本考虑,使用了APM32F103作为主控,APM32F103和STM32F103基本完全通用,有极个别BUG。不影响本次试验。客户要求的频率信号为11KHz到23KHz,精度要求在任何频率范围误差不能大于当前频率的万分之一以上(排除温度影响),采集速度要100次每秒以上。占空比可能会有变化。这种要求其实也只能选择STM32的输入捕获功能,我使用TIM2时钟
转载
2024-07-19 09:56:28
320阅读
用STM32输出PWM波形和用DAC功能简单使用1. 输出PWM波形1.1 PWM简介1.2 代码编写1.3 结果展示2. 用DAC实现输出2KHz正弦波2.1 DAC简介2.2 代码编写2.3 结果展示3. 用DAC将数字音频转换为模拟信号输出3.1 数字音频准备3.2 代码编写3.3 结果展示 1. 输出PWM波形1.1 PWM简介PWM是 Pulse Width Modulation 的缩
stm32的IO理解:STM32中空的I/O管脚是高电平还是低电平取决于具体情况。1、IO端口复位后处于浮空状态,也就是其电平状态由外围电路决定。2、STM32上电复位瞬间I/O口的电平状态默认是浮空输入,因此是高阻。做到低功耗。3、STM32的IO管脚配置口默认为浮空输入,把选择权留给用户,这是一个很大的优势:一方面浮空输入确保不会出现用户不希望的默认电平(此时电平取决于用户的外围电路);另一方
转载
2024-04-09 11:28:20
711阅读
物理接口与电信号常见的串口有UART口和COM,嵌入式里面说的串口,一般是指UART口。计算机上的串口常指RS232电平标准的COM口,UART口和COM口是指的物理接口形式(硬件),而TTL、RS-232、RS-485是指的电平标准(电信号)。 下面介绍一下这些电平标准: • TTL电平:输出低电平要小于0.8V,高电平要大于2.4V;输入低于1.2V就认为是0,高于2.0就认为是1; • RS
转载
2024-04-01 13:55:04
1442阅读
这次的教学是用CubeMX开启STM32的ADC 与 DAC功能本次测试再次换了一块板子,用的是STM32F103RCT6,并不是我想换哈,hal库无论你用啥板子,函数几乎都没发生改变,底层驱动又是软件默认帮我们设置好的,之所以换板子是因为系列中中低端的大多数板子是没有DAC功能的(ADC都有),以下赋一张F1的图 本次使用的RCT6就是F1系列上面这个48kbRAM这个,室友两个DAC的哈。第一
移植前的准备工作1. 获取STM32的裸机工程模板STM32的裸机工程模板直接使用野火STM32开发板配套的固件库例程即可。可以从我github上获取https://github.com/jiejieTop/TencentOS-Demo下载TencentOS tiny 源码TencentOS tiny的源码可从TencentOS tiny GitHub仓库地址https://github.com/
1.GPIO即通用输入输出口,可配置为8种输入输出模式2.引脚电平:0V-3.3V,部分引脚可容忍5V3.输出模式下可控制端口输出高低电平,用以驱动LED,控制蜂鸣器,模拟通信协议输出时序等4.输入模式下可读取端口的高低电平或电压,用于读取按键输入,外接模块电平信号输入,ADC电压采集,模拟通信协议数据等GPIO挂载在APB2总线上,分别为GPIOA,B,C等。每个GPIO外设共有16个引脚,编号
转载
2024-07-29 15:28:48
872阅读
GPIO(General-purpose input/output)即通用输入输出。GPIO是单片机最基本的外设,任何其他外设都离不开GPIO。本文将详细讲解GPIO的内部的构造及其工作原理,并附以简单的程序以供初学者学习。与51单片机不同(51单片机直接写P0=0xff或者P0^1=1就能对IO口进行高低电平的控制),STM32的IO在使用前必须进行IO口的初始化并启用对应的时钟,否则IO口是不
输入捕获模式可以用来测量脉冲宽度或者测量频率。STM32 的定时器,除了 TIM6 和 TIM7,其他定时器都有输入捕获功能。以下是对脉冲宽度及频率的计算。1、脉冲宽度如下图所示,采集该高电平脉冲的宽度,只需要进入输入捕获上升沿检测,记录当前的发生上升沿时的CNT值,再进行输入捕获下降沿检测,也记录当前发生下降沿时的CNT值,两次CNT值的差值再根据计数的频率就可以算出脉冲的宽度。上升沿及下降沿捕
转载
2023-10-17 14:20:42
131阅读
ESP32有两个ADC,每个ADC有多个通道,同一时间每个ADC只能采集一个通道ADC输出关键字:Serial.println(analogRead(35)); //analogRead(35)获取指定IO口的模拟电压数据(该方法将阻塞直到采集完成);数据范围为0~2^12-1,即0~4095.ESP32 DAC有两个脚:25 26DAC输出关键字:dacWrite(25, 100); //2
转载
2024-05-06 22:41:36
1028阅读
WiFi物联网智能插座硬件设计的重点就是电能计量,为此单独写一篇博文讲解电量计量的设计方案和实现原理。电量计量选用上海贝岭的BL0942芯片,最主要有原因是:硬件方案设计简单、计量精度不错且免校准、价格便宜以及软件驱动方法简单。 项目PCB、原理图和代码下载:1、芯片功能BL0942 能够测量电流、电压有效值、有功功率、有功电能量等参数,可输出快速电流有效值(用于过流保护),以及波形输出等功能,外
判断STM32 GPIO输入口的输入状态(高电平或低电平)以PE2和PE4为例:① 判断单个端口是否为高电
原创
2023-02-18 08:56:50
1151阅读
stm32 fsmc 功能讲解LCD有如下控制线:CS:Chip Select 片选,低电平有效RS:Register Select 寄存器选择WR:Write 写信号,低电平有效RD:Read 读信号,低电平有效RESET:重启信号,低电平有效DB0-DB15:数据线假如这些线,全部用普通IO口控制。根据LCD控制芯片手册(大部分控制芯片时序差不多):如果情况如下:DB0-DB15的IO全部为1
图一图二PWM应用非常广泛,但是不同的项目对输出的PWM又有特殊要求,为满足这些要求我们需要更多的实验来验证。接下来讲述图一显示波形的输出方法步骤(图二为异常波形)。一、本实例所使用资源:1、TIM4_CH3(对应管脚PB8)用于输出PWM波形2、TIM3用于产生中断3、MDK 软件仿真方法 二、执行过程:1、初始化配置TIM4_CH3对应管脚的PWM输出功能(频率与占空比可变)。2、初始化配置使
转载
2024-10-29 06:51:02
253阅读
脉冲宽度调制(PWM),是英文“Pulse Width Modulation”的缩写,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。简单一点,就是对脉冲宽度的控制。STM32 的定时器除了 TIM6 和 7。其他的定时器都可以用来产生 PWM 输出。其中高级定时器 TIM1&
转载
2024-04-24 09:09:49
202阅读
STM32CubeIDE + ITM SWV实现printf调试信息的打印STM32开发时,使用printf函数来打印信息是一种方便的调试方法。不需要像使用断点来中断程序运行即可方便地查看想要的信息。一般,可以通过串口输出调试信息,或将printf重定向到串口输出上,但是这样就占用了串口的硬件资源,而且接线上比较麻烦。而ITM就是一种特别方便用于调试诊断的工具,不需要占用额外的硬件资源即可方便地实
文将介绍通过STM32的定时器输出PWM,如果对定时器不太熟悉的同学可以看下之前的文章《STM32基础定时器详解》,关于定时器的基础功能不再详解。 01、PWM介绍 PWM定义:脉冲宽度调制(PulseWidthModulation,PWM)简称脉宽调制。通俗讲,PWM是一种对模拟信号电平进行数字编 ...
转载
2021-02-20 19:45:00
1145阅读
2评论
目录STM32的PWM输出介绍:pwm输出配置:附件本文记录STM32F103PWM输出配置过程,及simulink模型配置,代码生成STM32的PWM输出介绍:脉冲宽度调制模式可以生成一个信号,该信号频率由TIMx_ARR 寄存器值决定,其占空比则由TIMx_CCRx 寄存器值决定。从下图可以看出,当CCR寄存器和CNT计数器数值一样时,会产生动作(改变通道对应的GPIO电平)。由于CNT溢出时