单片机实验程序及流程图.doc_第1页
单片机实验程序及流程图.doc_第2页
单片机实验程序及流程图.doc_第3页
单片机实验程序及流程图.doc_第4页
单片机实验程序及流程图.doc_第5页
已阅读5页,还剩28页未读 继续免费阅读

下载本文档

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

文档简介

三程序清单及程序流程框图 ORG 0000H LJMP MAINMAIN: MOV R0,#30HMOV R2,#10HCLR A A1:MOV R0,A INC R0INC ADJNZ R2,A1MOV R0,#30HMOV R1,#40HMOV R2,#10H A2: MOV A, R0 MOV R1,AINC R0INC R1DJNZ R2, A2MOV R1,#40HMOV DPTR ,#4800HMOV R2, #10H A3: MOV A,R1 MOVX DPTR ,AINC R1INC DPTRDJNZ R2,A3MOV SP,#60HMOV R2,#10HMOV DPTR ,#4800HPUSH DPLPUSH DPHMOV DPTR,#5800HMOV R3,DPLMOV R4,DPH A4: POP DPH POP DPLMOVX A,DPTRINC DPTRPUSH DPLPUSH DPHMOV DPL,R3MOV DPH,R4MOVX DPTR,AINC DPTR MOV R3,DPLMOV R4,DPHDJNZ R2,A4MOV R0,#50HMOV DPTR,#5800HMOV R2,#10H A5: MOVX A,DPTR MOV R0,AINC R0INC DPTRDJNZ R2,A5POP DPH POP DPL HERE: LJMP HEREEND 三实验电路四程序清单及流程图程序一ORG0000HLJMP MAINORG 000BH LJMP IPTO MAIN: MOV SP,#30HMOV TMOD,#01HCLR 00HSETB EASETB ET0MOV TH0,#3CHMOV TL0,#0B0HMOV R1,#14HSETB TR0MOV A,#0feHMOV P1,ANT: JNB 00H,NTRL AMOV P1,A CLR 00HLJMP NTIPTO: MOV TH0,#3CHMOV TL0,#0B0HDJNZ R1,TIOMOV R1,#14HSETB00H TIO: RETIEND程序二只需将程序一中“RLA”改为“RR A”即可实现其功能。程序三ORG0000H LJMP MAIN ORG 000BH LJMPIPTO MAIN: MOV SP,#30HMOVTMOD,#01HCLR 00HSETBEASETB ET0MOV TH0,#3CHMOV TL0,#0B0HMOV R2,#0AHMOV R1,#02HSETB TR0MOV A,#0feHMOV P1,ANT: SETB P3.0NT0:JNB01H,NT0 CLR P3.0 CLR01HNT1:JNB 00H,NT1 CLR 01H RL A MOV P1,A CLR 00H LJMP NTIPTO:MOVTH0,#3CH MOV TL0,#0B0H DJNZR2,TIO MOV R2,#0AH SETB 01H DJNZ R1,TIO MOV R1,#02H SETB 00H TIO: RETIEND 程序四(思考题程序)ORG0000H LJMPMAINORG 000BHLJMP IPTO MAIN: MOV SP,#30HMOV P1,#0ffHMOVTMOD,#01HCLR 00HSETB EASETB ET0MOV TH0,#3CHMOV TL0,#0B0HMOV R1,#14HSETB TR0MOV A,#00HNT:JNB 00H,NT INCA MOV R3,A CPL A MOV P1,A CLR 00H MOVA,R3 LJMP NTIPTO:MOV TH0,#3CH MOVTL0,#0B0H DJNZ R1,TIO MOV R1,#14H SETB 00H TIO: RETI END三电路原理图四.程序清单及流程图程序一ORG0000HLJMPMAIN MAIN:MOVTMOD,#02HMOVTH0,#9CHMOVTL0,#9CHSETBTR0SETBP1.0 HERE:JNB TF0,HERE CPLP1.0CLRTF0LJMPHERE END程序二ORG0000HLJMPMAINORG000BHLJMPIPTO MAIN:MOVSP,#60HMOVTMOD,#02HMOVIE,#82HMOVTH0,#88HMOVTL0,#88HSETBTR0SETBP1.1 HERE:LJMPHERE IPTO: CPLP1.1 RETI END程序三(思考题)ORG0000HLJMPMAIN MAIN:MOVTMOD,#11HMOVTH0,#0FEHMOVTL0,#0D4HMOVTH1,#0FFHMOVTL1,#38HSETBTR1SETBP1.0 HERE: JNBTF1,HERE CPLP1.0SETBTR0CLRTF1CLRTR1MOVTH1,#0FFHMOVTL1,#38H HERE1: JNBTF0,HERE1 CPLP1.0SETBTR1CLRTF0CLRTR0MOVTH0,#0FEHMOVTL0,#0D4H LJMPHERE END五.实验结果 周期为200us方波 周期为240us方波周期为500us占空比为2:5的方波三、电路原理图四、程序清单及流程图程序1:ORG0000H LJMPMAIN MAIN: MOVTMOD,#06HMOVTH0,#9CHMOVTL0,#9CHSETBTR0 HERE:JNB TF0,HERE CPLP1.0CLRTF0LJMPHERE END程序2:ORG0000HLJMPMAINORG000BHLJMPITPO MAIN: MOVSP,#60H MOVTMOD,#06HMOVTH0,#38HMOVTL0,#38HMOVIE,#82HSETBTR0 HERE:LJMPHERE ITPO:CPLP1.0 RETI END程序3(思考题):ORG0000HLJMPMAINORG001BHLJMPITPO MAIN:MOVSP,#60HMOVTMOD,#62HMOVTH0,#9CHMOVTL0,#9CHMOVTH1, #0CEHMOVTL1,#0CEHMOVIE,#88HSETBTR0SETBTR1SETBP1.0 HERE:JNB TF0,HERE CPLP1.0CLRTF0LJMPHERE ITPO:CPLP1.1 RETI END五、实验结果程序1与程序2从T0接入1000Hz的方波,思考题从P1.0口线产生的方波从T1接入 计100次脉冲 计200次脉冲思考题波形三、电路原理图四、程序清单及流程图程序一:ORG0000H LJMPMAINORG0003HLJMPEXTER0ORG000BHLJMPIPTOORG00013HLJMPEXTER1 MAIN:MOVSP,#60HMOVTMOD,#11HMOVIE,#87H MOVIP,#02HMOVTH0,#9EHMOVTL0,#58HMOVTH1,#0D8HMOVTL1,#0F0H HERE:LJMPHERE DELAY:SETBTR1 HEREY:JNBTF1,HEREY CLRTR1CLRTF1MOVTH1,#0D8HMOVTL1,#0F0HRETEXTER0:LCALLDELAY JBP1.0,LOOP0 HERE0:JNBP1.0,HERE0 SETBTR0 LOOP0:RETIEXTER1:LCALLDELAY JBP1.1,LOOP1 HERE1:JNBP1.1,HERE1 CLRTR0 LOOP1:RETI IPTO:CPLP1.2MOVTH0,#9EHMOVTL0,#58H RETI END程序二(思考题)ORG0000HLJMPMAIN ORG0003HLJMPEXTER0ORG000BHLJMPIPTO MAIN:MOVSP,#60HMOVTMOD,#11HMOVIE,#83HMOVIP,#02HMOVTH0,#0B1H MOVTL0,#0E0H MOVTH1,#0D8HMOVTL1,#0F0HMOVR1,#02H HERE:LJMPHERE DELAY:SETBTR1 HEREY:JNBTF1,HEREY CLRTR1CLRTF1MOVTH1,#0D8HMOVTL1,#0F0HRETEXTER0:LCALLDELAY JBP1.0,LOOP0 HERE0:JNBP1.0,HERE0 CPLTR0 LOOP0:RETI IPTO: DJNZR1,LOOP CPLP1.2 CPL00HJNB00H,LOOP2MOVR1,#03HLJMPLOOP LOOP2:MOVR1,#02H LOOP: MOVTH0,#0B1H MOVTL0,#0E0H RETIEND五、实验结果1、基本要求部分:将程序产生的十六进制代码加载到proteus中,运行仿真开始无波形输出,按下K0键输出周期为50mS的连续方波,如图5.1所示,当按下K1键波形消失,重复操作结果一样。2、思考题部分:将程序产生的十六进制代码加载到proteus中,运行仿真开始无波形输出,按下K0键输出周期为100mS占空比为2:5的连续矩形波,如图5.2所示,当再次按下K0键波形消失,重复操作结果一样。 图5.1 图5.2三、电路原理图 四、程序清单及流程图程序一:ORG0000H LJMP MAIN ORG000BH LJMPINTO MAIN:LCALLDELY MOVSP,#60H MOVTMOD,#02H MOVIE,#82H MOVTH0,#9CH MOVTL0,#9CH MOVDPTR,#7FFFH MOVA,#81H MOVXDPTR,AMOVR3,#0FFH SETBTR0LOOP0: MOVDPTR,#7FFEH MOVXA,DPTR SWAPA MOVXDPTR,A LJMPLOOP0 INTO:PUSHDPL PUSHDPH PUSHACC MOVDPTR,#7FFCH MOVA,R3 MOVXDPTR,A CPLA MOVR3,A POPACC POPDPH POPDPL RETI DELY:MOVR4,#0FFH LOOP:NOP NOP DJNZR4,LOOP RET END程序二(思考题):ORG0000H LJMP MAIN MAIN:LCALLDELY MOVDPTR,#7FFFH MOVA,#80H MOVXDPTR,A MOVR3,#08H MOVDPTR,#7FFEH MOVA,#0FFH MOVXDPTR,ALOOP0: MOVDPTR,#7FFFH MOVA,#00HLOOP1: MOVXDPTR,A LCALLDELY CPLACC.0 MOVXDPTR,A LCALLDELY CPLACC.0 INCACC INCACC DJNZR3,LOOP1MOVR3,#08H LJMPLOOP0 DELY:MOVR4,#0FFH LOOP3:MOVR5,#0FFH LOOP:NOP NOP NOP NOP NOP DJNZR5,LOOP DJNZR4,LOOP3 RET END五、实验结果1、基本要求部分:将程序产生的十六进制代码加载到proteus中,运行仿真可以在示波器中看到如图6.1所示波形,当按下k0键时可以看到D4点亮,同理按下K1键,D5点亮,按下K2键,D6点亮,按下K3键,D7点亮。2、思考题部分:将程序产生的十六进制代码加载到proteus中,运行仿真开始二极管全部熄灭,然后从上倒下依次循环点亮。图6.1三、实验电路四、程序清单及流程图程序一:#include#define uchar unsigned char#define uint unsigned intsbit smg0=P20; sbit smg1=P21; sbit smg2=P22; sbit smg3=P23;unsigned char code smg_we=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90;uchar zs,xs,ad_data;void ad(void);void delay(uint t); void delay_1ms(void); void display(void); /*主函数*/void main()while(1)uchar xdata *dr_ad; uint ad_data; dr_ad=0xfff7; *dr_ad=0;delay(15);/延时100us ad_data=*dr_ad; ad_data=ad_data*1.963125; zs=ad_data/100; xs=ad_data%100; display() ; /*延时1ms函数*/void delay_1ms(void)uchar j,t;for(t=100;t0;t-) for(j=19;j0;j-); /*延时子函数*/void delay(uint t) while(t-); /*显示子函数*/void display(void) P1=smg_wexs%10;smg0=1;smg1=0;smg2=0;smg3=0;delay_1ms();P1=smg_wexs/10; smg0=0;smg1=1;smg2=0;smg3=0;delay_1ms();P1=smg_wezs%10&0x7f; smg0=0;smg1=0;smg2=1;smg3=0;delay_1ms();smg0=0;smg1=0;smg2=0;smg3=0;delay_1ms(); 程序二:查询方式只需将主函数中的延时改为一个while循环语句,条件为AD中EOC引脚接的单片的口线为1即可。程序三:主函数中将总中断和外部中断0开启,将取数据部分放到中断服务程序中,中断服务程序如下。/*中断服务函数*/void ad(void)interrupt 0 using 0 uchar xdata *dr_ad; dr_ad=0xfff7; ad_data=ad_data*1.963125; *dr_ad=0; 五、实验结果将程序产生的十六进制代码加载到proteus中,运行仿真,调节滑动变阻器改变AD输入的电压,可以到如图7.17.4所示的实验结果。图7.1图7.2图7.3图7.4三、实验原理电路图四、程序清单及流程图#include#define uchar unsigned char#define uint unsigned intuchar jz;unsigned char code zxb_daima=0x7F,0x85,0x8B, 0x92,0x98,0x9E,0xA4,0xAA,0xB0,0xB6, 0xBB, 0xC1, 0xC6, 0xCB,0xD0,0xD5, 0xD9,0xDD,0xE2,0xE5,0xE9,0xEC,0xEF, 0xF2,0xF5, 0xF7, 0xF9,0xFB, 0xFC,0xFD,0xFE,0xFE, 0xFE,0xFE,0xFE,0xFD,0xFC,0xFB,0xF9,0xF7, 0xF5, 0xF2,0xEF,0xEC,0xE9,0xE5,0xE2,0xDD, 0xD9,0xD5,0xD0,0xCB, 0xC6,0xC1, 0xBB, 0xB6, 0xB0,0xAA,0xA4,0x9E,0x98,0x92,0x8B,0x85,0x7F,0x79,0x73,0x6C,0x66,0x60,0x5A,0x54,0x4E,0x48,0x43,0x3D,0x38,0x33,0x2E,0x29, 0x25, 0x21,0x1C,0x19,0x15,0x12,0x0F,0x0C, 0x09, 0x07,0x05,0x03,0x02,0x01,0x00,0x00,0x00,0x00,0x00,0x01,0x02,0x03,0x05,0x07,0x09,0x0C,0x0F,0x12,0x15,0x19,0x1C,0x21,0x25,0x29,0x2E,0x33,0x38,0x3D,0x43,0x48,0x4E,0x54,0x5A,0x60,0x66,0x6C,0x73,0x79;/正弦波数据代码/*延时10ms函数*/void delay_10ms(void)uchar j,t;for(t=100;t0;t-)for(j=190;j0;j-); /*延时子函数*/void delay(uint t) while(t-); /*取键值子函数*/uchar key_data(void) uchar i;i=P1;i=i;i=i&0x1f;return (i); /*判键子函数*/uchar key(void)uchar i,d;i=key_data();if(i!=0)delay_10ms();i=key_data();if(i!=0)i=key_data();d=i;while(i!=0)delay_10ms();i=key_data();delay_10ms();i=key_data();while(i!=0)delay_10ms();i=key_data();i=d;return (i); /*方波产生函数*/void fangbo(void)uchar xdata *dr_da;uchar i,j=0;for(i=63;i0&jz!=1;i-) dr_da=0xfffe; *dr_da=j; j=0; jz=key(); for(i=63;i0&jz!=1;i-) dr_da=0xfffe; *dr_da=j; j=255; jz=key(); /*锯齿波产生函数*/void juchibo(void)uchar xdata *dr_da;uchar i,j=0; for(i=63;i0&jz!=2;i-) dr_da=0xfffe; *dr_da=j; j=j+4; jz=key(); /*三角波产生函数*/void sanjiaobo(void)uchar xdata *dr_da;uchar i,j=0;for(i=63;i0&jz!=4;i-) dr_da=0xfffe; *dr_da=j; j=j+4; jz=key(); for(i=63;i0&jz!=4;i-) dr_da=0xfffe; *dr_da=j; j=j-4; jz=key(); /*正弦波产生函数*/void zhengxianbo(void)uchar xdata *dr_da

温馨提示

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

评论

0/150

提交评论