kegaank 发表于 2006-9-9 19:13:51

请教马老师,ADC转换 PMW波输出的问题

ADC转换的时候,需要65~200多微秒的时间转换.在转换等待的时间里,CPU可以执行其它指令吗?

ADC的转换与CPU的工作是不是并行的?如果不是,CPU一直在哪儿等待,那可就麻烦了!

另外,我知道定时器工作与CPU是并行工作的,但PWM波的输出能与CPU工作并行吗?

machao 发表于 2006-9-11 17:31:05

ADC转换是硬件完成的,当然可以与CPU工作并行,也就是说,在AD转换期间,CPU可以做其它的事情。



PWM是由定时器完成的,也可以与CPU并行工作。



要实现所谓的与CPU并行工作,就要使用ADC中断和时钟中断了。系统软件中带有多个中断许多人是写不好的,大学中的学生基本是没有掌握的。

kegaank 发表于 2006-9-11 19:02:01

非常感谢马老师!

其实中断与调用子程序工作是一样的.只不过中断是硬件调用子程序,有一个规定的中断向量入口,具有非预见性的特征;而调用却是由软件设定,入口由软件设定,是有预见性地调用.

machao 发表于 2006-9-12 03:28:07

只说对了一半:非预见性的特征。还有就是实时性。因为中断一般要马上处理的。两点合在一起,加上系统中有多个中断的话,就比较难处理了。

kegaank 发表于 2006-9-12 12:01:20

对!实时性应是中断最主要的特征。多个中断的产生,中断嵌套,必须把握好中断优先级的问题,安排好堆栈区,不要让压入堆栈的数据溢出。另外为了防止其它中断对本中断的影响,设置中断屏蔽也显得很有必要。
页: [1]
查看完整版本: 请教马老师,ADC转换 PMW波输出的问题