美高梅官网,金沙网投领导者,金沙网投网站,金沙网投开户 > 控制/MCU > 正文

STM32的优势在哪里?如何使用DMA来进行ADC操作?

? 2018年05月22日 07:32 ? 次阅读

美高梅官网,金沙网投领导者,金沙网投网站,金沙网投开户 www.tongshi-cn.com STM32的优点在哪里?除去宣传环节,细细分析,STM32时钟不算快,72MHZ,也不能扩展大容量的RAM FLASH,同样没有DSP那样强大的指令集。它的优势在哪里呢?

---就在快速采集数据,快速处理上?!RM的特点就是方便?!≌飧隹焖俨杉?,高性能的ADC就是一个很好的体现,12位精度,最快1uS的转换速度,通常具备2个以上独立的ADC控制器,这意味着,

STM32可以同时对多个模拟量进行快速采集,这个特性不是一般的MCU具有的。以上高性能的ADC,配合相对比较块的指令集和一些特色的算法支持,就构成了STM32在电机控制上的强大特性。

STM32的优势在哪里?如何使用DMA来进行ADC操作?

好了,正题,怎末做一个简单的ADC?

注意是简单的,ADC是个复杂的问题,涉及硬件设计,电源质量,参考电压,信号预处理等等问题。我们只就如何在MCU内完成一次ADC作讨论。

谈到ADC,我们还要第一次引入另外一个重要的设备DMA。DMA是什么东西呢。

通常在8位单片机时代,很少有这个概念。在外置资源越来越多以后,

我们把一个MCU内部分为 主处理器 和 外设两个部分。主处理器当然是执行我们指令的主要部分,外设则是 串口 I2C ADC 等等用来实现特定功能的设备,

回忆一下,8位时代,我们的主处理器最常干的事情是什么?逻辑判断?不是。那才几个指令计算算法?不是。大部分时候算法都很简单?!∈率瞪?,主处理器就是作个搬运工,

把USART的数据接收下来,存起来

把ADC的数据接收下来,存起来

把要发送的数据,存起来,一个个的往USART里放。

…………

为了解决这个矛盾,人们想到一个办法,让外设和内存间建立一个通道,在主处理器允许下,让外设和内存直接 读写,这样就释放了主处理器,这个东西就是DMA。

打个比方:

一个MCU是个公司。老板就是主处理器员工是外设,仓库就是内存

从前 仓库的东西都是老板管的。员工需要原料工作,就一个个报给老板,老板去仓库里一个一个拿。员工作好的东西,一个个给老板,老板一个个放进仓库里。老板很累,虽然老板是超人,也受不了越来越多的员工和单子。

最后老板雇了一个仓库保管员,它就是DMA

他专门负责 入库和出库,只需要把出库 和入库计划给老板过目老板说OK,就不管了。

后面的入库和出库过程,员工只需要和这个仓库保管员打交道就可以了。

--------闲话,马七时常想,让设备与设备之间开DMA,岂不更牛X,比喻完成。

ADC是个高速设备,前面提到。而且ADC采集到的数据是不能直接用的。即使你再小心的设计外围电路,测的离谱的数据总会出现。那么通常来说,是采集一批数据,然后进行处理,这个过程就是软件滤波。

DMA用到这里就很合适。让ADC高速采集,把数据填充到RAM中,填充一定数量,比如32个,64个MCU再来使用。

-----多一句,也可以说,单次ADC毫无意义。

下面我们来具体介绍,如何使用DMA来进行ADC操作。初始化函数包括两部分,DMA初始化和 ADC初始化我们有多个管理员--DMA,一个管理员当然不止管一个DMA操作。所以DMA有多个Channel

//ADC with DMA Init

#define ADC_Channel ADC_Channel0

#define ADC1_DR_Address ((u32)0x4001244C)

void ADCWithDMAInit()

