基于单片机的波形发生器

基于单片机的波形发生器

ID:27784372

大小:71.00 KB

页数:5页

时间:2018-12-06

基于单片机的波形发生器_第1页
基于单片机的波形发生器_第2页
基于单片机的波形发生器_第3页
基于单片机的波形发生器_第4页
基于单片机的波形发生器_第5页
资源描述:

《基于单片机的波形发生器》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于单片机的波形发生器一、波形发生器的技术1、波形:方波、正弦波、三角波、锯齿波2、幅值电压:0V到5V3、频率:0V到10K4、输出极性:双极型。二、操作设计1、上电,系统初始化,数码管显示6个0,等待输入设置命令。2、按“F”、“V”、“W”键,分别进入频率、幅值、波形设置,数码管显示“-”。输入相应的参数,显示参数值,按“CL”键,清除所有已设定参数,参数设定完毕按“EN”键,数码管显示波形的编号、频率、电压幅值等。3、波形发生器输出信号时,按下任意键可停止信号输出,等待重新设置参数。4、要停止使用波形发生器,可按复位按键,将系统复位,然后关闭电

2、源。三、硬件组成由单片机、键盘/显示接口电路、波形转换(D/A)电路和电源等四部分构成。1、单片机电路功能:扫描码,键值识别、键处理、码数设置;形成显示段码;产生定时中断;形成的数字编码,并输出到D/A接口电路。电路如图1所示。89C51的P0、P2口作为扩展I/O,与8255A、DAC0832、74LS373相连接,可寻址片外接口芯片和内部存储器统一编址,P0和P2提供16位地址线。P1口的低4位接4只发光二极管,作为波形指示。用T0定时/计数器作为中断源。不同的频率值对应不同的定时初值,允许定时器溢出中断。定时器中断的特殊功能寄存器设置如下:TCO

3、N=00010000BTMOD=00000000BIE=10000010B2、键盘/显示电路功能:驱动6位数码管动态显示,扫描键盘。由并口扩展芯片8255、锁存器74LS273、74LS244、反向驱动器ULN2803A、6位共阴极数码管和4╳4键盘等组成。8255的C口作键盘接口,C口的低4位输出扫描码,高4位作为行状态输入,A口作为数码管的段选口,与74LS244相连,B口作为位选口,与ULN2803相连接。8255的寄存器地址如下:控制口:7FFFH、A口:7FFCH、B口:7FFDH、C口:7FFEH。3、D/A电路功能:将波形样值的编码转换成

4、模拟值;完成单极性向双极性的波形输出。由两片0832和一块LM324运放组成。0832(1)提供参考电压,单片机向0832(1)送数字编码,产生不同的的输出。本波形发生器可输出1V、2V、3V、4V、5V等五个电压,作为0832(2)输出信号时,其幅度是可调的。0832(2)用于产生各种波形,生成波形样值编码,经D/A转换得到波形的模拟样值点。假如N个点构成波形的一个同期,则0832(2)输出N个样值后,样值点形成运动轨迹,即一个同期。重复输出N个点,成为第二周期。四、软件结构程序由人机交互模块和波形产生模块组成,二者如图2所示。其中(a)是主流程图,

5、由系统初始化和人机交互模块组成,(b)是定时器中断程序流程图,波形发生模块作为中断服务程序,实现系统的波形输出。单片机的片内RAM有128个字节,30H—3FH为堆栈区,40H—45H为显示缓冲区,40H存放波形编号,41H-44H存放频率值,45H存放参考电压值,46H为设置标志区。1、人机交互模块(1)显示子模块片内RAM的40H—45H是显示缓冲区。采用查表方式形成显示的段码,显示码表存于ROM中。显示模块流程图如图3所示。R1存位先信号,R2存显示次数,R0存显示缓冲区地址。单片机先向8255的PB口送位选信号,修改R1中的内容,形成下次位选信

6、号;从显示中取数字,通过查表,得到显示段码,送8255的PC口;延时,保持显示;修改R0;判断是否已经显示6次,不满6次,转开始处执行,已经6次,则结束显示。(2)键盘处理子模块键识别作为主程序,键处理作为子程序。流程图如图4、图5所示,键盘的工作过程:1)扫描键盘,获得列扫描码和行状态码,确定键值;2)根据键值,通过散转表,转到相应的键处理程序;3)进入键处理,执行键功能。2、功能键处理(1)“F”键的处理进入“KEY_F_PRO”了程序,将设置标志区置为01H,表示频率码数设定;送42H到R5中,41H是频率值显示缓冲区首地址,向41H、42H、4

7、3H等单元送#0AH,使数码管显示“----0”,返回键盘主程序。(2)“V”键处理将设置标志区46H置为#02H,表示设定参考电压;将40H单元置为#0AH,使相应的数码管显示“-”。(3)“W”键处理将设置标志区46H置为#03H,表示设定波形编号;将40H单元置为#0AH,使相应的数码管显示“-”。(4)“0-9”键处理查设置标志区46H的内容,有无设置。若有设置则进入设定操作,将数字0-9送显示缓冲区。若无设置,则返回主程序。(5)“CL”键处理将显示缓冲区清零,使数码管显示“000000”;将设置标志区46H清零,使其处于“无设置”状态;将定

8、时器T0清零,关T0,返回主程序。(6)“EN”键处理查W、V、F等参数值是否已经全部设置,若

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。