ImageVerifierCode 换一换
格式:DOCX , 页数:33 ,大小:368.55KB ,
资源ID:22512334      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22512334.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(测控技术实验报告Word文档下载推荐.docx)为本站会员(b****8)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

测控技术实验报告Word文档下载推荐.docx

1、四常用的各种波特率设置表波特率振荡频率SMODTIMERC/T模式自动装入480012M120F3H240012000F6H19200110592M0FDH96000FAH0F4H0E8H五实验程序程序功能说明:该程序的功能是将PC机中发来的数据接收之后又发送出来,在PC机端则在接收之后在窗口中显示。源程序清单: AJMP START ;设置主程序地址 ORG 30HSTART: MOV SP,#60H ;设置SP的值 MOV TH1,#0FeH ;设置波特率为9600 MOV TL1,#0FeH MOV TMOD,#00100000B ;选择计时器1方式2产生波特率 MOV IE,#00H

2、;禁止所有的中断,采用查询方式 MOV SCON,#01010000B ;设置串口为方式1,接收允许 SETB TR1 ;启动定时器1AGAIN: ACALL IN ;接收字符子程序 ACALL OUT ;回送字符子程序 AJMP AGAIN ;循环 out: mov sbuf,a ;发送字符子程序wait: jbc ti,end1 ;发送完毕返回 sjmp wait ;否则等待TI=1end1: retin: jbc ri,end2 ;接收到字符(RI=1)时启动接收 sjmp in ;否则查询是否接收到字符end2 : mov a,sbuf ;启动接收 ret END ;程序结束 程序清单

3、(C51):#include#include typedef unsigned char Byte;Byte data AA;void OUT(void) SBUF=AA;/*发送字符子程序*/ if(TI=1) TI=0; goto end1; /*发送完毕返回*/ goto wait;/*否则等待TI=1*/_nop_();void IN(void)in1: if(RI=1) RI=0; goto end2; /*接收到字符(RI=1)时启动接收*/ goto in1;/*否则查询是否接收到字符*/end2: AA=SBUF;/*启动接收*/void main(void) TH1=0xF3

4、;/*设置波特率为2400*/ TL1=0xF3; TMOD=0x20;/*选择计时器1方式2产生波特率*/ IE=0;/*禁止所有的中断,采用查询方式*/ SCON=0x50;/*设置串口为方式1,接收允许*/ TR1=1;/*启动定时器1*/ IN();/*接收字符子程序*/ OUT();/*回送字符子程序*/ goto AGAIN;/*循环*/实验三 V/F转换电路实验1、实验内容V/F转换电路的调试。2、实验要求1、 在了解LM331工作原理(转换原理)的基础上,考虑以下几个问题:输入电压范围;输出频率范围;输入和输出间的对应关系。2、 调试电路,直至V/F转换器可以正确输出波形。如果

5、V/F转换器没有输出或输出波形不理想,请分析查找原因,并将波形调至等占空比。3、 用示波器、频率计等工具观察V/F转换器的输出波形,观察定标调整环节W1,W2和W3对波形的影响。4、 通过实测数据分析V/F转换器的线性,画出实际的V、F对应关系。3、实验电路图实验四 V/F转换的数据采集 一 实验内容连线并编制程序:使用定时器和计数器完成 LM331脉冲输出信号的采集功能, 对采集的数据进行处理,最终得到频率值。二 实验目的定时器中断的使用;学习定时器中断间隔时间的计算;掌握计数器的使用方法;学习中断处理程序的编程方法。三 原理简述1定时器/计数器的输入脉冲周期与机器周期一样,为振荡器频率的1

6、/12。本实验中时钟频率为12M,现要采用中断方法来实现1秒延时,要在定时器1中设置一个时间常数,使其每隔0.05秒产生一次中断,CPU响应中断后R0中计数值减一,令(R0)=14H,即可实现1秒的延时,时间常数可按下法确定:机器周期=12/晶振频率=12/12=1uS定时器需设初值为X,则(216X)*1=50000uS求出X=15536化为十六进制:X=3CB0H,故初始值为:TH1=3CH,TL1=B0H。2. 初始化程序包括定时器初始化和中断系统初始化,主要对IP,IE,TCON,TMOD的相应位进行正确的设置,并将时间常数送入定时器中。由于只有定时器中断,IP不必设置。注意一点:定时

7、器1初始化时建议用如下的指令: ANL TMOD,#0FH ORL TMOD,#10H3. 设计中断服务程序和主程序中断服务程序除了要完成计数减1工作外,还要将时间常数重新送入定时器中,为下一次中断做准备。主程序则对计数器的数值进行处理,转换成频率值。四 实验程序int f,f0;void main() TMOD=0X51;/T1是计数器且工作在方式2 下8位计数器,T0是定时器且工作在方式1 下16位定时器 TH0=0X9E;/定时器 T0高八位 初值X 16位 TL0=0X58;/定时器 TO低八位 初值X 16位 TH1=0X00;/计数器高八位 初值 TL1=0X00;/计数器低八位初

