单片机原理及其接口技术实验报告
单片机及其接口技术实验报告
单片机及接口技术实验报告实验一数据传送程序一、实验目的1、掌握汇编语言设计和调试方法。
2、掌握DVCC实验系统的操作步骤。
二、实验内容1、编程实现,把7000H~70FFH单元的内容清零。
2、编程实现,把源地址为6000H开始的单元内容,传送到目的地址7000H开始的单元中,传送个数为0FFFH个。
三、DVCC实验系统操作说明1、接通DVCC实验系统电源,在DVCC实验箱上应显示闪动的“P”,否则按Reset键。
2、运行DVCC软件。
(程序DVCC598H实验系统DVCC实验系统)3、单击工具栏上“新建”或“打开”按钮,编写源程序。
单击“编译”按钮,使其形成可执行文件。
4、单击工具栏上“联接”按钮,同时按下DVCC实验箱上PCDBG键(键盘上最右边第2个),实现PC机和实验箱的联接。
联机成功,屏幕上出现:.反汇编窗口、寄存器标示位窗口。
5、在成功联机后,单击工具栏上“调试”按钮,把最终目标文件装载到实验系统RAM区;或者通过单击菜单栏中的“动态调试”,选择“传送(.EXE)文件”来实现。
6、单击工具栏上“运行”或“单步”按钮,运行实验程序。
7、单击工具栏上“窗口”,选择“显示内部数据窗口”或“显示外部数据窗口”可显示数据窗口。
鼠标右击数据窗口的数据,可设置数据块新地址;鼠标左键单击数据,可修改数据数值。
8、运行完毕,先按实验箱上的复位按钮Reset键,再按PCDBG键,并且点击屏幕上OK,即可退出运行状态。
四、实验程序代码1、把7000H~70FFH单元的内容清零。
程序代码:ORG 0000HAJMP STARTORG 70HSTART: MOV P2, #70H ;送地址高8位到P2端口MOV R0, #00H ;R0=00H,表地址低8位CLR A ;将累加器A清0LOOP: MOVX @R0, A ;将A送入以R0内容为地址的外部RAM.INC R0 ;R0+1-->R0CJNE R0,#00H,LOOP;比较条件转移指令,若R0不等于0,则跳转到LOOPAJMP $ ;暂停END2、编程实现,将源地址为6000H开始的单元,传送到目的地址7000H开始的单元,传送个数为0FFFH个。
单片机与接口技术实验报告
中南大学单片机与接口技术实验报告实验一学生姓名学号专业班级学院完成时间一、实验环境操作系统:Window 7 64位旗舰版实验平台:ADS 1.2二、实验内容熟悉ADS平台环境,根据所给的实例程序,编译运行,通过调用存储器和寄存器,知道每个语句所实现的操作。
1)打开程序后,添加实验文件1_Experiment\chapter_2\2.1_asm\2.1asm_A,编译后运行,并打开存储器和寄存器,逐句运行各个代码,得知:mov sp, #stack_top;//把栈顶赋给sp即寄存器r13mov r0, #x;//把x的值放到寄存器r0中去str r0, [sp];//把ro中的值压入栈顶mov r0, #y;//把y的值放到r0中去ldr r1, [sp];//取栈顶元素放到r1中ADD r0, r0, r1;//把r0与r1的值相加后放到r0中STR r0, [sp];//把r0的值压入栈顶2)打开1_Experiment\chapter_2\2.1_asm\2.1asm_B重复上述步骤:mov r0, #x;// 将x的值放到r0中mov r0, r0, lsl #8; //将r0中的数左移两位放回r0mov r1, #y; //将y的值放到r1中add r2, r0, r1, lsr #1; //将r1的值乘以2后加上r0的值,将得到的结果放入r2MOV sp, #0x1000; //将0x1000放入栈顶STR r2, [sp]; //将r2中的值压入栈顶mov r0, #z; //将z的值放入r0and r0, r0, #0xFF; //将r0的值取出mov r1, #y; //将y的值放入r1add r2, r0, r1, lsr #1; //略LDR r0, [sp]; //取栈顶元素放到r0MOV r1, #0x01; //将0x01放入r1ORR r0, r0, r1; //将r0与r1的值取或后放入r0mov r1, R2; //将r2的值放入r1add r2, r0, r1, lsr #1; //略三、实验反思本次实验主要是熟悉了ADS平台的使用,还有就是熟悉了一些基本的ARM 语句,小有收获,懂得了如何看懂每条语句的意思,熟悉了平台的操作方法,为今后的实验学习打下基础,更为以后的应用提供了方便。
单片机原理与接口技术实践报告
单片机原理与接口技术实践报告一、引言单片机是一种集成电路,在一个芯片上集成了中央处理器、存储器和各种输入输出设备,广泛应用于电子设备中。
单片机的原理和接口技术是学习和应用单片机的基础知识,本实践报告将从单片机的原理和接口技术两个方面展开讨论。
二、单片机的原理单片机的工作原理是基于计算机的运算方式,通过存储器存储程序和数据,并通过中央处理器执行程序来实现功能。
单片机的核心是中央处理器,它包括运算器、控制器和时钟电路。
运算器负责进行数据处理和运算,控制器负责控制程序的执行,时钟电路提供时序信号。
单片机也包括存储器、输入输出设备等外部组件。
三、单片机的接口技术1.数字口接口技术数字口接口用于单片机与数字量输入输出设备之间的通信。
数字口的输入和输出是0和1两种状态,可用于读取开关信号、接收传感器信号等。
数字口接口的编程涉及设置引脚状态、读取引脚状态等操作。
2.模拟口接口技术模拟口接口用于单片机与模拟量输入输出设备之间的通信。
模拟口的输入和输出是连续的模拟信号,可用于读取电压、控制电压等。
模拟口接口的编程涉及模拟口初始化、模拟口读取和写入等操作。
3.串口接口技术串口接口用于单片机与外部设备进行串行通信,常用于与计算机或其他外部设备的数据交互。
串口接口的编程涉及波特率设置、发送和接收数据等操作。
4.并口接口技术并口接口用于单片机与外部设备进行并行通信,常用于与打印机、液晶显示器等设备的连接。
并口接口的编程主要包括数据传输和控制信号的设置。
四、实践案例为了更好地理解单片机原理和接口技术,我们进行了以下实践案例:通过串口接口将单片机与计算机进行通信。
1.硬件连接首先,将单片机的串口通信引脚与计算机的串口通信引脚连接。
确保连接正确,避免引脚短路或断路等问题。
2.软件编程使用单片机的开发环境,编写串口通信的程序。
首先,设置串口通信的波特率、数据位、校验位等参数。
然后,编写发送和接收数据的程序,实现单片机与计算机之间的数据交互。
单片机原理及接口技术实验报告
单片机原理及接口技术实验报告一、引言单片机(Microcontroller)是一种集成为了处理器、存储器和各种接口电路的微型计算机系统。
它具有体积小、功耗低、成本低等优点,广泛应用于嵌入式系统、自动化控制、电子设备等领域。
本实验旨在深入了解单片机的原理和接口技术,并通过实验验证相关理论。
二、实验目的1. 理解单片机的基本原理和结构。
2. 掌握单片机与外部器件的接口技术。
3. 进一步培养实际操作能力和解决问题的能力。
三、实验仪器与材料1. 单片机开辟板2. 电脑3. 串口线4. LED灯5. 蜂鸣器6. 数码管7. 按键开关8. 电阻、电容等元件四、实验内容与步骤1. 单片机原理实验1.1 单片机的基本结构单片机由中央处理器(CPU)、存储器(RAM、ROM)、输入输出接口(I/O)、定时器/计数器、串行通信接口等组成。
通过学习单片机的基本结构,我们可以了解各个部份的功能和作用。
1.2 单片机的工作原理单片机的工作原理是指单片机在不同工作模式下的内部状态和运行规律。
通过学习单片机的工作原理,我们可以更好地理解单片机的工作过程,为后续的实验操作提供基础。
2. 单片机接口技术实验2.1 LED灯接口实验将LED灯与单片机相连,通过控制单片机的输出口电平,控制LED灯的亮灭。
通过实验,我们可以学习到单片机的输出接口的使用方法。
2.2 蜂鸣器接口实验将蜂鸣器与单片机相连,通过控制单片机的输出口电平和频率,控制蜂鸣器的声音。
通过实验,我们可以学习到单片机的输出接口的使用方法。
2.3 数码管接口实验将数码管与单片机相连,通过控制单片机的输出口电平和数据,显示不同的数字。
通过实验,我们可以学习到单片机的输出接口和数码管的使用方法。
2.4 按键开关接口实验将按键开关与单片机相连,通过检测单片机的输入口电平,实现按键的功能。
通过实验,我们可以学习到单片机的输入接口的使用方法。
五、实验结果与分析1. 单片机原理实验结果通过学习单片机的基本结构和工作原理,我们深入了解了单片机的内部组成和工作过程,为后续的接口技术实验打下了基础。
单片机原理及其接口技术实验报告
单片机原理及其接口技术实验报告实验1 Keil C51的使用(汇编语言)一.实验目的:初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。
二.实验设备:ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。
三.实验原理及环境:在计算机上已安装Keil C51软件。
这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。
如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。
四:实验内容:1.掌握软件的开发过程:1)建立一个工程项目选择芯片确定选项。
2)加入C 源文件或汇编源文件。
3)用项目管理器生成各种应用文件。
4)检查并修改源文件中的错误。
5)编译连接通过后进行软件模拟仿真。
6)编译连接通过后进行硬件仿真。
2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。
3.在2的基础上,实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。
五:程序清单:ORG 0000HAGAIN:CPL P1.0MOV R0,#10 ;延时0.5秒LOOP1:MOV R1,#100LOOP2:MOV R2,#250DJNZ R2,$DJNZ R1,LOOP2DJNZ R0,LOOP1SJMP AGAINEND六:实验步骤:1.建立一个工程项目选择芯片确定选项如图1-1所示:①Project→②New Project→③输入工程名test→④保存工程文件(鼠标点击保存按钮)图1-1创建工程名弹出下一界面。
如图1-2所示:①选CPU厂家(Atmel)→②选CPU型号(89C51), ③选好后确定图1-2选厂家,选CPU 型号接着选晶振频率及生成HEX 文件等。
单片机原理及接口技术实验报告书 (1)
学生学号实验课成绩学生实验报告书实验课程名称单片机原理及接口技术开课学院物流工程学院指导教师姓名学生姓名学生专业班级2018 -- 2019 学年第 1 学期实验课程名称:_单片机原理及接口技术_原理图4.系统控制程序的设计要求包括内容:控制程序的工作流程图,控制程序的源代码,及其控制程序的重点说明。
#include<reg51.h>#define uint unsigned int#define uchar unsigned charuchar keycode,DDram_value=0xc0;sbit RS=P2^0;sbit RW=P2^1;sbit E =P2^2;sbit speaker=P2^3;uchar code table[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x20};uchar code table_designer[]="JIANG SHAO YONG";void lcd_delay();void delay(uint n);void lcd_init(void);void lcd_busy(void);void lcd_wr_con(uchar c);void lcd_wr_data(uchar d);else if(buff==0xb0){liehao=0;}keyvalue=hanghao+liehao;while(P1!=0xf0);return(keyvalue);}}5.系统的调试和结果要求包括内容:系统调试的方法,系统正确运行的照片或图片(必须包括整个工作过程的图片检查电路是否正确连接,向单片机烧录hex文件,检查反复调试。
6.实验过程中所遇到的问题,解决方法和建议在实验过程中,编的程序出现了很多问题,除了字符错误,还出现了逻辑错误以及过定义。
将程序分块可以解决很多错误;增加注释,提高程序的可读性,。
《单片机与接口技术》实验报告[精选五篇]
《单片机与接口技术》实验报告[精选五篇]第一篇:《单片机与接口技术》实验报告《单片机与接口技术》实实验报告SUNES59PA班班级:____________________ 学学号:____________________ 姓姓名:____________________ 得得分:____________________ 指指导:____________________ 日日期:____________________合肥工业大学宣城校区实验一XXXXXXXXXXXXX一、实验目的二、实验设备三、实验内容四、实验步骤五、实验现象六、实验程序(必须带注释)第二篇:《单片机与接口技术》实验报告1实验六D/A转换(脱机:HW10)一、实验目的(1)了解D/A转换芯片DAC0832的性能及编程方法;(2)了解单片机系统中扩展D/A转换芯片的基本方法。
二、实验内容利用DAC0832芯片输出一个从0V开始逐渐升至5V再降至0V 的可变电压。
三、实验步骤四、实验现象解释五、实验程序第三篇:单片机接口技术与实验课程总结《单片机接口技术与实验》课程总结姓名:史慧学号:年级:专业:电气工程及其自动化1226409016 2009级2011年秋季学期实验一1.功能要求本实验要求向芯片中写入 10 个字节,然后再读出显示。
2.硬件设计思路P2引脚连接8LED灯,显示读出的数据。
3.软件程序流程其中CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。
这就允许在同一总线上连接多个SPI设备成为可能。
接下来就负责通讯的3根线了。
通讯是通过数据交换完成的,这里先要知道SPI是串行通讯协议,也就是说数据是一位一位的传输的。
这就是SCLK时钟线存在的原因,由SCK提供时钟脉冲,SDI,SDO则基于此脉冲完成数据传输。
数据输出通过 SDO线,数据在时钟上升沿或下降沿时改变,在紧接着的下降沿或上升沿被读取。
单片机的原理及接口技术
与传输 ;R A M 则可进行 数据信 息 的临时缓 冲
Hale Waihona Puke 存储 。通过此种接 口技术 ,并配 以其他配件 芯
片,实现了单片机的各类信息读取 、传输 、以
及 写入 等 功 能 。
5结语
综 上 所 述 , 文 中通 过 对 单 片 机 的 作 用 原
也可将 其理解为能够独立 工作的微型计算 在此 单 片机 的 芯 片上 ,会 涉 及到 CP U、 “、R AM 等通 过 I / 0接 口进行 结合 的独立 单片机上添加相应 的部件 ,以此来确保单 L 各种 功能的应用于 实现。而单片机的设计
4 单片机研发 的主要方 面
首先 ,是将 单片机 的抗 干 扰能 力通 过研 发得以加强。现阶段,单片机进行干扰排除 的
方 式主 要 为 外 部 操 作 , 即 将 干 扰 源 或 干 扰 路 径
i 部分 , 单片机也得 到了广泛的应用与普及 , 【 说 ,在 现阶段 的众 多领域 中,都能够发现
理及接 口技术的分析与研究 ,总结 出单片机所 能应用到的领域。并通过分析得 出,若要将单
片 机 进 行 深 入 的 应 用 ,则 应 当 从 提 升 单 片 机 的
口的存 储 设备 随着 技术 的革 新,变 得愈 加 的 新 时代 背 景下 ,社会 的发展 和科 技 的进 符合人 们的需求 ,不仅 内部 的存储 空间增 大, 使得 各类先进 的科学技术被 应用于众多的
: 与生 活 领 域 , 作 为 电子 信 息 工 程 中 重 要 的 其 体 积 也 在 随 之 减 少 。 同 时 , 此 类 US B 接 口 的存 储 设 备 , 逐 渐 发 展 成 为 能 够 随 身携 带 的 u
单片机接口技术实验报告
单片机原理与接口技术实验报告姓名: XXX学院:机电工程学院班级:机械XXX班学号: XXX日期: 2013年11月9日实验一定时器实验班级:机械XXX班学号:XXX 姓名:XXX一、实验目的1.学习89C51内部计数器的使用和编程方法2.进一步掌握中断处理程序的编写方法二、实验说明关于内部计数器的编程主要是定时常数的设置和有关控制寄存器的设置。
内部计数器在单片机中主要有定时器和计数器两个功能。
本实验使用的是定时器,定时为一秒钟。
CPU运用定时中断方式,实现每一秒钟输出状态发生一次反转,即发光管每隔一秒钟亮一次。
定时器有关的寄存器有工作方式寄存器TMOD和控制寄存器TCON。
TMOD用于设置定时器/计数器的工作方式0-3,并确定用于定时还是用于计数。
TCON主要功能是为定时器在溢出时设定标志位,并控制定时器的运行或停止等。
内部计数器用作定时器时,是对机器周期计数。
每个机器周期的长度是12个振荡器周期。
因为实验系统的晶振是12MHZ,本程序工作于方式2,即8位自动重装方式定时器, 定时器100uS中断一次, 所以定时常数的设置可按以下方法计算:机器周期=12÷12MHz=1uS(256-定时常数)×1uS=100uS定时常数=156。
然后对100uS中断次数计数10000次,就是1秒钟。
在本实验的中断处理程序中,因为中断定时常数的设置对中断程序的运行起到关键作用,所以在置数前要先关对应的中断,置数完之后再打开相应的中断。
三、实验内容及步骤本实验需要用到单片机最小应用系统模块(F1区)和十六位逻辑电平显示模块(I4区)。
1.使用单片机最小应用系统模块,用导线将P1.0接到十六位逻辑电平显示的任意一只发光二极管上。
2.用串行数据通信线连接计算机与仿真器,把仿真头插到模块的单片机插座中,打开模块电源,插上仿真器电源插头(USB线)。
3.打开Keil uVision2仿真软件,首先建立本实验的项目文件,接着添加“TH10_定时器.ASM”源程序,编译无误后。
单片机原理与接口技术--实验报告
专业: 学号:
年级:
实验时间:
组:_______ 指导教师:
一、实验目的 1.进一步熟悉Kiel C软件的使用方法。 2.掌握proteus软件的使用方法。 3.熟悉C语言数据与运算 4.熟悉C语言程序结构
二、实验内容 1.程序一:按键K0~K3,用三种分支语句实现P0口的多值输出 2.程序二:用三种循环语句实现P0口的多值输出。
if(num==0x40) { for(j=3;j>0;j--) { P0=num; //将 num 赋值给 P0 口 num>>=2; //变量右移二位 delay(100); //延时一段时间 } } }
}
} void delay(unsigned char i) //延时子程序 {
unsigned char j,k; for(k=0;k<i;k++) for(j=0;j<255;j++);
英文提示
中文含义
可能发生的错误
五、Proteus 仿真电路图 (用屏幕硬 COPY 在 WORD 上粘贴后打印)贴在这里
六、仿真观测到的现象
七、心得体会 (一定要写,内容是学习这部分课和实验后的收获,还有什么地方不懂,对教学的意见、
建议等。如果不写,降分处理)
学院: 姓名:
实验二 并行 I/O 端口的应用一
三、实验程序 1、程序一:
2、程序二:
四、Proteus 仿真电路图 (用屏幕硬 COPY 在 WORD 上粘贴后打印)贴在这里
五、心得体会 (一定要写,内容是学习这部分课和实验后的收获,还有什么地方不懂,对教学的意见、
建议等。如果不写,降分处理)
学院: 姓名:
单片机接口技术实训报告
一、实训背景随着科技的不断发展,单片机在各个领域得到了广泛的应用。
为了提高学生的实践能力,本实训课程旨在让学生深入了解单片机接口技术,掌握单片机与外部设备进行数据交换的原理和方法。
通过本次实训,使学生能够熟练运用单片机接口技术,设计并实现简单的控制系统。
二、实训目的1. 熟悉单片机接口技术的基本原理和常用接口类型。
2. 掌握单片机与外部设备进行数据交换的方法和技巧。
3. 学会使用常用接口电路,如串行通信接口、并行通信接口等。
4. 提高学生的动手实践能力和创新意识。
三、实训内容1. 实训环境本次实训使用STC89C52单片机作为核心控制单元,通过编程实现与外部设备的数据交换。
实验设备包括STC89C52单片机开发板、数码管、按键、蜂鸣器、串行通信模块等。
2. 实训步骤(1)搭建实验电路根据实训要求,搭建单片机与外部设备的连接电路,包括数码管显示电路、按键输入电路、蜂鸣器驱动电路、串行通信电路等。
(2)编写程序使用C语言编写程序,实现以下功能:1)数码管显示:显示单片机内部计数值;2)按键输入:读取按键状态,控制数码管显示数字;3)蜂鸣器驱动:根据按键输入,控制蜂鸣器发出不同频率的声波;4)串行通信:通过串行通信模块实现单片机与其他设备的数据交换。
(3)调试程序使用Keil uVision软件对程序进行编译、调试,确保程序运行正确。
(4)测试程序将调试好的程序烧录到单片机中,观察数码管显示、按键输入、蜂鸣器驱动和串行通信等功能是否正常。
四、实训结果与分析1. 实训结果通过本次实训,成功实现了单片机与数码管、按键、蜂鸣器和串行通信模块的连接与数据交换。
数码管能够显示单片机内部计数值,按键输入能够控制数码管显示数字,蜂鸣器能够根据按键输入发出不同频率的声波,串行通信模块能够实现单片机与其他设备的数据交换。
2. 实训分析(1)数码管显示数码管显示功能通过单片机的P0口输出数据,控制数码管显示相应数字。
程序中使用了定时器/计数器实现计数功能,并通过查表法将计数值转换为数码管显示的段码。
单片机原理及接口技术实验报告
单片机原理及接口技术实验报告任课教师班级姓名日期实验一构建单片机最小系统和实验环境熟悉一、单片机最小系统的组成原理图二、单片机的工作原理:1.运算器运算器包括算术逻辑运算单元ALU、累加器ACC、寄存器B、暂存器TMP、程序状态字寄存器PSW、十进制调整电路等。
它能实现数据的算术逻辑运算、位变量处理和数据传送操作。
(1)算术逻辑单元ALUALU在控制器根据指令发出的内部信号控制下,对8位二进制数据进行加、减、乘、除运算和逻辑与、或、非、异或、清零等运算。
它具有很强的判跳、转移、丰富的数据传送、提供存放中间结果以及常用数据寄存器的功能。
MCS-51中位处理具有位处理功能,特别适用于实时逻辑控制。
(2)累加器ACC累加器ACC是8位寄存器,是最常用的专用寄存器,它既可存放操作数,又可存放运算的中间结果。
MCS—51系列单片机中许多指令的操作数来自累加器ACC。
累加器非常繁忙,在与外部存储器或I/O接口进行数据传送时,都要经过A来完成。
(3)寄存器B寄存器B是8位寄存器,主要用于乘、除运算。
乘法运算时,B中存放乘数,乘法操作后,高8位结果存于B寄存器中。
除法运算时,B中存放除数,除法操作后,余数存于寄存器B中。
寄存器B也可作为一般的寄存器用。
(4)程序状态字PSW程序状态字是8位寄存器,用于指示程序运行状态信息。
其中有些位是根据程序执行结果由硬件自动设置的,而有些位可由用户通过指令方法设定。
PSW中各标志位名称及定义如下:CY():进(借)位标志位,也是位处理器的位累加器C。
在加减运算中,若操作结果的最高位有进位或有借位时,CY由硬件自动置1,否则清“0”。
在位操作中,CY作为位累加器C使用,参于进行位传送、位与、位或等位操作。
另外某些控制转移类指令也会影响CY位状态(第三章讨论)。
AC():辅助进(借)位标志位。
在加减运算中,当操作结果的低四位向高四位进位或借位时此标志位由硬件自动置1,否则清“0”。
单片机原理及应用实验报告
单片机原理及应用实验报告实验课程:单片机原理及应用实验项目:单片机控制LED灯亮灭专业班级:学号:姓名:实验日期:实验一单片机控制LED灯实验.一、实验目的1、进一步掌握Keil的使用,熟悉单片机C语言编程。
2、学习I/O口的使用方法。
二、实验原理发光二级管是半导体二极管的一种,可以把电能转化为光能,常简写为LED。
发光二极管与普通二极管一样是由一个PN结组成,也具有单向导电性。
只要加在发光二极管两端的电压超过它的导通电压(一般为1.7V-1.9V)它就会导通,而当流过它的电流超过一定电流时(一般2-3mA)它就会发光。
LED常用在MCS-51单片机中指示单片机的某个开关量的状态。
对单片机的控制,其实就是对I/O口(单片机引脚)的控制。
单片机共四个端口,P0、P1、P2、P3;每个端口分别有8个引脚P0.0-P0.7、P1.0-P1.7、P2.0-P2.7、P3.0-P3.7;这32个引脚既可以作输出脚,又可以作输入脚。
作输出脚时,单片机可以控制指示灯、数码管、电机等外部器件;作输入脚时,可以“感受”按键、开关、传感器等外部器件(例如接收数据-此就是作为输入脚的),单片机的每个引脚都是可以分开控制的,即独立的给高或者低电平。
想要点亮一个小灯,首先要将小灯与单片机的一个I/O 口连接好,然后将此引脚给高或者低电平,接着这个小灯就可以按照你给的电平实现点亮或熄灭了。
三、硬件电路设计LED模块排线接口如图3-1所示。
依据实验原理,只要将所需控制的LED 对应排线引脚连接到单片机一个I/O口即可。
1、连接方法:JP11(P2)和JP1和LED灯的JP1用8PIN排线连接起来。
2、硬件说明:使用单片机的P2口来驱动8个LED,发光二极管的阳极接高电平,故P2口为低电平时,就可以驱动其点亮。
四、软件设计1.单灯D3闪烁#include<reg51.h>void delay(void) //延时程序{unsigned int i;for(i=0;i<20000;i++);}void main(void){while(1){}2、双4只 LED 灯(D1、D3、D5、D7 与D2、D4、D6、D8)交替闪烁#include<reg51.h> P2=0xfb; //灯亮delay(); //延时P2=0xff; //灯灭 delay(); //延时 }#define uint unsigned int#define uchar unsigned charvoid delay();void main(){while(1)}void delay() //延时程序{}3、8只LED灯(D1、D2、D3、D4、D5、D6、D7、D8)流水灯显示 #include<reg51.h>void delay(void){unsigned char i,j;for(i=0;i<250;i++) } for(j=0;j<250;j++); uint x,y; for(x=100;x>0;x--) for(y=600;y>0;y--); { } P2=0xaa; //1010 1010 delay(); P2=0x55; //0101 0101 delay();void main(){while(1)} { P2=0xfe; delay(); P2=0xfd; delay(); P2=0xfb; delay(); P2=0xf7; delay(); P2=0xef; delay(); P2=0xdf; delay(); P2=0xbf; delay(); P2=0x7f; delay(); }三、实验结果分析:刚开始不是很熟悉,无法按照老师所讲的进行试验,反复操作后,完成了试验。
《单片机原理及接口技术》实验报告[ 2 ]
《单片机原理及接口技术》实验报告[ 2 ]单片机原理及接口技术实验二说明:本次实验报告主要分四部分:第一部分分析本次实验要求;第二部分对两部个实验任务的软硬件部分进行分析;第三部分展示两个实验任务的相应程序代码;第四部分实验总结。
一、实验分析:(1)实验目的①实现实验开发板上LED数码管的动态显示②根据定时器中断及数码管动态显示相关知识,设计一个数码管显示秒表(2)实验原理①由单片机开发板的结构我们可以知道,单片机在任意时刻都只能实现一个数码管的点亮功能,但是当不同数码管之间的切换点亮时间间隔非常短(<0.1s)时,由于人眼视觉停留效果,我们就能看到有多个数码管同时点亮,利用此原理我们即可实现LED数码管的动态显示。
②单片机内部有溢出中断功能:当我们事先设置好数值后(利用公式算出初始值),单片机即可从该数值开始工作,当达到25535时,在增加1即产生溢出现象,此时溢出中断实现,通过计数器计算溢出次数,即可实现计数功能。
二、软硬件分析:(说明:本次做实验带的是自己的开发板,但此开发板没有相应的电路图,故以实验课老师发的电路图加以分析)(1)实验任务1——实现实验开发板上LED数码管的动态显示本次小组有两名成员,学号分别为002228,机制创新班代号00,所以实验任务一只需要在数码管上从左到右依次显示002228(最后两位不显示,即处于不点亮状态:可通过不给片选信号和段选信号来实现)。
①硬件分析a:LED数码管分析如图所示(图中红色方框区域),DIG1-DIG8所对应的为数码管的8段(即段选部分)。
根据前期测试,发现此单片机数码管为共阴极结构,因此要让数码管的某一段显示,只需要给对应的位高电平即可,通过:P2^7=0; P2^7=1即可实现(下跳沿有效)。
通过测试,我们测出数码管显示每个数字所对应的16位数(即:数码管段选真值表)如下表所示。
0 1 2 3 4 5 6 7 8 9 0x3F 0x06 0x5B 0x4F 0x66 0x6D 0x7D 0x07 0x7E 6F 将此段选码定义为一个数组:LedChar[10](如下图)因此要实现在数码管上从左到右依次显示002228,只需要给1~6号数码管送以下段选码:0x3F 0x3F 0x5B 0x5B 0x5B 0x7F也即:LedChar[0] LedChar[0] LedChar[2] LedChar[2] LedChar[2] LedChar[8];关于片选部分,本次试验是通过测试得到的,本单片机从左到右8个数码管所对应的真值表如下表:1 2 3 4 5 6 7 8数码管编号(从左到右)真值表0xFE 0xFD 0x7B 0XF7 0xEF 0xDF 0xBF 0x7F 因此,要实现1~6号数码管显示,只需要给从左到右的数码管送以下片选码:0xFE 0xFD 0x7B 0XF7 0XF7 0xEF 0xDF注:由于数码管在工作的时候是从右向左显示的,因此在编程时需要先给6号数码管送相应片选和位选信号(具体见程序)。
单片机原理及其接口技术实验报告
单片机原理及其接口技术实验指导书实验1 Keil C51的使用(汇编语言)一.实验目的:初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。
二.实验设备:ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。
三.实验原理及环境:在计算机上已安装Keil C51软件。
这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。
如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。
四:实验内容:1.掌握软件的开发过程:1)建立一个工程项目选择芯片确定选项。
2)加入C 源文件或汇编源文件。
3)用项目管理器生成各种应用文件。
4)检查并修改源文件中的错误。
5)编译连接通过后进行软件模拟仿真。
6)编译连接通过后进行硬件仿真。
2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。
3.在2的基础上,实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。
五:程序清单:ORG 0000HAGAIN:CPL P1.0MOV R0,#10 ;延时0.5秒LOOP1:MOV R1,#100LOOP2:MOV R2,#250DJNZ R2,$DJNZ R1,LOOP2DJNZ R0,LOOP1SJMP AGAINEND六:实验步骤:1.建立一个工程项目选择芯片确定选项如图1-1所示:①Project→②New Project→③输入工程名test→④保存工程文件(鼠标点击保存按钮)图1-1创建工程名弹出下一界面。
如图1-2所示:①选CPU厂家(Atmel)→②选CPU型号(89C51), ③选好后确定图1-2选厂家,选CPU 型号接着选晶振频率及生成HEX 文件等。
单片机原理及接口技术 实验
单片机原理及接口技术实验单片机原理及接口技术实验单片机是一种能够完成特定任务的微型电脑系统,其内部包括中央处理器、存储器、输入/输出接口和定时/计数器等功能模块。
在现代电子技术领域中,单片机被广泛应用于各种自动控制、数字通讯、智能仪器和嵌入式系统等领域。
下面我们来了解一下单片机原理及接口技术的实验。
一、单片机原理单片机内部包含中央处理器(CPU)、存储器、输入/输出接口和定时/计数器等功能模块。
其中,CPU是单片机的核心部件,它能够解读并执行各种指令,控制单片机的运行;而存储器则用于储存程序代码和数据,其中程序运行时对存储器的读写操作十分频繁,并且存储器也被划分为程序存储器和数据存储器两个部分。
此外,单片机还包括输入/输出接口和定时/计数器模块,前者用于控制单片机与外部设备的数据交换,后者则用于完成各种定时和计数功能。
二、单片机接口技术单片机接口技术就是指单片机与外部设备之间通信的技术,其中最常见的接口是串口和并口。
1. 串口串口是最常见的单片机输入/输出接口之一,它的原理是将数据位逐个串行传输,速度慢但可靠性高。
在实际应用中,串口接口被广泛应用于打印机、智能设备、数码相机、路由器等各种设备,也可以通过串口将单片机与PC机进行通信。
2. 并口并口是另一种单片机输入/输出接口,其原理是将数据一次性并行传输,速度较快但可靠性相对较低。
在实际应用中,并口接口被广泛应用于打印机、扫描仪、光盘刻录机等各种设备。
三、单片机实验单片机实验是通过实践来了解单片机原理和接口技术的方法。
下面是一些常见的单片机实验:1. LED亮灭实验通过控制IO口状态,让LED灯有规律地亮和灭,来熟悉单片机的IO口使用和控制方法。
2. LCD液晶屏显示实验通过控制LCD液晶屏的驱动,让屏幕上显示输入的信息,来了解单片机对于外部设备驱动的使用。
3. 蜂鸣器发声实验通过控制IO口的高低电平,让蜂鸣器发出一定频率的声音,来了解单片机对于音乐发声的控制方法。
单片机原理与接口技术课程设计报告实验报告
XX理工学院课程设计报告课程名称单片机原理与应用设计题目基于STC89C52单片机的实验平台开发设计专业计算机科学与技术班级B110507学号B11050725XX 舒灿完成日期2021年12月24日基于STC89C52单片机的实验平台开发设计摘要利用STC89C52单片机控制器为核心,开发一种体积小、使用方便、实用性强的单片机综合实验实平台。
在Keil C环境下进展软件设计,主要包括流水灯、数码管显示以及LCD显示模块,在Protues中仿真成功,下载到电路板中验证成功。
主要包括集LCD显示模块、串口通信模块、数码管显示模块、LED发光二极管、键盘等接口电路的设计该系统主要应用于高等学校、中等职业学校单片机技术的教学、实验、实训、综合设计和电子设计竞赛等,利用实训平台增加学生学习单片机技术的兴趣,从而提高学生单片机技术的实际应用能力。
关键词:STC89C52单片机,实验平台,数码管,流水灯,串口通信ABSTRACTUsing STC89C52 single-chip controller as the core, the development of a small volume, convenient to use, practical single-chip experiment training platform, and introduces in detail the experimental training platform hardware design ideas and function.Under the environment of Keil C software design, mainly including the water lights, digital tube display and LCD display module, successful in Protues simulation, validation successful downloaded onto a circuit board.Implement forward and reverse flow, water lamp interruption is applied to implement digital tube within 60 count and LCD displays different features of the characters.This system is mainly used in institutions of higher learning and secondary vocational school singlechip technology teaching, experiment, practical training, prehensive design and electronic design contest, etc., using the training platform to increase students' interest in learning microcontroller technology, so as to improve the practical application ability of students microcontroller technology.KEYWORDS:STC89C52 microcontroller, prehensive experimental board, software and hardware bined with, and the program development design目录摘要1目录3前言4第1章系统概述61.1设计题目61.2系统设计目的和容6设计目的6设计容6设计要求6设计步骤7第2章整体设计方案82.1开发板整体外观92.2整板电路PROTUES仿真电路82.3软件功能描述92.4仿真软件PROTUES中的效果图10第3章硬件电路设计133.1两位一体共阴数码管13数码管概述13数码管部构造14两位一体共阴数码管和74LS374锁存器接口电路153.2LCD1602液晶16液晶简介16液晶引脚介绍16液晶外围接口电路173.3 串口通信18串口通讯概述18接口电路19第4章软件设计214.1程序整体流程图214.2程序清单22第5章调试及故障分析265.1 焊接准备阶段元器件测试、电路原理图故障分析265.2 电路焊接过程中的故障分析265.3 程序编写过程中的故障分析265.4 实物演示效果27结论27辞28参考文献29附录30前言高科技产品盛行的今天单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机原理及其接口技术实验指导书实验1 Keil C51的使用(汇编语言)一.实验目的:初步掌握Keil C51(汇编语言)和ZY15MCU12BD型综合单片机实验箱的操作和使用,能够输入和运行简单的程序。
二.实验设备:ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。
三.实验原理及环境:在计算机上已安装Keil C51软件。
这个软件既可以与硬件(ZY15MCU12BD型综合单片机实验箱)连接,在硬件(单片机)上运行程序;也可以不与硬件连接,仅在计算机上以虚拟仿真的方法运行程序。
如果程序有对硬件的驱动,就需要与硬件连接;如果没有硬件动作,仅有软件操作,就可以使用虚拟仿真。
四:实验内容:1.掌握软件的开发过程:1)建立一个工程项目选择芯片确定选项。
2)加入C 源文件或汇编源文件。
3)用项目管理器生成各种应用文件。
4)检查并修改源文件中的错误。
5)编译连接通过后进行软件模拟仿真。
6)编译连接通过后进行硬件仿真。
2.按以上步骤实现在P1.0输出一个频率为1Hz的方波。
3.在2的基础上,实现同时在P1.0和P1.1上各输出一个频率同为1Hz但电平状态相反的方波。
五:程序清单:ORG 0000HAGAIN:CPL P1.0MOV R0,#10 ;延时0.5秒LOOP1:MOV R1,#100LOOP2:MOV R2,#250DJNZ R2,$DJNZ R1,LOOP2DJNZ R0,LOOP1SJMP AGAINEND六:实验步骤:1.建立一个工程项目选择芯片确定选项如图1-1所示:①Project→②New Project→③输入工程名test→④保存工程文件(鼠标点击保存按钮)图1-1创建工程名弹出下一界面。
如图1-2所示:①选CPU厂家(Atmel)→②选CPU型号(89C51), ③选好后确定图1-2选厂家,选CPU 型号接着选晶振频率及生成HEX 文件等。
如图1-3所示:①Project→②Options for Target ‘Target 1’…→③在Target中→④更改CPU 晶振频率为12MHz→⑤在Output中→⑥选择生成HEX 格式其它采用缺省设置→⑦选好后确定。
图1-3选晶振频率及生成HEX 文件等窗口2.建立汇编源文件如图1-4所示:①File→②New, ③弹出源文件编辑窗口。
输入以下源文件:ORG 0000HAGAIN:CPL P1.0MOV R0,#10 ;延时0.5秒LOOP1:MOV R1,#100LOOP2:MOV R2,#250DJNZ R2,$DJNZ R1,LOOP2DJNZ R0,LOOP1SJMP AGAINEND图1-4进入编辑源文件窗口源程序编写完后,①File→②Save As 将文件以test.asm保存在E:\test 目录下,获得汇编语言源程序。
3.用项目管理器生成(编译)各种应用文件①点击Target 1 前之+ 号→出现②Source Group1→③点击它并按鼠标右键会生弹出下拉菜单见图1-5编译文件文件窗口→选择④Add Files to Group ‘ Source Group 1’ →⑤点击add向项目中添加Test.asm 源文件→⑥点击close关闭Add Files t o Group ‘ Source Group 1’窗口→⑦在Source Group 1 前会出现一个+号→⑧点击之弹出test. asm 文件名点击该文件名→⑨主窗口中会出现该程序图1-5进入编译文件文件窗口编译:Project→Build target 就会生成一系列到文件如OBJ 文件LST 文件HEX文件等。
4.检查并修改源文件中的错误如果在源文件中存在错误在Output 窗口中会出现错误提示信息,你可以在源程序中进行修改,然后存盘后重新Build 观察错误提示信息。
5.编译连接通过后进行软件模拟仿真Debug→Start/Stop Debug Session进入软件模拟的仿真窗口,可使用单步、设断点来进行调试和除错。
6.编译连接通过后进行硬件仿真实验箱的仿真串口必须与PC 机串口连接,通电,拨位开关K10必须拨在B端,连接P10和L00,连接P11和L01,设置硬件实时仿真调试选项:Project→Options for Target ‘Targetl’→Debug.硬件实时仿真调试选项窗口,见图1-5选硬件仿真选项,按确定按钮确定。
图1-5硬件实时仿真调试选项窗口进入硬件实时调试窗口后,可打开各种观察窗口,进行单步断点运行到光标连续执行等操作,无误后可连续运行观察LED发光管的显示效果。
注意退出时须按单片机的复位按键SS10,在进行硬件连接前最好也先按单片机的复位按键SS10。
7.修改以上程序,实现同时在P1.0和P1.1上各输出一个频率为1Hz但电平状态相反的方波。
七:试验总结:通过第一次实验我熟悉了Keil C51(汇编语言)和ZY15MCU12BD的基本操作过程,但还不是很熟练,课后要加强练习。
实验2 十六进制与十进制的转换一:实验目的:实践汇编语言顺序结构的编程方法,掌握十六进制数转换成十进制数的编程实现,掌握单步运行程序的基本技巧。
二:实验设备:ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。
三:实验原理及环境:将十六进制数转换成十进制数有多种方法,比较典型的是用待转换数除以权值的方法,即依次除以100、10,则各次的商和最后的余数就是所需要的十进制数。
四:实验内容:将放在片内RAM30H中的2位十六进制数转换成3位十进制数,按照从高位到低位的顺序分别放入31H~33H中(即非压缩的BCD码)。
在本实验中,要求使用单步方式运行,以便观察各单元的变化过程。
五:程序清单:LJMP 0100HORG 0100HMOV A,30HMOV R0,BMOV B,#16MUL ABADD A,R0MOV B,#10DIV ABMOV 33H,BMOV A,33HMOV 33H,AMOV B,#10DIV ABMOV 32H,BMOV A,32HMOV 32H,AMOV 31H,ASJMP $END六:实验步骤:1.建立一个工程,将在预习中做好的*.asm文件加入。
2.调出存储器编辑窗口,将30H单元修改成某一值。
3.在希望停下来的指令上设断点,然后运行,在断点处停下来后,再单步运行,可以看到各单元的变化情况。
运行完最后一条指令后,在31H~33H中应获得30H中十六进制数对应的十进制数。
七:试验总结:这个实验麻烦的就是编程实现十六进制与十进制的转换,尤其是算数运算指令的使用。
实验过程中还不是很熟练;还有一个体会就是算法对编写程序至关重要,如果编写程序之前没有确立算法,那么编程将无法下手。
实验3 8段LED显示器动态显示实验目的:掌握8段LED显示器的使用及显示程序的设计方法。
实验设备:ZY15MCU12BD型综合单片机实验箱一台、具有一个RS232串行口并安装Keil C51的计算机一台。
实验原理及环境:1. 实验箱上有6位8段LED显示器,采用动态方式驱动。
即使一位LED显示器显示内容一段时间,然后下一位LED显示器显示内容一段时间……,周而复始。
只要刷新频率不小于50Hz,就可以获得清晰稳定的显示效果。
2.MCS-51CPU通过一片8255对8段LED显示器进行段驱动和位驱动,8255的A口、B口、C口、控制口的地址分别为片外RAM的4000H、4001H、4002H、4003H。
3.LED显示器的各段由8255的B口驱动,低电平对应段发光,高电平对应段熄灭。
各段的驱动位如图3-1,各显示字的字形代码如下所示:1 F9H 1. 79H 灭 FFH2 A4H 2. 24H3 B0H 3. 30H4 99H 4. 19H5 92H 5. 12H6 82H 6. 02H7 F8H 7. 78H8 80H 8. 00H 9 90H 9. 80HA 88H A. 08HB 83H B. 03HC C6H C. 46HD A1H D. 21HE 86H E. 06HF 8EH F. 0EH4. LED 显示器的各位由8255的A 口驱动,低电平对应位发光,高电平对应位熄灭。
LED 显示器 对应位口位左起第一位 D0左起第二位 D1左起第三位 D2左起第四位 D3左起第五位 D4左起第六位 D5实验内容:1.编写一个6位LED 显示器驱动子程序(在主程序中已对接口芯片8255做好必要的初始化)。
字形表按0~F 、0.~F.、-、灭的顺序排列。
该子程序的要求如下:入口:待显示数(00H ~1FH)放在20H ~25H( 分别对应显示器的左起第1~第6位)中。
出口:每位LED 显示0.5mS 后返回。
占用:R0、R1、R2、A 、PSW 、DPTR 。
显示子程序的流程图如图3-2和图3-3:2.子程序自身无法运行,为了运行这个子程序,另编写一个主程序。
这个主程序的功能是首先对8255进行初始化,然后就反复调用显示子程序,显示20H~25H中的待显示内容。
首先在20H起始的6个字节中置入00H~0FH,然后连续运行此程序,应显示0~F;在20H起始的6个字节中置入10H~1FH,然后连续运行此程序,应显示0.~F.;若置入20H、21H,则显示-、灭。
3.按以下框图编写一段程序,运行后会在显示器上应出现连续向左移动的0~F。
6位LED显示器驱动子程序程序清单:ORG 0000HMOV SP,#6FHMOV 20H,#00MOV 21H,#00MOV 22H,#00MOV 23H,#00MOV 24H,#00MOV 25H,#00MOV DPTR,#4003H ;8255初始化MOV A,#10000001B ; A口、B口方式0输出,C口高4位输出,低4位输入MOVX @DPTR,A;ACALL DELAY500MS ;延时0.5秒LOOP3: LCALL DISP ;调用显示子程序SJMP LOOP3DISP:MOV R0,#20HMOV R2,#0FEHDISP1:MOV A,@R0MOV DPTR,#TABMOVC A,@A+DPTRMOV DPTR,#4001HMOVX @DPTR,AMOV A,R2MOV DPTR,#4000HMOVX @DPTR,ACALL DELAY500USMOV A,#0FFHMOVX @DPTR,AMOV A,R2RL AMOV R2,AINC R0CJNE R0,#26H,DISP1RETDELAY500MS: PUSH 00HMOV R0,#25 ;延时0.5秒NEXT: ACALL DELAY20MSDJNZ R0,NEXTPOP 00HRETDELAY500US:PUSH 03HMOV R3,#250DJNZ R3,$POP 03HRETDELAY20MS:PUSH 06HPUSH 07HMOV R7,#99AGAIN: MOV R6,#100DJNZ R6,$DJNZ R7,AGAINPOP 07HPOP 06HRETTAB: DB 0C0H,0F9H,0A4H,0B0H, 99H, 92H, 82H,0F8H ;0 ,1 ,2 ,3 ,4 ,5 ,6 ,7DB 80H, 90H, 88H, 83H,0C6H,0A1H, 86H, 8EH ;8 ,9 ,A ,B ,C ,D ,E ,F DB 40H, 79H, 24H, 30H, 19H, 12H, 2H, 78H ;0.,1.,2.,3.,4.,5.,6.,7.DB 00H, 10H, 08H, 03H, 46H, 21H, 06H, 0EH ;8.,9.,A.,B.,C.,D.,E.,F.END主程序程序清单:ORG 0000HMOV SP,#6FHMOV 20H,#00MOV 21H,#00MOV 22H,#00MOV 23H,#00MOV 24H,#00MOV 25H,#00MOV DPTR,#4003H ;8255初始化MOV A,#10000001B ; A口、B口方式0输出,C口高4位输出,低4位输入MOVX @DPTR,A;ACALL DELAY500MS ;延时0.5秒LOOP3: LCALL DISP ;调用显示子程序MOV 20H,21HMOV 21H,22HMOV 22H,23HMOV 23H,24HMOV 24H,25HINC 25HANL 25H,#0FHSJMP LOOP3DISP:MOV R0,#20HMOV R2,#0FEHDISP1:MOV A,@R0MOV DPTR,#TABMOVC A,@A+DPTRMOV DPTR,#4001HMOVX @DPTR,AMOV A,R2MOV DPTR,#4000HMOVX @DPTR,ACALL DELAY500USMOV A,#0FFHMOVX @DPTR,AMOV A,R2RL AMOV R2,AINC R0CJNE R0,#26H,DISP1RETDELAY500MS: PUSH 00HMOV R0,#25 ;延时0.5秒NEXT: ACALL DELAY20MSDJNZ R0,NEXTPOP 00HRETDELAY500US:PUSH 03HMOV R3,#250DJNZ R3,$POP 03HRETDELAY20MS:PUSH 06HPUSH 07HMOV R7,#99AGAIN: MOV R6,#100DJNZ R6,$DJNZ R7,AGAINPOP 07HPOP 06HRETTAB: DB 0C0H,0F9H,0A4H,0B0H, 99H, 92H, 82H,0F8H ;0 ,1 ,2 ,3 ,4 ,5 ,6 ,7DB 80H, 90H, 88H, 83H,0C6H,0A1H, 86H, 8EH ;8 ,9 ,A ,B ,C ,D ,E ,F DB 40H, 79H, 24H, 30H, 19H, 12H, 2H, 78H ;0.,1.,2.,3.,4.,5.,6.,7.DB 00H, 10H, 08H, 03H, 46H, 21H, 06H, 0EH ;8.,9.,A.,B.,C.,D.,E.,F.END实验步骤:1.将P0.0~P0.7与JD0~JD7连接起来。