{

//DMA init; Using DMA channel 1

DMA_DeInit(DMA1_Channel1); //开启DMA1的第一通道

DMA_InitStruct.DMA_PeripheralBaseAddr = ADC1_DR_Address; //DMA对应的外设基地址,这个地址走Datasheet查

DMA_InitStruct.DMA_PeripheralDataSize = DMA_PeripheralDataSize_HalfWord; //转换结果的数据大小

DMA_InitStruct.DMA_MemoryBaseAddr = (unsigned long)&ADC_ConvertedValue; //

DMA_InitStruct.DMA_DIR = DMA_DIR_PeripheralSRC; //DMA的转换模式是SRC模式,就是从外设向内存中搬运,

DMA_InitStruct.DMA_M2M = DMA_M2M_Disable; //M2M模式禁止,memory to memory,这里暂时用不上,以后介

DMA_InitStruct.DMA_MemoryDataSize = DMA_MemoryDataSize_HalfWord; //DMA搬运的数据尺寸,注意ADC是12位的,

HalfWord就是16位

DMA_InitStruct.DMA_MemoryInc = DMA_MemoryInc_Disable; //接收一次数据后,目标内存地址是否后移--重

要概念,用来采集多个数据的

DMA_InitStruct.DMA_PeripheralInc = DMA_PeripheralInc_Disable; //接收一次数据后,设备地址是否后移

DMA_InitStruct.DMA_Mode = DMA_Mode_Circular; //转换模式,循环缓存模式,常用,M2M果果开启了,这个模式失效

。

DMA_InitStruct.DMA_Priority = DMA_Priority_High; //DMA优先级,高

DMA_InitStruct.DMA_BufferSize = 1; //DMA缓存大小,1个

DMA_Init(DMA1_Channel1,&DMA_InitStruct);

// Enable DMA1

DMA_Cmd(DMA1_Channel1, ENABLE);

}

void ADCx_Init(unsigned char ADC_Channel)

{

ADC_DeInit(ADC1); //开启ADC1

ADC_InitStruct.ADC_Mode = ADC_Mode_Independent; //转换模式,为独立转换。转换模式太多了,以后深究

ADC_InitStruct.ADC_DataAlign = ADC_DataAlign_Right; //对齐方式,ADC结果是12位的,显然有个对齐左边还是右边

的问题。一般是右对齐

ADC_InitStruct.ADC_ConTInuousConvMode = ENABLE; //连续转换模式开启

ADC_InitStruct.ADC_ExternalTrigConv = ADC_ExternalTrigConv_None; //ADC外部出发开关,关闭

ADC_InitStruct.ADC_NbrOfChannel = 2; //开启通道数,2个

ADC_InitStruct.ADC_ScanConvMode = ENABLE; //扫描转换模式开启

ADC_Init(ADC1, &ADC_InitStruct);

ADC_RegularChannelConfig(ADC1, ADC_Channel, 1, ADC_SampleTIme_239Cycles5); //规则组通道设置,关键函数 转

换器ADC1,选择哪个通道channel,规则采样顺序,1到16,以后解释详细含义,最后一个参数是转换时间,越长越准越稳定

// ADC1 to DMA, Enable

ADC_DMACmd(ADC1, ENABLE); //ADC命令,和DMA关联。

//ADC1 Enable

ADC_Cmd(ADC1,ENABLE); //开启ADC1

//Reset the CalibraTIon of ADC1

ADC_ResetCalibraTIon(ADC1); //重置校准

//wait until the Calibration‘s finish

while(ADC_GetResetCalibrationStatus(ADC1)) //等待重置校准完成

;

ADC_StartCalibration(ADC1); //开始校准

while(ADC_GetCalibrationStatus(ADC1)) //等待校准完成

;

ADC_SoftwareStartConvCmd(ADC1, ENABLE); //连续转换开始,从选择开始,MCU可以不用管了,ADC将通过DMA不断刷新

制定RAM区

// Attach them;

}

最后讲讲滤波算法

滤波的方法以后会开个专题。

特别提一下---没有完美的滤波算法,只有合适的滤波算法。

需要综合考虑信号特点,噪声特点,控制对象等等,

这里用个最简单的滤波算法,均值滤波。

采样16次,取平均值,吼吼,在豆皮上跳动还是蛮小的,合适,吼吼

//16ms finish a ADC detection

// return mv

unsigned int ADC_filter(void)

{

unsigned int result=“0”;

unsigned char i;

for(i=16;i》0;i--)

{

Delay_xms(1);

result += ADC_ConvertedValue;

}

return (unsigned int)(((unsigned long)(result》》4))*3300》》12);

}

技术专区

关注电子发烧友微信

有趣有料的资讯及技术干货

下载发烧友APP

打造属于您的人脉电子圈

关注发烧友课堂

锁定最新课程活动及技术直播
收藏 人收藏
分享:

评论

相关推荐

TMS570LS3137应用SPI的Compatibility Mode,请问怎么用程序实现SD卡的读写操作?

发表于 2018-05-22 09:23 ? 47次阅读
TMS570LS3137应用SPI的Compatibility Mode,请问怎么用程序实现SD卡的读写操作?

设计用于ADC的单极和双极滤波器的响应

在我的上一篇文章中,我讨论了增量-累加模数转换器 (ADC) 的2个重要特点。这2个特点简化了抗混叠...

发表于 2018-05-22 09:17 ? 203次阅读
设计用于ADC的单极和双极滤波器的响应

STM32串口实现485双机通信的原理

