DAC输出梯形波

2019-07-20 22:55发布

原子哥,各位大神,我想要用TIM+DAC+DMA输出一个梯形波形,总共时长是30min(1800s),上升和下降阶段各是30s,幅值是3V,如下图所示:

目前打算用TIM+DAC+DMA实现,但是DMA里面内存的数组应该怎么写呀?感觉应该不会是要把所有点都写进数组吧,但是我也不知道有啥其他的办法,请各位指点迷津!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
王木土哈哈哈
1楼-- · 2019-07-21 16:47
 精彩回答 2  元偷偷看……
王木土哈哈哈
2楼-- · 2019-07-21 21:01
xuyaqi 发表于 2016-4-11 18:03
只要你有算法用不着存数组,中断来时算一下该输出啥电平直接输出不用预先存起来。

其实这一段斜线的算法应该很简单的吧,y=k*t这种形式的,但是如果不先存好数据而是直接输出的话应该怎么做呢?我是用DMA从内存发送数据到DA,内存里预先存好数据,这个方法不大好,你说的直接输出大概是要如何实现呢?
xuande
3楼-- · 2019-07-21 21:48

斜线有斜率的要求。


xuyaqi
4楼-- · 2019-07-21 23:54
王木土哈哈哈 发表于 2016-4-11 20:04
其实这一段斜线的算法应该很简单的吧,y=k*t这种形式的,但是如果不先存好数据而是直接输出的话应该怎么 ...

这个不需要DMA,你算好后直接放到DAC数据保持寄存器就可以输出了。
王木土哈哈哈
5楼-- · 2019-07-22 04:45
xuyaqi 发表于 2016-4-11 21:27
这个不需要DMA,你算好后直接放到DAC数据保持寄存器就可以输出了。

我明白了,谢啦!
王木土哈哈哈
6楼-- · 2019-07-22 08:49
 精彩回答 2  元偷偷看……

一周热门 更多>