单片机实验报告书

合集下载

关于单片机实训报告万能【六篇】

关于单片机实训报告万能【六篇】

关于单片机实训报告万能【六篇】【篇1】单片机实训报告万能通过今次单片机实训,使我对单片机的认识有了更深刻的理解。

系统以51单片机为核心部件,利用汇编软件编程,通过键盘控制和数码管显示实现了基本时钟显示功能、时间调节功能,能实现本设计题目的基本要求和发挥部分。

由于时间有限和本身知识水平的限制,本系统还存在一些不够完善的地方,要作为实际应用还有一些具体细节问题需要解决。

例如:不能实现只用两个按键来控制时钟时间,还不能实现闹钟等扩展功能。

踉踉跄跄地忙碌了两周,我的时钟程序终于编译成功。

当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。

我相信其中的酸甜苦辣最终都会化为甜美的甘泉。

但在这次实训中同时使我对汇编语言有了更深的认识。

当我第一次接触汇编语言就感觉很难,特别是今次实训要用到汇编语言,尽管困难重重,可我们还是克服了。

这次的实训使培养了我们严肃认真的做事作风,增强了我们之间的团队合作能力,使我们认识到了团队合作精神的重要性。

这次实训的经历也会使我终身受益,我感受到这次实训是要真真正正用心去做的一件事情,是真正的自己学习的过程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破。

希望这次的经历能让我在以后学习中激励我继续进步。

【篇2】单片机实训报告万能通过这一个学期的单片机学习,我收获了很多关于单片机的知识,并且这些知识和日常的生活息息相关。

了解了一些简单程序的录入,LED显示器、键盘、和显示器的应用和原理。

LED显示器:LED显示器是由发光二管组成显示字段的器件。

通常的8段LED显示器是由8个发光二极管组成,LED显示器分共阳极和共阴极两种。

有段选码和和位选码。

当LED显示器每段的平均电流位5MA时,就有较满意的亮度,一般选择断码5-10MA 电流;位线的电流应选择40-80MA。

LED显示器的显示方式有动态和静态两种。

7289A芯片是具有SPI串行接口功能的显示键盘控制芯片,它可同时取得8位共阴极数码管和64个键的键盘矩阵。

单片机实验报告1

单片机实验报告1

单片机实验报告1单片机实验报告1一、实验目的本实验的目的是通过学习单片机的基本知识和原理,了解单片机的工作原理,熟悉编写单片机程序并进行实验验证。

二、实验器材和软件实验器材:单片机开发板、USB数据线、LCD液晶屏、面包板、电缆线、电阻、LED等。

实验软件:KEIL C51开发软件、Proteus电路仿真软件。

三、实验原理单片机是一种集成度很高的微处理器芯片,本实验使用的单片机开发板中集成了一款8051系列的单片机。

这款单片机具有强大的数据处理能力和丰富的接口资源,可以用来实现各种功能。

四、实验内容本实验主要分为两个部分:第一部分是通过LED灯的亮灭来实现二进制数的计数;第二部分是通过LCD液晶屏显示温度和湿度数值。

1.二进制数计数利用单片机的IO口,将LED灯连接到P2口,通过对P2口的输出信号进行控制,实现二进制数的计数。

2.温湿度显示利用单片机的ADC(模数转换)功能,将温湿度传感器与单片机相连,通过ADC模块将温湿度信号转换成数字信号,并通过LCD屏幕显示出来。

五、实验步骤1.硬件连接将开发板与电脑连接,使用数据线将开发板上的USB接口与电脑的USB接口相连。

然后将LCD液晶屏和温湿度传感器连接到开发板上的相应接口,并将LED灯连接到P2口。

2.编写程序使用KEILC51软件编写程序,通过编写相应的代码,实现LED灯计数和温湿度显示功能。

4.运行实验将开发板上的拨码开关打开,开启单片机的电源。

LED灯开始计数并显示在开发板上,LCD屏幕同时显示温度和湿度的数值。

六、实验结果经过实验,LED灯能够正常进行二进制数的计数,LCD屏幕也能够准确地显示温度和湿度的数值。

七、实验总结通过本实验,我对单片机的工作原理和编程有了更深入的了解。

实验中遇到的问题,我通过查找资料、请教老师和同学进行了解决,提高了我的解决问题的能力。

通过实验,我进一步认识了单片机在各个领域中的重要性和应用价值,对未来的学习和工作有了更加明确的方向。

单片机实训报告优选范文5篇分享

单片机实训报告优选范文5篇分享

单片机实训报告优选范文5篇分享单片)是一种集成电路芯片,是具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器计数器等功能集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。

下面就是小编给大家带来的单片机实训报告优选范文5篇分享,希望大家喜欢!单片机实训报告范文(一)前言一周的单片机实训很快就结束咯,在这一周的时间里,我学到了很多关于单片机各方面的知识。

老师在实训课中也教会咯我们很多关于单片机软件编程与硬件设施的知识。

一周的实训中我们一共实训咯好几个项目,通过这几个项目的实训,我们掌握咯一些单片机的汇编语言和硬件调试,达到了很好的效果。

一周时间实训过后,我把之前在课堂上不懂的知识点,通过实际操作的练习,我都搞明白咯。

当然在实训过程中也遇到咯很多问题,就是有时在调试方面不能调试成功,有时程序是没有错误,但是就是调试不好,一直找原因也找不出是什么原因。

希望以后能够拥有更多的实训时间和机会学习单片机。

实训任务一一、实验目的熟悉Keil C51集成开发环境的使用方法二、实验设备及器件IBM PC机三、实验内容按照本书的第2章的2.1节到2.4节内容进行Keil C51集成开发环境的安装和使用练习。

然后按照以下内容建立文件并编译产生HEX文件。

ORG 8000HLJMP MainORG 80F0HMain:MOV R7,#0LOOP:MOV R6,#0DJNZ R6,$DJNZ R6,$DJNZ R6,$DJNZ R6,$DJNZ R7,LOOP ;延时一台CPL P1.0CPL P1.1CPL P1.2CPL P1.3CPL P1.4CPL P1.5CPL P1.6CPL P1.7SJMP MainEND ;P1.0取反 ;P1.1取反 ;P1.2取反 ;P1.3取反 ;P1.4取反 ;P1.5取反 ;P1.6取反 ;P1.7取反通过该程序实现八盏灯的同时亮和同时灭的功能,更好的掌握汇编指令。

单片机实验报告

单片机实验报告

单片机实验报告一、实验目的本次单片机实验的主要目的是通过实际操作和编程,深入了解单片机的工作原理和应用,掌握单片机系统的设计、开发和调试方法,提高自身的动手能力和解决问题的能力。

