AT89C51 单处机内部设置两个 16 位可编程的定时器/计数器 T0 和 T1,它
们具有计数器方式和定时器方式两种工作方式及 4 种工作模式。在波形发生器
中,将其作定时器使用,用它来精确地确定波形的两个采样点输出之间的延迟时
间。模式 1 采用的是 16 位计数器,当 T0 或 T1 被允许计数后,从初值开始加计
数,最高位产生溢出时向 CPU 请求中断。 中断系统是使处理器具有对外界异步
事件的处理能力而设置的。当中央处理器 CPU 正在处理某件事的时候外界发生
了紧急事件,要求 CPU 暂停当前的工作,转而去处理这个紧急事件。在波形发
生器中,只用到片内定时器/计数器溢出时产生的中断请求,即是在 AT89C51
输出一个波形采样点信号后,接着启动定时器,在定时器未产生中断之前,
AT89C51 等待,直到定时器计时结束,产生中断请求,AT89C51 响应中断,接
着输出下一个采样点信号,如此循环产生所需要的信号波形 [6]。
如图 3.2 所示,
AT89C51 从 P0 口接收来自键盘的信号,并通过 P2 口输出一些控制信号,将其
输入到 8155 的信号控制端,用于控制其信号的输入、输出。如果有键按下,则
。
在读控制端会产生一个读信号,使单片机读入信号。如果有信号输出,则在写控
制端产生一个写信号,并将所要输出的信号通过 8155 的 PB 口输出,并在数码
管上显示出来