414|2

29

帖子

0

资源

一粒金砂(中级)

【国民技术N32G430】2 FFT应用及DWT计数器使用 [复制链接]

国民技术N32G430有很多定时器可以使用,在调试程序时候可以用来计算程序运行时间,不过这种也有问题,就是定时器频繁中断;在Cortex-M里面有一个外设叫DWT(Data Watchpoint and Trace),是用于系统调试及跟踪,不过手册上并没有具体介绍,在ARM官方手册有详细说明

image-20220920122414-1.png  

image-20220920122414-2.png  

它有一个32位的寄存器叫CYCCNT,它是一个向上的计数器,记录的是内核时钟运行的个数,内核时钟跳动一次,该计数器就加1,精度非常高,如果内核时钟是72M,那精度就是1/72M = 14ns,而程序的运行时间都是微秒级别的,所以14ns的精度是远远够的。最长能记录的时间为:59.65s。计算方法为2的32次方/72000000。当CYCCNT溢出之后,会清0重新开始向上计数。

要实现延时的功能,总共涉及到三个寄存器:DEMCR 、DWT_CTRL、DWT_CYCCNT,分别用于开启DWT功能、开启CYCCNT及获得系统时钟计数值。

image-20220920122414-3.png  

Cortex-M的DSP信号处理有ARM官方提供的,也有ST公司提供的;这里移值ST官方提供的汇编FFT函数,程序中开启FPU进行计算

image-20220920122414-4.png  

先用Matlab产生信号,并生成数据。

image-20220920122414-5.png  

image-20220920122414-6.png  

将N32G430计算结果上传到串口进行绘图,这个开发板没有集成USB转串口,需要用TTL转串口模块。

image-20220920122414-7.png  

 


回复

1912

帖子

0

资源

版主

这个FFT算法用了多久时间?
那个串口工具看着不错啊。


回复

2162

帖子

3

资源

版主

国民技术N32G430有很多定时器可以使用,在调试程序时候可以用来计算程序运行时间,不过这种也有问题,就是定时器频繁中断;在Cortex-M里面有一个外设叫DWT(Data Watchpoint and Trace),是用于系统调试及跟踪,不过手册上并没有具体介绍,在ARM官方手册有详细说明。

感谢分享,这个功能非常好用!


回复
您需要登录后才可以回帖 登录 | 注册

相关帖子
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
    关闭
    站长推荐上一条 1/10 下一条

    About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

    站点相关: 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

    北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

    电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2022 EEWORLD.com.cn, Inc. All rights reserved
    快速回复 返回顶部 返回列表