桂电智能仪器实验代码(最新lab8000平台汇编)知识讲解

合集下载

MATLAB实验答案(桂电)

MATLAB实验答案(桂电)

实验一 MATLAB入门(1)1.实验目的:(1)了解MATLAB的体系结构与特点,熟悉其集成开发环境。

(2)熟悉MATLAB界面窗口的功能和使用方法。

(3)熟悉MATLAB的帮助系统及使用方法。

(4)了解MATLAB的的数据类型、基本形式和数组的产生方法。

(5)掌握MATLAB基本的数学运算操作。

2.实验原理(1)MATLAB简介MATLAB是美国MathWorks公司开发的高性能的科学与工程计算软件。

它在数值计算、自动控制、信号处理、神经网络、优化计算、小波分析、图像处理等领域有着广泛的用途。

近年来, MATLAB在国内高等院校、科研院所的应用逐渐普及,成为广大科研、工程技术人员必备的工具之一。

MATLAB具有矩阵和数组运算方便、编程效率极高、易学易用、可扩充性强和移植性好等优点,俗称为“草稿纸式的科学计算语言”。

它把工程技术人员从繁琐的程序代码编写工作中解放出来,可以快速地验证自己的模型和算法。

经过几十年的扩充和完善,MATLAB已经发展成为集科学计算、可视化和编程于一体的高性能的科学计算语言和软件开发环境,整套软件由MATLAB开发环境、MATLAB语言、MATLAB数学函数库、MATLAB图形处理系统和MATLAB应用程序接口(API)等五大部分组成。

MATLAB的主要特点包括强大的计算能力(尤其是矩阵计算能力)、方便的绘图功能及仿真能力、极高的编程效率。

另外,MATLAB还附带了大量的专用工具箱,用于解决各种特定领域的问题。

通过学习软件的基本操作及其编程方法,体会和逐步掌握它在矩阵运算、信号处理等方面的功能及其具体应用。

通过本课程实验的学习,要求学生初步掌握MATLAB的使用方法,初步掌握M文件的编写和运行方法,初步将MATLAB运用于数字信号处理中。

循序渐进地培养学生运用所学知识分析和解决问题的能力。

(2)MATLAB的工作界面(Desktop)与操作MATLAB 安装成功后,第一次启动时,主界面如下图(不同版本可能有差异)所示:其中① 是命令窗口(Command Window ),是MATLAB 的主窗口,默认位于MATLAB界面的右侧,用于输入命令、运行命令并显示运行结果。

理研計器株式会社 FI-8000 使用说明书

理研計器株式会社 FI-8000 使用说明书

PT3C-0526光波干涉式气体浓度计FI-8000使用说明书(PT3-052)邮编174-8744 东京都板桥区小豆泽2-7-6官方网站:https://www.rikenkeiki.co.jp/1. 产品概况 (3)1-1. 前言 (3)1-2. 使用目的 (3)1-3. 危险、警告、注意、注记 (3)2. 安全上的重要通知 (4)2-1. 危险事项 (4)2-2. 警告事项 (6)2-3. 注意事项 (7)2-4. 安全信息 (8)3. 产品的构成 (9)3-1. 本体及标准附件 (9)3-2. 各部分的名称与功能 (12)4. 使用方法 (14)4-1. 使用注意事项 (14)4-2. 启动准备 (14)4-3. 基本动作流程(测量模式) (18)4-4. 启动方法 (19)4-5. 测量方法(测量模式) (21)4-6. 标准气体校正 (24)4-7. 各种模式 (25)4-8. 设置模式 (27)4-9. 记录测量模式(仅泵吸入式) (34)4-10. 退出方法 (40)5. 各种动作及功能 (41)5-1. 注意显示“CAUTION” (41)5-2. 错误显示“ERROR” (42)6. 维修保养 (43)6-1. 检查的频次和检查项目 (43)6-2. 气体校正 (44)6-3. 清扫方法 (44)6-4. 更换各零件 (45)7. 关于保管及废弃 (46)7-1. 保管或长期不使用时的处置 (46)7-2. 重新使用时的处置 (46)7-3. 废弃产品 (47)8. 故障诊断表 (48)9. 产品规格 (51)9-1. 规格一览 (51)9-2. 附件一览 (52)10. 术语定义 (53)11. 检测原理 (54)各型号测量气体规格书 (55)1. 产品概况1-1. 前言1产品概况感谢您购买光波干涉式气体浓度计FI-8000。

请核对并确认您所购买的产品型号与本说明书规格一致。

桂林电子科技大学信息科技学院EDA实训报告

桂林电子科技大学信息科技学院EDA实训报告

桂林电子科技大学信息科技学院《EDA技术与应用》实训报告指导教师:江国强窦文淼2013年5 月9日一个4路智能抢答器的设计1.系统设计:设计一个四路智能抢答器1.1 设计要求1.1.1 设计任务要求使用cyclone EP1器件制作一个简单的智能抢答器1.1.2 技术要求抢答器能实现初始计分,主持人控制抢答开始,抢答结果清零,记录每组分数的功能,在答对或打错的情况下对每组进行加分或减分,在提前和超时抢答时实现扣分加分的功能。

1.2 方案比较与以往的硬件连接和单片机的方案作比较,用试验箱的cyclone 芯片有反应快,编程简单,功能可靠性好的优点。

与同样使用cyclone 芯片的作品比较此抢答器增加灯闪烁三秒,超时抢答和提前抢答的惩罚功能,加分范围更宽。

1.3 方案论证1.3.1 总体思路先使用Quartus9.0软件模块化设计,再在原理图中将模块连线即可完成功能!1.3.2 设计方案1.通过:倒计时,加减计数(jiajianjishu ),数码管控制模块(mux1),主持人开始是否有人提前按下?是 否 显示抢答 停输出结果 组输出加分减分重来抢答器(qdq),闪三秒(ZHSM)模块,实现功能,其中mux1模块是对数码管进行控制的,四位(16脚)从这里输出,还有两位8个脚从daojishi模块输出;加减计数模块是将每一组的分数保存下来,再通过mux1输出,抢答时通过一个拨动开关,一个防抖动按键控制加分减分;或门让当输出有一个为1时,mux1可以打开,超时和提前抢答结果可以进去,输出到数码管;倒计时模块是输出一个秒脉冲的从30减到0的信号的,ZHSM 模块是控制数码管闪3秒的。

