【国产高性能运动控制MCU 先楫HPM5361】手册规范全-裸机编程也很香
[复制链接]
前言
本文以GPIO为例体验寄存器裸机编程。
GPIO寄存器操作
以PA27输出为例。
配置引脚功能为普通IO。
HPM_IOC->PAD[IOC_PAD_PA27].FUNC_CTL = IOC_PA27_FUNC_CTL_GPIO_A_27;
使能输出
HPM_GPIO0->OE[GPIO_DI_GPIOA].SET = 1 << 27;
输出高
HPM_GPIO0->DO[GPIO_DI_GPIOA].SET = 1 << 27;
输出低
HPM_GPIO0->DO[GPIO_DI_GPIOA].CLEAR = 1 << 27;
测试
void thread_entry(void *arg)
{
HPM_IOC->PAD[IOC_PAD_PA27].FUNC_CTL = IOC_PA27_FUNC_CTL_GPIO_A_27;
HPM_GPIO0->OE[GPIO_DI_GPIOA].SET = 1 << 27;
while(1){
HPM_GPIO0->DO[GPIO_DI_GPIOA].SET = 1 << 27;
rt_thread_mdelay(500);
HPM_GPIO0->DO[GPIO_DI_GPIOA].CLEAR = 1 << 27;
rt_thread_mdelay(500);
}
}
仿真查看寄存器
可以方便查看寄存器值进行调试
总结
SDK中头文件描述比较规范,可读性较好,手册页比较详细规范,直接根据手册操作寄存器编程也比较方便。
先楫的手册资料在国内半导体企业中做的是非常不错了的,很规范全,直接寄存器编程也很香。
|