beill8888 发表于 2020-4-21 15:55:32


好资料,谢谢分享,收藏

beill8888 发表于 2020-4-21 15:58:16


好资料,谢谢分享,收藏

litaogoo 发表于 2020-4-21 16:02:32

已收藏&支持。

szongen 发表于 2020-4-21 17:05:41

下载了培训合集STM32F7培训的"系统架构和存储器映射"文档,对这个高级的MCU有了初步的了解。
下面就说一下学习的内容:
1、性能
这里依据官方文档里coremark的跑分图

STM32F7在coremark上能达到1000的水平,性能是很强悍了。
2、硬件外设


像常见的主频增加、FLASH大小和RAM大小增加、数字和模拟外设的数量增加。还增加了" Quad SPI +dual flash mode"、" HDMI_CEC"、"SPDIF-RX"的外设。
3、系统架构

STM32 F7拥有两个独立的机制实现零等待执行性能:1、 ST ART Accelerator™ 用于内部Flash,2、可用于内部和外部存储器的一级缓存(4 KB指令缓存+ 4 KB数据cache)

AXI 和Multi-AHB 总线矩阵,两个通用DMA,以太网专用DMA, USB专用DMA, Chrom-ART硬件图形加速器。
更多的外设直接挂载在AHB总线上,寻址的速度变快。

建议:STM32F7的性能这么强悍,希望官方能出一些AI方面的培训,让这个核心做边缘计算的应用。

wenyangzeng 发表于 2020-4-21 17:32:40

培训资料学习心得

    开发项目中需要使用定时器4的TI2输入引脚检测到上升沿后,经过一个延时后在OC1上产生一个延时输出的正脉冲。


                            图1


下载了《STM32定时器基本原理及常见问题之培训资料v3.10》学习。
掌握了本项目设计中针对定时器配置的要点:
1、使用TI2FP2作为触发源;
2、在TIMx_CCMR1写入CC2S=01,将TI2FP2映射到TI2;
3、在TIMx_CCER写CC2P=0,CC2NP=0,使TI2FP2能够检测到上升沿;
4、在TIMxSMCR写入TS=110,将TI2FP2配置为从模式控制器的触发TRGI;
5、在TIMxSMCR写入SMS=110,以使用TI2FP2启动计数器;
6、TIMx_CR1的OPM置1,配置OC1为单脉冲PWM输出。
    使用CubeMX来配置TIM4,可以很方便快捷的根据使用要求配置成功定时器4。
    但是在配置过程中发现这个Tim4通道2的TI2FP2居然是灰色,选择不了。这应该是CubeMX的一个bug,见图2。最后只能在生成的代码里修改。希望ST工程师能够改正。


                        图2


/* TIM4 init function */
void MX_TIM4_Init(void)
{
TIM_SlaveConfigTypeDef sSlaveConfig;
TIM_MasterConfigTypeDef sMasterConfig;
TIM_OC_InitTypeDef sConfigOC;
TIM_IC_InitTypeDef sConfigIC;

htim4.Instance = TIM4;
htim4.Init.Prescaler = 20;
htim4.Init.CounterMode = TIM_COUNTERMODE_UP;
htim4.Init.Period = 500;
htim4.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
htim4.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
if (HAL_TIM_Base_Init(&htim4) != HAL_OK)
{
    _Error_Handler(__FILE__, __LINE__);
}

if (HAL_TIM_PWM_Init(&htim4) != HAL_OK)
{
    _Error_Handler(__FILE__, __LINE__);
}

if (HAL_TIM_IC_Init(&htim4) != HAL_OK)
{
    _Error_Handler(__FILE__, __LINE__);
}

if (HAL_TIM_OnePulse_Init(&htim4, TIM_OPMODE_SINGLE) != HAL_OK)
{
    _Error_Handler(__FILE__, __LINE__);
}

sSlaveConfig.SlaveMode = TIM_SLAVEMODE_TRIGGER;





补充内容 (2020-4-21 17:35):
这个代码不知为何没有全部显示:
sSlaveConfig.SlaveMode = TIM_SLAVEMODE_TRIGGER;
sSlaveConfig.InputTrigger = TIM_TS_TI2FP2;
if (HAL_TIM_SlaveConfigSynchronization(&htim4, &sSlaveConfig) != HAL_OK)
{
    _Error_Handler(__FILE__, __LINE__);
}

dsctsam 发表于 2020-4-21 17:40:29

丰富的资源!
已收藏与支持了。



chengang0001 发表于 2020-4-22 09:20:48

已收藏支持

天师猫神 发表于 2020-4-22 10:53:45


mcboy 发表于 2020-4-22 11:12:15

支持啦

mcboy 发表于 2020-4-22 11:15:07


下载啦
页: 1 2 3 4 5 6 [7] 8 9 10 11 12 13 14
查看完整版本: 中奖名单来啦丨有“料”才任性,干货好礼一起拿