基于单片机技术的波形发生器采用单片机设计
1引言
波形发生器作为常用的信号源,被广泛应用于调试,自动控制系统和教学实验等领域。目前使用的波形发生器大部分对大的缺点是,其体积大,可靠性差,精度低。提出一种性价比高的波形发生器,利用单片机进行函数处理,由软件控制波形输出,利用单片机进行函数处理,由软件实现波形生成,输出的数字信号再经模拟和信号放大处理后输出所需波形。该波形发生器具有集成度高,体积小,可靠性好,精度高,价格便宜等特点。
2设计任务和基本要求
2.1具有产生正弦波.方波.三角波三种周期性波形的功能。
2.2输入波形的频率范围为100~~20khz(非正弦波频率按10次斜波计
算);重复频率可调,频率步进间隔小于100HZ。
2.3具有显示输出波形的类型,重复频率(周期)和幅度的功能。
3元器件性能分析
3.189C51处理器的基本介绍及其特点
89C51逻辑符号图
图(1)
89C51为40引脚,其引脚图如图(1)
CPU为Intel公司生产的89C51/89C52/89C55等。出厂所配晶振频率为12MHZ,每个机器周期为1.085us,用户可更换晶振以提高速度。●程序存贮器为64K,其中前4K/8K20K在CPU内部,其它程序在EPR0M27512中。●数据存贮器为32K(62256),地址为8000—FFFFH。●Ⅰ/O扩展8155,片内RAM地址∶200O-20FFH8155,命令口地址为∶2100HA口地址为∶21O1HB口地址为.2102HC口地址为:2103HT低八位∶2104HT高八位∶2105H●A/D采用精高度,速度快(25us)的AD574,并在其转换前对信号作了采样保持处理。AD574启动地址为:4000H高八位地址为∶4002H低四位地址为∶4003H多路模拟开关的使用∶IN0∶P1=0F8HIN4∶P1=0FCHIN1∶P1=0F9HIN5:P1=OFDHIN2∶P1=0FAHIN5:P1=0FEHIN3∶P1=0FBHIN7:P1=0FFHP1.0按CD4051的C⑼,P1.1按CD4051的B脚(10)、P1.2按CD4051的A脚(11)。●D/A采用0832输出,地址为∶6000H-6FFFH●键盘显示(CZ2)采用8279,地址为:7FFEH-7FFFH●日历时钟芯片DS12887,命令寄存器为5000H-500DH,不掉电数据存贮器为∶500EH-507FH[M]89C51执行指令的时间与及定时器/计数器计数的频率都与振荡源的周期有关,为了提高波形频率的精度,采用12MHZ的晶振与外部时钟方式,晶振的两根引脚分别与89C51的外接晶振引脚X1和X2相连。波形发生器工作时,要求进入复位工作状态,因此需设计准确,可靠的复位电路。
89C51单片机内部设置两个16位可编程的定时器/计数器T0和T1,它们具有计数器方式和定时器方式两种工作方式及4种工作模式。在波形发生器中,将其做定时器使用,用它来精确地确定波形的两个采样点输出之间的延迟时间。模式1采用的是16位计数器,当T0或T1被允许记数后,从初值开始加1记数,最高位产生益处时向CPU请求中断。因此要想确定精确的时间,首先要计算出记数初值。中断系统是使处理器具有对外界异步事件的处理能力而设置的。当中央处理器CPU正在处理某件事的时候外界发生了紧急事件。在波形发生器中,只用到片内定时器/计数器益出时产生的中断请求,既是在89C51输出一个波形采样点信号后,接着启动定时器,在定时器未产生中断之前,89C51等待,直到定时器计时结束,产生中断请求,89C51响应中断,接着输出下一个采样点信号,如此循环产生所需要的信号波形。
8279的基本介绍及其特点(本文转载自
www.yzbxz.com 一枝笔写作网)
3.2.18279的基本介绍
8279的逻辑符号
(图2)
8279为40引脚芯片,其引脚图为图(2)
8279是Intel公司生产的通用可编程键盘和显示器接口电路芯片。8279可以实现对键盘和显示器的自动扫描,识别闭合键的键号,完成显示器动态显示。从而大大节省了CPU处理键盘和显示器的时间,提高了CPU的工作效率。另外,8279与单片机的接口简单,显示稳定,工作可靠,应用愈来愈广泛。[M]
8279与CPU之间的信息交换可分为3种类型,即命令字,状态字和数据。它们的作用分别如下:当8279的A0入高电平时,CPU向8279写入的数据为命令字,读出的数据为状态字;时钟编程命令字:D7D6D5=001为时钟编程命令字的特征位,PPPP用来设定对外部时钟信号的分频系数N,N取2-31。通过对外部输入信号的N分频获得8279所需的100VHZ的内部时钟信号。读FIFO/传感器RAM命令字:该命令只在传感器工作方式中使用,在键盘工作方式中,读出操作按先进先出的顺序,不需此命令;读显示RAM命令字:该命令字用来设定要读出的显示RAM的地址;写显示RAM命令字:D7D6D5=100为写显示RAM命令字特征位,在写显示RAM之前用该命令字来设定要写入RAM单元的地址;显示禁止写入,消隐命令字:BLA,BLB(D1,D0)为消隐设置位。分别用于两组显示的消隐设置,当Bl=1时,对应的显示输出被消隐,当Bl=0时,恢复显示;清除命令字:CA=1时,对显示RAM的清除方式由D3,D2二位确定,清除显示RAM大约需要100us时间,在此期间CPU不能向显示RAM中写入数据;结束中断/错误方式设置命令字:在键盘工作方式中,若8297设置为N键依次读出方式后,若8279设置为N键依次读出方式后,若CPU给8279又写入结束中断/错误方式设置命令(E=1),则8279将以特定的错误方式工作,如果8279发现多个键同时闭合,则FIFO状态字的错误特征位S/E置1,并产生中断请求信号的阻止写入FIFORAM。状态字:在键盘输入和选通输入方式中,状态字给出了FIFORAM中的数据个数,是否出错等信息;输入数据的格式:当A0=0时,CPU对8279读,写的均为数据,写入的为要显示数符的段选码,读出的数据为键盘数据或传感器距阵数据,在键盘工作方式中,当有键闭合时,其行号和列号(分别由RL0—RL7和SL0—SL3确定)输入FIFORAM中。
8279最多可以接16位显示器,一个8*8的行列式键盘。当有键按下时,键号自动进入FIFORAM,并置中断请求信号有效,向CPU请求中断。要显的数据的段选码送到显示RAM中,8279自动完成扫描显示。CPU所要做的工作是对8279进行初始化,输入显示数据的段选码,有键按下时,读入键号。因此,在8279键盘,显示系统中,CPU用于处理键盘和显示器的时间明显减少,提高了CPU的工作效率。
3.2.28279的命令和状态字
(1)键盘/显示方式设置命令命令特征位:D7D6D5=000DD两位用来设定显示方式:008个字符显示----左入0116个字符显示----左入108个字符显示----右入1116个字符显示----右入所谓的左入就是在显示时,显示字符是从左面向右面逐个排列。右入就是显示字符从右面向左面移动。所对应的SL编码最小的为显示的最高位KKK三位用来设定键盘工作方式:K000编码扫描键盘----双键锁定K001译码扫描键盘----双键锁定K010编码扫描键盘----N键轮回K011译码扫描键盘----N键轮回K100编码扫描传感器矩阵K101译码扫描传感器矩阵K110选通输入,编码显示扫描K111选通输入,译码显示扫描第一位K没有任何意义。双键锁定和N键轮回是两种不同的多键同时按下保护方式。双键锁定为两键同时按下提供保护,在消振周期内,如果有两键同时被按下,则只有其中的一键弹起,而另一键在按下位置时,才能被认可。N键轮回为N键同时按下提供保护,当有若干个键同时按下时,键盘扫描能根据发现它们的次序,依次将它们的状态送入FIFORAM。(责任编辑:一枝笔写作事务所)