二、实验设备1、单片机开发板2、计算机3、编程软件(如 Keil)4、下载器5、示波器6、万用表三、实验内容1、点亮 LED 灯通过编写简单的程序,控制单片机的引脚输出高低电平,从而点亮或熄灭连接在该引脚上的 LED 灯。

这是单片机最基础的操作之一,旨在熟悉单片机的编程环境和引脚控制方式。

2、数码管显示利用单片机驱动数码管,实现数字的显示。

需要了解数码管的工作原理和驱动方式,通过编程控制数码管的段选和位选信号,显示不同的数字。

3、按键输入设计按键电路,通过读取按键的状态,实现对单片机系统的输入控制。

例如,通过按键切换不同的显示模式或控制其他外部设备。

4、定时器/计数器应用使用单片机的定时器/计数器功能,实现定时、计数等操作。

例如,设计一个定时闪烁的 LED 灯,或者通过计数器统计外部脉冲的个数。

5、串口通信实现单片机与计算机之间的串口通信,将单片机采集到的数据发送到计算机上进行显示和处理,或者接收计算机发送的指令对单片机系统进行控制。

四、实验原理1、单片机的基本结构单片机通常由中央处理器(CPU)、存储器(包括程序存储器和数据存储器)、输入输出接口(I/O 口)、定时器/计数器、中断系统等部分组成。

2、编程语言本次实验采用 C 语言进行编程。

C 语言具有简洁、高效、可移植性强等优点,非常适合单片机的开发。

3、引脚功能单片机的引脚分为电源引脚、时钟引脚、复位引脚、I/O 引脚等。

通过对这些引脚的合理配置和控制,可以实现各种功能。

4、数码管驱动原理数码管分为共阴极和共阳极两种类型。

通过控制数码管的段选和位选信号,可以使数码管显示不同的数字和字符。

5、按键检测原理按键通常采用上拉电阻或下拉电阻的方式连接到单片机的I/O 引脚。

51单片机实验报告(共五则)

51单片机实验报告(共五则)

51单片机实验报告(共五则)第一篇:51单片机实验报告51单片机实验报告实验一点亮流水灯实验现象 Led灯交替亮,间隔大约10ms。

实验代码#include 〈reg51、h> void Delay10ms(unsigned int c);voidmain(){)1(elihwﻩ{ ﻩP0= 0x00;Delay10ms(50);;ffx0 =0Pﻩﻩ;)05(sm01yaleDﻩ } } void Delay10ms(unsigned int c){unsigned char a,b;for(;c>0;c-—){)——b;0〉b;83=b(rofﻩ{ ﻩﻩfor(a=130;a〉0;a--);}ﻩﻩ}} 实验原理W W hi i le(1)表示一直循环。

循环体内首先将P0 得所有位都置于零,然后延时约5 5 0*10=500ms,接着 0 P0 位全置于 1 1,于就是 D LED 全亮了。

接着循环,直至关掉电源..延迟函数就是通过多个for r 循环实现得。

实验 2 流水灯(不运用库函数)实验现象起初 led 只有最右面得那一个不亮,半秒之后从右数第二个led也不亮了,直到最后一个也熄灭,然后 led 除最后一个都亮,接着上述过程 #includemain(){unsigned char LED;LED = 0xfe;while(1){ ﻩ;DEL = 0PﻩDelay10ms(50);00x0 == 0P(fiﻩ {;1〈〈 DEL = DELﻩ)ﻩ;efx0 = DELﻩ} ﻩ}ﻩ} void Delay10ms(unsigned int c){unsigned char a,b;for(;c>0;c-—){)—-b;0〉b;83=b(rofﻩ{ ﻩﻩﻩ;)--a;0>a;031=a(rofﻩ} ﻩ} ﻩ} 实验原理这里运用了C语言中得位运算符, , 位运算符左移, , 初始值得二进制为1111 1 110, 之后左移一次变成1111 1 100 0,当变成00000 0000 时通过 f if 语句重置 1 1 11 1 11110、延迟函数在第一个报告已经说出了,不再多说..实验 3 流水灯(库函数版)实验现象最开始还就是最右边得一个不亮,然后不亮得灯转移到最右边得第二个,此时第一个恢复亮度,这样依次循环.实验代码#include 〈reg51、h> #include 〈intrins、h〉void Delay10ms(unsigned int c); void main(void){unsigned char LED;;EFx0 = DELﻩ)1(elihwﻩ{ ﻩP0 = LED;;)05(sm01yaleDﻩﻩ;)1,DEL(_lorc_ = DELﻩ} ﻩ} void Delay10ms(unsigned in t c){unsigned chara, b;for(;c〉0;c——){ ﻩfor(b=38;b〉0;b—-){ ﻩﻩ;)-—a;0〉a;031=a(rofﻩ} ﻩ}}实验原理利用头文件中得函数,_cro l_(,), 可以比位操作符更方便得进行 2 2 进制得移位操作, , 比位操作符优越得就是,该函数空位补全时都就是用那个移位移除得数据, , 由此比前一个例子不需要f if 语句重置操作..数码管实验实验现象单个数码管按顺序显示0-9与 A-F。

单片机实验报告 附含说明书

单片机实验报告  附含说明书

第一章 DICE-5208K开发型单片机综合实验仪概述一、系统简介DICE-5208K型单片机实验系统由DICE-5208K开发型单片机综合实验箱、DICE-3000型仿真器、扩展卡和DICE-51仿真开发系统软件等组成。

是《MCS-51单片机原理与接口》、《单片机控制技术》、《C8051Fxxx高速SOC单片机原理及应用》、《EDA》、《VHDL硬件描述语言》、《CPLD/FPGA应用基础》等课程教学的配套实验设备。

新增加了几乎所有最实用、新颖的接口电路(如1 WIRE /I2C/SPI总线等)和通讯类接口实验(如USB2.0通讯/TCP/IP网络通讯/CAN总线/红外线收发等)。

可进行MCS-51、C8051F嵌入式单片机、CPLD/FPGA等课程的开放式实验教学。

二、主要特点1.该实验系统配置DICE-3000型高性能MCS-51硬件仿真器,64K数据空间,64K程序空间全部开放,不占用CPU资源,采用双CPU模式,仿真CPU和用户CPU独立运行,上位仿真软件支持汇编、C语言、PL/M语言。

可运行于WIN98/2000/NT/XP操作系统平台。

2.实验系统带有ISP在线下载电路,学生在完成实验后可脱离仿真机和PC机独立运行学生自行设计的单片机系统。

(可在线编程AT89S51/52/53系列单片机)。