2.各个模块程序的设计倒计时(daojishi)里面的:1:分频器module cnt60(clk,cout,i,j,m);input clk,i,j,m;reg [24:0] q;output reg cout;always @(posedge clk&(~i)&(~j)&(~m))beginif(q<20000000-1) q=q+1;else q=0;if(q==20000000-1) cout=1;else cout=0;endendmodule2. 30秒倒计时:module cntdj(clrn,clk,q,count);input clk,clrn;output reg [7:0] q;output reg count;always @(posedge clk or negedge clrn)if(~clrn) begin q='h30;count='h0; endelse beginif(q==0) q='h30;else q=q-1;if(q[3:0]=='hf)begin q[3:0]=9;endif(q=='h0) count=1;else count=0;endendmodule3.抢答器组数输出模块:module qdq(clk,qd,qd1,qd2,qd3,qd4,Sig,Sig1,Sig2,d,k,g,cnn1,cnn2,cnn3,cnn4); input clk,qd,qd1,qd2,qd3,qd4,k,g,cnn1,cnn2,cnn3,cnn4;output Sig,Sig1,Sig2;output [3:0]d;reg Sig='h0,Sig1='h0,Sig2='h0;reg [3:0]d;reg zd=1'b0;always @ (posedge clk)beginif(qd==1'b0)beginzd=1;Sig='h0;Sig1='h0;Sig2='h0;d='h0;endif(k)beginif(zd==1'b1)beginif(g)begin//if((qd1==1'b0)&(~cnn1))if(qd1==1'b0)beginzd=1'b0;Sig2='h1;d=1;endelse if((qd2==1'b0)&(~cnn2))beginzd=1'b0;Sig2='h1;d=2;endelse if((qd3==1'b0)&(~cnn3))beginzd=1'b0;Sig2='h1;d=3;endelse if((qd4==1'b0)&(~cnn4))beginzd=1'b0;Sig2='h1;d=4;endendelse if((qd1==1'b0)&(~cnn1))beginzd=1'b0;Sig='h1;d=1;endelse if((qd2==1'b0)&(~cnn2))beginzd=1'b0;Sig='h1;d=2;endelse if((qd3==1'b0)&(~cnn3))beginzd=1'b0;Sig='h1;d=3;endelse if((qd4==1'b0)&(~cnn4))beginzd=1'b0;Sig='h1;d=4;endendendelse if(~k)beginif(zd==1'b1)beginif((qd1==1'b0)&(~cnn1))beginzd=1'b0;Sig1='h1;d=1;endelse if((qd2==1'b0)&(~cnn2))beginzd=1'b0;Sig1='h1;d=2;endelse if((qd3==1'b0)&(~cnn3))beginzd=1'b0;Sig1='h1;d=3;endelse if((qd4==1'b0)&(~cnn4))beginzd=1'b0;Sig1='h1;d=4;endendendendendmodule4. 3秒闪灯模块:里面3个倒计时:每个SM模块里面:程序:gen:module gen(clk,cout);input clk;reg[23:0] q;output reg cout;always @(posedge clk)beginif(q==20000000-1) q=0;else q=q+1;if(q<=10000000-1)cout=1;else cout=0;endendmoduleqwe模块:让在3到0的时候闪3秒!4的时候是0状态,不闪灯,若要4闪则要加入一个脉冲发生器,才能实现一次删3秒时间!!!module qwe(k,clk,q,out,clr);input k,clk,clr;output reg[3:0] q;output reg out;always @(posedge clk or negedge k or negedge clr)beginif(~clr) q=0;else if(~k) q=4;else beginif(q>0) q=q-1;else q=0;if (q==0) out=0;else out=1;endendendmodule5.加减计数(jiajianjishu):module jiajianjishu(t1,t2,t3,t4,s1,d,count,cnn1,cnn2,cnn3,cnn4,p); input s1,p;input [3:0]d;output reg count,cnn1,cnn2,cnn3,cnn4;output reg[11:0]t1,t2,t3,t4;initial begin t1='h100;t2='h100;t3='h100;t4='h100; endalways @(posedge s1 )beginif(p)beginif(d=='h1) begin t1=t1+'h10;if(t1[7:4]=='ha)begint1[7:4]=0;t1[11:8]=t1[11:8]+1;endelse if(t1=='h1000) count=1;else count=0;endelse if(d=='h2) begin t2=t2+'h10;if(t2[7:4]=='ha)begint2[7:4]=0;t2[11:8]=t2[11:8]+1;endelse if(t2=='h1000) count=1;else count=0;endelse if(d=='h3) begin t3=t3+'h10;if(t3[7:4]=='ha)begint3[7:4]=0;t3[11:8]=t3[11:8]+1;endelse if(t3=='h1000) count=1;else count=0;endelse if(d=='h4) begin t4=t4+'h10;if(t4[7:4]=='ha)begint4[7:4]=0;t4[11:8]=t4[11:8]+1;endelse if(t4=='h1000) count=1;else count=0;endelse begin t1='h100;t2='h100;t3='h100;t4='h100; endendelse if(~p)beginif(d=='h1) begin t1=t1-'h10;if(t1[7:4]=='hf)begin t1[7:4]=9;t1[11:8]=t1[11:8]-1;if(t1[11:8]=='hf)begin t1[11:8]=0;endendelse if(t1[11:4]=='h0) begin cnn1=1;t1[11:0]='h0; endelse cnn1=0;endelse if(d=='h2) begin t2=t2-'h10;if(t2[7:4]=='hf)begin t2[7:4]=9;t2[11:8]=t2[11:8]-1;if(t2[11:8]=='hf)begin t2[11:8]=0;endendelse if(t2[11:4]=='h0)begin cnn2=1;t2[11:0]='h0;endelse cnn2=0;endelse if(d=='h3) begin t3=t3-'h10;if(t3[7:4]=='hf)begin t3[7:4]=9;t3[11:8]=t3[11:8]-1;if(t3[11:8]=='hf)begin t3[11:8]=0;endendelse if(t3[11:4]=='h0)begin cnn3=1;t3[11:0]='h0;endelse cnn3=0;endelse if(d=='h4) begin t4=t4-'h10;if(t4[7:4]=='hf)begin t4[7:4]=9;t4[11:8]=t4[11:8]-1;if(t4[11:8]=='hf)begin t4[11:8]=0;endendelse if(t4[11:4]=='h0) begin cnn4=1;t4[11:0]='h0 ;endelse cnn4=0;endelse begin t1=100;t2=100;t3=100;t4=100; endendendendmodule6.输出mux1模块module mux_1(d,t1,t2,t3,t4,w,qs);input w;input [3:0] d;input [11:0] t1,t2,t3,t4;output reg[15:0] qs;alwaysbeginif(w)beginqs[15:12]=d;if(d==1)begin qs[11:0]=t1;endelse if(d==2)begin qs[11:0]=t2;endelse if(d==3)begin qs[11:0]=t3;endelse if(d==4)begin qs[11:0]=t4;endelse qs[11:0]=0;endelse qs[15:0]=0;endendmodule3.制作与调试过程调试过程中,三秒计时亮灯是难点,要求要实现亮三秒后自动熄灭,同时,亮灯不能一直保持,所以想到两种方法,一种是从4开始,这样结构简单,但是第一秒不会亮,另一种方法是再加入一个脉冲输出模块,这个方法比较难,所以我们没有选用。

8000ATE培训教程

8000ATE培训教程

9. Over Load Protection Test 过电流保护测试:用以量测在过载保护点瞬 间待测物的输出特性。 10. Voltage Regulation Test 电源及负载效应测试(CC模式):用以量测在 负载大小及输入电源之电压同时改变时,对于待测物输出电压所产生的影响。 11. Current Regulation Test (CV模式):用以量测在负载大小及输入电源 之电压同时改变时,对于待测物输出电流所产生的影响。 12. Load Pre Setup负载设定:设定负载的拉载模式(CC,CV,CR ) 。 13. OVP/UVP Test 过电压/欠电压保护测试:用以量测在过压或欠压保护点 瞬间待测物的输出特性。 14. Dynamic Test 动态测试:用以量测待测物在动态负载条件下的输出特性。 15. Sync Dynamic Test 同步动态测试:同 Dynamic Test,适用与多组输出 的开关电源。
ENG-TE 刘栋
CHROMA 8000 ATE培训教材
ENG-TE
DESIGNED BY TE(DONG.LIU)
ENG-TE 刘栋
一 CHROMA 8000 基本配置: 系统控制器(工业计算机及外围设备)IPC 可程序交流电源供应器(Programmable AC Source) 直流电子负载(DC Load) 功率分析仪(Power Analyzer) 纹波时序分析仪 ( Timing & Noise Tester) 电源控制器(ON/OFF Analyzer) Short / Ovp控制器(Short/OVP Test Analyzer)
若联机成功则此处会 出现successfully字 样。
ENG-TE 刘栋
·执行界面介绍(2)

chroma 8000培训资料

chroma 8000培训资料
• 8) Chroma 6012「過電壓保護及短路測試器」,它提供了許多工
具,可以模擬OV/UV 與短路的情境,讓電源供應器的測試更加方 便。
• 9) Chroma 6013「電源控制器」可以同時控制AC 與DC 輸入,此
外,它還可以控制AC電源的開/關機角度,並可以量測待測物 (UUT)的輸入湧浪電流。
• 1) 執行短路測試。 • 2) 執行OVP/UVP測試並量測跳脫點及跳脫時間。 • 3) 電源供應器輸入端測試,量測Iinrush、Ipk、Vrms、Irms、True
Power及Power Factor。
• 4) 量測電源供應器內部接點(最多可至10點)的電壓(Vdc及Vrms)。 • 5) 四組輸入電源選擇埠。 • 6) 可控制可程式交流電源供應器之輸出在任何相位角供給電源。 • 7) 可模擬輸入電源瞬間斷電(Dropout),最大時間可到650ms。 • 8) 有6對內建的繼電器及16位元TTL控制信號供您自行運用。 • 由於EMU係專為Chroma 6000系統而設計的所以只能透過Chroma 6000
若連線成功則此處會出現 successfully字樣。
各測試後的測試項目之每一個設定值 和讀值都可在Variable Info內找到
點GO鍵或按下F10後,程式自動從頭開始run到結束,若勾 選右上方之Pass Readings和Fail Readings時,則會顯示符 合與不符合限制規格的讀值. 若勾選Expand Array-type variables時,在顯示陣列變數 時,將顯示陣列中每一個的值;反之,只顯示該變數的名稱. 若勾選Temporary時,會顯示暫時性的變數.勾選Global,顯 示全域型的變數.勾選Test Condition時,顯示設定型的變 數.勾選TP Variables時,顯示測試程式上的變數.

微机原理实验源程序配合伟福lab8000试验箱使用

微机原理实验源程序配合伟福lab8000试验箱使用

实验一汇编语言上机实验一、实验目的1、熟悉掌握汇编程序的编辑、编译、连接、运行,要求在Debug状态下查看结果。

2、熟悉Debug对程序进行调试的方法及步骤。

3、熟悉掌握8086常用的汇编语言指令。

4、掌握简单的程序设计方法。

二、实验属性验证性实验。

三、实验仪器设备及器材计算机(含有汇编软件)。

四、实验要求1、实验前:在熟练掌握指令系统的基础上,要求学生对上机基础知识(见附录A、B、和C)有一定的了解,能掌握汇编语言的上机过程及常用的DEBUG调试命令,按要求写出预习报告;2、实验时:认真理解实验内容,掌握汇编程序的编辑、编译、连接、运行及Debug程序的使用;3、实验后:写出实验报告(包括程序流程图、源程序、实验结果)。

五、实验内容及原理1、内存中存放有两个双字的数据,用加法指令和带进位加法指令完成两数相加。

用Debug观察相加结果。

相加时应注意,低位字在前、高位字在后,高位字与高字位、低位字与低位字对应相加,高位字相加时,应采用带进位的加法指令。

实验参考程序如下:DA TA SEGMENTBUFFER1 DW 20H,5040HBUFFER2 DW 2434H,2034HDA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA ;取数据段段基址MOV DS,AXLEA SI,BUFFER1 ;取BUFFER1的有效地址送指针SIMOV AX,[SI]MOV DI,OFFSET BUFFER2 ;取BUFFER2的有效地址送指针DIADD AX,[DI] ;低位字相加MOV [SI],AX ;相加和送变量BUFFER1保存ADD SI,2 ;修改指针,指向高位字ADD DI,2MOV AX,[SI]ADC AX,[DI]MOV [SI],AXMOV AH,4CH;返回DOS,但如在DEBUG下调试,INT21H ;可不用此软中断HLT ;暂停CODE ENDSEND START2.码制转换:把寄存器中(或存储器中)一个字的组合BCD码,转换为4位ASCII码,存入相应的内存单元中,并在DEBUG状态下查看运行结果。

LAB8000说明书

