波形发生器锯齿波、方波.doc

波形发生器锯齿波、方波.doc

ID:57458486

大小:334.00 KB

页数:7页

时间:2020-08-22

波形发生器锯齿波、方波.doc_第1页
波形发生器锯齿波、方波.doc_第2页
波形发生器锯齿波、方波.doc_第3页
波形发生器锯齿波、方波.doc_第4页
波形发生器锯齿波、方波.doc_第5页
资源描述:

《波形发生器锯齿波、方波.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、波形发生器(锯齿波、方波)————————————————————————————————作者:————————————————————————————————日期:单片机课程项目设计报告项目名称:串行口双机通信系别:信息技术系班级:光电3121组别:第3组组员:32陈辉煌、06何永顺指导教师:张继飞报告日期:2014年4月12日一、实验目的通过简易波形发生器设计,掌握D/A转换器与单片机接口的一般方法,了解D/A转换器的应用技巧。二、实验内容要单片机输出和输入都是数字信号,如果需要输出方波信号,通过对I/O引脚置1和清0的方式直接从单片机的引脚上输出对应的脉

2、冲即可;在本课题中,由于没有较多的任务和外围设备,D/AC0832与单片机连接采用直通方式,并且将运放D/AC0832输出的模拟电流变换为对应的模拟电压。在直通方式中。要求将D/AC0832对应的控制端ILE接高电平,~CS,~WR1,~XFER,~WR2都接地,同时将D/AC0832的数据端口接在单片机的P口上,就能用单片机通过程序控制D/AC0832输出模拟信号。在本任务中,选择P2端口作为数据输出端口与D/AC0832相连,因此在程序中的输出数据只需要写在P2口就行了。三、实验电路四、参考程序#include#defineuchar

3、unsignedchar#defineuintunsignedintunsignedcharflag;sbitP10=P0^0;//将P10位定义为P0.0sbitP11=P0^2;//将P11位定义为P0.2uintf=100,num;//起始频率设定为100HZbittime;voidtiaopin();//将DAC0832定义为P2口voidDAC0832(unsignedcharx){P2=x;}/*************************************************函数功能:延时约10ms(1*100*100=10000u

4、s=10ms*************************************************/voiddelay10ms(void){unsignedchari,k;for(i=20;i>0;i--)for(k=250;k>0;k--);}/*****************************************函数功能:主函数******************************************/voidmain(){unsignedchari;//定义无符号变量iTMOD=0x02;//TMOD=00000010B

5、,使用定时器T0的模式2TH0=256-4000/f;ET0=1;//设定定时器工作在定时方式IT0=1;//设定下降沿有效工作方式EX0=1;//开外部中断EA=1;//开总中断TR0=1;//开定时器中断flag=0;i=0;//设定变量初始值为1while(1){tiaopin();if(time==1)//每1/f时间到{time=0;if(i>=250)i=0;elsei++;//指向下一个点switch(flag)//判断标志{case0://:DAC0832(i);break;case1://状态1:输出锯齿波if(i<125)DAC0832(2

6、55);elseDAC0832(0);break;default:;}}}}/*****************************************函数功能:频率控制******************************************/voidtiaopin(){if(P10==0){delay10ms();if(P10==0){f=f+100;if(f>1000)f=f+100;TH0=TL0=256-4000/f;}elseP10=1;}elseif(P11==0){delay10ms();if(P11==0){f=f-100;

7、if(f<100)f=f-100;TH0=TL0=256-4000/f;}elseP11=1;}}/*****************************************函数功能:定时中断0******************************************/voidtime0(void)interrupt1//"interrupt"声明函数为中断服务函数{time=1;//置时间标志}/*****************************************函数功能:外部中断0波形切换******************

8、*******************

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

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

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