新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 单片机在多种波形发生器中的应用

单片机在多种波形发生器中的应用

作者:时间:2012-02-15来源:网络收藏

41.jpg

2 软件设计

在硬件设计的基础上进行软件编程。由用户通过按键选择需要输出何种

2.1 方波输出

本文通过80C51内部自带的定时器/计数器实现方波输出。采用定时器/计数器T1,工作方式1,计数器位数是16位;门控位GATE置0,定时器的运行只受控制寄存器TCON中运行控制位(TR)的控制;计数器初值的设定由以下公式计算得到:
N=2n-TCfosc/12

n为计数器位数;TC为定时时间;fosc为振荡频率。通过小键盘,由用户键入需要输出方波的周期(周期只能为正数,如1 ms,2 ms,10 ms等,最大为65 ms),在P0口将得到所需的方波

2.2 锯齿波、正弦波输出

锯齿波中的斜线用一个个小台阶来逼近,在一个周期内从最小值开始逐步递增,当达到最大值后又回到最小值,如此循环,当台阶间隔很小时,基本上近似于直线。适当选择循环的时间,可以得到不同周期的锯齿波。由图3所示连接可知:选通MAX7534的LS寄存器地址为5FFFH;选通MS寄存器地址为: 3FFFH;选通DAC寄存器地址为:7FFFH;选通DAC转换地址为:1FFFH。锯齿波产生程序流程图如图4所示。

42.jpg

正弦波的产生采用查表法,的I/O输出均为+5 V的TTL电平,因此产生的正弦波幅值为+5 V。将一个周期内的正弦波形等分为N份,那么第1点的角度为0°,对应的正弦值为5sin0°;第2点的角度为360°/N,对应的正弦值为5sin (360°/N ) ……,如此计算下去,将这些模拟量正弦值都转换为双极性方式下的数字量,得到一张按照点号顺序排列的数字量正弦值表格。程序流程图与锯齿波产生子程序流程大致一致,只是每次送到MAX7534转换的14位数字量是根据得到的表格所查得的。

3 结语

本文基于80C51波形产生的3种波形完全能够满足实验中的使用要求。采用的高性能数模转换芯片保证了输出波形的精度和稳定性。通过软件实现可以输出更多的基本波形如:梯形波、三角波、反向锯齿波等,具有实际的使用价值。

参考文献
[1]周航慈,等.单片机程序设计基础[M].北京:航空航天大学出版社,1999
[2]李朝青.单片机原理及接口技术[M].北京:航空航天大学出版社, 1994


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