原创测量代码和算法运行时间
很多时候,我们设计完成一个“完美”的算法,比如无刷电机 FOC,BMS的kalman 滤波SOC,高级AI算法,人工神经网络,人脸识别,运动检测等等复杂算法后,
我们都需要对这个算法进行评测,比如,算法的复杂度,执行时间,效率等等!其中最重要的就是算法运行的时间了,简称执行时间。
作为嵌入式开发人员,我们需要知道自己设计的算法执行了多久。那么有没有一个工具能测试出我们的算法执行时间呢?
这篇测评报告就是来解决算法代码执行时间问题的。本文就以极海G32A1465开发板来运行这个时间检测算法,这个算法可以运行在所有ARM 内核的单片机上,只要单片机具备DWT定时器和Systick定时器,其中DWT是一个32位的定时器,可以精确计时到1us级别,Systick这个大家都非常的熟悉,用来裸机定时和RTOS移植都会用到,它是一个24位的定时器,相比较之下,DWT要比Systick定时精度更高,效果更好,所以本文会以DWT定时器来制作这个原创测量代码和算法运行时间算法库。以飨广大爱好者。
话不多少了,我们直接上干货!!!!!!
1.首先我们随便打开一个具备COM串口的工程,我这里使用的是Examples\G32A1465\RTC\RTC_Second\Project\MDK,的RTC_Second工程,大家自己随便选工程。
2.打开KEIL后,修改工程程序,添加头文件
|