8、值 ET0=1;/打开定时器T0的运行开关 EA=1;/开 总中断 TR0=1;/ 开 定时器0/ 开 定时器1 while(1);/死循环void time1() interrupt 1 using 2 EA=0; / 关总中断 TR0=0; / 关定时器0 TR1=0; / 关计数器1 f=TL1+TH1*256; /把数字构成16位的 f0=f*2; /频率的计算公式 / 01010001T1是计数器且工作在方式2 下8位计数器,T0是定时器且工作在方式1 下16位定时器 / 定时器 T0高八位 初值X 16位 / 定时器 TO低八位 初值X 16位 /计数器高八位 初值 /计数器低八位

9、初值 /打开定时器T0的运行开关 / 开 总中断 / 开 定时器0 / 开 计数器1 实验五 7279键盘显示控制实验一 实验题目连线并编制程序,将HD7279A的全部编码送HD7279A显示,以一秒钟为间隔显示下一位,以前的显示内容左移。1 了解HD7279A键盘显示芯片的基本应用;2 掌握HD7279A键盘显示芯片的接口电路及编程方法。1 HD7279A是一片具有串行接口的,可同时驱动8位共阴式数码管(或64只独立LED)的智能显示驱动芯片,该芯片同时还可连接多达64键的键盘矩阵,单片即可完成LED显示、键盘接口的全部功能。2 HD7279A内部含有译码器,可直接接受BCD码或16进制码,

10、并同时具有2种译码方式,此外还有多种控制命令,如消隐、闪烁、左移、右移、段寻址等。命令的具体形式可查阅HD7279A相关的技术资料。四 实验电路注意:另外,在实验之前,应将8单元的U7(7406)和U6(74LS245)芯片取下,因7279已经有直接驱动数码管的能力,如果另外放置驱动芯片,反而会影响数码管的显示效果。五 实验程序/程序清单(C51):/调用C51的头文件/*在程序中用BYTE 代替unsigned char了,这只是为了编写代码的方便而已!BYTE在这里还是一个类型,并不是一个变量,里面没有存储东西。*/bdata Byte BIT_COUNT,TIMER,TIMER1,TEN

11、,DATA_IN,DATA_OUT,AA,BB;/*位变量BIT_COUNT,TIMER,TIMER1,TEN,DATA_IN,DATA_OUT,AA,BB被定义为bdata存储类型,编译时编译器将把该变量定位在51单片机片内数据存储区(RAM)中的位寻址区(地址:20H-2FH)*/sbit data_in0=DATA_IN0;/定义IN口第0位为data_in0sbit data_out7=DATA_OUT7;/定义out口第7位为data_out7sbit DAT=P12 ; /*HD7279A的DATA连接于P1.2*/sbit KEY=P13 ; /*HD7279A的KEY连接于P1

12、.3*/sbit CS=P14 ; /*HD7279A的CS连接于P1.4*/sbit CLK=P15 ; /*HD7279A的CLK连接于P1.5*/void SEND(void); /调用SEND(void)函数void LONG_DELAY(void); /调用LONG_DELAY(void)函数void SHORT_DELAY(void); /调用SHORT_DELAY(void)函数void RECEIVE(void); /调用RECEIVE(void)函数void main(void) /定义主函数 _nop_(); /*空操作,就是不进行任何操作的延时,作用一般就是用作延时用*/

13、 P1=0xDB; /*1101 1011 处于无效状态*/ ; TIMER=50; /*计时器初值*/START_DELAY: TIMER1=255; /*开延时*/START_DELAY1: TIMER1-; if(TIMER10) /如果TIMER1 goto START_DELAY1;/跳至START_DELAY1 TIMER-; /计时器自减1 if(TIMER0) /判断计时器的值是否大于0,使进START_DELAY goto START_DELAY; DATA_OUT=0xA4 ; SEND() ; /*发送*/ CS=1 ; /*片选无效*/MAIN1: if(KEY=1)

14、goto MAIN1 ; /*键没有按下,循环*/ DATA_OUT=0x15 ; /*将0001 0101赋值给DATA_OUT*/ SEND() ; RECEIVE() ;/*接收*/ CS=1 ; AA=DATA_IN ; /*把输入数据复制给AA*/ if(AA=6) BB=1;/*数码管显示0000 0110*/ if(AA=5) BB=2;/*0000 0101*/ if(AA=4) BB=3;/*0000 0100*/ if(AA=14) BB=4;/*0001 0100*/ if(AA=13) BB=5;/*0001 0011*/ if(AA=12) BB=6;/*0001 0

15、010*/ if(AA=22) BB=7;/*0010 0010*/ if(AA=21) BB=8;/*0010 0001*/ if(AA=20) BB=9;/*0010 0000*/ if(AA=30) BB=11;/*0011 0000*/ if(AA=29) BB=0;/*0010 1001*/ if(AA=28) BB=12;/*0010 1000*/ TEN=0 ;/*MOV TEN,A*/ DATA_OUT=0xA1 ;/*MOV DATA_OUT,#1010 0001B*/*CALL SEND*/ DATA_OUT=0x81 ;/*MOV DATA_OUT,#1000 0001B

16、*/ DATA_OUT=TEN ;/*MOV DATA_OUT,TEN*/ DATA_OUT=0x80 ;/*MOV DATA_OUT,#1000 0000B*/ DATA_OUT=BB ;/*MOV DATA_OUT,B*/WAIT: if(KEY=0)/*有键按下*/ goto WAIT;/*跳到WAIT函数*/ goto MAIN1 ; /*跳到WAIT1函数*/void SEND(void) /*定义SEND(void)函数*/ BIT_COUNT=8 ; /*位数为8*/ CS=0 ;/*片选有效*/ LONG_DELAY() ;/*长延时*/ SEND_LOOP:CY=data_o

