创作

完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>

3天内不再提示

基于STM32介绍DMA的双缓冲模式

stmcu832 来源:工程师曾玲 2019-02-02 16:47 次阅读

目前STM32家族中有些系列支持DMA的双缓冲模式,比如STM32F2/STM32F4/STM32F7等系列。尤其随着人们对STM32F4/F7系列应用不断拓宽和加深,在设计中运用到DMA双缓冲的场合也越来越多。STM32芯片中的DMA又可分为两大类,一类是通用DMA,一类是专用DMA,比如用于USB,TFT LCD,ETHERNET等外设应用上的DMA。这里要谈的是基于通用DMA的话题,不妨以STM32F4系列芯片为例。

关于STM32F4的DMA双缓冲传输在STM32F4系列的参考手册里做了简单描述。因为它是基于介绍了单缓冲模式的DMA介绍之后接着介绍的,稍显言简意赅。

相比单缓冲的数据流,双缓冲多了一个DMA存储区和相应的存储指针;

如果使能DMA双缓冲,硬件会自动使能DMA的循环传输模式;

每一批数据传输结束,或者说每次传输事务结束时通过交换存储指针实现更换存储区的目的。

4.DMA双缓冲模式仅在外设与存储器间进行,不支持memoryto Memory间的传输。

基于STM32介绍DMA的双缓冲模式

基于DMA双缓冲模式的的特点,不难理解在应用中必须开辟两个存储区以及存放两个存储区首地址的存储寄存器,DMA_SxM0AR和DMA_SxM1AR。

DMA_SxM0AR:指向存储区0,单缓冲模式下默认使用该寄存器做存储区指针。

DMA_SxM1AR:指向存储区1,仅在DMA双缓冲模式下才能使用。

DMA正在访问的当前存储区由CT@DMA_SxCR位表示

CT = 0:DMA正在访问存储区0,CPU可以访问存储区1

CT = 1:DMA正在访问存储区1,CPU可以访问存储区0

基于STM32介绍DMA的双缓冲模式

使用DMA双缓冲传输,既可以减少CPU的负荷,又能最大程度地实现DMA数据传输和CPU数据处理互不打扰又互不耽搁,同时也给应用开发也带来方便。比如,假设你使用DMA单存储缓冲,有些情况下可能是等待DMA搬完了数据,CPU才过来处理;有些情况下可能是DMA一边传输,CPU也一边来访问,这时往往会使用到环形存放和读取,代码实现起来稍显繁琐也容易出纰漏。如果改为DMA双缓冲模式,应用上实现起来也就简洁很多。再加上DMA双缓冲模式的循环特性,使用它对存储区的空间容量要求也会大大降低。尤其在大批量数据传送时,你只需开辟两个合适大小的存储区,能满足DMA在切换存储区时的当前新存储区空出来就好,并不一定要开辟多大多深的存储空间。有过这方面应用经验的工程师可能就有体会,单纯一味地加大双缓冲区的深度并不明显改善数据传输状况。

关于这点不妨打个比方,某茶馆有俩芳名分别为CPU和DMA的伺茶MM,,每人手里有个同样茶壶。DMA负责把她手里的茶壶装满茶水就好,CPU就负责用从DMA手里接过装满茶水的壶给客人倒茶,倒完了用空壶与DMA交换装满茶水的壶继续工作。显然,只要保证CPU妹妹茶壶里总有茶水,至于那两个茶壶选多大容积并不是很重要。倒是那个茶壶进出口径对整个事情的效率有影响。

关于DMA双缓冲话题,我们也不妨看看一个具体的案例加深下印象。案例来自网络,为了尽量压缩篇幅,我省却了部分配置代码,留下需要交流的关键语句。

&&&&&&&&&&&&&&&&&

F407 DMA的double Buffer mode上卡了好久了!大家看看配置哪里出问题了?