LAB8000说明书

伟福®伟福Lab8000系列单片机仿真实验系统使用说明书南京伟福实业有限公司® 伟福 Lab8000单片机仿真实验系统 目录 - i -目 录第一章 概述 (1)第二章 伟福实验系统组成和结构 (3)1. 实验系统的硬件组成.............................................. (3)2. 实验系统的仿真板简介......... ......... ......... .. (15)3. 实验系统的调试方法......... ......... ......... ................... ....... .. (16)第三章 MCS51系列单片机实验 (17)MCS96系列单片机实验 (18)8088/86系列CPU 实验 (19)ARM LPC2103 MCU 实验 (20)PIC5X 系列CPU 实验 .............. .... . (20)软件实验1. 存储器块清零(51/96/88/PIC) (21)2. 二进制到BCD 码转换(51/96/88/PIC) (22)3. 二进制到ASCII 码转换(51/96/88/PIC) (23)4. 内存块移动(51/96/88/PIC) (24)5. 程序跳转表(51/96/88/PIC) (25)6. 数据排序(51/96/88/PIC) (26)硬件实验® 伟福Lab8000单片机仿真实验系统 目录 - ii -1. IO 口输入输出(51/96/PIC/ARM) (27)2. 继电器控制(51/96/PIC/ARM) (29)3. 用74HC245读入数据(51/96/88/ARM ) (30)4. 用74HC273输出数据(51/96/88/ARM) (31)5. PWM 转换电压实验(51/96/PIC/ARM) (32)6. 音频控制(51/96/PIC/ARM) (33)7. 用8255输入、输出(51/96/88/ARM) (34)8. 串行数转换并行数(51/96/PIC/ARM) (35)9. 并行数转换串行数(51/96/PIC/ARM) (37)10. 计数器实验(51/PIC/ARM) (39)11. 外部中断实验(51/96/ARM) (40)12. 定时器实验(51/96/PIC/ARM) (42)13. D/A 数模转换实验(51/96/88/ARM) (44)14. A/D 模数转换实验(51/96/88/ARM) ..................... . (46)15. 外部中断实验(急救车与交通灯) (51/96/ARM) (48)16. 八段数码管显示(51/96/88/PIC/ARM) (50)17. 键盘扫描显示实验(51/96/88/ARM) (52)18. 电子时钟(51/96/88/PIC/ARM) (54)19. 单片机串行口通讯实验(51/96/ARM) (56)® 伟福Lab8000单片机仿真实验系统 目录 - iii -20. 1-Wire 总线实验(51/96/PIC/ARM) (58)21. 直流电机控制实验(51/96/88/ARM) (60)22. 步进电机控制实验(51/96/88/PIC/ARM) (62)23. 温度传感器实验(51/96/88/ARM) (65)24. 液晶显示屏控制实验(51/96/88/ARM) (67)25. 电子琴实验(51/96/88/ARM) (68)26. 空调温度控制实验(51/96/88/ARM) (70)27. 计算器实验(51/96/88/ARM) (73)28. 用HSO 方式输出PWM 波形(96) (75)29. 用HSI 方式测量脉冲宽度(96) (76)30. 用HSI 中断方式统计脉冲个数(96) (77)31. 计数器实验(96) (79)32. 用片内A/D 做模数转换实验(96) (80)32. PWM 转换电压实验(88) (81)34. 8253计数器实验(88) (82)35. 8259外部中断实验(88) (83)36. 8253定时器实验(88) (85)37. 8251A 串行口通讯实验(88) (87)® 伟福Lab8000单片机仿真实验系统 目录 - iv -38. 8237 DMA 实验(88) (89)39. 压力传感器实验(51/96/88/ARM )............................…...................................91 40. 红外通讯实验(51/96/88/ARM)...............................……................................92 41. 16x16点阵显示实验(51/96/88/ARM).......................................................... ..9642. I2C 总线实验(51/96/PIC/ARM).. ................................................................. ..9843. SPI 总线实验(51/96/PIC/ARM) ............................................................. ... . (100)第四章 ARM LPC2103仿真板说明........................................................................... (101)在KEIL 和ADS 开发环境中安装LAB8000的驱动.............................. . (103)在KEIL 开发环境中安装LAB8000的驱动..….................. ..... ...... ............... ..106调试时可能出现的错误信息及原因................. ........... .................................. (110)第五章 逻辑分析工具 (111)第六章 系统自检功能..............................................…….............................................. .114® 伟福Lab8000单片机仿真实验系统 目录 - v -本实验说明书包括8051、80C196、8088/86、ARM 、PIC57五种MCU 的实验说明(MCS51有6个软件实验、31个硬件实验,MCS96有6个软件实验、35个硬件实验,8088/86有6个软件实验、25个硬件实验,PIC57有6个软件实验、14个硬件实验,ARM 提供了32个硬件实验)。

LAB8000单片机仿真实验系统说明书

LAB8000单片机仿真实验系统说明书
伟福®
伟福 Lab8000 系列 单片机仿真实验系统
使用说明书
南京伟福实业有限公司
伟福® Lab8000 单片机仿真实验系统
目录
目录
第一章 概述...................................................................................................................1 第二章 伟福实验系统组成和结构...............................................................................3
1. 实验系统的硬件组成.............................................. .................................3 2. 实验系统的仿真板简介......... ......... ......... ............................................15 3. 实验系统的调试方法......... ......... ......... ................... ....... ....................16 第三章 MCS51 系列单片机实验 .............................................................................17 MCS96 系列单片机实验 .............................................................................18 8088/86 系列 CPU 实验 ...............................................................................19 ARM LPC2103 MCU 实验 ..........................................................................20 PIC5X 系列 CPU 实验 .............. .... .............................................................20 软件实验 1. 存储器块清零(51/96/88/PIC).....................................................................21 2. 二进制到 BCD 码转换(51/96/88/PIC).......................................................22 3. 二进制到 ASCII 码转换(51/96/88/PIC).....................................................23 4. 内存块移动(51/96/88/PIC).........................................................................24 5. 程序跳转表(51/96/88/PIC).........................................................................25 6. 数据排序(51/96/88/PIC).............................................................................26 硬件实验 1. IO 口输入输出(51/96/PIC/ARM) ..............................................................27 2. 继电器控制(51/96/PIC/ARM) ...................................................................29 3. 用 74HC245 读入数据(51/96/88/ARM) ...............…….............................30 4. 用 74HC273 输出数据(51/96/88/ARM) ..............……..............................31 5. PWM 转换电压实验(51/96/PIC/ARM) .....................................................32 6. 音频控制(51/96/PIC/ARM) ........................................................................33 7. 用 8255 输入、输出(51/96/88/ARM) ........................................................34 8. 串行数转换并行数(51/96/PIC/ARM) .....................................................35 9. 并行数转换串行数(51/96/PIC/ARM) ........................................................37 10. 计数器实验(51/PIC/ARM) .........................................................................39 11. 外部中断实验(51/96/ARM) ........................................................................40 12. 定时器实验(51/96/PIC/ARM) .....................................................................42 13. D/A 数模转换实验(51/96/88/ARM) ...........................................................44 14. A/D 模数转换实验(51/96/88/ARM) ..................... .....................................46 15. 外部中断实验(急救车与交通灯) (51/96/ARM)...........................................48 16. 八段数码管显示(51/96/88/PIC/ARM)..........................................................50

cop8000汇编课程设计

cop8000汇编课程设计

cop8000汇编课程设计一、课程目标知识目标:1. 理解并掌握COB8000汇编语言的基本概念和指令系统;2. 学会使用汇编语言进行程序设计和调试;3. 掌握汇编语言中的寄存器、内存寻址方式及其应用;4. 了解汇编语言与硬件的密切关系,理解程序执行的底层原理。

技能目标:1. 能够运用汇编语言编写简单的程序,实现基础的计算和控制功能;2. 能够进行汇编程序的调试和优化,提高程序执行效率;3. 能够分析并解决汇编程序中常见的问题,提升编程技能。

情感态度价值观目标:1. 培养学生对计算机底层原理的兴趣,激发学习积极性;2. 培养学生的团队合作意识,学会在编程过程中相互交流、协作;3. 培养学生严谨、细心的编程习惯,提高对程序质量的追求。

课程性质:本课程为计算机科学与技术专业选修课程,侧重于汇编语言的实践应用和底层原理探究。

学生特点:学生已具备一定的计算机基础和编程能力,对底层原理有一定了解,但汇编语言学习经验不足。

教学要求:结合课程性质和学生特点,注重理论与实践相结合,以实例教学为主,引导学生掌握汇编语言的核心知识,提高编程实践能力。

在教学过程中,关注学生的学习反馈,适时调整教学策略,确保课程目标的达成。

通过本课程的学习,使学生能够独立完成简单的汇编程序设计,为后续相关课程打下坚实基础。

二、教学内容1. 汇编语言概述:介绍汇编语言的发展历程、特点及应用场景,引导学生了解汇编语言的重要性。

- 教材章节:第一章 汇编语言概述2. COB8000汇编指令系统:讲解汇编指令的分类、格式及功能,重点掌握常用指令的使用方法。

- 教材章节:第二章 COB8000汇编指令系统3. 寄存器与内存寻址:介绍寄存器的分类、用途,讲解内存寻址方式,为程序设计打下基础。

- 教材章节:第三章 寄存器与内存寻址4. 汇编语言程序设计:通过实例讲解汇编程序的结构、编写方法和调试技巧,提高学生的编程实践能力。

- 教材章节:第四章 汇编语言程序设计5. 汇编程序调试与优化:分析汇编程序中常见的问题,介绍调试方法和优化策略,提升程序质量。