17、ut7 ; /*将data_out7赋值给cy,为进位的位,cy复位即cy=0*/ DAT=CY ;/*将进位赋值给DAT*/ CLK=1 ; /*时钟高电平,它变成高电平以后,HD7279延时T6才输出数据*/ AA=DATA_OUT ; /*将输出数据复制给AA*/ AA=_crol_(AA,1) ;/*循环左移*/ DATA_OUT=AA ;/*将左移后的数据输出*/ SHORT_DELAY() ; /*短延时*/ CLK=0 ;/*CLK变低电平*/ SHORT_DELAY ;/*延时T7*/ BIT_COUNT-;/*位数自减一*/ if(BIT_COUNT0)/*判断位数是不是0*

18、/ goto SEND_LOOP;/*DJNZ /*跳至SEND_LOOP*/ BIT_COUNT,SEND_LOOP; /*/ DAT=0; /*/ void LONG_DELAY(void)/*定义长延时函数*/TIMER=25; /*计数初值25*/DELAY_LOOP:TIMER-;/*延时循环 自减一*/0) goto DELAY_LOOP;/*RET*/void SHORT_DELAY(void)/*定义短延时函数*/TIMER=4;/*MOV TIMER,#4; /*计数初值为4*/DELAY_LOOP1:0)/*/ goto DELAY_LOOP1;/*跳至DELAY_LOOP

19、1*/void RECEIVE(void) /*定义RECEIVE(void)函数*/BIT_COUNT=8; /*MOV BIT_COUNT,#8*/ DAT=1; / *SETB DAT*/ LONG_DELAY(); /*CALL LONG_DELAY*/RECEIVE_LOOP:CLK=1; /*SETB CLK*/ SHORT_DELAY(); /*CALL SHORT_DELAY*/ AA=DATA_IN; /*MOV A,DATA_IN*/ AA=_crol_(AA,1); /*RL AA*/ DATA_IN=AA; /*MOV DATA_IN,A*/ CY=DAT; /*MOV

20、 C,DAT*/ data_in0=CY; /*MOV DATA_IN.0,C*/ CLK=0; /*CLR CLK*/ /BIT_COUNT自减1 if(BIT_COUNT0) /BIT_COUNT判断是否0,若是进入循环ECEIVE_LOOP goto RECEIVE_LOOP; /*CLR DAT*/ 标题: 数码管的显示效果: 静态显示一位数码管,显示0-9#include reg51.h/头文件:unsigned char table=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/变量定义:表:共阳数码管0有效依次显示0-9共十

21、个数 sbit SMG1 = P10; /引脚定义: 定义数码管阳级控制脚,第一个为P1口的0sbit SMG2 = P11; /定义数码管阳级控制脚,第二个为P1口的1void delay(unsigned int d_time); /函数声明:/延时子函时,void main(void) /主函数,C语言的入口函数: unsigned char i; /定义循环变量 while(1) SMG1=0; /选择第一位数码管,这是静态显示,P0口输出显示,不需要刷新,也可选择第二位SMG2=0;也可两位同时输出显示 for(i=0;i10;i+) /循环显示0-9 P0=tablei; /查表输

22、出数码管段值给P0口,显示相应的0-9 delay(500); /延时 void delay(unsigned int tmp)/延时子函数,参数范围 0-65536unsigned char j; while(tmp-) j=255; while(j-); 实验六 电机调速控制实验 连线并编制程序,产生脉冲信号,控制直流电动机的运行。二. 实验目的 掌握采用单片机控制直流电动机的硬件接口技术。掌握直流电动机驱动程序的设计与调试方法。熟悉直流电动机的工作特性。三. 实验电路4实验程序 /调用C51的头文件 /typedef定义可以在程序中用BYTE 代替unsigned charsbit PAA=P10; /定义位变量PAA为P10void DelayXms() /定义延时函数int i,j;for(i=0;count;i+)for(j=0;j100;j+) void main(void) /定义主函数P1=0x0; /使P1口8个脚都输出低电平while(1)

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1