[MM32生态] 【EV Board (MM32L0136C7P)测评】+使用SysTick实现高精度延时及SysTick使用注意事项

[复制链接]
1123|1
 楼主| 6552918 发表于 2022-12-11 15:11 | 显示全部楼层 |阅读模式
本帖最后由 6552918 于 2022-12-11 15:28 编辑

SysTick是ARM内核的一个功能,利用这个定时器,可以实现高精度延时。
34e9832e74e3682665c5381ccabd7447
我封装的延时函数就是使用这个定时器实现的,所有延时操作都是在delay.c和delay.h文件内。
delay.h内先关说明
a85e5ccbeb3e8a9b440e5648c80b7f2a
使用时只需要在初始化时调用delay_init();就可以使用相关延时函数。
c5da5399659ad6a977df7e28fe4fbb59
delay_init();内根据#define SYSTICK_INT_DELAY决定使用那种方式,默认使用中断方式
5075b42322368a1ecc2a788af589c4d8
SysTick_Config函数在core_cm0plus.h内,而且不知道为什么,函数库里和SysTick相关的函数只有这么一点,所以只能支持中断模式。
fff26f77fec9c44a7e0351a9a1cd43ff
因为查询模式的初始化需要调void SYSTICK_ClockSourceConfig(u32 SysTick_ClockSource)函数,但这款芯片的库文件没有相关文件,所以无法实现查询方式的SYSTICK延时
6e7022605dcde90d566a7ad23f29a101
微妙延时函数
fe5b7c62edaa233e8ddca37fe9888173
毫秒延时
82419c518a64cebc491dbbf7dea0732d
总结,不知道是什么原因,函数库感觉很不健全,我在调试其他功能时,也有类似感觉,很多常用的函数都没有实现,希望原厂尽快完善一下。 delay.zip (2.33 KB, 下载次数: 7)


xu@xupt 发表于 2022-12-19 10:35 | 显示全部楼层
学习啦,感谢分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:北京汇冠触摸技术有限公司/电子工程师
简介:电子工程师,嵌入式应用爱好者。

102

主题

1290

帖子

10

粉丝
快速回复 在线客服 返回列表 返回顶部