北科大智能仪器课程设计

北科大智能仪器课程设计

北科大智能仪器课程设计一、课程目标知识目标:1. 理解智能仪器的定义、分类及其在工程领域的应用。

2. 掌握智能仪器的基本工作原理和主要性能指标。

3. 学会使用智能仪器进行数据采集、处理和分析。

技能目标:1. 能够运用所学的智能仪器知识,设计简单的智能仪器系统。

2. 能够运用相关软件对智能仪器进行编程与调试。

3. 能够针对实际问题,选择合适的智能仪器并提出解决方案。

情感态度价值观目标:1. 培养学生对智能仪器技术的兴趣,激发创新意识。

2. 增强学生的团队协作能力和沟通表达能力,培养合作精神。

3. 提高学生面对工程问题时的责任感和使命感,培养良好的职业道德。

分析课程性质、学生特点和教学要求,本课程旨在使学生在掌握智能仪器基本知识的基础上,提高实际操作能力和解决问题的能力。

通过课程学习,使学生具备以下具体学习成果:1. 能够明确智能仪器的分类、原理和应用。

2. 能够独立完成智能仪器的编程、调试与简单系统设计。

3. 能够结合实际问题,提出合理的智能仪器解决方案。

4. 培养学生的创新意识、团队协作能力和职业道德。

二、教学内容1. 智能仪器概述- 智能仪器的定义与分类- 智能仪器的发展与应用领域2. 智能仪器原理- 基本工作原理- 主要性能指标及影响因素- 数据采集、处理与分析方法3. 智能仪器设计- 系统设计方法与步骤- 硬件设计:传感器、微处理器、接口电路等- 软件设计:编程、调试与优化4. 智能仪器应用案例- 工业自动化领域- 医疗健康领域- 智能家居领域5. 实践教学- 智能仪器编程与调试- 简单智能仪器系统设计- 实际应用场景问题分析与解决方案提出教学内容根据课程目标制定,涵盖智能仪器的理论知识和实践应用。

教学大纲明确指出教材相关章节,内容包括智能仪器概述、原理、设计与应用案例,以及实践教学环节。

教学内容安排和进度如下:- 智能仪器概述与原理:2周- 智能仪器设计与应用案例:3周- 实践教学:4周三、教学方法为了提高教学效果,激发学生的学习兴趣和主动性,本课程将采用以下多样化的教学方法:1. 讲授法:通过教师系统地讲解,使学生掌握智能仪器的理论知识,为实践操作打下基础。

桂林电子科技大学信息科技学院单片机抢答器实训资料

桂林电子科技大学信息科技学院单片机抢答器实训资料

桂林电子科技大学信息科技学院《单片机原理及应用》实训报告学号姓名指导教师:李德明、江明珠年月日实训题目:基于单片机的抢答器的设计(不能有错误)1 系统设计1.1 设计要求1.1.1 设计任务设计并制作基于单片机的抢答器。

1.1.2 性能指标要求1. 抢答器具有一个主持人控制开光和6路抢答按扭。

2.抢答操作在主持人允许抢答之后。

3.选手抢答后显示选手编号,并且其他选手不能抢答。

4.选手必须在主持人允许抢答后5秒内抢答,超时不能抢答。

5.选手抢答成功后,蜂鸣器响一声并进行倒计时。

倒计时时间从5秒至30秒可设置。

6.选手回答问题倒计时时间到时有声光提示。

7.电路板设置下载口,方便调试1.2 设计思路及设计框图1.2.1设计思路利用定时器1产生一个4ms的中断,在中断服务程序中实现数码管的显示扫描。

在需要倒计时的时候,定时器1可以进行倒计时。

在主持人允许抢答的时候,程序进入状态机,等待抢答。

如果抢答倒计时时间到或已经有人抢答,程序退出状态机。

程序可以对倒计时进行加减1秒、2秒、3秒的操作。

1.2.2总体设计框图2 抢答器硬件设计2.1 单片机最小系统单片机最小系统包括单片机、晶振电路、复位电路、下载口电路。

晶振电路采用12Mhz 晶振加两个22pF的瓷片电容。

由晶振频率可知抢答器的一个机器周期为1秒。

复位电路由一个按钮、10uF极性电容、10K电阻组成。

下载口采用标准的IDC10接口。

电路如下图。

2.2 电源电路电源电路由104滤波电容、led灯、1K电阻组成,其可以实现单片机外部供电。

电路如下图。

2.3 按钮电路该电路由八个按钮组成。

当有按键按下时,由于51单片机高电平的驱动能力比低电平的驱动能力差,所以按钮所在I/O口会被拉低。

2.4 数码管显示电路本设计采用四位共阴数码管。

电路如下图。

2.5 提示性模块模块电路提示性模块电路由蜂鸣器电路与led灯电路组成。

蜂鸣器电路用到了PNP三极管、限流电阻、蜂鸣器。

chroma8000培训资料

chroma8000培训资料

快速测量
Chroma8000可以在短时间内完成对 物质成分的全面分析,大大提高了工 作效率。
产品应用
环保监测
能源领域
Chroma8000可以用于对空气、水质、土 壤等环境中的有害物质进行监测和分析, 为环境保护提供科学依据。
化工生产
Chroma8000可以用于对燃料、新能源等 物质进行成分分析和质量检测,为能源开 发和应用提供支持。
实验操作流程
实验前期准备
根据实验方案,准备所需实验器材和试剂, 确保实验室环境符合要求。
样品处理
按照实验方案对样品进行处理,并记录详细 信息。
实验操作
严格按照实验方案操作,注意观察和记录实 验过程中的各项指标。
数据记录与分析
整理实验数据,进行初步分析,为后续结果 分析提供依据。
实验结果分析
数据整理
网络连接
支持以太网与Wi-Fi连接,实现远 程控制与数据传
03
02
音频接口连接
采用标准的音频接口,支持多种 音频格式与采样率
电源接口连接
采用标准的电源接口,支持多种 电压与电流等级
04
03
Chroma8000软件系统
软件安装与升级
安装步骤 下载安装包并解压缩
运行安装程序并按照提示进行操作
软件安装与升级
将实验数据整理成表格或图表形式,便于观察和分析。
结果解读
根据整理好的数据,解读实验结果,评估实验目标的达成情况。
误差分析
分析实验过程中可能产生的误差来源,如人员操作误差、仪器误差等。
改进措施
根据实验结果分析,针对不足之处提出改进措施,优化实验方案和操作流程。
05
Chroma8000常见问题与 解决方案

kv8000_位元件b__概述说明以及解释

kv8000_位元件b__概述说明以及解释

kv8000 位元件b 概述说明以及解释1. 引言1.1 概述在现代生活中,科技的不断进步为我们带来了越来越多智能化的设备和系统。

其中,KV8000 位元件B 是一种具有重要意义的元件,它在各个领域都有着广泛的应用。

本篇文章将深入探讨KV8000 位元件B 的特性、功能、工作原理以及实际应用案例,并分享相关实践经验和建议。

1.2 文章结构该篇长文主要分为五个部分:引言、KV8000 位元件B 的说明和意义、解释KV8000 位元件B 的工作原理、应用案例分析与实践经验分享以及结论。

每个部分都对KV8000 位元件B 进行深入研究与探索,旨在全面介绍该组件并提供相关知识。

1.3 目的本文的目标是给读者提供一个全面而清晰的关于KV8000 位元件B 的概述和解释。

通过详细描述其特点、工作原理以及实际应用案例,在读者了解完整信息的基础上,帮助他们更好地理解并正确使用该组件。

同时,本文也将为未来发展和应用前景进行展望,以促进相关技术的进一步研究和创新。

2. KV8000 位元件B 的说明和意义2.1 KV8000 位元件B 的概述KV8000 位元件B 是一种先进的电子元件,广泛应用于工业自动化领域。

它通过提供强大的处理能力和丰富的功能特性,在复杂的自动化系统中发挥关键作用。

KV8000 位元件B 具有高度可靠性、稳定性和灵活性,并且具备适应不同应用场景的能力。

2.2 KV8000 位元件B 的特征和功能KV8000 位元件B 具备多项独特的特征和功能,包括但不限于以下几个方面:- 高速处理能力:KV8000 位元件B 可以快速处理大量数据,并实现实时控制与运算,确保系统稳定运行。

- 多种通信接口:KV8000 位元件B 支持多种通信接口协议,如以太网、串口等,可以与其他设备进行高效、可靠地数据传输。

- 开放式架构:KV8000 位元件B 提供开放式软硬件平台,支持用户定制化开发和扩展,并与各类自动化设备轻松集成。

桂电智能仪器实验代码lab平台汇编

桂电智能仪器实验代码lab平台汇编