3.该实验系统可扩展C8051F020嵌入式实验开发模块, 并配有DICE-EC5型USB高速通讯仿真器,通过4脚的JTAG接口可以进行非侵入式、全速的在线系统调试、仿真;集成开发环境支持Silicon Labs IDE和KEIL C软件。

4.该实验系统可扩展CPLD/FPGA模块,并配有相应的并口下载电路,轻松变成一台EDA实验开发平台。

5.该实验系统可扩展“数控式电子演示装置”,该装置是本公司的专利产品,结合上位演示软件和USB接口,可为该实验系统扩展多达十五个生动、形象、复杂的实验,其中大部分是闭环实验,实验践性非常强。

单片机实验报告(相当不错,有具体实验结果分析哦)

单片机实验报告(相当不错,有具体实验结果分析哦)

学生姓名:学号:专业班级:实验类型:□ 验证□ 综合□ 设计□ 创新实验日期:实验成绩:实验一 I/O 口输入、输出实验地点:基础实验大楼A311一、实验目的掌握单片机P1口、P3口的使用方法。

二、实验内容以P1 口为输出口,接八位逻辑电平显示,LED 显示跑马灯效果。

以P3 口为输入口,接八位逻辑电平输出,用来控制跑马灯的方向。

三、实验要求根据实验内容编写一个程序,并在实验仪上调试和验证。

四、实验说明和电路原理图P1口是准双向口,它作为输出口时与一般的双向口使用方法相同。

由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。

因为内部上拉电阻阻值是20K~40K,故不会对外部输入产生影响。

若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。

本实验需要用到CPU模块(F3区)和八位逻辑电平输出模块(E4区)和八位逻辑电平显示模块(B5区)。

2学生姓名:学号:专业班级:实验类型:□ 验证□ 综合□ 设计□ 创新实验日期:实验成绩:五、实验步骤1)系统各跳线器处在初始设置状态。

用导线连接八位逻辑电平输出模块的K0 到CPU 模块的RXD(P3.0 口);用8 位数据线连接八位逻辑电平显示模块的JD4B 到CPU 模块的JD8(P1 口)。

2)启动PC 机,打开THGMW-51 软件,输入源程序,并编译源程序。

编译无误后,下载程序运行。

3)观察发光二极管显示跑马灯效果,拨动K0 可改变跑马灯的方向。

六、实验参考程序本实验参考程序:;//******************************************************************;文件名: Port for MCU51;功能: I/O口输入、输出实验;接线: 用导线连接八位逻辑电平输出模块的K0到CPU模块的RXD(P3.0口);;用8位数据线连接八位逻辑电平显示模块的JD2B到CPU模块的JD8(P1口)。

单片机实训工作报告【三篇】

单片机实训工作报告【三篇】

【导语】在单⽚机实训教学过程中采⽤教师引导,学⽣主导的教学⽅式,让学⽣掌握技巧,⿎励学⽣独⽴思考。

以下是⽆忧考整理的单⽚机实训⼯作报告,仅供参考! 篇⼀ 1.课程设计⽬的 1)巩固单⽚机基础知识,串联知识点。

2)学会绘制PCB板,学会⼿⼯制板的⼀般⽅法。

3)使⽤Protel等EDA⼯具进⾏单⽚机硬件系统设计的能⼒。

4)基于KeilIDE开发单⽚机应⽤程序的能⼒。

5)写技术报告和编制技术资料的能⼒。

6)独⽴⼯作能⼒和创造⼒。

7)综合运⽤专业及基础知识,解决实际⼯程技术问题的能⼒。

2.课程设计题⽬描述和要求 旋转电⼦时钟的设计与制作 实现的功能要求:(1)实现单⽚机最⼩系统;(2)四只LED数码管显⽰当前时分;(3)每隔⼀秒钟周边的60只LED发光管旋转⼀格,装饰⽤的LED每隔⼀秒旋转⼀次;(4)实现整点报时;(5)实现按键调整;(6)停(掉)电保护,年计时误差⼩于30秒;(7)其他功能。

3.课程设计报告内容 3.1⽅案论证 3.1.1单⽚机定时器做电⼦时钟 优点:考虑到单⽚机货源充⾜、价格低廉,可软硬件结合使⽤,能够⽅便的实现系统的多功能性,故采⽤单⽚机作为本设计的硬件基础。

故其优点是外围电路简单,只需要⼀个单⽚机最⼩系统,和⼀个显⽰模块。

缺点:定时不是很准确,计时误差较⼤,并且程序的编写较繁琐。

3.1.2数字电路做电⼦时钟 优点:具有⾛时准确、显⽰直观、⽆机械传动装置。

与传统的机械钟先⽐,电⼦钟具有更优异的优点。

由于电⼦钟采⽤数字集成电路的发展和采⽤了先进的⽯英技术,使电⼦钟具有⾛时准确、性能稳定、携带⽅便等优点,电⼦钟⽤于定时⾃动报警、按时⾃动打铃、时间程序⾃动控制、定时⼴播及⾃动控制等各个领域。

缺点:因为电⼦钟毕竟是电⼦产品,电⼦产品都有辐射,不过电⼦钟危害极低,对⼈体够不成任何危害,不象⼿机的辐射那么⼤。

应⽤:⽬前,在国内,电⼦钟因数码管数字显⽰效⽤直接有效,所以⼤多运⽤在城市的主要营业场所,以及车站、码头等公共场所。

单片机实验报告

单片机实验报告

一、实验目的1. 熟悉单片机的硬件组成和基本工作原理。

2. 掌握单片机最小系统的搭建方法。

3. 学习使用单片机编程软件进行程序编写和调试。

4. 通过实际操作,加深对单片机应用的理解。

二、实验环境1. 实验设备:MCS-51单片机实验板、电源模块、面包板、连接线、LED灯、蜂鸣器、按键等。

2. 软件环境:Keil uVision5、Proteus仿真软件。

三、实验内容1. 点亮LED灯(1)实验目的:掌握单片机I/O口的使用,实现LED灯的点亮。

(2)实验步骤:① 将LED灯的阳极连接到单片机的P1.0口,阴极连接到GND。