uint8_tBuffer0[] = {0x11,0x22,0x33,0x44}; //无符号的8位整型数

uint8_tBuffer1[] = {0xaa,0xbb,0xcc,0xdd}; //无符号的8位整型数

voidUSART3_DMA1_Configuration(void)

{

......

DMA_InitStructure.DMA_PeripheralBaseAddr= USART3_DR_Addr; //外设首地

DMA_InitStructure.DMA_Memory0BaseAddr= (uint32_t)Buffer0; //内存区首地址(1)

DMA_InitStructure.DMA_DIR= DMA_DIR_MemoryToPeripheral; //内存->外设

DMA_InitStructure.DMA_BufferSize= 8; //*****传输数据个数为8 *****(2)

DMA_InitStructure.DMA_PeripheralInc= DMA_PeripheralInc_Disable;

DMA_InitStructure.DMA_MemoryInc= DMA_MemoryInc_Enable; //

DMA_InitStructure.DMA_PeripheralDataSize= DMA_PeripheralDataSize_Byte;

DMA_InitStructure.DMA_MemoryDataSize= DMA_MemoryDataSize_Byte;

DMA_InitStructure.DMA_Mode= DMA_Mode_Circular; //循环传输

……

DMA_DoubleBufferModeConfig(DMA1_Stream3,(uint32_t)Buffer1, DMA_Memory_1);//(3)

DMA_DoubleBufferModeCmd(DMA1_Stream3,ENABLE);//(4)enable double buffle

DMA_Init(DMA1_Stream3,&DMA_InitStructure);

DMA_Cmd(DMA1_Stream3,ENABLE); //使能 DMA1_Stream3通道

DMA_ClearITPendingBit(DMA1_Stream3,DMA_IT_TCIF3);

DMA_ITConfig(DMA1_Stream3,DMA_IT_TC, ENABLE);

}

&&&&&&&&&&&&&&&&&

发帖者述说,如果将蓝色语句(3)的DMA_Memory_1改成DMA_Memory_0的话,就能正常打印出 11 22 33 44 aa bb cc dd,如果换成DMA_Memory_1的话,现象就不对了!输出的结果却是aa bb cc dd 15 00 08 52。请问是怎么回事?

显然发帖者使用STM32F4系列芯片DMA的双缓冲功能,应该只是做做实验而已。他开辟了两个长度均为4字节的缓冲存储区BUFFER0和BUFFER1。从基于ST固件库函数代码配置角度看,双缓冲模式相比单缓冲模式,就是多了(3)(4)两句,其它都一样。这里我们特别留意下其中(1)(2)(3)句配置代码。

绿色语句(1)配置了存储区0指针指向的地址;

红色代码语句(2)处给出了DMA每轮的传输数据个数8;

蓝色代码语句(3)处配置存储区1的地址和选择第一个当前存储区;

整体上看,该配置都配置了。结合我们上面的原理介绍,可以看出红色代码语句(2)配置每轮DMA传输个数为8有点问题,传输的数据宽度为BYTE,两个缓冲区各自空间大小为4 BYTE。也就是说每传输4个BYTE数据就轮换存储区重开下一轮传输,每轮DMA传输的数据个数应该是4而不是8。

现在发帖者反馈的是调整语句(3)便会呈现不同的结果,当把第(3)句的当前存储区改为Memory0时就会呈现貌似正确的结果。那是为什么呢?

其实这个貌似正确的结果是种巧合的假象。巧合的是在定义BUFFER0和BUFFER1时,因为二者紧邻在一起定义,编译器刚好把二者安排在连续的8个字节存储单元。而发帖者又刚好将每轮DMA传输数据个数定义为8个缓冲单元,这意味着每传输8个缓冲单元数据才切换缓冲区。当从Memory0即BUFFER0开始传输时,连续的8个数据在第一轮就读了出来,也就是说这8个数据并未经过缓冲区的切换就读出来了。而当发帖者把第(3)句的第一次使用的当前存储区改为Memory1时就没那么幸运了。因为这次DMA从BUFFER1开始连续读取8个数据单元,读完BUFFER1内的4个单元后,后面的4个缓存单元就是些不确定的数据,自然一眼就看出结果不对了。