实验1ORG 0000HAJMP MAINORG 0200HBUFF EQU 60HMAIN:MOV R3,#00HMOV R4,#00HACALL DISPLAYACALL KEXAMJZ MAINACALL D10msACALL KEXAMJZ MAINMOV R2,#0DFHMOV DPTR,#8004HMOV A,#00HMOVX @DPTR,A KEY1:MOV DPTR,#8002H MOV A,R2MOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHJNZ KEY2MOV A,R3ADD A,#04HMOV R3,AMOV A,R2RR AMOV R2,AJB ACC.0,KEY1AJMP MAINKEY2:CPL AKEY3:RRC AJNC KEY4INC R4AJMP KEY3KEY4:ACALL DISPLAYACALL D10msACALL KEXAMJNZ KEY4MOV A,R3ADD A,R4MOV BUFF,AKEND:AJMP MAINKEXAM:MOV DPTR,#8002HMOV A,#00HMOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHRETDISPLAY:MOV DPTR,#TABMOV A,60HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#10HMOVX @DPTR,ARETD10ms:MOV R5,#30HDL:MOV R6,#0FFHDL0:DJNZ R6,DL0DJNZ R5,DLRETTAB:DB 3FH 06H 66H 07HDB 71H 5BH 6DH 7FHDB 79H 4FH 7DH 6FHDB 5EH 39H 7CH 77H实验2ORG 0000HAJMP MAINORG 0100HMAIN: ACALL KEXAM ;检查按键JZ MAIN ;无继续ACALL D10ms ;延时去抖ACALL KEXAMJZ MAINSTART: MOV DPTR,#8002H ;键值分析及选通道MOV A,#0DFHMOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#07HCJNE A,#01H,KEY1 ;INT0AJMP INT0KEY1: CJNE A,#02H,KEY2;INT1AJMP INT1KEY2: CJNE A,#04H,MAINAJMP AUTOINT0: ACALL DISPLAY1MOV A,#0FH ;0-5VMOV DPTR,#9000HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL KEXAMJZ INT0AJMP STARTINT1: ACALL DISPLAY2MOV A,#0FH ;固定值MOV DPTR,#9001HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL KEXAMJZ INT1AJMP STARTAUTO: MOV 50H,#2000000LOP0:ACALL D10msDJNZ 50H,LOP0AJMP INT00AUTO1: MOV 51H,#2000000LOP1:ACALL D10msDJNZ 51H,LOP1AJMP INT11INT00:ACALL DISPLAY1MOV A,#0FH ;0-5VMOV DPTR,#9000HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL D10msMOV 53H,#30PPP: ACALL DISPLAY1ACALL DISPLAYACALL DISPLAY1ACALL DISPLAYACALL DISPLAY1ACALL DISPLAYDJNZ 53H,PPPACALL KEXAMJZ AUTO1AJMP STARTINT11:ACALL DISPLAY2MOV A,#0FH ;固定值MOV DPTR,#9001HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL D10msMOV 54H,#30OOO: ACALL DISPLAY2ACALL DISPLAYACALL DISPLAY2ACALL DISPLAYACALL DISPLAY2ACALL DISPLAYDJNZ 54H,OOOACALL KEXAMJZ AUTOAJMP STARTKEXAM: MOV DPTR,#8004H ;按键判断MOV A,#00HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#00HMOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHRETCAI: MOV A,@R0 ;数据处理MOV B,#51DIV ABMOV 40H,AMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP2ADD A,#5LOOP2:MOV 41H,AMOV A,BMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP3ADD A,#5LOOP3:MOV 42H,ARETDISPLAY:MOV DPTR,#TAB ;列表显示个位整数40HMOV A,40HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#10HMOVX @DPTR,AACALL D10msMOV A,#80H ;小数点MOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#10HMOVX @DPTR,AACALL D10msMOV DPTR,#TAB ;余数41H 42HMOV A,41HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#08HMOVX @DPTR,AACALL D10msMOV DPTR,#TABMOV A,42HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#04HMOVX @DPTR,AACALL D10msRETDISPLAY1: MOV A,#3FHMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#20HMOVX @DPTR,ALCALL D10msRETDISPLAY2: MOV A,#06HMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#20HMOVX @DPTR,ALCALL D10msRETD10ms: MOV R5,#03H ;延时10 DL: MOV R6,#0FFHDL0: DJNZ R6,DL0DJNZ R5,DLRETTAB: DB 3FH,06H,5BH,4FHDB 66H,6DH,7DH,07HDB 7FH,6FH,77H,7CHDB 39H,5EH,79H,71H实验4ORG 0000HAJMP KEYPRORG 0200HKEYPR:MOV R3,#00H ;列寄存器MOV R4,#00H ;行寄存器ACALL KEXAMJZ KENDACALL D10msACALL KEXAMJZ KENDMOV R2,#0DFH ;扫描初值KEY1:MOV DPTR,#8004HMOV A,#00HMOVX @DPTR,AMOV DPTR,#8002H ;送列码地址MOV A,R2MOVX @DPTR,A ;扫描第一列MOV DPTR,#8001H ;送行码地址MOVX A,@DPTRCPL AANL A,#0FHJNZ KEY2 ;有键按下,求行值MOV A,R3 ;无键按下,列加4ADD A,#04HMOV R3,AMOV A,R2 ;求下一列扫描值RR AMOV R2,AJB ACC.0,KEY1 ;判断是否已全扫描AJMP KENDKEY2:CPL A ;恢复行模型KEY3:RRC AJNC KEY4INC R4AJMP KEY3KEY4:ACALL D10msACALL KEXAMJNZ KEY4MOV A,R3ADD A,R4MOV 60H,A ;键值存入60HL0:CJNE A,#00H,L1MOV DPTR,#DLTABMOV A,30HCJNE A,#05,ADDF1MOV 30H,#00HLJMP ADDF2ADDF1:INC 30HADDF2:MOVC A,@A+DPTRMOV 31H,ADLTAB:DB 01H,20H,50H,80H,0A0HL1:CJNE A,#0FH,L2 ;锯齿波LS0: ACALL DISPLAYMOV DPTR,#9000HMOV A,#00HLS1:MOVX @DPTR,AINC AACALL DELAYCJNE A,#0FFH,LS1ACALL DELAYACALL DISPLAYACALL KEXAMJZ LS0AJMP KENDKEND:ACALL DISPLAYLJMP KEYPRL2:CJNE A,#0EH,L3 ;三角波LS2: ACALL DISPLAYMOV DPTR,#9000HMOV A,#00HMOV R0,#200LS3: ACALL DELAYMOVX @DPTR,AINC ACJNE A,#0FFH,LS3LS4: ACALL DELAYDEC AMOVX @DPTR,ACJNE A,#00H,LS4DJNZ R0,LS3ACALL DISPLAYACALL KEXAMJZ LS2AJMP KENDL3:CJNE A,#0DH,L4 ;正弦波LS5:ACALL DISPLAYMOV A,#00MOV R0,ALS6: MOV DPTR,#TZSBMOV A,R0MOVC A,@A+DPTRMOV DPTR,#9000HMOVX @DPTR,AACALL DELAYINC R0CJNE R0,#32,LS6ACALL DISPLAYACALL KEXAMJZ LS5AJMP KENDL4:CJNE A,#0CH,KEND ;方波ACALL DISPLAYMOV R0,#200LS7: ACALL DISPLAYMOV A,#00MOV DPTR,#9000HMOVX @DPTR,AACALL DELAYMOV A,#255MOVX @DPTR,AACALL DELAYDJNZ R0,LS7ACALL D10msACALL DISPLAYACALL KEXAMJZ LS7AJMP KENDDISPLAY:MOV DPTR,#TAB ;显示子程序MOV A,60HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#01HMOVX @DPTR,ARETD10ms:MOV R5,#03H ;延时10毫秒DL: MOV R6,#0FFHDL0: DJNZ R6,DL0DJNZ R5,DLRETDELAY:MOV R6,31HDL1:DJNZ R6,DL1RETKEXAM:MOV DPTR,#8002H ;检查是否有键按下子程序MOV A,#00HMOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHRETTAB:DB 3FH,06H,66H,07H,71H,5BH,6DH,7FH,79H,4FH,7DH,6FH,5EH,39H,7CH,77H TZSB: DB 80H , 98H, 0B0H, 0C6H, 0DAH, 0EAH, 0F5H, 0FDHDB 0FFH, 0FDH, 0F5H , 0EAH, 0DAH, 0C6H, 0B0H, 98HDB 80H , 68H, 50H , 3AH, 26H, 16H, 0BH, 03HDB 01H, 03H, 0BH, 16H, 26H, 3AH, 50H, 68H实验5ORG 0000HAJMP MAINORG 0200HMAIN:MOV DPTR,#8001HMOV A,#00HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#00HMOVX @DPTR,AMOV R3,#00HMOV R4,#00HACALL DISPLAYACALL KEXAMJZ MAINACALL DL10msACALL KEXAMJZ MAINMOV R2,#0DFHMOV DPTR,#8004HMOV A,#00HMOVX @DPTR,AKEY1:MOV DPTR,#8002HMOV A,R2MOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHJNZ KEY2MOV A,R3ADD A,#04HMOV R3,AMOV A,R2RR AMOV R2,AJB ACC.0,KEY1AJMP MAINKEY2:CPL AKEY3:RRC AJNC KEY4INC R4AJMP KEY3KEY4:ACALL DISPLAYACALL DL10msACALL KEXAMJNZ KEY4MOV A,R3ADD A,R4MOV 30H,AKEY8:CJNE A,#00H,KEY5 ZIJIAN:MOV 41H,#0LCALL DISPLAY1ACALL DL10msACALL KEXAMACALL DL10msACALL KEXAMJZ ZIJIANAJMP MAINKEY5: CJNE A,#01H,KEY1 JK: LCALL MSFCLCALL DISPLAY1ACALL DL10msAJMP JK MSFC: MOV TMOD,#15HMOV R1,#0AHMOV TL0,#00HMOV TH0,#00HMOV TL1,#0B0HMOV TH1,#3CHSETB P3.4JB P3.4,$SETB TR0SETB TR1WAIT:JBC TF1,NEXTSJMP W AITNEXT:MOV TL1,#0B0HMOV TH1,#3CHDJNZ R1,WAITCLR TR1CLR TR0MOV 41H,TH0MOV 40H,TL0RETBBCD:MOV R2,40H ;二----十进制转换MOV R3,41HMOV R0,#64H ;64H 高位数据存储单元MOV R7,#04HMOV DPTR,#PWTABMOV R6,#00HBBC1:MOV A,R6MOVC A,@A+DPTRMOV R4,AINC R6MOV A,R6MOVC A,@A+DPTRMOV R5,AINC R6MOV @R0,#00HBBC2:CLR CMOV A,R2SUBB A,R4MOV R2,AMOV A,R3SUBB A,R5MOV R3,AJC BBC3INC @R0SJMP BBC2BBC3:MOV A,R2ADD A,R4MOV R2,AMOV A,R3ADDC A,R5MOV R3,ADEC R0DJNZ R7,BBC1MOV A,R2MOV @R0,ARETPWTAB: DB 10H 27H 0E8H 03H 0E8H 03H 0AH 00HDISPLAY :MOV R2,#20H ;显示循环次数MOV R0,#64H ; 64H 为高位数据存储单元MOV R7,#4 ; 共2 个八段管MOV R6,#00100000B ; 从左边开始显示MOV DPTR,#8002HMOV A,#0MOVX @DPTR,A ; 关所有八段管LOOP:MOV DPTR,#TABMOV A,@R0MOVC A,@A+DPTRCJNE R0,#63H,LOPPORL A,#80H ;第二位打小数点,单位为KHzLOPP:MOV DPTR,#08004HMOVX @DPTR,AMOV DPTR,#08002HMOV A,R6MOVX @DPTR,A ; 显示一位八段管CALL DL10msMOV A,R6 ; 显示下一位RR AMOV R6,ADEC R0DJNZ R7,LOOPDJNZ R2,DISPLAYRETDISPLAY1:MOV DPTR,#TABMOV A,41HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#10HMOVX @DPTR,AMOV A,40HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#08HMOVX @DPTR,ARETDDFF:DB 0CH,09FH,4AH,0BH,99HDB 29H,28H,8FH,08H,09HKEXAM: MOV DPTR,#8002H ; 列地址MOV A,#00HMOVX @DPTR,AMOV DPTR,#8001H ; 行地址MOVX A,@DPTRCPL AANL A,#0FHRETDL10ms:MOV 11H,#30HDL:MOV 10H,#255DL0:DJNZ 10H,DL0DJNZ 11H,DLRETTAB:DB 3FH 06H 66H 07HDB 71H 5BH 6DH 7FHDB 79H 4FH 7DH 6FHDB 5EH 39H 7CH 77H考试ORG 0000HAJMP MAINORG 0200HBUFF EQU 60HMAIN:CLR P1.4CLR P1.5CLR P1.6CLR P1.7MOV R3,#00HMOV R4,#00HACALL DISPLAYACALL KEXAMJZ MAINACALL D10msACALL KEXAMJZ MAINMOV R2,#0DFHMOV DPTR,#0D004HMOV A,#00HMOVX @DPTR,AKEY1:MOV DPTR,#0D002HMOV A,R2MOVX @DPTR,AMOV DPTR,#0D001HMOVX A,@DPTRCPL AANL A,#0FHJNZ KEY2MOV A,R3ADD A,#04HMOV R3,AMOV A,R2RR AMOV R2,AJB ACC.0,KEY1AJMP MAINKEY2:CPL AKEY3:RRC AJNC KEY4INC R4AJMP KEY3KEY4:ACALL DISPLAYACALL D10msACALL KEXAMJNZ KEY4MOV A,R3ADD A,R4CJNE A,#0CH,KEY5 ;INT0 AJMP INT0KEY5: CJNE A,#08H,KEY6;INT1AJMP INT1KEY6: CJNE A,#04H,MAINAJMP AUTOINT0: ACALL DISPLAY1MOV A,#0FHMOV DPTR,#0C000HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRCLR CSUBB A,#178JC GREENSETB P1.4AJMP PASSGREEN: SETB P1.5PASS:ADD A,#178MOV @R0,AACALL CAIACALL DISPLAYACALL KEXAMJZ INT0KEND:AJMP MAININT1: ACALL DISPLAY2MOV A,#0FHMOV DPTR,#0C001HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRCLR CSUBB A,#247JC GRENSETB P1.7AJMP PASGREN: SETB P1.6PAS:ADD A,#247MOV @R0,AACALL CAIACALL DISPLAYACALL KEXAMJZ INT1AJMP MAIN AUTO: MOV 50H,#2000000 LOP0:ACALL D10msDJNZ 50H,LOP0AJMP INT00AUTO1: MOV 51H,#2000000 LOP1:ACALL D10msDJNZ 51H,LOP1AJMP INT11INT00:ACALL DISPLAY1MOV A,#0FHMOV DPTR,#0C000HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL D10msMOV 53H,#30PPP: ACALL DISPLAY1ACALL DISPLAYACALL DISPLAY1ACALL DISPLAYACALL DISPLAY1ACALL DISPLAYDJNZ 53H,PPPACALL KEXAMJZ AUTO1AJMP MAININT11:ACALL DISPLAY2MOV A,#0FHMOV DPTR,#0C001HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL D10msMOV 54H,#30OOO: ACALL DISPLAY2ACALL DISPLAYACALL DISPLAY2ACALL DISPLAYACALL DISPLAY2ACALL DISPLAYDJNZ 54H,OOOACALL KEXAMJZ AUTOAJMP MAINKEXAM: MOV DPTR,#0D004H ;按键判断MOV A,#00HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#00HMOVX @DPTR,AMOV DPTR,#0D001HMOVX A,@DPTRCPL AANL A,#0FHRETCAI: MOV A,@R0 ;数据处理MOV B,#51DIV ABMOV 40H,AMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP2ADD A,#5LOOP2:MOV 41H,AMOV A,BMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP3ADD A,#5LOOP3:MOV 42H,ARETDISPLAY:MOV DPTR,#TAB ;列表显示个位整数40HMOV A,40HMOVC A,@A+DPTRMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#10HMOVX @DPTR,AACALL D10msMOV A,#80H ;小数点MOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#10HMOVX @DPTR,AACALL D10msMOV DPTR,#TAB ;余数41H 42HMOV A,41HMOVC A,@A+DPTRMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#08HMOVX @DPTR,AACALL D10msMOV DPTR,#TABMOV A,42HMOVC A,@A+DPTRMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#04HMOVX @DPTR,AACALL D10msRETDISPLAY1: MOV A,#3FHMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#20HMOVX @DPTR,ALCALL D10msRETDISPLAY2: MOV A,#06HMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#20HMOVX @DPTR,ALCALL D10msRETD10ms: MOV R5,#03H ;延时DL: MOV R6,#0FFHDL0: DJNZ R6,DL0DJNZ R5,DLRETTAB: DB 3FH,06H,5BH,4FHDB 66H,6DH,7DH,07HDB 7FH,6FH,77H,7CHDB 39H,5EH,79H,71H。