如果按键按下了,就会发送数据,就会产生接收中断,就会往我们定义的接收缓冲区(RS485_RX_BUF...

发表于 2018-05-21 17:27 ? 226次阅读
STM32串口实现485双机通信的原理

请问STM32单片机和 ABZ三相接口的编码器该怎么连接?

发表于 2018-05-21 15:06 ? 371次阅读
请问STM32单片机和 ABZ三相接口的编码器该怎么连接?

ad7606与stm32连接电路介绍

本文首先对stm32产品概述及特性进行了介绍,其次介绍了AD7606相关概念,最后介绍了ad7606...

发表于 2018-05-21 11:45 ? 50次阅读
ad7606与stm32连接电路介绍

Spectrum仪器宣布推出可独立运行,且具有高...

德国汉斯多尔夫,2018年5月17日讯—为了满足产品在各个领域的灵活应用,全球领先的PC测试测量设计...

发表于 2018-05-21 10:42 ? 30次阅读
Spectrum仪器宣布推出可独立运行,且具有高...

一文了解STM32窗口看门狗的真正作用

STM32有2个看门狗:独立看门狗和窗口看门狗。 独立看门狗IWDG--独立于系统之外,因为有独立...

发表于 2018-05-20 10:17 ? 234次阅读
一文了解STM32窗口看门狗的真正作用

如何判断STM32的复位类型_STM32软件复位...

上电复位,是为了为程序的开始作好准备,强制的所有的数据清零,它必须要从零开始。

发表于 2018-05-20 10:06 ? 241次阅读
如何判断STM32的复位类型_STM32软件复位...

三分钟你就懂得如何?;ど淦挡裳鵄DC的输入?

任何高性能ADC,尤其是射频采样ADC,输入或前端的设计对于实现所需的系统级性能而言很关键。很多情况...

发表于 2018-05-20 09:39 ? 115次阅读
三分钟你就懂得如何?;ど淦挡裳鵄DC的输入?

一种方法:倒置双斜率ADC提高动态范围

四十年来,双斜率积分A/D转换已经成为大多数数字万用表和许多工业和仪器应用的核心。双斜率模数转换器结...

发表于 2018-05-20 09:33 ? 55次阅读
一种方法:倒置双斜率ADC提高动态范围

STM32F0多路ADC采样中的BUG和解决方案

使用CUBE生产的ADC无法配置多路采样,多路采样采集值不对,研究后发现是底层函数没有将CHANNE...

发表于 2018-05-18 15:01 ? 78次阅读
STM32F0多路ADC采样中的BUG和解决方案

一文解析stm32产生spwm原理及程序

SPWM(Sinusoidal PWM)法是一种比较成熟的,目前使用较广泛的PWM法。SPWM法就是...

发表于 2018-05-18 09:11 ? 1763次阅读
一文解析stm32产生spwm原理及程序

stm32休眠_RTC定时唤醒来喂狗

在STM32开发中经?;嵊玫蕉懒⒖疵殴罚↖WDG)和低功耗模式,看门狗是为了检测和解决由软件错误引起...

发表于 2018-05-18 01:56 ? 62次阅读
stm32休眠_RTC定时唤醒来喂狗

STM32独立看门狗和低功耗模式_RTC定时唤醒...

在STM32开发中经?;嵊玫蕉懒⒖疵殴罚↖WDG)和低功耗模式,看门狗是为了检测和解决由软件错误引起...

发表于 2018-05-18 01:55 ? 40次阅读
STM32独立看门狗和低功耗模式_RTC定时唤醒...

STM32独立看门狗介绍_STM32单片机独立看...

STM32的独立看门狗由内部专门的40Khz低速时钟驱动,即使主时钟发生故障,它也仍然有效。这里需要...

发表于 2018-05-18 01:49 ? 69次阅读
STM32独立看门狗介绍_STM32单片机独立看...

基于STM32内置ADC实现简易示波器的程序设计...

ADC转换:STM32增强型芯片内置的2个独立ADC,可以有16个通道,并且2个通道可以并行的同步采...

发表于 2018-05-18 01:44 ? 149次阅读
基于STM32内置ADC实现简易示波器的程序设计...

STM32单片机的模拟看门狗的库函数设置

ADC的模拟看门狗用于检查电压是否越界。他又上下两个边界,可分别在寄存器ADC_HTR和ADC_LT...

发表于 2018-05-18 01:29 ? 44次阅读
STM32单片机的模拟看门狗的库函数设置

一文看懂stm32的引脚的两种用途:GPIO和A...

