智能仪器DAS实验报告.docx_第1页
智能仪器DAS实验报告.docx_第2页
智能仪器DAS实验报告.docx_第3页
智能仪器DAS实验报告.docx_第4页
智能仪器DAS实验报告.docx_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验报告智能仪器DAS实验 一. 实验目的: 学习、掌握编程方法,掌握智能仪器技术中的上位机控制下位机技术,掌握使用DA输出各种波形的技术,熟练使用KEIL、PROTEUS软件二. 实验内容:编写初始化程序,1)编程设置单片机波特率2400,设置好T1定时器工作模式和计数初始值,启动定时器,编程设置串口控制器SCON,PCON,使工作在方式1;编写控制程序:串口命令控制波形输出,包括以下内容:A. 串口中断接收命令控制波形输出,包括正弦波和直流信号在主程序循环查询串口接收寄存器,若接收S字符,表示产生正弦波,采用查表法输出正弦波;若接收到D字符,则产生一个直流信号。若接收T字符,输出0电平。B. 串口中断接收命令控制波形幅度若串口接收字符为V,表示调整幅度,此时可以输入数字,设定09个档次的幅度;比如在直流状态,0表示0v,9表示4.5V。C串口中断接收命令控制波形频率若串口接收字符为F,表示调整频率,此时可以输入数字,设定09个档次的周期,从1000微秒,每个数值步进对应500微秒,最大周期为5000微秒。三. 实验原理:连线图程序框图:程序清单:#include sbit DACS=P36;sbit DASTART=P37;char wave=0;unsigned char value=0;unsigned char N=0;unsigned char period=0;bit v_change=0;bit f_change=0;bit up=1;const table=0xFF,0xFD,0xF8,0xF1,0xE6,0xD9,0xCA,0xB9,0xA6,0x93,0x7F,0x6B,0x58,0x45,0x34,0x25,0x18,0x0D,0x06,0x01,0x00;const P_table_h=(65536-500)/256),(65536-1000)/256),(65536-1500)/256),(65536-2000)/256),(65536-2500)/256),(65536-3000)/256),(65536-3500)/256),(65536-4000)/256),(65536-4500)/256),(65536-5000)/256);const P_table_l=(65536-500)%256),(65536-1000)%256),(65536-1500)%256),(65536-2000)%256),(65536-2500)%256),(65536-3000)%256),(65536-3500)%256),(65536-4000)%256),(65536-4500)%256),(65536-5000)%256);void main()char i; PCON=0X80; /2400/SMOD=1; SCON=0X50; /串口模式1,可接收/ SM0 SM1 SM2 REN TB8 RB8 TI RI/ 0 1 0 1 0 0 0 0TMOD=0x21; /?定时器/GATE C/T M1 MO GATE C/T M1 MO/0 0 1 0 0 0 0 1TH1=256-12000000/12/16/2400;TL1=256-12000000/12/16/2400; TH0=(65536-1000)/256; TL0=(65536-1000)%256;/EX0=1; /?0?/IT0=1; /? ET0=1; /?0?ES=1;EA=1; TR1=1; /?1 DACS=0; while(1) if(wave=1) TR0=1;P0=tableN/10*(value+1); DASTART=0; DASTART=1; if(wave=2) P0=value*22; DASTART=0; DASTART=1; for(i=100;i0;i-); if(wave=3) TR0=1; P0=N*(value+1); DASTART=0; DASTART=1; void isr_ser() interrupt 4 using 3 if(RI)char c;c=SBUF;if(c=D|c=d)wave=2;TR0=0;if(c=s|c=S)wave=1;N=0;up=1;TR0=1;if(c=t|c=T)wave=0;value=0;TR0=0;RI=0;if(TI)TI=0;void isr_t0() interrupt 1 using 1 EA=0; TH0=P_table_hperiod; TL0=P_table_lperiod;if(up=1) if(N0) N-; else up=1; EA=1; 四. 实验步骤:在proteus联好硬件仿真图,用KEIL编好程序,双击芯片加载程序,实现硬件仿真。五. 实验现象汇总及分析若接收S字符,表示产生正弦波,采用查表法输出正弦波;若接收到D字符,则产生一个直流信号。若接收T字符,输出0电平。若串口接收字符为V,表示调整幅度,此时可以

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论