推荐阅读最新更新时间:2024-11-08 19:18
转两个stm32定时器的使用代码
具体没有测试,先收藏,以后去尝试一下 TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable; TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Enable; TIM_OCInitStructure.TIM_Pulse = Pluse; TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; TIM_OCInitStruct
[单片机]
首发新品,米尔STM32MP2核心板上市!高性能+多接口+边缘算力
米尔发布基于STM32MP257设计的嵌入式处理器模块MYC-LD25X核心板及开发板。核心板基于STM32MP2系列是意法半导体推出最新一代工业级64位微处理器,采用LGA 252 PIN设计,存储配置1GB/2GB LPDDR4、8GB eMMC,具有丰富的通讯接口,适用于高端工业HMI、边缘计算网关、新能源充电桩、储能EMS系统、工业自动化PLC、运动控制器等场景。 STM32MP257处理器,ST第二代更高性能MPU STM32MP257配备了双核Cortex-A35 64位内核,最高主频可达1.5 GHz,还集成了用于实时操作的400 MHz Cortex-M33内核,具有单精度浮点单元(FPU)、数字信号
[嵌入式]
stm32 看门狗 BKP(HAL库)
(一)概述 stm32有两个看门狗:硬件看门狗(LSI 40KHz,时间精度不高)和窗口看门狗(APB1)。 (二)硬件看门狗实现代码 IWDG_HandleTypeDef hiwdg; // 硬件看门狗初始化 static void MX_IWDG_Init(IWDG_HandleTypeDef *pHiwdg) { pHiwdg- Instance = IWDG; pHiwdg- Init.Prescaler = IWDG_PRESCALER_4; pHiwdg- Init.Reload = 0xFFF; // Tout = ((4 * 2^prer) * rlr) / 40 = 409ms,看门狗
[单片机]
STM32 SPI使用
1、SPI使用原理 以数据交换实现数据传输,第一个跳变沿实现数据输出,第二个跳变沿实现采样。如下图 2、GPIO的配置 GPIO_InitTypeDef GPIO_InitStructure; //配置SPI2管脚 RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_GPIOB, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13 |GPIO_Pin_14| GPIO_Pin_15; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init
[单片机]
STM32使用DMA从串口读可变长度数据到内存
首先要解决DMA怎么知道要接收的数据何时开始,何时结束的问题。而且每次传输完数据,要改变下一次数据长度。 如果把DMA设成循环模式肯定是不行的,所以把DMA设置成正常模式。 STM32的串口有监测总线是否处于空闲的功能,我们可以使用这个功能,当数据传输完总线变成空闲状态时产生中断,来对收到的数据进行处理。因此整个过程就变成:当一堆数据开始传输,DMA默默地把数据搬运到内存中,当这堆数据传输完成,总线变成空闲状态时,马上产生中断,在中断服务程序中去做相应处理。 初始化程序: #define DMA_Rec_Len 10 //数据缓冲区大小 u8 value ; void uart_init_DMA_IN(u32
[单片机]
STM32学习——ADC采集
注意事项 暂时只做了单通道中断方式的采集 1.选择输入引脚时就已经确定了后面ADC的转换通道ADC_Channel 编程步骤 1.初始化ADC用到的GPIO 2.初始化ADC并设置其工作参数 3.设置ADC的时钟(分频因子) 4.设置ADC通道、顺序以及采样时间 5.使能ADC中断,并设置中断方式 6.使能ADC,并校准 7.使用软件触发ADC转换 代码实现 (1)配置GPIO static void ADC_GPIO_Config(void) { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC
[单片机]
Linux环境开发STM32,从环境到调试
首先简单地描述一下软硬件开发环境。 宿主机: 操作系统:CentOS7 x86_64 ( grome桌面版 ) IDE:Eclipse Luna JLink驱动:JLink_Linux_V434a 工具链:GNU-ARM-Toolchains-4.9-2014q4 GDB:arm-linux-gdb V7.8.1 硬件平台: CPU:STM32F103C8T6 JLink:V8 USB转串口:Silicon Labs CP2101 环境的搭配都是比较简单的,编译工具链都比较容易装。这里就不再介绍了。下面就只附上工具链的下载链接。 https://launchpad.net/gcc
[单片机]
STM32之系统滴答定时器
一、SysTick(系统滴答定时器)概述 操作系统需要一个滴答定时器周期性产生中断,以产生系统运行的节拍。在中断服务程序里,基于优先级调度的操作系统会根据进程优先级切换任务,基于时间片轮转系统会根据时间片切换任务。总之,滴答定时器是一个操作系统的 心跳 。 Cortex-M3在内核部分封装了一个滴答定时器--SysTick,在之前的ARM内核通常是不会把定时器做进内核,定时器都是SOC厂商自己制作的外设。显然,Cortex-M3封装了这么一个定时器,对于将操作系统移植到不同SOC厂商生产的Cortex-M3系类MCU上,带来了极大的方便。Cortex-M3内核统一了这样的一个系统滴答定时器,移植操作系统的时候可以使用内
[单片机]