STM32/STM8技术william hill官网
直播中

daxin1314

11年用户 302经验值
擅长:可编程逻辑
私信 关注
[问答]

STM32的最短延时能少于1us吗,谢谢了

     在做产品改进的时候,需要用到正弦波,先存储数据,然后DA转换为正弦波。在做调试的时候,要求用到6000HZ的正弦波,现在最短延时是1us,我用一个周期12个点来仿真正弦波,但由于波形不平滑,后期很麻烦,现在要加点,因此只能延时再短一些。能不能加晶振,或者用系统时钟72MHZ,做出延时短于1us的精确延时。谢谢大家了!

回帖(11)

1563661808

2014-4-24 13:47:23
这个需求可以用DDs
,直接产生正弦波
举报

1563661808

2014-4-24 13:47:36
这个需求可以用DDs
,直接产生正弦波
举报

daxin1314

2014-4-24 15:13:26
引用: 1563661808 发表于 2014-4-24 13:47
这个需求可以用DDs
,直接产生正弦波

STM32产生不了小于1us的延时吗
举报

1563661808

2014-4-24 15:32:24
引用: daxin1314 发表于 2014-4-24 15:13
STM32产生不了小于1us的延时吗

精确延时没用定时器吗?
举报

1563661808

2014-4-24 15:40:12
若是有用到时钟,1M就是1us。72M的话用系统时钟做定时器的时钟源,应该能做ns级别的延时
或者  直接systick  不怕你小 就怕你大
举报

daxin1314

2014-4-24 16:21:00
引用: 1563661808 发表于 2014-4-24 15:40
若是有用到时钟,1M就是1us。72M的话用系统时钟做定时器的时钟源,应该能做ns级别的延时
或者  直接systick ...

确实是,我也是这么想的!但是72Mhz的话,每计一次数是增加1/72us,不是整数,做延时的话,会不准确吧!
举报

z00

2014-4-24 23:05:46
stm32不能完成这个 可以考虑使用CPLD
举报

林霄

2014-4-26 12:48:44
DAC可以用定时器触发的,外挂DMA总线,可以做到6K
举报

1563661808

2014-4-29 10:57:07
引用: linda319 发表于 2014-4-26 12:48
DAC可以用定时器触发的,外挂DMA总线,可以做到6K

能稍微细讲一下吗
举报

youzizhile

2014-4-29 22:05:50
/*---------------------------------
函数名:延时调整形式的delaynus函数,
描 述:参数1即为1us,1000即为1ms;
-----------------------------------*/
void delay_nus(unsigned long n)
{
unsigned long j;
while(n--)
{
j=12;
while(j--);
}
}
举报

小猪

2014-4-30 23:15:48
顶一下!!!!!!!!!!

举报

更多回帖

发帖
×
20
完善资料,
赚取积分