【SemiDrive G9 系列软件开发】 G9X PTG5.0 安全域 PWM 功能使用

一、 测试环境

 硬件:SemiDrive G9X Spider

         软件:PTG5.0 Linux + FreeRTOS

 

图(1)

 

二、 配置与 Demo

1.测试原理:

       G9X 有 8 个 PWM 模块,其中,PWM1 和 PWM2 属于 Safety Domain,PWM3 – PWM8 属于 AP

Domain,每个 PWM 有 4 个输出 Channel,本次测试采用 PWM3 Channel-1 作为测试通道。查找资料可知,GPIO-C9 的 mux6 为 PWM3 CH1 复用功能,如图(2)。

图(2)

2.资源分配      

        如上节所述,PWM3 属于 AP Domain 资源,因此在 safety domain 使用的时候,需要做资源调整,修改 buildsystem/rtos/lk_boot/chipcfg/generate/g9x/projects/default/safety路径下的 domain_res.h,增加需要测试的 PWM Unit,并在 domain_res_cnt.h 中修改 PWM 实际在 safety domain 使用的 PWM Unit个数。domain_res.h 的修改参考图(3),这里增加了PWM3,PWM6 两个 Unit。

图(3)


3.配置

        Pinmux 的配置首先打开 SDConfigTool,选择 Chip G9X,然后 import binary,选择 SDK 中buildsystem/binary_G9X_Ref_Linux_1G_2133/system_config.img,修改 pinmux 后,Savebinary,将新生成的 system_config.img copy 到原有路径,重新打包生成 ospi.pac。操作步骤图(4)。


图(4)

PWM 的测试代码可以从以下链接获取。

链接:https://pan.baidu.com/s/18B1NXPuDHwfA17HT6aWv1A  提取码:u9z4  

       获取代码解压后, copy 到工程的 buildsystem/rtos/freertos_safetyos/application/test 路径,并修改buildsystem/rtos/freertos_safetyos/project/safety-g9x-ref.mk,按照图(5)增加测试代码的编译配置,并重新编译Safety 镜像并打包。

 

图(5)


图(6)是测试 demo 的配置部分代码片段,具体配置含义解释如下。

        hal_cfg.freq = 20000; // pwm 输出频率

        hal_cfg.grp_num = HAL_PWM_CHN_A_B_WORK; //输出通道配置,ABCD 对应 channel 0123

        hal_cfg.single_mode = HAL_PWM_CONTINUE_CMP;//连续模式,PWM 连续输出,软件控制停止

        hal_cfg.align_mode = HAL_PWM_EDGE_ALIGN_MODE;//比较模式,单/双 两种,详情见 TRM 文档

        hal_cfg.cmp_cfg[HAL_PWM_CHN_B].phase = HAL_PWM_PHASE_POLARITY_POS;//初始相位

        hal_cfg.cmp_cfg[HAL_PWM_CHN_B].duty = PWM_DUTY;//占空比

图(6)

 

三、测试操作

        1.完成以上操作后,编译工程,然后用新生成的 safe.bin,system_config.img替换 SDFactoryTool 里面 safety 域的 bin 文件,见图(7)。或者重新打包 ospi.pac


图(7)


       2.拨码开关设置为 0000,启动开发板。命令行执行 pwm_task,输出 log 显示 pwm 模块寄存器信息,占空比,周期等,见图(8),结合相关文档可以用于调试。

图(8)

       
3.最后使用逻辑分析仪捕捉 GPIO_C9 引脚的输出,如图(9)显示输出周期为 50us,即频率为20000 的 PWM 方波。

图(9)

如对此有更多需求,敬请联系世平集团 ATU 部门, atu.cn@wpi-group.com

 

 

四、 参考文献:

  1. SD_G9_SDK_Reference_Manual_Rev1.4.pdf
  2. SD_G9H_Quick_Start_Rev1.01.pdf
  3. G9_Processor_TRM_Rev01.00.pdf

欢迎在博文下方留言评论,我们会及时回复您的问题。如有更多需求,欢迎联系大联大世平集团 ATU 部门:atu.sh@wpi-group.com
     
作者:Sim Guo / 郭夕峰


更多资讯,请扫码关注我们!:



★博文内容均由个人提供,与平台无关,如有违法或侵权,请与网站管理员联系。

★文明上网,请理性发言。内容一周内被举报5次,发文人进小黑屋喔~

评论