开发者分享 | HPM5300EVK 优秀测评报告(一)

2024-02-27
浏览量:
73


上海先楫半导体举办的HPM5361EVK开发板试用活动圆满结束,广大工程师和爱好者们踊跃参与此次试用并提交报告。最终,先楫半导体专家组评选出6名优秀获奖者。感谢媒体平台EEWORLD电子工程世界的支持,本文整理了网友@kjsm的优秀报告,小伙伴们先睹为快!














#1

ADC读取


今天来看看先楫HPM5361的ADC读取例程,先楫HPM5361的ADC是支持16位的模数转换的,精度比一般的MCU 12位/10位的ADC都要高;采样精度更高。

打开了HPM5361的ADC16的程序


程序实例包括了ADC的四种读取模式

/** @brief Define ADC16 conversion modes. */

typedef enum {

    adc16_conv_mode_oneshot = 0,     单次转换

    adc16_conv_mode_period,

    adc16_conv_mode_sequence,

    adc16_conv_mode_preemption

} adc16_conversion_mode_t;



查看程序中使能的ADC口,可以在board.h里找到定义的ADC 口;这里使用的是ADC0.11;也可以自行修改。


ADC0.11在板子上是左边接口的ADC-A



程序默认输出是16位的数,为了直观点输出电压,我这里在第一种转换下修改了读取的处理,将读到的ADC值转化为电压值;


修改后通过串口的返回值就可以很直观的看到测试的电压值啦。




#2

互补PWM生成


PWM的全称是脉冲宽度调制,常用于设备控制,例如驱动电机,LED调光,无源蜂鸣器发声等等。

HPM5361硬件上PWM的引脚参考原理图是以下的引脚



首先是初始化IO口配置成PWM输出



板上配置PWM的PWM0 ,时钟,PWM输出的通道



PWM的时钟是连接在AHB外设的频率160MHz,从规格书上查到




加载reload是PWM的周期时间,设置为20 Khz的载波周期时间是50us,其他PWM周期可以调整参数




我想配置输出PWM互补模式,带死区输出;参考了例子的

generate_central_aligned_waveform_in_pair】

对于PWM需要配置好STA起始寄存器,RLD重载寄存器,比较寄存器CMP,互补的配置,死区时间



具体的配置程序



PWM 互补占空比更新程序;配置CMP1,CMP2的值;CMP1~CMP2的差值是正占空比的大小。



点击边框调出视频工具条


以上内容来自先楫开发者的原创分享。

我们始终相信开发者共创的力量。先楫社区坚持开源共享、互惠互利,贴近每一个开发者,一步一个脚印,一点一滴积累,为成为更好的我们而不断努力。


心之所向,锐意进取,星辰大海,恣意成长。


MCU生态建设需要您的贡献与支持!欢迎广大爱好者和开发者踊跃投稿,供稿请联系sha.li@hpmicro.com。