② 在Keil uVision5中新建工程,编写程序如下:```cvoid main() {while (1) {P1 = 0xFF; // 点亮LED灯delay(500000); // 延时P1 = 0x00; // 熄灭LED灯delay(500000); // 延时}}③ 将程序编译并下载到单片机中,观察LED灯的点亮效果。

2. 蜂鸣器控制(1)实验目的:掌握单片机I/O口的使用,实现蜂鸣器的控制。

(2)实验步骤:① 将蜂鸣器的正极连接到单片机的P1.1口,负极连接到GND。

② 在Keil uVision5中编写程序如下:```cvoid main() {while (1) {P1 = 0x02; // 使能蜂鸣器delay(100000); // 延时P1 = 0x00; // 禁止蜂鸣器delay(100000); // 延时}}```③ 将程序编译并下载到单片机中,观察蜂鸣器的鸣叫效果。

3. 按键扫描(1)实验目的:掌握单片机I/O口的使用,实现按键的扫描和识别。

(2)实验步骤:① 将两个按键分别连接到单片机的P1.2和P1.3口。

② 在Keil uVision5中编写程序如下:void main() {while (1) {if (P1 & 0x04) { // 检测按键1是否按下// 执行按键1按下后的操作}if (P1 & 0x08) { // 检测按键2是否按下// 执行按键2按下后的操作}}}```③ 将程序编译并下载到单片机中,观察按键的扫描和识别效果。

单片机实验报告书

单片机实验报告书

软件实验实验一拆字程序实验一、实验目的:掌握汇编语言设计方法。

二、实验内容:把8000H地址上的内容拆开,高位送8001H地址的低位,低位送8002H地址的低位,8001H、8002H地址的高位清零.本程序通常在把数据送显示缓冲区时使用。

三、实验器材:计算机 1台四、实验步骤:1、按流程图编写程序,以下是通过计算机交叉汇编得到的.LST文件清单,供参考。

2、文件编译连接、装载,用鼠标点击[项目/重建所有目标文件],系统自动进行编译,并弹出信息窗口,若有错误则重新修改再编译;若无错误,点击[调试/启动/停止调试]后进入调试状态。

3、设置观察窗口:(1)用鼠标点击[视图/存储器窗口],在地址栏中输入[0X8000];(2)在8000H中写入数据(任意);(3)单步执行观察寄存器和8000H—8002H的变化。

五、程序框图:七、实验程序(51asm\A8051.ASM);把指定字节的高低位拆开分别存放,多用于显示子程序ORG 0000HMOV DPTR,#8000H ;指定的字节MOVX A,@DPTRMOV B,A ;暂存SWAP A ;交换ANL A,#0FH ;屏敝高位INC DPTRMOVX @DPTR,AINC DPTRMOV A,BANL A,#0FH ;指定字节的内容屏敝高位MOVX @DPTR,ALOOP: SJMP LOOPEND实验二拼字程序实验一、实验目的:1、进一步掌握汇编语言设计;2、熟悉软件调试方法。

二、实验内容:把8000H、8001H两个字节的低位分别送入8002H的高位和低位。

本程序一般用于把显示缓冲区数据取出拼装成一个字节。

三、实验器材:计算机 1台四、实验步骤:1、编写程序并编译成机器代码。

2、用断点或单步方式运行程序,检查8000H-8002H,A,B中內容变化情况。

查看内部RAM、外部RAM、断点运行方式、单步操作等请参阅有关章节。

3、打开AP6264.asm程序(1)文件、编译、连接、装载:点击[项目/重建所有目标文件],系统进行自动编译,并弹出信息窗口,点击[调试/启动/停止调试]进入调试状态。

单片机实训实验报告

单片机实训实验报告

一、实验名称单片机原理及应用实验二、实验目的1. 熟悉单片机的基本结构和原理,了解单片机在电子系统中的应用。

2. 掌握单片机编程语言C的基本语法和编程技巧。

3. 学会使用单片机进行简单控制,实现LED流水灯、数码管显示等基本功能。

4. 提高动手实践能力,培养团队合作精神。

三、实验仪器与设备1. 单片机实验箱:包括单片机、电源、按键、LED灯、数码管等。

2. 电脑:用于编程和仿真。

3. 编程软件:Keil uVision5或IAR EWARM等。

四、实验原理单片机是一种集成度高、功能强大的微控制器,具有运算速度快、功耗低、体积小等优点。

本实验以51单片机为例,介绍其基本原理和编程方法。

51单片机主要由以下几个部分组成:1. 中央处理器(CPU):负责执行指令,控制整个单片机系统。

2. 存储器:包括程序存储器(ROM)和数据存储器(RAM),用于存储程序和数据。

3. 输入/输出接口:用于与外部设备进行数据交换。

4. 定时器/计数器:用于实现定时和计数功能。

5. 中断系统:用于处理中断事件。

本实验主要涉及以下几个方面:1. 单片机基本结构和工作原理。

2. 单片机编程语言C的基本语法和编程技巧。

3. 单片机I/O口的使用和驱动能力。

4. 定时器/计数器的使用和编程。

5. 中断系统的使用和编程。

五、实验内容1. 实验一:LED流水灯(1)实验目的:掌握单片机I/O口的使用,实现LED流水灯效果。

(2)实验原理:通过单片机I/O口输出高低电平,控制LED灯的亮灭,实现流水灯效果。

(3)实验步骤:① 连接实验箱电路,将LED灯连接到单片机的P1口。

② 编写程序,设置P1口为输出模式,通过循环改变P1口输出电平,实现LED流水灯效果。

③在电脑上编译、下载程序,观察实验效果。

2. 实验二:数码管显示(1)实验目的:掌握单片机I/O口的使用,实现数码管显示功能。

(2)实验原理:通过单片机I/O口输出高低电平,控制数码管显示数字。

单片机实训报告范本精选5篇

单片机实训报告范本精选5篇

单片机实训报告精选5篇Record the situation and lessons learned, find out the existing problems andform future countermeasures.姓名:___________________单位:___________________时间:___________________编号:FS-DY-20685 单片机实训报告精选5篇单片机课程设计心得体会在学校学习期间我有幸的参加了学校的单片机学习小组,在小组里我了解了什么是单片机,单片机有哪些用途,利用单片机可以实现哪些功能来方便人们的生活如交通灯,时钟,还有手机中,电子玩具等等,它们里面都有单片机的存在来实现某种功能。

通过在单片机小组里的学习我简单总结了几点心得和体会:第一:万事开头难,要勇敢的迈出第一步,不要总找借口说没有学习过就总推脱。

凡事都有第一步可以先可简单的来,然后可以逐步的向深层次学习。

可以从建项目开始,然后可以找一个简单的小程序先把它敲进单片机内然他运行起来,感觉一下单片机的运行,让自己了解单片机整个运行。

第二:对于知识点,学过的要掌握牢固,对于没有学的和暂时用不到的先不用学习。

比如:小灯得点亮就没有用到中断可以先不用看。

这样可以避免知识过多记不住的麻烦。

对于程序这里的知识点不能只停留在理论层次上,一定要结合着程序进行学习这样才能掌握的很牢靠,当用到哪里的知识点不记得了可以去看书,对于用不到的可以不去看。

第三:程序不要只是看别人得,一定要自己写过才是自己的。

开始不懂可以参考别人的,看看每一句代表着什么意思,能够实现什么现象。

明白之后自己再重新写一遍,你会发现看别人的能懂到自己写的时候很困难。

当你自己能写出来的时候说明你真懂了。

第四:一定要学会程序调试的方法。

有时候把程序写完了然后运行时不能实现理想的现象。

这时有人就晕了不知该怎么办,然后就去问别人。

当别人找出问题出在哪里时就会恍然大悟。

单片机实训报告

单片机实训报告

单片机实训报告单片机实训报告「篇一」为了锻炼学生的动手能力及激发学生的创新能力,我们班于第十五周在单片机实验室行了单片机实训。

在实训过程中首先我们要明确实训目的:1、熟悉单片机应用系统的开发、研制过程。

2、能运用MCS-51单片机行简单的单片机应用系统的硬件设计。

3、能采用MCS-51单片机汇编语言行简单的单片机应用系统的软件设计。

4、掌握单片机应用系统的硬件、软件调试方法。

5、熟悉单片机仿真开发系统的作用,基本掌握运用单片机仿真开发系统行在线仿真、调试和目标程序固化的方法。

6、为今后从事单片机应用系统的开发、生产和维护工作奠定基础。

在实训的第一天我们经过指导老师,XX老师和xx老师详细的为我们讲解了实训指导书,让我们了解实训当中所学的内容与一些元器件和我们要实验的课题。

在实验中主要有三个课题。

第一是十字路口交通信号灯的设计与制作。

课题2、比赛用秒表的设计与制作。

课题3、模拟霓虹灯控制系统的设计与制作。

为了能让我们更好的掌握知识我们把全班31人分成10组,我们在小组里也分工合作,也可以培养我们同学之间的合作能力。

在此有做硬件的,有做软件的,这样能够更好的加强自己的动手操作能力。

第一个课题是我们必须做的,在做完的第一个的基础下才能选择第二个或底三个,第一个课题在同学们的认真操作下很快就完成了,几乎在第二天大部分小组都可以完成。

这也证明同学们是很认真的投入到实训当中和知识的牢固性。

在第三天,正是实训的高潮,每个同学都投入到这种氛围当中,在实训操作中把不懂的记下,然后问指导老师,在老师的细心指导及时的解决问题。

看到我们的不足之处。

理论与实践相结合是最好的效果。

时光飞逝,一转眼,一个周又尾声了,实训就这样过去了,但真正的实训还未开始,我将要继续努力,继续奋斗。

俗话说“好的开始是成功的一半”。

说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目。

其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。

单片机实验报告4

单片机实验报告4

单片机实验报告4第一篇:单片机实验报告4单片机实验报告(实验一)一、实验目的: 1.掌握stm8的时钟切换。

2.熟悉汇编语言的指令系统。

3.加深对stm8功能的理解,掌握去其使用方法。

二、实验仪器:stm8s105c6单片机、杜邦线、单片机开发试验仪、三、实验内容:1、步骤:1)2)3)按照正确的方法将单片机与电脑连接。

通过转接板将单片机与单片机试验仪连接,用一根杜邦线将PB0与一个LED连接起来创建工程文件,编写代码,编译运行,如果程序没有错误,就将程序下载到单片机里,观察LED的状态。

2、主程序(要有注释):intel;系统复位后,时钟为内部RC振荡器,16Mhz,8分频,实为2Mhz.;LD1闪烁10次ld a,#10;10次bset PB_DDR,#0 bset PB_CR1,#0 bres PB_CR2,#0 ;初始化PB 口,将其定义为推挽输出next1 bres PB_ODR,#0 call delay bset PB_ODR,#0 call delay dec a jrne next1;修改时钟为外部16Mhz时钟.;LD1闪烁10次mov CLK_ECKR,#01h;允许外部高速振荡器工作 wait_hse_ready ld a,CLK_ECKR and a,#02h jreq wait_hse_ready;等待外部高速振荡器准备好bset CLK_CSSR,#0;CSEEN<-1,时钟安全系统使能mov CLK_SWCR,#02h;SWEN <-1mov CLK_SWR,#0b4h;选择芯片外部的高速振荡器为主时钟wait_clk_switch ld a,CLK_SWCR and a,#08h jreq wait_clk_switch;等待切换成功next2 bres PD_ODR,#0 call delay bset PD_ODR,#0 call delay dec a jrne next2jra $;;定义一个延时函数 delaypush ccldw y,#10 loop1 ldw x,#0ffffh loop decw xjrne loopdecw yjrne loop1pop ccret3、注意事项:1)2)注意线路的连接是否正确。

单片机实验报告

单片机实验报告

实验1 二进制到BCD转换一、实验目的学习星研Star16L仿真器系统的基本操作,熟悉EL-Ⅱ型通用接口板实验电路,掌握简单的数值转换算法。

二、实验仪器和设备PC机、星研Star16L仿真器系统+仿真头PODPH51(DIP)、EL-Ⅱ型通用接口板实验电路。

三、实验内容1)将给定的一个单字节二进制数(存放在R2中), 转换成非压缩的二—十进制(BCD)码, 并存放到R3R4R5中。

2)(选作)将给定的一个双字节二进制数(存放在R2R3中), 转换成压缩的二—十进制(BCD)码, 并存放到R4R5R6中。