stm32的引脚有两种用途:GPIO(generalpurposeio)和AFIO(alternat...

发表于 2018-05-18 01:22 ? 106次阅读
一文看懂stm32的引脚的两种用途:GPIO和A...

STM32的ADC简介_DMA方式的程序设计与实...

ADC(Analog-to-Digital Converter,模/ 数转换器)。也就是将模拟信号...

发表于 2018-05-18 01:12 ? 98次阅读
STM32的ADC简介_DMA方式的程序设计与实...

一文读懂STM32之独立看门狗/窗口看门狗的原理

STM32的独立看门狗由内部专门的40Khz低速时钟驱动,即主时钟发生故障,它也仍然有效,这里我们需...

发表于 2018-05-18 01:06 ? 40次阅读
一文读懂STM32之独立看门狗/窗口看门狗的原理

【10GB+STM32学习资料免费下载】风媒电子首发 青柚ZERO物联网开发板

发表于 2018-05-17 22:39 ? 241次阅读
【10GB+STM32学习资料免费下载】风媒电子首发 青柚ZERO物联网开发板

为精密 ADC 寻找合适的低噪声放大器

发表于 2018-05-17 20:08 ? 287次阅读
为精密 ADC 寻找合适的低噪声放大器

ST MCU的生态系统:物联网催生新服务 STM...

生态系统原意是指在一定的地域内,生物与环境形成的统一的整体。随着经济社会的发展,现在我们提到生态系统...

发表于 2018-05-17 17:16 ? 580次阅读
ST MCU的生态系统:物联网催生新服务 STM...

窗口看门狗的作用是什么?窗口看门狗复位分析

程序初始化LED点亮延时300ms熄灭,窗口看门狗从0x7F开始递减计数,上窗口为0x5F,下窗口为...

发表于 2018-05-17 13:54 ? 73次阅读
窗口看门狗的作用是什么?窗口看门狗复位分析

STM32看门狗WWDG和IWDG的区别是什么

STM32有2个看门狗:独立看门狗和窗口看门狗。 独立看门狗IWDG:独立于系统之外,因为有独立时...

发表于 2018-05-17 13:51 ? 40次阅读
STM32看门狗WWDG和IWDG的区别是什么

RC522射频??槭迪諱1卡钱包功能

发表于 2018-05-17 12:05 ? 360次阅读
RC522射频??槭迪諱1卡钱包功能

stm32驱动ad9854程序分享_ad9854...

AD9854数字合成器是高集成度的器件。本文首先介绍了ad9854优势和特点,其次介绍了ad9854...

发表于 2018-05-17 09:23 ? 223次阅读
stm32驱动ad9854程序分享_ad9854...

做一个对讲机的图纸,用NRF24L01和 STM32或者是51单片机来实现语音对讲

发表于 2018-05-17 01:03 ? 147次阅读
做一个对讲机的图纸,用NRF24L01和 STM32或者是51单片机来实现语音对讲

STM32调试步骤

调试前,首先跳线J9的2-3脚短接,跳线J4的右边两个脚短接,跳线J5短接,J8短接,J2的1-2短...

发表于 2018-05-16 10:42 ? 397次阅读
STM32调试步骤

了解TrueSTUDIO9.0给STM32开发带...

现在ST正式发布整合后第一个Atollic TrueSTUDIO版本 9.0,正式为STM32用户提...

发表于 2018-05-16 09:24 ? 829次阅读
了解TrueSTUDIO9.0给STM32开发带...

教你设计一个接收机和发射机FDD系统

本文介绍一种新型高中频架构,其显著削减了接收机和发射机的尺寸、重量、功耗与成本,而系统规格不受影响。...

发表于 2018-05-16 09:19 ? 875次阅读
教你设计一个接收机和发射机FDD系统

STM32F103ZET6 用STM32cubermx生成的程序,现在在STM32cubermx修改时钟设置的系数后,PCLK1,PCLK2时钟都是错误的,

发表于 2018-05-15 16:18 ? 266次阅读
STM32F103ZET6 用STM32cubermx生成的程序,现在在STM32cubermx修改时钟设置的系数后,PCLK1,PCLK2时钟都是错误的,

AVRNET源码并移植STM32 ARP和Eth...

eth_generate_header函数实现了填充以太网首部的功能,第一个输入参数为发送接收缓冲区...

发表于 2018-05-15 09:15 ? 121次阅读
AVRNET源码并移植STM32 ARP和Eth...

32X64 LED点阵显示不了多个汉字问题

发表于 2018-05-14 18:05 ? 153次阅读
32X64 LED点阵显示不了多个汉字问题

高速ADC/DAC的测试方法

刚刚讲了动态指标,静态指标就相对容易,用高阶的数字万用表,不是手持的那种哦,是专业的可编程的6位半的...

发表于 2018-05-14 10:26 ? 236次阅读
高速ADC/DAC的测试方法

STM32中的位带(bit-band)操作

位带别名区的字只有 LSB 有意义。另外,在访问位带别名区时,不管使用哪一种长度的数据传送指令(字/...

发表于 2018-05-13 09:28 ? 205次阅读
STM32中的位带(bit-band)操作

采用一片STM32和MAX485芯片以及两片6N137组成光隔离485通信系统,怎么测试该系统的误码率?

发表于 2018-05-11 16:41 ? 204次阅读
采用一片STM32和MAX485芯片以及两片6N137组成光隔离485通信系统,怎么测试该系统的误码率?

关于ADC中几种通用的输入采样结构

随着数字化的普及和技术的发展,A/D转换器的应用无处不见。在目前使用的众多 CMOS A/D转换器中...

发表于 2018-05-11 11:57 ? 179次阅读
关于ADC中几种通用的输入采样结构

想问下stm32定时器的死区时间主要用于哪类电机

发表于 2018-05-10 22:23 ? 207次阅读
想问下stm32定时器的死区时间主要用于哪类电机

STM32单片机的串口通信波特率计算方法

不管是什么单片机,在使用串口通信的时候,有一个非常重要的参数:波特率。什么是波特率:波特率就是每秒传...

发表于 2018-05-10 11:49 ? 599次阅读
STM32单片机的串口通信波特率计算方法

全球MCU市场1/5归ST,中国CAGR达27%

【导读】ST通用STM32 MCU斩获全球1/5市场份额,中国市场2017年MCU出货量排名第二,连...

发表于 2018-05-10 11:10 ? 528次阅读
全球MCU市场1/5归ST,中国CAGR达27%

STM32之RS485通讯方式实现

在设计中,我们经常使用一个名为Max485的芯片来完成TTL电平至差分电平的转换,这款芯片有一个DE...

发表于 2018-05-10 06:31 ? 183次阅读
STM32之RS485通讯方式实现

关于STM32配置中断和GPIO针脚问题

嵌入式软体搭配最新版的STM32CubeMX个人电 脑开发 工具使用, 设计人员 可在绘图介面向导内...

发表于 2018-05-10 02:41 ? 247次阅读
关于STM32配置中断和GPIO针脚问题

STM32之软件CRC和硬件CRC速度测试

软件提前生成CRC表,用于查询。分别使用软件CRC算法和硬件CRC外设对一个缓存进行计算,目的是从该...

发表于 2018-05-09 11:45 ? 82次阅读
STM32之软件CRC和硬件CRC速度测试

STM32F407V芯片断电的时候FLASH被异...

到此,我们一方面请芯片设计人员做进一步确认,看看芯片是否真的坏了。同时,我们抱着怀疑一切的态度,请客...

发表于 2018-05-09 09:13 ? 650次阅读
STM32F407V芯片断电的时候FLASH被异...

德州仪器32位的Δ-Σ ADC

分辨率高。它具有32位的高分辨率和2.5 SPS数据速率下的7 nVRMS可测量小信号,有效位数(E...

发表于 2018-05-08 11:21 ? 219次阅读
德州仪器32位的Δ-Σ ADC

STM32如何通过 printf 打印出浮点数

这是由于 IAR 默认选择的 printf 库不支持浮点数的的输出??稍谏柚醚∠钪行薷?。如下:默认使...

发表于 2018-05-07 16:47 ? 67次阅读
STM32如何通过 printf 打印出浮点数

ST公司STM32F334x4/6/8系列MCU...

ST公司的stm32F334x4/6/8系列MCU是基于高性能ARM 32位CortexR-M4 R...

发表于 2018-05-05 14:07 ? 158次阅读
ST公司STM32F334x4/6/8系列MCU...

提高数据吞吐量和系统效率,多通道DAQ很关键

当多路复用器从一路输入切换到另一路输入时,输出仍然有前一输入通道的记忆,其表现形式为多路复用器的输出...

发表于 2018-05-04 09:17 ? 1251次阅读
提高数据吞吐量和系统效率,多通道DAQ很关键

STM32之 IP ICMP ETHERNET的...

嵌入式以太网开发是一个很有挑战性的工作。通过几个月的学习,个人觉得大致有两条途径。第一条途径,通过高...

发表于 2018-05-03 12:13 ? 77次阅读
STM32之 IP ICMP ETHERNET的...

浅谈STM32的FSMC的TFT笔记

FSMC _Bank 用来选择外接存储器的地址,FSMC所控制的外存储器所映射的地址是0x6000 ...

发表于 2018-05-03 11:58 ? 89次阅读
浅谈STM32的FSMC的TFT笔记

详解stm32的CAN控制器(程序分享)

首先简单介绍一下CAN总线,关于CAN总线是谁发明的,CAN总线的历史,CAN总线的发展,CAN总线...

发表于 2018-05-01 10:44 ? 213次阅读
详解stm32的CAN控制器(程序分享)

基于STM32定时器的红外??厥萁邮丈杓圃?/a>

定时器就是按照一个特定的频率对计数值进行加一或减一操作,当数值溢出时则产生一个标志或中断。 定时器...

发表于 2018-04-30 17:52 ? 178次阅读
基于STM32定时器的红外??厥萁邮丈杓圃? /></a>
                </div><div class=

STM32开发板实验箱8位独立按键测试学习

1、畅学STM32核心板2、 配套STM32主芯片 F103C8T6STM32F103C8T6芯片基...

发表于 2018-04-30 15:21 ? 394次阅读
STM32开发板实验箱8位独立按键测试学习

数字反馈的概念 如何避免数字反馈

数字反馈可能由于容性耦合、地电流或甚至波导动作而产生。即使是非常之小的反馈因素也会在 ADC 输出频...

发表于 2018-04-28 10:05 ? 109次阅读
数字反馈的概念 如何避免数字反馈

FM0-64L-S6E1C3主要特性和,系统框图...

本文介绍了FM0-64L-S6E1C3系列产品主要特性,框图,以及FM0-64L-S6E1C3 MC...

发表于 2018-04-28 01:09 ? 90次阅读
FM0-64L-S6E1C3主要特性和,系统框图...

bq76PL536A-Q1主要特性及锂电池监视和...

TI公司的bq76PL536A-Q1是可堆栈的三--六颗锂电池组?;て骱湍D馇岸?AFE),集成了精...

发表于 2018-04-27 03:17 ? 330次阅读
bq76PL536A-Q1主要特性及锂电池监视和...

一文解析STM32内存管理和堆栈的认知与理解

本文主要介绍了STM32内存管理和堆栈的认知与理解,首先介绍的是内存管理的实现原理及分配、释放原理,...

发表于 2018-04-26 16:22 ? 774次阅读
一文解析STM32内存管理和堆栈的认知与理解

关于stm32跑马灯的程序

stm32的寄存器比较多,难于记忆,所以官方封装了两套库函数。一个是标准库,不过在F7上官方没有更...

发表于 2018-04-26 11:08 ? 291次阅读
关于stm32跑马灯的程序

STM32程序之MAX6675热电偶温度读取

用HAL很简单,CS拉低以后,一个SPI读两个字节进来,然后就是凑成12位,换算。 MAX6675...

发表于 2018-04-26 11:04 ? 135次阅读
STM32程序之MAX6675热电偶温度读取

MDK将数据存储到FLASH指定地址

学习 STM32 也会遇到这样的 绝对定位 的问题如下: uint8_t UART_RX_BUF[1...

发表于 2018-04-26 11:02 ? 91次阅读
MDK将数据存储到FLASH指定地址

STM32开发设计中FSMC可能遇到问题应对方案

为了使 HADDR 的字节地址信号线与存储器匹配,FSMC 的 25 条地址信号线FSMC_A[24...

发表于 2018-04-26 09:23 ? 1206次阅读
STM32开发设计中FSMC可能遇到问题应对方案

STM32F4 C++ 封装库 之 EXTI

mbed 框架是为物联网设备开发的,工业控制级别的产品可以考虑用 RTE 框架。RTE 框架目前驱动...

发表于 2018-04-24 18:10 ? 88次阅读
STM32F4 C++ 封装库 之 EXTI

FPGA工程师应如何使用模数转换器(ADC)或数...

一旦执行特定任务,FPGA系统必须与现实世界相连接,而所有工程师都知道现实世界是以模拟信号而非数字信...

发表于 2018-04-24 12:19 ? 755次阅读
FPGA工程师应如何使用模数转换器(ADC)或数...

STM32开发何使用STVP后就无法正常工作了

STM8家族中有些系列是支持最高 24MHz 主频的,比如 STM8S207、STM8AF52,等等...

发表于 2018-04-24 08:47 ? 742次阅读
STM32开发何使用STVP后就无法正常工作了

数字信号处理推动雷达信号链向数字化过渡

现代高级雷达系统正在受到多方面的挑战——频率分配上的最新变化导致许多雷达系统的工作频率非常接近。通信...

发表于 2018-04-22 18:08 ? 179次阅读
数字信号处理推动雷达信号链向数字化过渡

MSP430之八路ADC单次采集的程序

本程序采用的是八路ADC单次采集的模式,根据配置,在单次的模式下转换完成后ADC12SC会自动复位,...

发表于 2018-04-22 12:45 ? 816次阅读
MSP430之八路ADC单次采集的程序

关于高速AD/DAC测量及设计中82个疑难问题的...

本文首先介绍了ADC的参数、测试方案及对测试结果进行了分析,其次介绍了DAC参数、测试方案及结果分析...

发表于 2018-04-20 16:24 ? 219次阅读
关于高速AD/DAC测量及设计中82个疑难问题的...

FSMC如何读写CPLD

STM32 通过 FSMC 读写CPLD 的程序,CPLD挂在STM32的地址线和数据线上,将CPL...

发表于 2018-04-20 10:38 ? 101次阅读
FSMC如何读写CPLD

stm32之.hex 文件

我们先来详细分析“方法一”的操作: 1.我们设置编译 程序的编译器(如图),这个设置意思是把程序下载...

发表于 2018-04-20 09:28 ? 129次阅读
stm32之.hex 文件

STM32知识:什么是SYSTICK 作用是什么

什么是 SYSTICK : 这是一个24位的系统节拍定时器system tick timer,Sys...

发表于 2018-04-20 08:50 ? 99次阅读
STM32知识:什么是SYSTICK 作用是什么

意法半导体:让云智能功能出现在物联网设备上

意法半导体的X-CUBE-AVS软件包让亚马逊的Alexa语音服务(AVS)能够运行在STM32* ...

发表于 2018-04-20 08:32 ? 303次阅读
意法半导体:让云智能功能出现在物联网设备上

STM32之FSMC驱动LCD屏应用

FSMC其实就是把芯片内部的数据总线和地址总线引出来了,其实51单片机也是有这个总线外接的。没有说把...

发表于 2018-04-20 08:32 ? 166次阅读
STM32之FSMC驱动LCD屏应用

STM32Note初识单片机(2)

在了解X86和ARM架构之前,我们先介绍下复杂指令集CISC(Complex Instuction ...

发表于 2018-04-19 13:43 ? 82次阅读
STM32Note初识单片机(2)

带你一步步了解STM32启动代码

对于熟悉电脑的伙伴们来说,BIOS(那个蓝色的界面)可能不会太陌生吧,这货就是电脑的 启动代码 。没...

发表于 2018-04-19 13:40 ? 1058次阅读
带你一步步了解STM32启动代码

STM32中GPIO的这八种配置种类你知道几种?

推挽电路是两个参数相同的三极管或MOSFET,以推挽方式存在于电路中,各负责正负半周的波形放大任务,...

发表于 2018-04-19 13:36 ? 1035次阅读
STM32中GPIO的这八种配置种类你知道几种?

STM32接口中FSMC/FMC难点问题理解

FSMC,即灵活的静态存储控制器,能够与同步或异步存储器和 16 位 PC 存储器卡连接,STM32...

发表于 2018-04-19 12:36 ? 620次阅读
STM32接口中FSMC/FMC难点问题理解

STM32如何实现W25X16的汉字字库存储

系统中使用过多的汉字会出现芯片容量不够用的问题,可将数据存储在 外部FLASH 中,在需要使用时进...

发表于 2018-04-17 12:38 ? 244次阅读
STM32如何实现W25X16的汉字字库存储

使用STM32测量频率和占空比的几种方法

一般的高端示波器,测量频率即是这种方法。简而言之,高速采样一系列数据,然后通过频谱分析(例如快速傅里...

发表于 2018-04-16 16:19 ? 740次阅读
使用STM32测量频率和占空比的几种方法

研究对ADC总精度产生影响因素有哪些?

我们确定了模数转换器 (ADC) 的分辨率和精度间的差异。现在我们深入研究一下对ADC总精度产生影响...

发表于 2018-04-16 09:16 ? 879次阅读
研究对ADC总精度产生影响因素有哪些?

一文看懂STM32单片机和51单片机区别

单片微型计算机简称单片机,简单来说就是集CPU(运算、控制)、RAM(数据存储-内存)、ROM(程序...

发表于 2018-04-13 17:47 ? 3790次阅读
一文看懂STM32单片机和51单片机区别

stm32与pic单片机比较_哪个好

本文首先介绍了stm32单片机的特性及优缺点,其次介绍了pic单片机的特点及不足,最后阐述了stm3...

发表于 2018-04-13 16:52 ? 568次阅读
stm32与pic单片机比较_哪个好

为什么使用一个逐次逼近寄存器ADC?

很多典型控制系统应用的目标是根据输入控制变量的状态来影响控制操作。其中的一些变量包括位置、速度、角度...

发表于 2018-04-13 09:21 ? 3181次阅读
为什么使用一个逐次逼近寄存器ADC?

STM32L496AGI6及P-L496G-CE...

ST公司的STM32L496AGI6是基于高性能Arm? Cortex?-M4 32-位RISC核的...

发表于 2018-04-12 05:07 ? 158次阅读
STM32L496AGI6及P-L496G-CE...

成熟的设计还在用三极管是原因!

这周检查水泵变频器的电路,定稿用,发现数码管的控制三极管,基极竟然没有串联电阻,这会导致单片机的IO...

发表于 2018-04-11 17:21 ? 1031次阅读
成熟的设计还在用三极管是原因!

PCI总线的三种传输模式

PIO在早期的PC中被广泛使用,因外当时的处理器的速度要远远大于任何其他外设的速度,所以PIO足以胜...

发表于 2018-04-10 09:14 ? 545次阅读
PCI总线的三种传输模式

STM32Note初识单片机

本连载将以STM32F103为例为学习嵌入式系统开发搭建一个基础知识框架。 初识单片机系列将会介绍单...

发表于 2018-04-08 10:00 ? 98次阅读
STM32Note初识单片机

基于STM32芯片的一款智能台灯

随着现代科学技术的不断发展,生活用品的智能化程度也越来越普及,人们对一些家居物品的人性化、智能化设计...

发表于 2018-04-08 08:48 ? 2513次阅读
基于STM32芯片的一款智能台灯

基于STM32的家庭服务机器人系统工作原理及设计

为解决当前大部分家庭服务机器人不具备行走功能或只具有简单的避障能力等问题,本文设计一种基于STM32...

发表于 2018-04-06 08:26 ? 852次阅读
基于STM32的家庭服务机器人系统工作原理及设计

基于STM32的伺服压力机控制系统设计

伺服压力机的基本结构及对控制系统的要求与传统压力机比较,伺服压力机取消了原有压力机的飞轮和离合器,保...

发表于 2018-04-06 08:07 ? 755次阅读
基于STM32的伺服压力机控制系统设计

STM32的串口中断配置

STM32的串口中断配置,也是很简单的. 首先是配置UART的GPIO口 首先是配置UART的GPI...

发表于 2018-04-06 07:24 ? 520次阅读
STM32的串口中断配置

基于STM32单片机的DLP1700显示电路、光...

传统的数字微镜显示技术的信号输入端是由DVI接口提供图像信号和行场同步信号,由MSP430单片机对D...

发表于 2018-04-06 02:58 ? 834次阅读
基于STM32单片机的DLP1700显示电路、光...

系统中的ADC利用噪声频谱密度评估软件定义

比较在不同速度下工作的系统,或者查看软件定义系统如何处理不同带宽的信号时,噪声频谱密度(NSD)可以...

发表于 2018-04-04 08:45 ? 1748次阅读
系统中的ADC利用噪声频谱密度评估软件定义

Alexa语音服务软件扩展STM32Cube

X-CUBE-AVS扩展套件包含一组用于STM32F7系列微控制器的库和应用示例,充当支持Alexa...

发表于 2018-04-03 13:41 ? 2511次阅读
Alexa语音服务软件扩展STM32Cube

STM32单片机--PWM输出

采用定时器2的通道2,使PA1输出频率1K,占空比40的PWM波形,用PA8随意延时取反led灯,指...

发表于 2018-04-03 08:54 ? 571次阅读
STM32单片机--PWM输出

单片机STM32时钟图文理解

如输出到称为HCLK、FCLK的时钟,还直接输出到SDIO外设的SDIOCLK时钟、存储器控制器FS...

发表于 2018-04-03 08:45 ? 698次阅读
单片机STM32时钟图文理解

RT-Thread Nano 3.0.3 的基本...

RT-Thread是一个高度可配置的嵌入式实时操作系统,配置文件是rtconfig.h。Nano就是...

发表于 2018-04-02 15:58 ? 585次阅读
RT-Thread Nano 3.0.3 的基本...

STM32三种BOOT模式介绍

内置SRAM,既然是SRAM,自然也就没有程序存储的能力了,这个模式一般用于程序调试。假如我只修改了...

发表于 2018-03-30 16:09 ? 974次阅读
STM32三种BOOT模式介绍

STM32_IAP详解(有代码,有上位机)

 和app中分别放置两套中断向量表,当iap代码中将app烧写到flash中之后,跳转到app的中断...

发表于 2018-03-30 15:58 ? 511次阅读
STM32_IAP详解(有代码,有上位机)

STM32内存管理以及STM32中的堆栈

这个是MDK编译之后能够得到的每个段的大小,也就能得到占用相应的FLASH和RAM的大小,但是还有两...

发表于 2018-03-29 13:45 ? 646次阅读
STM32内存管理以及STM32中的堆栈