基于STM32介绍DMA的双缓冲模式

实际上,当把上面红色代码语句(2)处的DMA传输数据个数调整为4时就结果正常了,至于第(3)句的起始当前缓冲区的选择无关紧要。

有人在使用DMA双缓冲模式时,经常为这个传输个数纠结,尤其从单缓冲模式转为双缓冲模式时。其实,不管单缓冲还是双缓冲模式,对于整体需要传输的数据个数是不会增减的,只是双缓冲模式由之前的单缓冲模式变成双缓冲循环。一般来讲对于那些无需循环的小数量数据传输没必要使用DMA双缓冲模式。

相比单缓冲DMA传输,双缓冲模式在设置DMA传输数据个数时应更为灵活。比方之前单缓冲DMA传输时,每轮传输数据个数假设为1024。当改为双缓冲循环模式时,对应每个缓冲区的DMA传输数据个数并不一定要设置为1024,可能设置50、100就能满足要求,因为这里有两个存储区且是不停轮换的。不过,对于这个DMA传输数据个数的设置和使用要注意几点:

1.该数据不要太小,因为DMA传输过程中往往伴随DMA传输完成中断,如果过小会导致中断频繁和切换频繁,并非好事。

2.该数据也不必过大,上面也提过,一味加大缓冲容量对提升传输速度并无实质改善。同时也得考虑芯片内存容量的限制与合理使用。

3.尽管DMA双缓冲模式基于循环传输,但实际应用中DMA传输请求总有中止或停止的时候。比如,一副图像数据,完全可能不是刚好结束在事先设置的DMA传输数据个数的整数倍的位置点。那么,最后的这批缓冲数据因为未满而不会发生缓冲交换请求或传输完成请求。此时如果不做适当的处理,这批缓冲数据就可能被无意中丢弃掉。所以,我们在程序中需要设计些基于两次缓冲切换的超时机制,及时收取最后一批缓冲区的数据,以防因不能产生传输完成或缓冲切换事件而导致数据丢失的现象。

原文标题:一个关于STM32 DMA双缓冲的话题