四、实验方法1.将星研仿真器与微机和目标板相互连接构成完整的硬件仿真系统1)仿真器与仿真头的硬件连接:STAR16L仿真器与仿真头PODPH51(DIP)用两根40芯扁平电缆连接, 注意电缆插头的方向。

参见下图。

仿真头PODPH512)仿真头与EL-Ⅱ型通用接口板的硬件连接: 将EL-Ⅱ型通用接口板的8051CPU芯片拔下, 将仿真头PODPH51插入该CPU插座(40脚DIP),注意芯片的上下方向8051CPU3)仿真器与微机的连接: 通过USB接口将微机与仿真器相连, 打开仿真器电源。

仿真器与微机的第一次连接将自动引导安装程序, 在该驱动程序的安装过程中, 请勿执行其它应用程序。

2 、单片机仿真系统运行调试通过双击微机桌面的星研图标, 或通过开始菜单, 起动星研仿真系统程序, 通过输入程序, 编译通过后, 进入调试状态, 打相应的观察窗口, 观测CPU内部各个寄存器, 存储器以及外部存储器的状态, 通过单步或断点运行, 验证程序运行的正确性, 并修正错误。

五、参考程序清单及框图1)单字节二进制到非压缩BCD;NAME T1_1_BCDORG 0000H ;0100H不能用, 与星研软件冲突??BCD1: MOV A, R2 ;二进制数送AMOV B, #100 ;100作为除数送入BDIV ABMOV R3, A ;百位数送R3, 余数在B中MOV A, #10 ;分离十位和个位数XCH A, B ;余数送A, 除数10在B中DIV AB ;分离出十位在A, 个位在B中MOV R4, A ;十位送R3MOV A, BMOV R5, A ;个位送R4NOPLJMP BCD1END2)(选作)双字节二进制到压缩BCD;NAME T1_2_BCDORG 0000HBCD2: CLR AMOV R4, AMOV R5, AMOV R6, AMOV R7, #16LOOP: CLR CMOV A, R3RLC AMOV R3, AMOV A, R2RLC AMOV R2, AMOV A, R6ADDC A, R6DA AMOV R6, AMOV A, R5ADDC A, R5DA AMOV R5, AMOV A, R4ADDC A, R4DA AMOV R4, ADJNZ R7, LOOPLJMP BCD2END参考程序框图单字节二进制数转换成非压缩BCD码六、实验要求1.基本内容: 按照实验要求连接系统, 编制程序并运行, 说明如何利用仿真器验证程序的正确性。