桂电汇编实验报告(14200字)

桂电汇编实验报告(14200字)

桂电汇编实验报告(实验报告实验名称||实验一汇编语言上机过程和Debug常用调试命令一、实验目的学习程序设计的基本方法和技能,熟练掌握用汇编语言设计、编写、调试和运行程序的方法。

二、实验题目熟悉与实验有关的系统软件(如编辑程序、汇编程序、连接程序和调试程序等)的使用方法。

在调试过程中,学习及掌握debug程序的各种操作命令。

三、问题描述试编写一程序:比较两个字符串string则显示‘match’; 否则,显示‘no match’。

四、方法说明a) 使用ws、tc或EDIT编辑程序来建立源文件,然后存盘,使系统返回DOS。

b) 用汇编程序masm(或asm)对源文件汇编产生目标文件obj如:汇编指示出错则需失效当新调用编辑程序修改错误,直至汇编通过为止。

c) 用连接程序link 产生执行文件EXE.d) 执行程序,可直接从DOS执行程序。

e) 使用debug程序调试程序的方法。

五、实验步骤datarea segmentstringstringmessmessdatarea endsprognam segmentmain proc farassume cs:prognam,ds:datarea,es:datarea start:push dssub ax,axpush axmov ax,datareamov ds,axmov es,axlea si,string1lea di,string2 cldmov cx,repz cmpsbjz matchlea dx,mess2 jmp short disp match:lea dx, mess1 disp:mov ah,09int 2retmain endp prognam endsend startD:\ 文件名_实验二循环程序设计1循环结构是控制重复执行某一特定程序段的基本程序结构. 在汇编语言程序设计中所, 循环程序的地位也是极为重要,从本质上来看,循环程序结构是分支程序结构的一种手特殊形式, 也是使用条件转移指令来控制执行循环的.一、实验目的学会用循环结构实施进行程序编程。

桂电雷达系统实验报告1

桂电雷达系统实验报告1

一、 实验目的熟悉数字脉冲压缩原理及实现方法,并基于MATLAB 仿真实现。

二、 实验设备 1、 计算机三、实验内容1. 熟悉数字脉冲压缩原理;2. 基于MATLAB 仿真实现数字脉冲压缩。

四、 数字脉冲压缩原理 时域卷积法时域匹配滤波法等效于求离散接收信号与发射波形离散样本之间的复相关运算 ,在脉冲压缩点数较短且压缩比要求不高的情况下经常采用。