文章出处:【微信号:stmcu832,微信公众号:茶话MCU】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    红外线简介 美的空调红外遥控器协议R05D说明

    在光谱中波长自760nm至400um的电磁波称为红外线,它是一种不可见光。目前几乎所有的视频和音频设....
    的头像 嵌入式技术 发表于 05-28 18:42 135次 阅读
    红外线简介 美的空调红外遥控器协议R05D说明

    基于STM32+华为云IOT设计的智能防盗单车锁

    近年来随着国民经济的发展,交通拥堵和环境污染问题越来越突出,而自行车对改善交通与环境起到了重要作用。....
    的头像 DS小龙哥-嵌入式技术 发表于 05-28 14:21 226次 阅读
    基于STM32+华为云IOT设计的智能防盗单车锁

    基于STM32+华为云IOT设计的智慧路灯

    随着工业和城市的快速发展,道路照明系统的产业也在迅速发展,并趋于复杂化,为了更经济地控制和维护复杂的....
    的头像 DS小龙哥-嵌入式技术 发表于 05-28 14:19 190次 阅读
    基于STM32+华为云IOT设计的智慧路灯

    基于STM32+华为云IOT设计智能称重系统

    伴随着网络技术,各种通讯技术,传感器技术的飞速发展,物联网技术成为了当今技术领域发展为迅速的技术。而....
    的头像 DS小龙哥-嵌入式技术 发表于 05-28 14:17 159次 阅读
    基于STM32+华为云IOT设计智能称重系统

    基于STM32+华为云IOT设计的云平台监控系统

    智能系统作为新兴产业,是国家重点发展产业之一。国外自美国在1984年建设出真正的智能建筑至今为止已经....
    的头像 DS小龙哥-嵌入式技术 发表于 05-28 14:14 150次 阅读
    基于STM32+华为云IOT设计的云平台监控系统

    BC20-NBIOT模块通过MQTT协议连接华为云服务器调试

    当前这篇文章介绍STM32+BC20连接华为云物联网平台,实现与上位机之间进行数据交互,完成真实的产....
    的头像 DS小龙哥-嵌入式技术 发表于 05-28 14:13 167次 阅读
    BC20-NBIOT模块通过MQTT协议连接华为云服务器调试

    STM32F103使用(3.5)库函数新建工程

    意法半导体的STM32系列都支持库函数编程,库函数比常规的寄存器方式编程更加好移植,特别是项目需要在....
    的头像 DS小龙哥-嵌入式技术 发表于 05-28 14:00 149次 阅读
    STM32F103使用(3.5)库函数新建工程

    STM32开发板+机智云IoT+智能远程健康监护仪

    摘要:为了能让患者在家中长期地监测自身的各种生理参数,随时捕捉突发性心率失常,同时能将生理参数反映给医疗机构,方便医务人...
    发表于 05-27 18:24 2605次 阅读

    如何利用运行rt-thread的stm32平台测试枚举类型

    枚举类型描述的是一组整型值的集合,方便用描述来使用对应的值。若需要修改某个枚举成员(常量)的值,直接修改枚举类型定义即可...
    发表于 05-27 14:43 2041次 阅读

    在RT-Thread操作系统中的消息队列实验是如何去完成的

    消息队列实验      消息队列实验是在RT-Thread中创建了3个线程,2个是发送消息线程,1个是获取消息线程...
    发表于 05-27 14:36 1846次 阅读

    基于STM32+华为云IoT设计的森林火灾预警系统

    自从地球上出现森林以来,每年平均发生森林火灾超过20万次。森林火灾不仅烧毁树木,直接减少森林面积,而....
    的头像 DS小龙哥-嵌入式技术 发表于 05-27 11:04 130次 阅读
    基于STM32+华为云IoT设计的森林火灾预警系统

    基于STM32+ESP8266+华为云IoT设计的智能门锁

    近几年物联网发展非常迅猛、周边各种设备都已经接入互联网,远程集成控制。例如: 智慧交通、森林防火、智....
    的头像 DS小龙哥-嵌入式技术 发表于 05-27 10:51 172次 阅读
    基于STM32+ESP8266+华为云IoT设计的智能门锁

    基于STM32+华为云设计的智能家居控制系统

    现在物联网已经遍布生活每个角落,几乎哪里都能看到物联网的应用。物联网就是物物相连的互联网,可以将之前....
    的头像 DS小龙哥-嵌入式技术 发表于 05-27 10:46 259次 阅读
    基于STM32+华为云设计的智能家居控制系统

    基于STM32+华为云IoT设计的云端绿化管理系统

    绿化管理系统在现实生活、生产中的应用十分广泛,它是集环境感知、规划决策、自动管理等功能于一体的综合系....
    的头像 DS小龙哥-嵌入式技术 发表于 05-27 10:39 117次 阅读
    基于STM32+华为云IoT设计的云端绿化管理系统

    ESP8266应用案例 基于STM32核心板获取网络天气数据

    ESP8266 WIFI模块自带TCP/IP网络协议栈,通过AT指令集完成网络模式配置。知心天气采用....
    的头像 嵌入式技术 发表于 05-27 09:16 2287次 阅读
    ESP8266应用案例 基于STM32核心板获取网络天气数据

    采用STM32核心板制作贪吃蛇小游戏

    硬件平台:STM32核心板、OLED显示(SPI接口)、按键
    的头像 嵌入式技术 发表于 05-27 09:01 1616次 阅读
    采用STM32核心板制作贪吃蛇小游戏

    ch32f103c8t6双缓冲区从缓冲区取出来的数据不对是为什么?

    stm32f103c8t6的代码移植到ch32f103c8t6,stm32端点2是正常工作的 ch32尝试了,端点2和端点3读出来的数据不对 ch32先使能了US...
    发表于 05-27 07:23 29次 阅读

    请问CH32V307的ADC2能用DMA传输数据吗?

    各位大佬,我最近在用CH32V307,想要使用DMA传输ADC2的数据,但是一直不成功。传输ADC1的数据正常。 debug的时...
    发表于 05-27 06:10 29次 阅读

    CH563 DMA SPI发送数据会有规律的出现异常位怎么解决?

    在使用CH563EVT参考例程EXAMSPISPI0_DMA的例子进行测试时,通过逻辑分析仪发现发送的数据会有规律的出现异常位...
    发表于 05-27 06:09 29次 阅读

    stm32电路板连线问题

    初学小白T_T。求大佬分析一下这块板实物怎么连,不知道要连啥?...
    发表于 05-26 16:34 1468次 阅读
    stm32电路板连线问题

    STM32F407开发板原理图下载

    发表于 05-26 11:18 1804次 阅读

    STM32F103系列开发_点亮LED灯

    STM32目前市面上使用比较广泛,资料多,接下来就介绍如何快速入门STM32,进行基础开发。
    的头像 DS小龙哥-嵌入式技术 发表于 05-26 10:03 238次 阅读
    STM32F103系列开发_点亮LED灯

    基于Arm Cortex-M4 32位RISC内核的STM32G473简介

       STM32G473xC是基于高性能Arm Cortex-M4 32位RISC内核的MCU。工作....
    的头像 qq2355239039 发表于 05-25 17:01 207次 阅读
    基于Arm Cortex-M4 32位RISC内核的STM32G473简介

    基于STM32的平衡小车

    以STM32F103RCT6为控制核心的二轮 ZIP内有代码+PCB原理图+GERBER文件+BO....
    发表于 05-25 15:33 28次 阅读

    基于STM32电子钟语音播报

    硬件平台: 主控制器:STM32F103ZE LCD屏、XPT2046触摸屏、VS1053音频解....
    发表于 05-25 11:40 12次 阅读

    DMA方式打不开串口是什么原因?

    大佬,求助,串口用中断方式查找打开正常,换成 rt_device_open(serial1, RT_DEVICE_FLAG_DMA_RX)后总是失败,...
    发表于 05-25 11:23 1899次 阅读

    基于STM32F103设计的智能门锁(支持多种开锁解锁方式)

    物联网云平台: 采用腾讯云物联网平台,直接支持微信小程序和手机独立APP控制
    的头像 DS小龙哥-嵌入式技术 发表于 05-25 10:40 1908次 阅读
    基于STM32F103设计的智能门锁(支持多种开锁解锁方式)

    CH32F103C8使用串口DMA出现接收粘包或者接收不全现象如何处理?

    在启用串口DMA接收的协议帧的时候发现接收粘包或者接收不全现象。发送端100ms发送帧头0D帧尾0A的30字节数据,接收端使用串口...
    发表于 05-25 06:17 41次 阅读

    STM32破解的过程中常见的几个问题

    STM32系列单片机都有全球唯一的ID号,很多设计开发者,在开发的过程中,会嵌入ID绑定验证代码,也....
    的头像 芯片逆向 发表于 05-24 16:29 288次 阅读

    基于STM32的定时器实验分享

    基于STM32的定时器实验分资料分享。
    发表于 05-24 15:51 14次 阅读

    零死角玩转STM32—基于野火F103开发板

    本书着重讲解 F103 的外设以及外设的应用,力争全面分析每个外设的功能框图和外设 的使用方法,让....
    发表于 05-23 15:39 26次 阅读

    嵌入式开发中串口通讯方案

    在嵌入式开发中,经常会用到串口通讯。面对不同应用场景,需要不同的方案。
    的头像 小麦大叔 发表于 05-23 11:48 296次 阅读

    实际测试代码--START_TEST为例进行阐述

    在真正讲解启动过程之前,先要讲解程序下载到 Flash上的结构和程序运行时(执行到main函数)时的....
    的头像 STM32嵌入式开发 发表于 05-23 10:36 176次 阅读

    STM32产品选型手册

    STM32完整产品选型手册免费下载。
    发表于 05-19 17:14 117次 阅读

    STM32H743英文数据手册

    32位Arm®Cortex®-M7核,具有双精度FPU和一级缓存:16 KB的数据和16 KB的指令....
    发表于 05-19 17:12 14次 阅读

    ST和微软云Azure合作构建物联网应用

      在当今的万物互联时代,云连接已经是诸多应用开发的基石,包括消费电子,家居和楼宇自动化,智能家电,....
    的头像 意法半导体中国 发表于 05-19 09:53 196次 阅读

    STM32 Power Shield用于IoT设备的超低功耗监控板

      独立模式提供了目标器件的第一印象,如果一个新的电路板,它也是了解 STM32 Power Shi....
    的头像 星星科技指导员 发表于 05-18 14:27 154次 阅读

    基于STM32设计的指针式电子钟与日历

    这是基于STM32设计的一个指针式电子钟+万年历小项目,采用3.5寸的LCD屏显示时钟,日历、温度、....
    的头像 DS小龙哥-嵌入式技术 发表于 05-18 11:10 484次 阅读
    基于STM32设计的指针式电子钟与日历

    基于STM32设计的校园一卡通项目

    信息时代的校园, 离不开信息化的管理, 数字化"校园一卡通"建设是校园信息化建设的重要组成部分, 是....
    的头像 DS小龙哥-嵌入式技术 发表于 05-18 11:07 187次 阅读
    基于STM32设计的校园一卡通项目

    基于STM32设计的数字电子秤

    称重计量是现在社会活动中不可缺少的部分,随着国际交流的发展,称重计量的国际间的统一显得越来越重要。
    的头像 DS小龙哥-嵌入式技术 发表于 05-18 11:04 243次 阅读
    基于STM32设计的数字电子秤

    基于STM32设计的健康检测设备(测温心率计步)

    本文介绍的项目是基于STM32设计的健康检测设备,支持体温测量,心率检测,支持运动计步(采用MPU6....
    的头像 DS小龙哥-嵌入式技术 发表于 05-18 11:00 440次 阅读
    基于STM32设计的健康检测设备(测温心率计步)

    基于STM32设计的计算器(实现基本运算)

    计算器是最常见的工具了,现在不管是手机、电脑都带有计算器功能,支持强大的科学运算等。
    的头像 DS小龙哥-嵌入式技术 发表于 05-18 10:56 370次 阅读
    基于STM32设计的计算器(实现基本运算)

    基于STM32设计的环境检测设备

    随着人们生活质量的提高,对于生活环境的问题,人们的关注度进一步提高,同时政府部门采取了许多措施来改善....
    的头像 DS小龙哥-嵌入式技术 发表于 05-18 10:51 811次 阅读
    基于STM32设计的环境检测设备

    移植RT-Thread到STM32开发板的详细步骤例程

    本章开始,先新建一个基于野火STM32全系列(包含M3/4/7)开发板的的RT-Thread的工程模....
    的头像 嵌入式应用开发 发表于 05-18 09:14 1357次 阅读
    移植RT-Thread到STM32开发板的详细步骤例程

    基于STM32的球上自平衡机器人设计方案

    将机器人整体开源,同时总结一下机器人搭建过程中遇到的坑和未来的改进方向。在分享的文件里包含了结构设计....
    的头像 STM32嵌入式开发 发表于 05-17 17:21 425次 阅读

    STM32单片机到底如何软硬件结合

    不知道大家有没有疑惑,为什么软件能控制硬件?
    的头像 硬件攻城狮 发表于 05-17 15:04 471次 阅读

    基于蜂窝连接的IoT设备进行原型设计

      我们还专注于云开发。例如,用户从Espruino获得 STM32 微控制器 (MCU) 的 Ja....
    的头像 星星科技指导员 发表于 05-17 10:53 182次 阅读

    如何利用官方移植例子,创建一个自己demo工程

    之前挖了图解freeRTOS的坑,挖了坑就得填。今天就从使用开始,先把freeRTOS用起来。先聊一....
    的头像 FPGA之家 发表于 05-17 10:02 205次 阅读

    DMA控制器介绍及示例演示详解

    我们上一节谈到使用 DMA(直接内存访问)的好处已经变得显而易见。到了这一步,我们留下了人类长期以来....
    的头像 OpenFPGA 发表于 05-17 09:47 243次 阅读

    基于STM32平台实现SVPWM调制

    SVPWM是空间矢量脉宽调制(Space Vector Pulse Width Modulation....
    的头像 硬件攻城狮 发表于 05-16 17:42 580次 阅读

    STM32三种启动模式与详细步骤说明

    分享这篇文章,谈一下STM32启动流程。如果读者朋友已经有过汇编相关基础,能够够好理解本文内容。汇编....
    的头像 硬件攻城狮 发表于 05-16 17:17 544次 阅读

    STM32 Step-by-Step如何加快开发速度

    STM32 Step-by-Step 的另一个基本方面是我们的新社区。多年来,许多成员都表达了学习如....
    的头像 星星科技指导员 发表于 05-16 16:23 280次 阅读

    一个单片机调试小工具的编程思路

    在使用keil编译STM32后,我们会在.hex文件的同一个文件夹中发现一个.map文件。这个.ma....
    的头像 硬件攻城狮 发表于 05-16 14:35 239次 阅读

    stm32最小系统原理

    stm32最小系统原理图、原理图免费下载。
    发表于 05-16 14:24 95次 阅读

    STM32MP1微处理器可使用开发软件处理实时代码

      熟悉我们的 STM32 生态系统的人会很高兴我们还发布了STM32CubeMX的更新,这是一种用....
    的头像 星星科技指导员 发表于 05-16 10:04 137次 阅读
    STM32MP1微处理器可使用开发软件处理实时代码

    更强大的传感器和三种用户模式

      继原始 SensorTile 的脚步之后,新型号将获得更新,以利用其更强大的功能。例如,它将获得....
    的头像 星星科技指导员 发表于 05-15 17:35 330次 阅读

    FCM32F103CBT6软硬件兼容STM32F103CBT

    FCM32F103系列采用arm Cortex-M4内核。具有高性能、低成本优势。共有包含48~10....
    发表于 05-14 17:09 73次 阅读

    如何利用STM32实现酒精测试仪的设计

    该项目的诞生是因为观察到在大多数汽车共享服务中,人们即使喝醉了也可以开车,因为没有检查他们的状况。事....
    的头像 科技观察员 发表于 05-13 16:40 321次 阅读
    如何利用STM32实现酒精测试仪的设计

    应用程序编程接口实现更快地创建应用程序

      事实上,我们的一些竞争对手销售他们的 IC,但由于他们也销售阅读器,因此他们经常阻止第三方访问寄....
    的头像 星星科技指导员 发表于 05-13 14:45 155次 阅读
    应用程序编程接口实现更快地创建应用程序

    STM32MP1模块满足3种不同的电源需求

      Markus 强调工作中的字节超出了硬件。因此,使用 STM32MP1 模块的开发人员可以专注于....
    的头像 星星科技指导员 发表于 05-13 10:30 156次 阅读