草庐IT

STM32CubeMX教程17 DAC - 输出三角波噪声波

1、准备材料正点原子stm32f407探索者开发板V2.4STM32CubeMX软件(Version6.10.0)keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动野火DAP仿真器XCOMV2.6串口助手一台示波器2、实验目标使用STM32CubeMX软件配置STM32F407开发板的DACOUT1实现输出三角波3、实验流程3.0、前提知识STM32F407的DAC输出引脚除可以输出DACoutput=VREF+*DOR/4095的模拟电压之外,其DAC控制逻辑中还有两个重要的波形生成器Wavegenerationmode,分别为三角波和噪声波,本小节的实验主要以生成三角

单片机(STM32,GD32,NXP等)中BootLoader的严谨实现详解

Bootloader(引导加载程序)的主要任务是引导加载并运行应用程序,我们的软件升级逻辑也一般在BootLoader中实现。本文将详细介绍BootLoader在单片机中的实现,包括STM32、GD32、NXPKinetis等等的所有单片机,因为无论是什么样的芯片,它实现的逻辑都是一样的。注意,本篇文章主要是介绍实现一个严谨的BootLoader需要掌握的基本知识和需要考虑的细节,如果不注意一些细节,应用层的代码很可能会受到影响。对于Linux的BootLoader来说其实也是一样的,但它还需要初始化MMU、引导内核等等,这里我们不做过多的讨论。文章目录1基础知识1.1NORFlash和NAN

STM32G0-内部flash读写驱动[寄存器版]

基本概念首先给出一个STM32G030芯片的闪存结构图:STM32G0的闪存模块由于Main memory(主储存器),information block(信息块)两个部分组成。Main memory(主储存器):用于储存用户编译烧录的代码和数据常量。information block(信息块):信息块同样被分为了好几个部分:systemmemory(系统内存):系统存储区是用户不能访问的区域,它在芯片出厂时已经固化了启动代码,它负责实现串口、USB以及CAN等ISP烧录功能。OTP area(OTP区域):指的是只能写入一次的存储区域,容量为1K,写入后数据无法更改,OTP常用于存储应用程序

STM32CubeMX教程17 DAC - 输出三角波噪声波

1、准备材料正点原子stm32f407探索者开发板V2.4STM32CubeMX软件(Version6.10.0)keilµVision5IDE(MDK-Arm)ST-LINK/V2驱动野火DAP仿真器XCOMV2.6串口助手一台示波器2、实验目标使用STM32CubeMX软件配置STM32F407开发板的DACOUT1实现输出三角波3、实验流程3.0、前提知识STM32F407的DAC输出引脚除可以输出DACoutput=VREF+*DOR/4095的模拟电压之外,其DAC控制逻辑中还有两个重要的波形生成器Wavegenerationmode,分别为三角波和噪声波,本小节的实验主要以生成三角

STM32F4_网络通信(网口)

前言    STM32F4开发板上自带了网口。可以通过开发板自带的网口和LWIP实现:TCP服务器、TCP客服端、UDP以及WEB服务器等四个功能。1.STM32以太网简介    STM32F4芯片自带以太网模块,该模块包括带有专用DMA控制器的MAC802.3(介质访问控制)控制器,支持介质独立接口(MII)和简化介质独立接口(RMII),并自带了一个用于外部PHY通信的SMI接口,通过一组配置寄存器,用户可以为MAC控制器和DMA控制器选择所需的模式和功能。        STM32F4必须外接PHY芯片,才可以完成以太网通信,外部PHY芯片可以通过MII/RMII接口与STM32F4内部

在Keil中给STM32定义大数组

1、问题:    在keil中定义大数组,若不恰当,可能会出现程序不正常工作。在我的程序里,若定义了大数组,串口无法使用。2、解决办法:2.1首先调节StackSize的大小,默认为0x0400。具体操作步骤如下: 2.2其次,尽量将大数组定义为全局变量。若定义在函数中,也很有可能导致程序出错。

【STM32】两个版本MDK搭建和三种调试器的使用

一、KeilMDK4的安装和介绍1.KeilMDK和KeilC51的关系1)Keil原来是专门做51,后面被ARM收购,2)KeilMDK是KeilC51的另外一个版本。2.MDK4下载KeilEmbeddedDevelopmentToolsforArm,Cortex-M,Cortex-R4,8051,C166,and251processorfamilies.二、MDK5的开发环境搭建和介绍1.MDK的引入1)Keil官网中的MDK5和MDK4完全分离的2)MDK5和MDK4可以在同一个windows中共存2.MDK5的下载和安装1)最新版本下载2)pack的在线更新和离线更新【pack(补丁

串口通信介绍

文章目录1-串口通信简介(DB9接口讲解)2-串口通信基本原理(1)串口通信连线(2)串口通信时序【1】波特率【2】起始位【3】数据位【4】奇偶校验位【5】停止位3-TTL、RS232以及RS485介绍(1)TTL(2)RS232(3)RS232和TTL之间的转换(4)RS4854-串口通信特点1-串口通信简介(DB9接口讲解)任何通信都要有信息传输载体,或者是有线的或者是无线的。串口通信是通过串口线进行有线通信。串口通信在早期是计算机与外界通信的主要手段,那时候的计算机基本上都标配有串口以实现和外部通信。串口通信早期就定义了一套标准的串口规约,DB9(9个引脚)接口就是标准接口,此外还有不常

蓝桥杯嵌入式(G4系列):RTC时钟

前言:     关于RTC时钟的HAL库配置我也是第一次,之前都是用库函数的写法,这里写下这篇博客来记录一下自己的学习过程。STM32Cubemx配置:    首先点击左侧的Timers的RTC,勾选以下选项    进入时钟树配置     进入时间设置,这里我把时间设置为了2023年3月12日20点20分,但是我圈出来的地方一定要注意,125✖6000刚好是750Mhz,一秒发生一次中断     到此为止,我们的STM32Cubemx配置就算是结束了,直接点击生成代码,接下来就是写代码了。代码部分:    这里有几点需要给大家强调一下,获取RTC时间或者日期时,必须先获取时间,再获取日期,顺序

【mcuclub】四相五线步进电机

一、实物图(四相五线步进电机,型号:28BYJ-48-5V)二、原理图编号名称功能1IN1脉冲输入端2IN2脉冲输入端3IN3脉冲输入端4IN4脉冲输入端8GND电源地9COM续流二极管负极的公共端,接电源正13OT4脉冲输出端14OT3脉冲输出端15OT2脉冲输出端16OT1脉冲输出端三、简介(工作原理)步进电机是一种将电脉冲信号转换成相应角位移或线位移的电动机。每输入一个脉冲信号,转子就转动一个角度或前进一步,其输出的角位移或线位移与输入的脉冲数成正比,转速和角加速度与脉冲频率成正比(在非超载的情况下)。因此,步进电动机又称脉冲电动机。步进电机作为一种可控制用的特种电机,利用其没有累计误差