其具体算式如下:对于输入为复信号来说,令)()()(n jxq n xi n x +=,(1-24))()()(n jwq n wi n w ++(1-25)(1-24)式中:)(),(n xq n xi 分别为采样信号的实部和虚部;(1-25))(),(n wq n wi 分别为滤波器系数的实部和虚部。

1...2,1,0),(*)(10)(*)()(-=+--==∑==N n i n N x i x N i i n w n x n y∑()o s n (0)h (1)h (3)h N -(2)h N -(1)h N -1Z -1Z -1Z -1Z -()i s n频域FFT 法频域脉冲压缩和时域脉冲压缩的不同之处在于实现卷积的方式不同,时域脉冲压缩用非递归滤波器进行数字压缩是直接进行线性时域卷积,而频域脉冲压缩是基于频谱分析的正、反离散傅氏(DFT)法,即用DFT 将离散输入时间序列变换为数字谱,然后乘以匹配滤波器的数字频率响应函数,再用IDFT 还原成时间离散的压缩输出信号序列。

为了实时处理的需要,一般是用FFT 及其对应的IFFT 来实现这一匹配滤波。

根据卷积定理,如果两个以N 为周期的序列和 ,其DFT 分别为:)2(10)()(N jnk eN n n n x k π-∑-===X(1-27))2(10)()(N jnk eN n n n h k H π-∑-===(1-28)时域的卷积等于频域相乘,因此y(n)的N 点DFT 为:)()()(k H k X k Y =, (1-29)从而可得出:)]}([])([{)(n h DFT DFT n x DFT IDTF n y =(1-30)那么采用FFT 算法,上式可写成:)]}([)]([{)(1n h FFT n x FFT FFT n y -= (1-31)匹配滤波器的输出等于输入信号的离散频谱乘上匹配滤波器冲激响应的频谱(即频率响应)的逆变换。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

桂电智能仪器实验代码(最新l a b8000平台汇编)实验1ORG 0000HAJMP MAINORG 0200HBUFF EQU 60HMAIN:MOV R3,#00HMOV R4,#00HACALL DISPLAYACALL KEXAMJZ MAINACALL D10msACALL KEXAMJZ MAINMOV R2,#0DFHMOV DPTR,#8004HMOV A,#00HMOVX @DPTR,A KEY1:MOV DPTR,#8002H MOV A,R2MOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHJNZ KEY2MOV A,R3ADD A,#04HMOV R3,AMOV A,R2RR AMOV R2,AJB ACC.0,KEY1AJMP MAINKEY2:CPL AKEY3:RRC AJNC KEY4INC R4AJMP KEY3KEY4:ACALL DISPLAY ACALL D10msACALL KEXAMJNZ KEY4MOV A,R3ADD A,R4MOV BUFF,AKEND:AJMP MAINKEXAM:MOV DPTR,#8002HMOV A,#00HMOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHRETDISPLAY:MOV DPTR,#TABMOV A,60HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#10HMOVX @DPTR,ARETD10ms:MOV R5,#30HDL:MOV R6,#0FFHDL0:DJNZ R6,DL0DJNZ R5,DLRETTAB:DB 3FH 06H 66H 07HDB 71H 5BH 6DH 7FHDB 79H 4FH 7DH 6FHDB 5EH 39H 7CH 77H实验2ORG 0000HAJMP MAINORG 0100HMAIN: ACALL KEXAM ;检查按键 JZ MAIN ;无继续ACALL D10ms ;延时去抖JZ MAINSTART: MOV DPTR,#8002H ;键值分析及选通道 MOV A,#0DFHMOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#07HCJNE A,#01H,KEY1 ;INT0AJMP INT0KEY1: CJNE A,#02H,KEY2;INT1AJMP INT1KEY2: CJNE A,#04H,MAINAJMP AUTOINT0: ACALL DISPLAY1MOV A,#0FH ;0-5VMOV DPTR,#9000HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL KEXAMJZ INT0AJMP STARTINT1: ACALL DISPLAY2MOV A,#0FH ;固定值MOV DPTR,#9001HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL KEXAMJZ INT1AJMP STARTAUTO: MOV 50H,#2000000DJNZ 50H,LOP0AJMP INT00AUTO1: MOV 51H,#2000000 LOP1:ACALL D10msDJNZ 51H,LOP1AJMP INT11INT00:ACALL DISPLAY1MOV A,#0FH ;0-5V MOV DPTR,#9000HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL D10msMOV 53H,#30PPP: ACALL DISPLAY1ACALL DISPLAYACALL DISPLAY1ACALL DISPLAYACALL DISPLAY1ACALL DISPLAYDJNZ 53H,PPPACALL KEXAMJZ AUTO1AJMP STARTINT11:ACALL DISPLAY2MOV A,#0FH ;固定值 MOV DPTR,#9001HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL D10msMOV 54H,#30OOO: ACALL DISPLAY2ACALL DISPLAYACALL DISPLAY2ACALL DISPLAYACALL DISPLAY2ACALL DISPLAYDJNZ 54H,OOOACALL KEXAMJZ AUTOAJMP STARTKEXAM: MOV DPTR,#8004H ;按键判断 MOV A,#00HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#00HMOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHRETCAI: MOV A,@R0 ;数据处理MOV B,#51DIV ABMOV 40H,AMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP2ADD A,#5LOOP2:MOV 41H,AMOV A,BMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP3ADD A,#5LOOP3:MOV 42H,ARETDISPLAY:MOV DPTR,#TAB ;列表显示个位整数 40H MOV A,40HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#10HMOVX @DPTR,AACALL D10msMOV A,#80H ;小数点MOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#10HMOVX @DPTR,AACALL D10msMOV DPTR,#TAB ;余数 41H 42HMOV A,41HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#08HMOVX @DPTR,AACALL D10msMOV DPTR,#TABMOV A,42HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#04HMOVX @DPTR,AACALL D10msRETDISPLAY1: MOV A,#3FHMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#20HMOVX @DPTR,ALCALL D10msRETDISPLAY2: MOV A,#06HMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#20HMOVX @DPTR,ALCALL D10msRETD10ms: MOV R5,#03H ;延时10 DL: MOV R6,#0FFHDL0: DJNZ R6,DL0DJNZ R5,DLRETTAB: DB 3FH,06H,5BH,4FHDB 66H,6DH,7DH,07HDB 7FH,6FH,77H,7CHDB 39H,5EH,79H,71H实验4ORG 0000HAJMP KEYPRORG 0200HKEYPR:MOV R3,#00H ;列寄存器MOV R4,#00H ;行寄存器ACALL KEXAMJZ KENDACALL D10msACALL KEXAMJZ KENDMOV R2,#0DFH ;扫描初值KEY1:MOV DPTR,#8004HMOV A,#00HMOVX @DPTR,AMOV DPTR,#8002H ;送列码地址MOV A,R2MOVX @DPTR,A ;扫描第一列MOV DPTR,#8001H ;送行码地址MOVX A,@DPTRCPL AANL A,#0FHJNZ KEY2 ;有键按下,求行值MOV A,R3 ;无键按下,列加4 ADD A,#04HMOV R3,AMOV A,R2 ;求下一列扫描值RR AMOV R2,AJB ACC.0,KEY1 ;判断是否已全扫描AJMP KENDKEY2:CPL A ;恢复行模型KEY3:RRC AJNC KEY4INC R4AJMP KEY3KEY4:ACALL D10msACALL KEXAMJNZ KEY4MOV A,R3ADD A,R4MOV 60H,A ;键值存入60HL0:CJNE A,#00H,L1MOV DPTR,#DLTABMOV A,30HCJNE A,#05,ADDF1MOV 30H,#00HLJMP ADDF2ADDF1:INC 30HADDF2:MOVC A,@A+DPTRMOV 31H,ADLTAB:DB 01H,20H,50H,80H,0A0H L1:CJNE A,#0FH,L2 ;锯齿波LS0: ACALL DISPLAYMOV DPTR,#9000HMOV A,#00HLS1:MOVX @DPTR,AINC AACALL DELAYCJNE A,#0FFH,LS1ACALL DELAYACALL DISPLAYACALL KEXAMJZ LS0AJMP KENDKEND:ACALL DISPLAYLJMP KEYPRL2:CJNE A,#0EH,L3 ;三角波LS2: ACALL DISPLAYMOV DPTR,#9000HMOV A,#00HMOV R0,#200LS3: ACALL DELAYMOVX @DPTR,AINC ACJNE A,#0FFH,LS3LS4: ACALL DELAYDEC AMOVX @DPTR,ACJNE A,#00H,LS4DJNZ R0,LS3ACALL DISPLAYACALL KEXAMJZ LS2AJMP KENDL3:CJNE A,#0DH,L4 ;正弦波LS5:ACALL DISPLAYMOV A,#00MOV R0,ALS6: MOV DPTR,#TZSBMOV A,R0MOVC A,@A+DPTRMOV DPTR,#9000HMOVX @DPTR,AACALL DELAYINC R0CJNE R0,#32,LS6ACALL DISPLAYACALL KEXAMJZ LS5AJMP KENDL4:CJNE A,#0CH,KEND ;方波ACALL DISPLAYMOV R0,#200LS7: ACALL DISPLAYMOV A,#00MOV DPTR,#9000HMOVX @DPTR,AACALL DELAYMOV A,#255MOVX @DPTR,AACALL DELAYDJNZ R0,LS7ACALL D10msACALL DISPLAYACALL KEXAMJZ LS7AJMP KENDDISPLAY:MOV DPTR,#TAB ;显示子程序MOV A,60HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#01HMOVX @DPTR,ARETD10ms:MOV R5,#03H ;延时10毫秒DL: MOV R6,#0FFHDL0: DJNZ R6,DL0DJNZ R5,DLRETDELAY:MOV R6,31HDL1:DJNZ R6,DL1RETKEXAM:MOV DPTR,#8002H ;检查是否有键按下子程序 MOV A,#00HMOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHRETTAB:DB3FH,06H,66H,07H,71H,5BH,6DH,7FH,79H,4FH,7DH,6FH,5EH,39H,7CH,77H TZSB: DB 80H , 98H, 0B0H, 0C6H, 0DAH, 0EAH, 0F5H, 0FDHDB 0FFH, 0FDH, 0F5H , 0EAH, 0DAH, 0C6H, 0B0H, 98HDB 80H , 68H, 50H , 3AH, 26H, 16H, 0BH, 03HDB 01H, 03H, 0BH, 16H, 26H, 3AH, 50H, 68H实验5ORG 0000HAJMP MAINORG 0200HMAIN:MOV DPTR,#8001HMOV A,#00HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#00HMOVX @DPTR,AMOV R3,#00HMOV R4,#00HACALL DISPLAYACALL KEXAMJZ MAINACALL DL10msACALL KEXAMJZ MAINMOV R2,#0DFHMOV DPTR,#8004HMOV A,#00HMOVX @DPTR,AKEY1:MOV DPTR,#8002HMOV A,R2MOVX @DPTR,AMOV DPTR,#8001HMOVX A,@DPTRCPL AANL A,#0FHJNZ KEY2MOV A,R3ADD A,#04HMOV R3,AMOV A,R2RR AMOV R2,AJB ACC.0,KEY1AJMP MAINKEY2:CPL AKEY3:RRC AJNC KEY4INC R4AJMP KEY3KEY4:ACALL DISPLAYACALL DL10msACALL KEXAMJNZ KEY4MOV A,R3ADD A,R4MOV 30H,AKEY8:CJNE A,#00H,KEY5 ZIJIAN:MOV 41H,#0LCALL DISPLAY1ACALL DL10msACALL KEXAMACALL DL10msACALL KEXAMJZ ZIJIANAJMP MAINKEY5: CJNE A,#01H,KEY1 JK: LCALL MSFCLCALL DISPLAY1ACALL DL10msAJMP JKMSFC: MOV TMOD,#15H MOV R1,#0AHMOV TL0,#00HMOV TH0,#00HMOV TL1,#0B0HMOV TH1,#3CHSETB P3.4 JB P3.4,$SETB TR0SETB TR1WAIT:JBC TF1,NEXTNEXT:MOV TL1,#0B0HMOV TH1,#3CHDJNZ R1,WAITCLR TR1CLR TR0MOV 41H,TH0MOV 40H,TL0RETBBCD:MOV R2,40H ;二----十进制转换MOV R3,41HMOV R0,#64H ;64H 高位数据存储单元 MOV R7,#04HMOV DPTR,#PWTABMOV R6,#00HBBC1:MOV A,R6MOVC A,@A+DPTRMOV R4,AINC R6MOV A,R6MOVC A,@A+DPTRMOV R5,AINC R6MOV @R0,#00HBBC2:CLR CMOV A,R2SUBB A,R4MOV R2,AMOV A,R3SUBB A,R5MOV R3,AJC BBC3INC @R0SJMP BBC2BBC3:MOV A,R2ADD A,R4MOV R2,AMOV A,R3ADDC A,R5MOV R3,ADEC R0DJNZ R7,BBC1MOV @R0,ARETPWTAB: DB 10H 27H 0E8H 03H 0E8H 03H 0AH 00HDISPLAY :MOV R2,#20H ;显示循环次数MOV R0,#64H ; 64H 为高位数据存储单元 MOV R7,#4 ; 共 2 个八段管MOV R6,#00100000B ; 从左边开始显示MOV DPTR,#8002HMOV A,#0MOVX @DPTR,A ; 关所有八段管LOOP:MOV DPTR,#TABMOV A,@R0MOVC A,@A+DPTRCJNE R0,#63H,LOPPORL A,#80H ;第二位打小数点,单位为 KHz LOPP:MOV DPTR,#08004HMOVX @DPTR,AMOV DPTR,#08002HMOV A,R6MOVX @DPTR,A ; 显示一位八段管CALL DL10msMOV A,R6 ; 显示下一位RR AMOV R6,ADEC R0DJNZ R7,LOOPDJNZ R2,DISPLAYRETDISPLAY1:MOV DPTR,#TABMOV A,41HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#10HMOVX @DPTR,AMOV A,40HMOVC A,@A+DPTRMOV DPTR,#8004HMOVX @DPTR,AMOV DPTR,#8002HMOV A,#08HMOVX @DPTR,ARETDDFF:DB 0CH,09FH,4AH,0BH,99HDB 29H,28H,8FH,08H,09HKEXAM: MOV DPTR,#8002H ; 列地址 MOV A,#00HMOVX @DPTR,AMOV DPTR,#8001H ; 行地址MOVX A,@DPTRCPL AANL A,#0FHRETDL10ms:MOV 11H,#30HDL:MOV 10H,#255DL0:DJNZ 10H,DL0DJNZ 11H,DLRETTAB:DB 3FH 06H 66H 07HDB 71H 5BH 6DH 7FHDB 79H 4FH 7DH 6FHDB 5EH 39H 7CH 77H考试ORG 0000HAJMP MAINORG 0200HBUFF EQU 60HMAIN:CLR P1.4CLR P1.5CLR P1.6CLR P1.7MOV R3,#00HMOV R4,#00HACALL DISPLAYACALL KEXAMJZ MAINACALL D10msACALL KEXAMJZ MAINMOV R2,#0DFHMOV DPTR,#0D004HMOV A,#00HMOVX @DPTR,AKEY1:MOV DPTR,#0D002HMOV A,R2MOVX @DPTR,AMOV DPTR,#0D001HMOVX A,@DPTRCPL AANL A,#0FHJNZ KEY2MOV A,R3ADD A,#04HMOV R3,AMOV A,R2RR AMOV R2,AJB ACC.0,KEY1AJMP MAINKEY2:CPL AKEY3:RRC AJNC KEY4INC R4AJMP KEY3KEY4:ACALL DISPLAYACALL D10msACALL KEXAMJNZ KEY4MOV A,R3ADD A,R4CJNE A,#0CH,KEY5 ;INT0 AJMP INT0KEY5: CJNE A,#08H,KEY6;INT1 AJMP INT1KEY6: CJNE A,#04H,MAINAJMP AUTOINT0: ACALL DISPLAY1MOV A,#0FHMOV DPTR,#0C000HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRCLR CSUBB A,#178JC GREENSETB P1.4AJMP PASSGREEN: SETB P1.5PASS:ADD A,#178MOV @R0,AACALL CAIACALL DISPLAYACALL KEXAMJZ INT0KEND:AJMP MAININT1: ACALL DISPLAY2MOV A,#0FHMOV DPTR,#0C001H MOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRCLR CSUBB A,#247JC GRENSETB P1.7AJMP PASGREN: SETB P1.6PAS:ADD A,#247MOV @R0,AACALL CAIACALL DISPLAYACALL KEXAMJZ INT1AJMP MAINAUTO: MOV 50H,#2000000LOP0:ACALL D10msDJNZ 50H,LOP0AJMP INT00AUTO1: MOV 51H,#2000000 LOP1:ACALL D10msDJNZ 51H,LOP1AJMP INT11INT00:ACALL DISPLAY1MOV A,#0FHMOV DPTR,#0C000HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL D10msMOV 53H,#30PPP: ACALL DISPLAY1 ACALL DISPLAYACALL DISPLAY1ACALL DISPLAYACALL DISPLAY1ACALL DISPLAYDJNZ 53H,PPPACALL KEXAMJZ AUTO1AJMP MAININT11:ACALL DISPLAY2MOV A,#0FHMOV DPTR,#0C001HMOV R0,#40HMOVX @DPTR,AACALL D10msMOVX A,@DPTRMOV @R0,AACALL CAIACALL DISPLAYACALL D10msMOV 54H,#30OOO: ACALL DISPLAY2ACALL DISPLAYACALL DISPLAY2ACALL DISPLAYACALL DISPLAY2ACALL DISPLAYDJNZ 54H,OOOACALL KEXAMJZ AUTOAJMP MAINKEXAM: MOV DPTR,#0D004H ;按键判断 MOV A,#00HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#00HMOVX @DPTR,AMOV DPTR,#0D001HMOVX A,@DPTRCPL AANL A,#0FHRETCAI: MOV A,@R0 ;数据处理MOV B,#51DIV ABMOV 40H,AMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP2ADD A,#5LOOP2:MOV 41H,AMOV A,BMOV A,BCLR F0SUBB A,#1AHMOV F0,CMOV A,#10MUL ABMOV B,#51DIV ABJB F0,LOOP3ADD A,#5LOOP3:MOV 42H,ARETDISPLAY:MOV DPTR,#TAB ;列表显示个位整数 40H MOV A,40HMOVC A,@A+DPTRMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#10HMOVX @DPTR,AACALL D10msMOV A,#80H ;小数点MOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#10HMOVX @DPTR,AACALL D10msMOV DPTR,#TAB ;余数 41H 42HMOV A,41HMOVC A,@A+DPTRMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#08HMOVX @DPTR,AACALL D10msMOV DPTR,#TABMOV A,42HMOVC A,@A+DPTRMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#04HMOVX @DPTR,AACALL D10msRETDISPLAY1: MOV A,#3FHMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#20HMOVX @DPTR,ALCALL D10msRETDISPLAY2: MOV A,#06HMOV DPTR,#0D004HMOVX @DPTR,AMOV DPTR,#0D002HMOV A,#20HMOVX @DPTR,ALCALL D10msRETD10ms: MOV R5,#03H ;延时DL: MOV R6,#0FFHDL0: DJNZ R6,DL0DJNZ R5,DLRETTAB: DB 3FH,06H,5BH,4FHDB 66H,6DH,7DH,07HDB 7FH,6FH,77H,7CHDB 39H,5EH,79H,71H。

相关文档
最新文档