MC33PT2000控制详解七:软件代码设计1-图形化设置

1、上位机软件工具

STM32CUBEIDE

对于该工具的使用不展开,自行到网上下载或自学习,网上资源很丰富,不是本文的重点,故或略。默认读者已经掌握STM32CUBEIDE工具的使用。

2、软件设计

2.1、创建工程

依次点击以下

点击【No】

跳出的ioc界面输入芯片型号,选择该芯片,点击【Next】

输入存储名称和存储地址,点击【Finish】即完成工程创建

建好后状态大约如下

编译试试,应该是0 error和0 warning

2.2、SYS设计

按以下设计

2.3、RCC设计

按以下设计

2.4、Clock Configuration设计

按以下设计,为了后续好计算HCLK设置为100MHz。

那么Timer的APB1时钟为50MHz。

2.5、Project Management设计

按以下设计

2.6、SPI设置(SPI1_SCK/SPI1_MOSI_SPI1_MISO)

按下图配置(对于基本原理不展开,自行对照下图设置到网上找资源理解)

根据MC33PT2000手册,SCLK最大为12.5MHz,那么设置为3.125MHz可以避免手工接线带来的干扰。

如果GPIO不是PA5/PA6/PA7,那么通过下图方式更改

SPI1_CSB设置,起始就是配置普通的输出GPIO在2.7 GPIO章节介绍

2.7、GPIO设置(IRQB/RESET/SPI1_CSB/DRVEN)

按下图配置IRQB/RESET/SPI1_CSB/DRVEN的GPIO

特别说明下IRQB,配置为外部中断输入(上升沿触发)

打开NVIC中断,中断优先级设低点,如4(0表示最高优先级)

2.8、START1设置

++配置在TIM2 CHANNEL4通道PA3 port。++

按下图配置,目标是产生10Hz,3.3%的PWM波形,即1s控制10次高压喷油器工作,每次高压喷油器工作3.3ms。为什么是10Hz,3.3%,3.3ms为了保护高压喷油器。

通过以下计算可以得出:

PWM的频率:APB1时钟/(PSC+1)/(counter period+1) = 50MHz/(5-1+1)/(1000000-1+1) = 10Hz

PWM的占空比:Pulse / (counter period+1) = 33000/(1000000-1+1) = 33/1000 = 3.3%

DMA/NVIC都不需要,不打开即可。

GPIO设置如下:

注意:该波形还未输出,需要发送应该指令才启动定时器发波形,

HAL_TIM_PWM_Start(&htim2,TIM_CHANNEL_4);

2.9、START7设置

++配置在TIM3 CHANNEL3通道PB0 port。++

按下图配置,目标是产生10Hz,10%的PWM波形,即1s控制10次高压油泵工作,每次高压油泵工作10ms。为什么是10Hz,10%,10ms为了保护高压喷油器。

通过以下计算可以得出:

PWM的频率:APB1时钟/(PSC+1)/(counter period+1) = 50MHz/(500-1+1)/(10000-1+1) = 10Hz

PWM的占空比:Pulse / (counter period+1) = 1000/(10000-1+1) = 1000/10000 = 10%

DMA/NVIC都不需要,不打开即可。

GPIO设置如下:

注意:该波形还未输出,需要发送应该指令才启动定时器发波形,

HAL_TIM_PWM_Start(&htim3,TIM_CHANNEL_3);

2.10、INT_CLK设置

++配置在TIM5 CHANNEL3通道PA2 port。++

按下图配置,目标是产生1MHz,duty 50%的外部时钟信号。

通过以下计算可以得出:

PWM的频率:APB1时钟/(PSC+1)/(counter period+1) = 50MHz/(1-1+1)/(50-1+1) = 1MHz

PWM的占空比:Pulse / (counter period+1) = 25/(50-1+1) = 25/50 = 50%

DMA/NVIC都不需要,不打开即可。

GPIO设置如下:

注意:该波形还未输出,需要发送应该指令才启动定时器发波形,

HAL_TIM_PWM_Start(&htim5,TIM_CHANNEL_3);

至此,图形化设置已完成。

相关推荐
周洲08303 小时前
STM32 GPIO 外部中断深度解析:边沿触发 / 电平触发、NVIC 优先级配置、中断嵌套实战
stm32·单片机·嵌入式硬件
LCG元3 小时前
STM32F103 CAN 总线通信实战:标准库双机通信与过滤器配置精讲
stm32·单片机·嵌入式硬件
zlinear数据采集卡4 小时前
D223的PWM电机控制:6路独立脉冲+加减速算法深度解析
arm开发·stm32·嵌入式硬件·算法·fpga开发·架构
Kuakewei8885 小时前
平芯微42V热拔插OVP过压保护芯片:PW1600
嵌入式硬件
ACP广源盛139246256735 小时前
WAIC2026 国产超节点算力浪潮下@ACP#IX9104 在算力矩阵中的定位与落地场景
大数据·数据库·人工智能·嵌入式硬件·线性代数·矩阵
z20348315205 小时前
STM32单片机控制无源蜂鸣器播放《晴天》
stm32·单片机·嵌入式硬件
国科安芯7 小时前
详解ADC 规则组外部触发:CH2、CH3 与 TRGO2
运维·网络·单片机·嵌入式硬件·mcu·系统架构
ACP广源盛139246256737 小时前
WAIC2026 国产算力浪潮@ACP#YLB3118 在算力矩阵中的存储定位与落地场景
大数据·人工智能·分布式·单片机·嵌入式硬件
ACP广源盛139246256737 小时前
WAIC2026 国产算力浪潮下@ACP#IX8024 在算力矩阵中的定位与落地场景
大数据·数据库·人工智能·嵌入式硬件·线性代数·矩阵
Dr.kangder7 小时前
嵌入式面试总结(十四)——中断处理
单片机·面试·职场和发展·架构·硬件架构·嵌入式