单片机实验报告(完整版)

单片机实验报告(完整版)

单片机原理与应用实验报告学院(部):专业:学生姓名:班级:学号:最终评定成绩:实验一存储器读写一、实验目的:1、掌握寄存器、存储器读写等汇编指令;2、掌握编程软件编辑、编译、调试等基本操作。

二、实验仪器设备1.PC机,1台2.WAVE软件开发系统三、实验内容及步骤:1、将下面的汇编程序输入到W A VE集成开发软件中ORG 0000HSJMP STARTORG 0030HSTART:MOV R0,#07HMOV 70H,#08HMOV R1,#70HMOV DPTR,#2000HLOOP:MOVX A,@R1MOVX A,@DPTRINC R1INC ADJNZ R7,LOOPSJMP $END2、选择菜单“仿真器”→“仿真器设置”,按下图所示完成软件初始设置。

3、选择菜单“项目”下“编译”,编译通过后,选择“单步运行”,观察记录寄存器(R0、R1)、累加器(A)、程序状态字(PSW)、外部存储器(2000H单元)、I/O端口(P1)的数据变化。

四、源程序源程序:ORG 0000H ;定义起始地址SJMP STARTORG 0030HSTART:MOV R0,#07HMOV 70H,#08H ;给内部RAM的70H单元赋初值MOV R1,#70H ;使R1指向内部70H单元MOV DPTR,#2000H ;定义外部存储器开始单元LOOP:MOVX A,@R1 ;将R1所指向的70H的内容赋给AMOVX @DPTR,A;将A的内容赋给外部存储器单元INC R1 ;内部RAM地址加1INC DPTR ;外部存储器地址加1DJNZ R7,LOOP ;循环,直到RAM中70H~7FH;单元的内容全部相应赋给;外部2000H~2007H单元SJMP $END3、记录下程序单步运行时,寄存器(R0、R1)、累加器(A)、程序状态字(PSW)、外部存储器(2000H单元)、I/O端口(P1)的数据变化。

五、仿真效果图实验二I/O端口操作一、实验目的:1、掌握I/O端口读写等基本汇编指令;2、掌握单片机最小系统硬件电路设计及仿真软件PROTEUS仿真、调试等基本操作方法。

单片机实验报告(学期全部实验)

单片机实验报告(学期全部实验)

单片机程序设计实验报告姓名:学号:专业班级:第二节课:实验一:1357,2468位置的灯交替闪烁一实验要求1357,2468位置的灯交替闪烁。

二硬件连接图与结果三原理简述程序直接控制LED各位置的灯亮灭,时间间隔简单的用了一个延时的语句。

四程序#include<reg51.h>main (){int i;P0=0XAA; //1357四个灯亮for (i=0;i<=25000;i++); //延时程序P0=0X55; //2468四个灯亮for (i=0;i<=25000;i++); //延时程序}五所遇问题与解决方式程序比较简单,没有遇到问题。

实验二:流水灯一实验要求流水灯,一个接一个的灯亮,亮到最后一个后,全部的灯亮,然后重头开始。

二硬件连接图与结果三原理简述程序定义第一个位置的灯亮,通过一个时间间隔,运用一个循环移位程序转移到下一个灯,移位7次后全部的灯亮,最后定义整个循环。

时间间隔简单的用了一个延时的语句。

因为移位时是直接补0,发送低电平不亮,所以直接移位达到要求。

四程序//流水灯#include<reg51.h>main (){int i,j;while(1){P0=0X01; //第1个灯亮for (i=0;i<=30000;i++); //延时程序for(j=0;j<=7;j++) //移位循环程序{P0=P0<<1; //移位for (i=0;i<=30000;i++); //延时程序}P0=0xff; //全亮for (i=0;i<=30000;i++); //延时程序}}五所遇问题与解决方式程序比较简单,没有遇到问题。

实验三:跑马灯一实验要求一个接一个的灯亮,前面亮过的等依旧亮,直到最后一个灯,最后重新开始,循环。

二硬件连接图与结果三原理简述程序定义第一个位置的灯亮,通过一个时间间隔,运用一个循环移位程序转移到下一个灯,移位7次后全部的灯亮,最后定义整个循环。

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

软件实验实验一拆字程序实验一、实验目的:掌握汇编语言设计方法。

二、实验内容:把8000H地址上的内容拆开,高位送8001H地址的低位,低位送8002H地址的低位,8001H、8002H地址的高位清零.本程序通常在把数据送显示缓冲区时使用。

三、实验器材:计算机 1台四、实验步骤:1、按流程图编写程序,以下是通过计算机交叉汇编得到的.LST文件清单,供参考。

2、文件编译连接、装载,用鼠标点击[项目/重建所有目标文件],系统自动进行编译,并弹出信息窗口,若有错误则重新修改再编译;若无错误,点击[调试/启动/停止调试]后进入调试状态。

3、设置观察窗口:(1)用鼠标点击[视图/存储器窗口],在地址栏中输入[0X8000];(2)在8000H中写入数据(任意);(3)单步执行观察寄存器和8000H—8002H的变化。

