TEC6122 是一款数字集成芯片。它的外接电压也是+5V,并且由于数码管的载
压较小,为了保护数码管,必须在两者间接电阻,大约是 560 欧。
扫描利用软件程序实现,当某一按键按下时,扫描程序立即检测到,随后调用
子程序,执行相应的功能。
3、D/A 电路
功能:将波形样值的编码转换成模拟值,完成双极性的波形输出。
由一片 0832 和两块 LM358 运放组成。DAC0832 是一个具有两个输入数据寄
存器的 8 位 DAC。目前生产的 DAC 芯片分为两类,一类芯片内部设置有数据
寄存器,不需要外加电路就可以直接与微型计算机接口。另一类芯片内部没有
数据寄存器,输出信号随数据输入线的状态变化而变化,因此不能直接与微型
计算机接口,必须通过并行接口与微型计算机接口。DAC0832 是具有 20 条引
线的双列直插式 CMOS 器件,它内部具有两级数据寄存器,完成 8 位电流 D/A
转换,故不需要外加电路。0832 是电流输出型,示波器上显示波形,通常需要
电压信号,电流信号到电压信号的转换可以由运算放大器 LM358 实现,用两片
LM358 可以实现双极性输出。
单片机向 0832 发送数字编码,产生不同的输出。先利用采样定理对各波形进
行抽样,然后把各采样值进行编码,的到的数字量存入各个波形表,执行程序
时通过查表方法依次取出,经过 D/A 转换后输出就可以得到波形。假如 N 个点
构成波形的一个周期,则 0832 输出 N 个样值点后,样值点形成运动轨迹,即
一个周期。重复输出 N 个点,成为第二个周期。利用单片机的晶振控制输出周
期的速度,也就是控制了输出的波形的频率。这样就控制了输出的波形及其幅
值和频率。
四、 软件设计
主程序和子程序都存放在 AT89S51 单片机中。
主程序的功能是:开机以后负责查键,即做键盘扫描及显示工作,然后根据用
户所按的键转到相应的子程序进行处理,主程序框图如图 1 所示。
子程序的功能有:幅值输入处理、频率输入处理、正弦波输出、锯齿波输出、
方波输出、显示等。
下面是程序
include <reg51.h>
#define uchar unsigned char