五、程序框图:七、实验程序(51asm\A8051.ASM);把指定字节的高低位拆开分别存放,多用于显示子程序ORG 0000HMOV DPTR,#8000H ;指定的字节MOVX A,@DPTRMOV B,A ;暂存SWAP A ;交换ANL A,#0FH ;屏敝高位INC DPTRMOVX @DPTR,AINC DPTRMOV A,BANL A,#0FH ;指定字节的内容屏敝高位MOVX @DPTR,ALOOP: SJMP LOOPEND实验二拼字程序实验一、实验目的:1、进一步掌握汇编语言设计;2、熟悉软件调试方法。

二、实验内容:把8000H、8001H两个字节的低位分别送入8002H的高位和低位。

本程序一般用于把显示缓冲区数据取出拼装成一个字节。

三、实验器材:计算机 1台四、实验步骤:1、编写程序并编译成机器代码。

2、用断点或单步方式运行程序,检查8000H-8002H,A,B中內容变化情况。

查看内部RAM、外部RAM、断点运行方式、单步操作等请参阅有关章节。

3、打开AP6264.asm程序(1)文件、编译、连接、装载:点击[项目/重建所有目标文件],系统进行自动编译,并弹出信息窗口,点击[调试/启动/停止调试]进入调试状态。

(2)用鼠标点击[视图/存储器窗口],在地址栏中输入[0X8000],将地址定位于8000H。

(3)在8000H中写入任意数据,单步执行观察寄存器和数据存储区的变化。

五、程序框图:六、思考问题:修改8000H、8001H内容重复上述实验。

七、实验程序:(51asm\Ap6264.ASM);把两字节的低位合拼成一个字节,多用于显示子程序ORG 0000hMOV DPTR,#8000HMOVX A,@DPTRANL A,#0FH ;屏敝高位SWAP AMOV B,A ;保存INC DPTRMOVX A,@DPTRANL A,#0FHORL A,B ;合拼INC DPTRMOVX @DPTR,A ;送8002H存放LOOP: SJMP LOOPEND硬件基础性实验实验一八段数码管显示实验一、实验目的:1、了解数码管动态显示的原理。

2、了解74LS164扩展端口的方法。

二、实验要求:利用实验仪提供的显示电路,动态显示一行数据。

三、实验器材:1、超想-3000TB综合实验仪 1 台2、KEIL仿真器 1 台3、计算机 1 台四、实验说明:1、本实验仪提供了8段码数码管LED显示电路,学生只要按地址输出相应数据,就可以实现对显示器的控制。

显示共有6位,采用动态方式显示。

8段数码管是由8155的PB0、PB1经74LS164“串转并”后输出得到。

6位位码由8155的PA0口输出,经uA2003反向驱动后,选择相应显示位。

74LS164是串行输入并行输出转换电路,串行输入的数据位由8155的PB0控制,时钟位由8155的PB1控制输出。

写程序时,只要向数据位地址输出数据,然后向时钟位地址输出一高一低两个电平就可以将数据位移到74LS164中,向显示位选通地址输出高电平就可以点亮相应的显示位。

本实验仪中数据位输出地址为0e102H,时钟位输出地址为0e102H,位选通输出地址为 0e101H。

本实验涉及到了2五、程序框图:六、实验步骤:1、将KEIL 仿真器上40芯排线一端和实验箱上51CPU 板上的40芯排针连接起来,将仿真器连接的USB 或串口线与PC 机对应的USB 或串口连接起来,打开实验箱电源。

2、进入KEIL 软件界面,点击项目/打开项目在C:\KEIL\UV2\3000TB51配套实验例程中选择实验一,内有ASM 和C51两种程序,进入ASM 文件夹打开LED 项目文件进入如图所示界面点击“调试/启动/停止调试”,进入调试界面,点击“调试/运行”可看到8段数码管交替显示0—F七、实验程序:OUTBIT equ 0e101h ; 位控制口是是返回否开始 初始化显示参数 关所有位显示取显示数据 数据移位输出到164输出时钟脉冲到164 8段码完成输出位选通信号延时位选通信号移位指向下一个显示数据6位完成否CLK164 equ 0e102h ; 段控制口(接164时钟位)DAT164 equ 0e102h ; 段控制口(接164数据位)IN equ 0e103h ; 键盘读入口LEDBuf equ 60h ; 显示缓冲Num equ 70h ; 显示的数据DelayT equ 75h ;org 0000hljmp StartLEDMAP: ; 八段管显示码db 3fh, 06h, 5bh, 4fh, 66h, 6dh, 7dh, 07h db 7fh, 6fh, 77h, 7ch, 39h, 5eh, 79h, 71h Delay: ; 延时子程序mov r7, #0DelayLoop:djnz r7, DelayLoopdjnz r6, DelayLoopretDisplayLED:mov r0, #LEDBufmov r1, #6 ; 共6个八段管mov r2, #00100000b ; 从左边开始显示Loop:mov dptr, #OUTBITmov a, #00hmovx @dptr, a ; 关所有八段管mov a, @r0mov B, #8 ; 送164DLP:rlc amov r3, amov acc.0, cANL A, #0FDHmov dptr, #DAT164movx @dptr, amov dptr, #CLK164orl a,#02hmovx @dptr, aanl a,#0fDhmovx @dptr, amov a, r3djnz B, DLPmov dptr, #OUTBITmov a, r2movx @dptr, a ; 显示一位八段管mov r6, #1call Delaymov a, r2 ; 显示下一位rr amov r2, ainc r0djnz r1, Loopmov dptr, #OUTBITmov a, #0movx @dptr, a ; 关所有八段管retStart: mov dptr,#0e100hmov a,#03hmovx @dptr,amov sp, #40hmov Num, #0MLoop:inc Nummov a, Nummov b, amov r0, #LEDBufFillBuf:mov a, banl a, #0fhmov dptr, #LEDMapmovc a, @a+dptr ; 数字转换成显示码mov @r0,a ; 显示在码填入显示缓冲inc r0inc bcjne r0, #LEDBuf+6, FillBufmov DelayT,#30DispAgain:call DisplayLED ; 显示djnz DelayT,DispAgainljmp MLoopEND实验二键盘扫描显示实验一、实验目的:1、掌握键盘和显示器的接口方法和编程方法。

2、掌握键盘扫描和LED八段数码管显示器的工作原理。

二、实验要求:在上一个实验的基础上,利用实验仪提供的键盘扫描电路和显示电路,做一个扫描键盘和数码显示实验,把按键输入的键码在六位数码管上显示出来。

实验程序可分成三个模块。

1、键输入模块:扫描键盘、读取一次键盘并将键值存入键值缓冲单元。

2、显示模块:将显示单元的内容在显示器上动态显示。

3、主程序:调用键输入模块和显示模块。

三、实验器材:1、超想-3000TB 综合实验仪1台2、KEIL 仿真器 1台3、计算机1 台 四、实验电路:这里只是键盘草图,详细原理参见“8155键显模块”。

五、实验说明:本实验仪提供了一个6×4的小键盘,向列扫描码地址(0e101H)逐列输出低电平,然后从行码地址(0e103H)读回,如果有键按下,则相应行的值应为低,如果无键按下,由于上拉的作用,行码为高.这样就可以通过输出的列码和读取的行码来判断按下的是什么键。

在判断有键按下后,要有一定的延时,防止键盘抖动。

列扫描码还可以分时用作LED 的位选通信号。

六、实验框图:主程序框图读键输入子程序框图显示程序框图见上个实验列码(0e101H)行码 (0e103H) 显示缓冲区初始化LED 显示 读取键值键值转换为显示数据有键输入? 否是 否是否开始输出列扫描信号列扫描信号移位该列有键输入?读入行信号6列扫描完?初始化地址参数按照行列计算键值查表得键码等待键盘释放返回七、实验程序:;键盘扫描实验OUTBIT equ 0e101h ; 位控制口CLK164 equ 0e102h ; 段控制口(接164时钟位)DAT164 equ 0e102h ; 段控制口(接164数据位)IN equ 0e103h ; 键盘读入口ORG 0000HLJMP STAR;========================================================================== KEY1: MOV 13H,#06HMOV 12H,#20HKEY2: MOV A,12HCPL AMOV R7,AMOV DPTR,#0E101HMOV A,R7MOVX @DPTR,AMOV A,12HCLR CRRC AMOV 12H,AMOV DPTR,#0E103HMOVX A,@DPTRMOV R7,AMOV A,R7CPL AMOV R7,AMOV A,R7ANL A,#0FHMOV 14H,ADEC 13HMOV R7,13HMOV A,R7JZ KEYDISMOV A,14HJZ KEY2KEYDIS: MOV A,14HJZ TESTKEY5MOV A,13HADD A,ACCADD A,ACCMOV 13H,AMOV A,14HJNB ACC.1,TESTKEYINC 13HSJMP TESTKEY2;;=================================================;键盘扫描TESTKEY: MOV A,14HJNB ACC.2,TESTKEY1INC 13HINC 13HSJMP TESTKEY2TESTKEY1: MOV A,14HJNB ACC.3,TESTKEY2MOV A,#03HADD A,13HMOV 13H,ATESTKEY2: MOV DPTR,#0E101HCLR AMOVX @DPTR,ATESTKEY3: MOV R7,#0AHLCALL MLOOPLCALL MLOOP4MOV A,R7JNZ TESTKEY3MOV R7,13HMOV A,R7MOV DPTR,#0134HMOVC A,@A+DPTRMOV R7,ARET;========================================================================== TESTKEY4: DB 22H ;";========================================================================== TESTKEY5: MOV R7,#0FFHRET;========================================================================== GETKEY: MOV 10H,#20HMOV 0EH,#00HGETKEY1: MOV A,0EHCLR CSUBB A,#06HJNC GOON2MOV DPTR,#0E101HCLR AMOVX @DPTR,AMOV R7,0EHMOV A,#08HADD A,R7MOV R0,AMOV A,@R0MOV R7,AMOV 11H,R7MOV 0FH,#00HGETKEY2: MOV A,0FHJNC GOON1MOV A,11HJNB ACC.7,KLOOPMOV DPTR,#0E102HMOV A,#01HMOVX @DPTR,ASJMP KLOOP1;;========================================== KLOOP: MOV DPTR,#0E102HCLR AMOVX @DPTR,AKLOOP1: MOV DPTR,#0E102HMOVX A,@DPTRMOV R7,AMOV A,R7ORL A,#02HMOV R7,AMOV A,R7MOVX @DPTR,AMOV DPTR,#0E102HMOVX A,@DPTRMOV R7,AMOV A,R7ANL A,#0FDHMOV R7,AMOV A,R7MOVX @DPTR,AMOV A,11HADD A,ACCMOV 11H,AINC 0FHSJMP GETKEY2GOON1: MOV DPTR,#0E101HMOV A,10HMOVX @DPTR,AMOV R7,#01HLCALL MLOOPMOV A,10HCLR CRRC AMOV 10H,AINC 0EHSJMP GETKEY1GOON2: RET;========================================================================== WAIT: MOV DPTR,#0E100HMOV 08H,#0FFHMOV 09H,#0FFHMOV 0AH,#0FFHMOV 0BH,#0FFHMOV 0CH,#00HMOV 0DH,#00HWAIT1: LCALL GETKEYLCALL MLOOP4MOV A,R7JZ WAIT1LCALL KEY1MOV R6,#00HMOV R6,#00HMOV A,R7ANL A,#0FHMOV R7,AMOV A,#24HADD A,R7MOV DPL,AMOV A,#01HADDC A,R6MOV DPH,ACLR AMOVC A,@A+DPTRMOV R7,AMOV 0DH,R7SJMP WAIT1RET;========================================================================== TAB:Q0124: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH, 7DH, 07H ;?.[Ofm}.Q012C: DB 7FH, 6FH, 77H, 7CH, 39H, 5EH, 79H, 71H ;•ow|9^yqQ0134: DB 00H, 01H, 04H, 07H, 0FH, 02H, 05H, 08H ;........Q013C: DB 0EH, 03H, 06H, 09H, 0DH, 0CH, 0BH, 0AH ;........Q0144: DB 10H, 11H, 12H, 13H, 14H, 15H, 16H ;.......;========================================================================== MLOOP: MOV 15H,R7MLOOP1: MOV R7,15HDEC 15HMOV A,R7JZ MLOOP3MOV 16H,#64HMLOOP2: MOV A,16HJZ MLOOP1DEC 16HSJMP MLOOP2MLOOP3: RET;==========================================================================MLOOP4: MOV DPTR,#0E101HCLR AMOVX @DPTR,AMOV DPTR,#0E103HMOVX A,@DPTRMOV R7,AMOV A,R7CPL AMOV R7,AMOV A,R7ANL A,#0FHMOV R7,ARET;==========================================================================STAR: MOV R0,#7FHCLR ASTAR1: MOV @R0,ADJNZ R0,STAR1MOV SP,#16HLJMP WAITEND;==================================================================实验三步进电机控制实验一、实验目的:了解步进电机工作原理,掌握用单片机的步进电机控制系统的硬件设计方法,熟悉步进电机驱动程序的设计与调试,提高单片机应用系统设计和调试水平。

相关文档
最新文档