51单片机实训报告完整版
- 格式:docx
- 大小:269.84 KB
- 文档页数:14
关于单片机实训报告万能【六篇】【篇1】单片机实训报告万能通过今次单片机实训,使我对单片机的认识有了更深刻的理解。
系统以51单片机为核心部件,利用汇编软件编程,通过键盘控制和数码管显示实现了基本时钟显示功能、时间调节功能,能实现本设计题目的基本要求和发挥部分。
由于时间有限和本身知识水平的限制,本系统还存在一些不够完善的地方,要作为实际应用还有一些具体细节问题需要解决。
例如:不能实现只用两个按键来控制时钟时间,还不能实现闹钟等扩展功能。
踉踉跄跄地忙碌了两周,我的时钟程序终于编译成功。
当看着自己的程序,自己成天相伴的系统能够健康的运行,真是莫大的幸福和欣慰。
我相信其中的酸甜苦辣最终都会化为甜美的甘泉。
但在这次实训中同时使我对汇编语言有了更深的认识。
当我第一次接触汇编语言就感觉很难,特别是今次实训要用到汇编语言,尽管困难重重,可我们还是克服了。
这次的实训使培养了我们严肃认真的做事作风,增强了我们之间的团队合作能力,使我们认识到了团队合作精神的重要性。
这次实训的经历也会使我终身受益,我感受到这次实训是要真真正正用心去做的一件事情,是真正的自己学习的过程和研究的过程,没有学习就不可能有研究的能力,没有自己的研究,就不会有所突破。
希望这次的经历能让我在以后学习中激励我继续进步。
【篇2】单片机实训报告万能通过这一个学期的单片机学习,我收获了很多关于单片机的知识,并且这些知识和日常的生活息息相关。
了解了一些简单程序的录入,LED显示器、键盘、和显示器的应用和原理。
LED显示器:LED显示器是由发光二管组成显示字段的器件。
通常的8段LED显示器是由8个发光二极管组成,LED显示器分共阳极和共阴极两种。
有段选码和和位选码。
当LED显示器每段的平均电流位5MA时,就有较满意的亮度,一般选择断码5-10MA 电流;位线的电流应选择40-80MA。
LED显示器的显示方式有动态和静态两种。
7289A芯片是具有SPI串行接口功能的显示键盘控制芯片,它可同时取得8位共阴极数码管和64个键的键盘矩阵。
实验一:开发环境的搭建一、(1)、keil的安装与破解点击Keil安装包,一键傻瓜式操作,安装完成后以管理员身份打开Keil,在File里选择license management 把CID复制到注册机里的CID栏,注册机里的Target选择C51,然后点击Generate,将生成的激活码复制到license management里的LIC栏,并点击Add LIC,即完成破解。
(2)、CH340驱动安装(3)、普中烧录软件的使用波特率选择9600,速度选择低速,文件路径选择HEX文件的路径(4)、keil的使用新建工程并保存,在CPU 里面选择STC90C52RC ,再新建C 文件,注意保存时手动加上.c 后缀,再在Source Group 1 右击选择 Add Files to Group'Source Group 1'找到刚才新建的C 文件,然后找到图标并点击,再Target 里将晶振频率改为12MHz,将Output 里生成HEX 文件的勾打上即可生成HEX 文件。
(5)、protues的安装与破解双击安装包开始安装,等进入到Labcenter Licence Manager1.6,也就是许可证管理页面,点击Browse For Key File,找到下载解压软件包中的LICENCE.lxk文件,并打开,再点击install,再点击“是”,继续傻瓜式操作。
破解时以管理员身份运行破解软件,目标文件里找到安装的路径,再点击升级,即可完成破解。
(6)、protues的使用双击蓝色ISIS图标即可打开Proteus,File里新建并保存,然后点击“P”即可选择自己所需元器件,输入AT89C52单片机,确定后在图纸中点击即可,双击单片机将对话框中的Program File 选择Keil生成的HEX文件,电路及程序都完成后,点击左下角即可开始仿真,点击停止仿真。
二、实验结论在实验一里学会了开发环境的搭建,学会并熟练了Keil u Vision4 和Proteus 7.8以及普中烧录软件的使用,基本实现了用Keil编写程序并且生成HEX文件,能够用Proteus 画基本仿真图并且成功实现仿真,在仿真过程中出现了win10电脑不能正常实现仿真的问题,在经过百度等多方面查找之后找到了如下解决办法:1、路径上不能有中文2、仿真时出现cannot open'C:User\?\AppData\Local\Temp\LISA5476.SDF'的错误时:右击我的电脑-属性-高级系统设置-环境变量,在“用户变量”栏里找到TEMP与TMP,分别双击,将变量值都改为%SystemRoot%\TEMP如果还不行将下面的“系统变量”栏里的TEMP与TMP同样修改方法,如果没有新建就行。
一、前言单片机作为一种微型的计算机系统,因其体积小、功耗低、功能强、成本低等特点,在工业控制、智能家居、通信等领域得到了广泛的应用。
为了提高学生的实践能力,培养创新精神和工程实践能力,我们进行了单片机实训。
本文将对本次实训进行总结,分析实训过程中遇到的问题及解决方法,并对实训成果进行展示。
二、实训目的1. 熟悉单片机的基本原理和组成,掌握单片机的开发环境。
2. 学习单片机编程,了解C语言在单片机中的应用。
3. 学会使用单片机外围电路,实现基本的功能。
4. 培养学生的动手能力、团队协作能力和创新精神。
三、实训内容1. 单片机硬件电路搭建在本次实训中,我们搭建了基于51单片机的最小系统,包括单片机、晶振、复位电路、电源电路等。
通过搭建电路,使学生了解单片机的硬件组成,为后续编程打下基础。
2. 单片机编程使用C语言对单片机进行编程,实现以下功能:(1)LED流水灯:通过控制LED灯的亮灭,实现流水灯效果。
(2)按键控制LED灯:通过按键控制LED灯的开关。
(3)数码管显示:将当前时间显示在数码管上。
3. 单片机外围电路应用(1)使用继电器控制外部设备:通过单片机控制继电器,实现外部设备的开关。
(2)使用蜂鸣器发出声音:通过单片机控制蜂鸣器,实现不同频率的声音。
四、实训过程及问题解决1. 电路搭建过程中,遇到电路连接错误、元器件损坏等问题。
通过查阅资料、请教老师,逐一解决了这些问题。
2. 编程过程中,遇到程序运行不稳定、功能实现不完善等问题。
通过分析程序逻辑、修改代码,使程序运行稳定,功能完善。
3. 在单片机外围电路应用过程中,遇到继电器控制不灵敏、蜂鸣器声音不稳定等问题。
通过调整电路参数、优化代码,使继电器控制灵敏,蜂鸣器声音稳定。
五、实训成果1. 完成了基于51单片机的最小系统搭建。
2. 编写并调试了LED流水灯、按键控制LED灯、数码管显示等程序。
3. 应用单片机外围电路,实现了继电器控制和蜂鸣器发声等功能。
“51单片机”精简开发板的组装及调试实训报告为期一周的单片机实习已经结束了。
通过此次实训,让我们掌握了单片机基本原理的基础、单片机的编程知识以及初步掌握单片机应用系统开发实用技术,了解“51”单片机精简开发板的焊接方法。
同时培养我们理论与实践相结合的能力,提高分析问题和解决问题的能力,增强学生独立工作能力;培养了我们团结合作、共同探讨、共同前进的精神与严谨的科学作风。
此次实训主要有以下几个方面:一、实训目的1.了解“51”精简开发板的工作原理及其结构。
2.了解复杂电子产品生产制造的全过程。
3.熟练掌握电子元器件的焊接方法及技巧,训练动手能力,培养工程实践概念。
4.能运用51单片机进行简单的单片机应用系统的硬件设计。
5.掌握单片机应用系统的硬件、软件调试方法二、实验原理流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的硬件组成的单个单片机。
它的电气性能指标:输入电压:DC4.5~6V,典型值为5V。
可用干电池组供电,也可用直流稳压电源供电。
如图所示:本流水灯实际上就是一个带有八个发光二极管的单片机最小应用系统,即为由发光二极管、晶振、复位、电源等电路和必要的硬件组成的单个单片机。
三、硬件组成1、晶振电路部分单片机系统正常工作的保证,如果振荡器不起振,系统将会不能工作;假如振荡器运行不规律,系统执行程序的时候就会出现时间上的误差,这在通信中会体现的很明显:电路将无法通信。
他是由一个晶振和两个瓷片电容组成的,x1和x2分别接单片机的x1和x2,晶振的瓷片电容是没有正负的,注意两个瓷片电容相连的那端一定要接地。
2、复位端、复位电路给单片机一个复位信号(一个一定时间的低电平)使程序从头开始执行;一般有两中复位方式:上电复位,在系统一上电时利用电容两端电压不能突变的原理给系统一个短时的低电平;手动复位,同过按钮接通低电平给系统复位,时如果手按着一直不放,系统将一直复位,不能正常。
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。
51单片机实验报告
实验目的:
本实验旨在让学生熟悉并掌握51单片机的基本知识和编程能力,进一步了解单片机的原理和应用。
实验内容:
本次实验主要包括以下几个内容:
1.熟悉51单片机的基本原理和结构;
2.学习51单片机的汇编语言编程;
3.使用51单片机进行简单的I/O控制;
4.学习串口通信的原理和编码。
实验步骤:
1. 配置开发环境:安装Keil C编译器和Proteus电路仿真软件;
2.学习汇编语言编程基础知识,包括寄存器的使用、指令的执行等;
3.编写第一个程序:实现将一个数字显示在数码管上;
4.学习I/O控制:通过按键来控制LED灯的亮灭;
5.学习串口通信:通过串口与计算机进行通信,实现数据的发送与接收。
实验结果:
在实验过程中,我成功编写了几个基本的程序,并在Proteus中进行
了仿真。
通过按键来控制LED灯的亮灭,也成功地使用串口进行了数据的
发送和接收。
通过实验,我更深入地理解了51单片机的工作原理和编程
方法。
实验总结:
通过本次实验,我对51单片机有了更深的理解,并掌握了一些基本
的编程技巧。
通过实际操作,我培养了自己的动手能力和问题解决能力。
作为一门基础课程,51单片机为我今后的学习打下了坚实的基础。
我相信,在今后的学习和实践中,我能够更加熟练地运用51单片机进行各种
应用和项目的设计。
该报告共计1200字。
参考资料:
[1]《单片机技术与应用》.吕春阳、吕立民、钱锋.电子工业出版社,2024年。
51单片机实训报告一、引言51单片机是一种常用的微控制器,具有体积小、功耗低、功能强大等优点,广泛应用于各种电子设备中。
本文将介绍本次实训的目标、实验步骤、实验结果以及实训中遇到的问题及解决方案。
二、实训目标本次实训的目标是通过51单片机的学习和实践,掌握单片机的基本原理和编程技巧。
具体来说,我们需要实现以下几个功能:1. 熟悉51单片机的硬件组成和工作原理;2. 学习使用Keil C编译器进行单片机程序的编写和调试;3. 掌握基本的输入输出控制方法,如LED灯的控制、数码管的显示等;4. 学习使用定时器、中断等功能模块,实现一些实际应用,如蜂鸣器的发声、电机的控制等。
三、实验步骤1. 硬件准备:将51单片机与外围电路进行连接,如连接LED灯、数码管、蜂鸣器等;2. 编写程序:使用Keil C编译器编写相应的程序,包括引入头文件、定义宏、声明变量、编写主函数等;3. 调试程序:将程序下载到51单片机中,通过单片机的调试功能进行程序的调试,排除可能存在的错误;4. 运行程序:将调试好的程序运行在51单片机上,观察实验结果是否符合预期。
四、实验结果在本次实训中,我们顺利完成了以下几个实验:1. LED灯闪烁:通过控制51单片机的输出口,使LED灯以一定频率进行闪烁;2. 数码管显示:通过控制51单片机的输出口,使数码管显示指定的数字或字符;3. 蜂鸣器发声:通过控制51单片机的输出口,产生一定频率的方波信号,使蜂鸣器发出相应的声音;4. 电机控制:通过控制51单片机的输出口,控制电机的转动方向和速度。
五、实训中遇到的问题及解决方案在实训过程中,我们遇到了一些问题,但通过团队的共同努力和老师的指导,最终都得到了解决。
下面列举了其中的几个问题及解决方案:1. 问题:LED灯无法闪烁;解决方案:检查LED灯的连接是否正确,确认是否存在接触不良或短路等问题。
2. 问题:数码管无法正常显示;解决方案:检查数码管的连接是否正确,确认是否存在引脚连接错误或接触不良等问题。
单片机实训工作报告(精选3篇)单片机实训篇1实训任务:做单一灯的左移右移,八个发光二极管l1-l8分别接在单片机的p1.0→p1.2→p1.3┅→p1.7→p1.6→┅→p1.0亮,重复循环3次。
然后左移2次,右移2次,闪烁2次(延时的时间0.2秒)。
一、实训目的和要求:(1)熟练掌握keilc51集成开发环境的使用方法(2)熟悉keilc51集成开发环境调试功能的使用和单片机仿真器、编程器、实验仪三合一综合开发平台的使用。
(3)利用单片机的p1口作io口,学会利用p1口作为输入和输出口。
(4)了解掌握单片机芯片的烧写方法与步骤。
(5)学会用单片机汇编语言编写程序,熟悉掌握常用指令的功能运用。
(6)掌握利用protel99se绘制电路原理图及pcb图。
(7)了解pcb板的制作腐蚀过程。
二、实训器材:pc机(一台)pcb板(一块)520ω电阻(八只)10k电阻(一只)led发光二极管(八只)25v10μf电容(一只)单片机ic座(一块)at89c51单片机芯片(一块)热转印机(一台)单片机仿真器、编程器、实验仪三合一综合开发平台(一台)三、实训步骤:(1)根据原理图(下图所示),用导线把单片机综合开发平台a2区的j61接口与d1区的j52接口相连。
(2)将流水灯程序编写完整并使用tkstudyice调试运行。
(3)使用导线把a2区j61接口的p1口7个口分别与j52接口的八个led相连。
(4)打开电源,将编写好的程序运用tkstudyice进行全速运行,看能否实现任务要求。
(5)观察运行结果,若能实现功能,则将正确编译过的hex文件通过easypro51编程器写入mcu片内存储器,然后将烧写的芯片a2区的圆孔ic座进行最终实验结果的演示。
(6)制板。
首先利用protel99se画好原理图,根据原理图绘制pcb 图,然后将绘制好的pcb布线图打印出来,经热转印机转印,将整个布线图印至pcb板上,最后将印有布线图的pcb板投入装有三氯化铁溶液的容器内进行腐蚀,待pcb板上布线图外的铜全部后,将其取出,清洗干净。
51单片机实验报告一、引言51单片机是一种广泛应用于嵌入式系统开发的微控制器芯片。
本实验旨在通过对51单片机的实验研究,加深对该芯片的理解和应用。
二、实验一:LED灯闪烁控制本实验通过编写程序,控制51单片机上的LED灯以特定的频率闪烁。
为了实现这个目标,我们首先需要了解51单片机的引脚布局,确定LED灯的连接方式。
然后,通过编写相应的汇编程序,控制引脚的电平变化,从而实现LED灯的闪烁。
三、实验二:数码管显示数码管是一种常见的输出设备,通过控制引脚的输出来显示特定的数字。
本实验中,我们通过编写程序,实现通过51单片机控制数码管的显示。
通过对数码管的驱动原理和编程的学习,我们可以灵活地控制数码管的显示内容和频率。
四、实验三:蜂鸣器发声蜂鸣器是一种常见的声音输出设备,通过控制引脚的输出来产生特定的声音。
本实验中,我们通过编写程序,实现通过51单片机控制蜂鸣器的发声。
通过学习蜂鸣器的驱动原理和编程,我们可以根据需要产生不同频率和节奏的声音。
五、实验四:温湿度检测温湿度检测是一种常见的环境监测需求。
本实验中,我们通过引入温湿度传感器,实现通过51单片机获取环境的温度和湿度信息。
通过编写程序和读取传感器的数据,我们可以实时监测环境的温湿度,并进行相应的控制和反馈。
六、实验五:红外遥控红外遥控是一种常见的无线通信方式,通过发送和接收红外信号来实现远程控制。
本实验中,我们通过引入红外发射和接收模块,实现通过51单片机进行红外遥控。
通过编写相应的程序,设置红外遥控的编码和解码方式,我们可以实现对外部设备的遥控操作。
七、实验六:定时器应用定时器是51单片机中的重要模块,它可以实现定时和计数等功能。
本实验中,我们通过学习定时器的工作原理和编程,实现通过51单片机进行定时和计数的应用。
通过编写相应的程序和设置定时器的参数,我们可以实现不同的定时和计数功能,满足各种需要。
八、实验七:串口通信串口通信是一种常见的数据通信方式,通过串口接口发送和接收数据。
单片机实训报告单片机实训报告「篇一」为了锻炼学生的动手能力及激发学生的创新能力,我们班于第十五周在单片机实验室行了单片机实训。
在实训过程中首先我们要明确实训目的:1、熟悉单片机应用系统的开发、研制过程。
2、能运用MCS-51单片机行简单的单片机应用系统的硬件设计。
3、能采用MCS-51单片机汇编语言行简单的单片机应用系统的软件设计。
4、掌握单片机应用系统的硬件、软件调试方法。
5、熟悉单片机仿真开发系统的作用,基本掌握运用单片机仿真开发系统行在线仿真、调试和目标程序固化的方法。
6、为今后从事单片机应用系统的开发、生产和维护工作奠定基础。
在实训的第一天我们经过指导老师,XX老师和xx老师详细的为我们讲解了实训指导书,让我们了解实训当中所学的内容与一些元器件和我们要实验的课题。
在实验中主要有三个课题。
第一是十字路口交通信号灯的设计与制作。
课题2、比赛用秒表的设计与制作。
课题3、模拟霓虹灯控制系统的设计与制作。
为了能让我们更好的掌握知识我们把全班31人分成10组,我们在小组里也分工合作,也可以培养我们同学之间的合作能力。
在此有做硬件的,有做软件的,这样能够更好的加强自己的动手操作能力。
第一个课题是我们必须做的,在做完的第一个的基础下才能选择第二个或底三个,第一个课题在同学们的认真操作下很快就完成了,几乎在第二天大部分小组都可以完成。
这也证明同学们是很认真的投入到实训当中和知识的牢固性。
在第三天,正是实训的高潮,每个同学都投入到这种氛围当中,在实训操作中把不懂的记下,然后问指导老师,在老师的细心指导及时的解决问题。
看到我们的不足之处。
理论与实践相结合是最好的效果。
时光飞逝,一转眼,一个周又尾声了,实训就这样过去了,但真正的实训还未开始,我将要继续努力,继续奋斗。
俗话说“好的开始是成功的一半”。
说起课程设计,我认为最重要的就是做好设计的预习,认真的研究老师给的题目,选一个自己有兴趣的题目。
其次,老师对实验的讲解要一丝不苟的去听去想,因为只有都明白了,做起设计就会事半功倍,如果没弄明白,就迷迷糊糊的去选题目做设计,到头来一点收获也没有。
一、实训目的本次单片机实践课实训旨在使学生掌握单片机的基本原理、硬件组成、软件编程和调试方法,提高学生的动手实践能力和理论联系实际的能力。
通过本次实训,使学生能够熟练运用单片机进行简单的应用系统设计和开发。
二、实训内容1. 硬件环境本次实训使用的硬件设备包括:51单片机开发板、数码管、LED灯、按键、晶振、电阻、电容等。
2. 软件环境本次实训使用的软件环境包括:Keil uVision5、Proteus。
三、实训过程1. 硬件电路设计(1)根据实训要求,设计一个简单的单片机应用系统,如流水灯、按键控制LED 灯等。
(2)使用Proteus软件绘制电路原理图,并进行仿真调试。
(3)根据电路原理图,在51单片机开发板上进行实际焊接。
2. 软件编程(1)在Keil uVision5中创建项目,并添加相应的头文件和库文件。
(2)编写C语言程序,实现所设计的单片机应用系统功能。
(3)对程序进行编译、链接,生成可执行文件。
3. 系统调试(1)将可执行文件烧写到51单片机中。
(2)连接数码管、LED灯、按键等硬件,进行实际测试。
(3)根据测试结果,对程序进行修改和优化。
四、实训结果1. 硬件电路(1)成功搭建了所设计的单片机应用系统电路。
(2)电路连接正确,元器件焊接无误。
2. 软件编程(1)成功编写了单片机应用系统程序。
(2)程序功能符合设计要求,运行稳定。
3. 系统调试(1)系统功能正常,按键控制LED灯、数码管显示等。
(2)系统运行稳定,无错误。
五、实训心得1. 通过本次实训,我深刻理解了单片机的基本原理和硬件组成。
2. 学会了使用Keil uVision5和Proteus进行软件编程和仿真调试。
3. 提高了动手实践能力和理论联系实际的能力。
4. 深刻认识到理论与实践相结合的重要性。
5. 在实训过程中,学会了与同学合作、共同探讨问题,培养了团队精神。
六、总结本次单片机实践课实训,使我对单片机有了更深入的了解,提高了自己的动手实践能力和理论联系实际的能力。
一、实习目的与要求学习51系列单片机的基本原理, 并能熟练运用其基本功能。
用单片机和DS1302时钟芯片做一个实时时钟, 用数码管显示年、月、日、星期、时、分、秒, 利用独立键盘对其进行时间和日历调整。
二、51系列单片机的管脚介绍VCC: 供电电压。
GND: 接地。
P0口: P0口为一个8位漏级开路双向I/O口, 每脚可吸收8TTL 门电流。
当P1口的管脚第一次写1时, 被定义为高阻输入。
P0能够用于外部程序数据存储器, 它可以被定义为数据/地址的第八位。
在FIASH编程时, P0 口作为原码输入口, 当FIASH进行校验时, P0输出原码, 此时P0外部必须被拉高。
P1口: P1口是一个内部提供上拉电阻的8位双向I/O口, P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后, 被内部上拉为高, 可用作输入, P1口被外部下拉为低电平时, 将输出电流, 这是由于内部上拉的缘故。
在FLASH编程和校验时, P1口作为第八位地址接收。
P2口: P2口为一个内部上拉电阻的8位双向I/O口, P2口缓冲器可接收, 输出4个TTL门电流, 当P2口被写“1”时, 其管脚被内部上拉电阻拉高, 且作为输入。
并因此作为输入时, P2口的管脚被外部拉低, 将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时, P2口输出地址的高八位。
在给出地址“1”时, 它利用内部上拉优势, 当对外部八位地址数据存储器进行读写时, P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口: P3口管脚是8个带内部上拉电阻的双向I/O口, 可接收输出4个TTL门电流。
当P3口写入“1”后, 它们被内部上拉为高电平, 并用作输入。
作为输入, 由于外部下拉为低电平, P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口, 如下表所示:口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。
一、实习目的五一假期,我有幸参加了单片机焊接实习。
通过本次实习,我希望能够掌握单片机的基本焊接技术,了解电路原理图,熟悉电子元器件,提高自己的动手能力和实践能力。
二、实习时间及地点实习时间:2021年5月1日至5月5日实习地点:XX大学电子实验室三、实习内容1. 理论学习在实习的第一天,我们学习了单片机的基本概念、工作原理以及电路原理图。
通过学习,我对单片机有了初步的了解,为后续的焊接实习打下了基础。
2. 元器件识别与准备在实习的第二天,我们学习了如何识别和区分各种电子元器件,包括电阻、电容、二极管、晶体管等。
同时,我们还学习了如何使用电子测试仪器测量元器件的参数。
3. 手工焊接技术在实习的第三天,我们学习了手工焊接的基本技巧,包括焊接工具的使用、焊接方法、焊接注意事项等。
在老师的指导下,我们亲自进行了焊接练习,掌握了基本的焊接技术。
4. 单片机电路板焊接在实习的第四天,我们开始进行单片机电路板的焊接。
首先,我们在电路板上按照原理图焊接元器件,然后进行电路调试。
在焊接过程中,我们遇到了一些问题,但在老师的帮助下,我们逐一解决了这些问题。
5. 电路调试与优化在实习的最后一天,我们对焊接好的电路板进行了调试。
通过调试,我们发现电路板存在一些问题,如信号不稳定、电路工作异常等。
在老师的指导下,我们对电路进行了优化,确保电路板能够正常工作。
四、实习心得1. 动手能力得到提高通过本次实习,我掌握了单片机的基本焊接技术,提高了自己的动手能力。
在实习过程中,我学会了如何识别元器件、如何使用焊接工具、如何进行电路调试等。
2. 理论与实践相结合本次实习让我深刻体会到理论与实践相结合的重要性。
在理论学习的基础上,通过实践操作,我对单片机有了更深入的了解。
3. 团队合作精神在实习过程中,我们团队成员相互协作,共同完成了电路板的焊接和调试。
这使我认识到团队合作精神在实践中的重要性。
4. 问题解决能力在实习过程中,我们遇到了许多问题,如焊接不良、电路调试困难等。
实验一数据传送实验实验内容:将8031内部RAM 40H—4FH单元置初值A0H—AFH, 然后将片内RAM 40H—4FH单元中的数据传送到片内RAM 50H—5FH单元。
将程序经模拟调试通过后, 运行程序, 检查相应的存储单元的内容。
源程序清单:ORG 0000HRESET: AJMP MAINORG 003FHMAIN: MOV R0, #40HMOV R2, #10HMOV A, #0A0HA1:MOV @R0, AINC R0INC ADJNZ R2, A1MOV R1,#40HMOV R0, #50HMOV R2, #10HA3: MOV A, @R1MOV @R0, AINC R0INC R1DJNZ R2, A3LJMP 0000H思考题:1.按照实验内容补全程序.2.CP.对8031内部RAM存储器有哪些寻址方式?直接寻址, 立即寻址, 寄存器寻址, 寄存器间接寻址。
3.执行程序后下列各单元的内容是什么?内部RAM 40H~4FH ___0A0H~0AFH______________________内部RAM 50H~5FH___0A0H~0AFH_______________________实验二多字节十进制加法实验实验内容:多字节十进制加法。
加数首地址由R0 指出, 被加数和结果的存储单元首地址由R1指出,字节数由R2 指出。
将程序经模拟调试通过后, 运行程序, 检查相应的存储单元的内容。
源程序清单: ORG 0000HRESET: AJMP MAINORG 0100HMAIN: MOV SP, #60HMOV R0, #31HMOV @R0, #22HDEC R0MOV @R0, #33HMOV R1, #21HMOV @R1, #44HDEC R1MOV @R1, #55HMOV R2, #02HACALL DACNHERE: AJMP HEREDACN: CLR CDAL: MOV A, @R0ADDC A, @R1DA AMOV @R1, AINC R0INC R1DJNZ R2, DALCLR AMOV ACC.0 , CRET思考题:1.按照实验内容补全程序。
C51单片机实训报告引言本次实训主要是针对C51单片机进行的,C51单片机是一种常用的微控制器,广泛应用于各种嵌入式系统中。
在本次实训中,我们学习了C51单片机的基本知识,并进行了一系列的实践操作。
实训目标本次实训的目标是让学员掌握C51单片机的基本原理和应用。
通过实践操作,学员可以更加深入地理解单片机的工作原理,并能够使用C语言进行编程。
实训内容1. 环境搭建首先,我们需要搭建C51单片机的开发环境。
这包括安装Keil C51集成开发环境和编译器。
Keil C51是一款专门为C51单片机设计的集成开发环境,可以方便地进行代码编写、调试和下载。
2. 单片机基础知识在实训的第二部分,我们学习了C51单片机的基础知识。
包括单片机的硬件结构、寄存器的使用、输入输出口的控制等。
这些知识是理解单片机工作原理的基础,也是后续实践操作的前提。
3. 实践操作在学习了基础知识之后,我们进行了一系列的实践操作。
这些实践操作包括LED灯控制、数码管显示、按键输入等。
通过这些实践操作,学员可以更加深入地了解单片机的应用场景和编程方法。
4. 小组项目实训的最后一部分是小组项目。
每个小组需要设计并实现一个基于C51单片机的小型系统。
小组成员可以根据自己的兴趣和能力选择合适的项目,例如温度监测系统、智能家居控制系统等。
通过这个项目,学员可以综合运用之前学到的知识,提高自己的实际操作能力。
实训心得通过这次实训,我对C51单片机有了更深入的了解。
之前我只是听说过单片机,但从未真正接触过。
通过实践操作,我不仅学会了如何搭建开发环境,还学会了如何编写简单的C语言程序并下载到单片机中运行。
在实践操作中,我遇到了不少问题。
有时候程序无法正常运行,有时候单片机没有反应。
但通过不断的调试和排查,我最终找到了问题的解决方法。
这个过程虽然有些繁琐,但对我来说是一次宝贵的学习经验。
通过小组项目,我还体会到了团队合作的重要性。
在项目中,每个人都有自己的分工,但我们需要相互配合,共同完成项目的目标。
51 单片机实训报告完整版一、设计目标1. 完成温度显示系统的设计,即以单片机位核心微处理器,完成接收处理温度信号和控制八段数码管显示两部分功能电路的设计;2. 使用Protel绘制电路原理图和PCB版图3. 通过使用凌阳单片机开发系统掌握单片机系统的基本开发方法,系统配置方法,IO口的读写方式以及数据处理方法。
4. 掌握基于C语言编程的单片机控制技术,完成实现温度采集、显示系统功能的控制程序设计(信号的接收、信息的处理及八段数码管显示控制程序);5. 软硬件联调,完成系统的最终功能。
二、设计任务1. 完成基于单片机的温度检测显示系统设计,利用自己设计的温度传感电路输出模拟信号,选用相应的A/D 转换芯片将模拟信号转换成数字信号送入单片机,单片机对接收的信号进行处理; 单片机输出经译码电路连接至八段数码管显示温度值。
2. 具体要求完成内容:1)传感器模块学习及信号输入设计2) LED数码管显示部分设计3)绘制电路原理图和PCB版图3)数据处理转换(使用C语言进行)4)软硬件联调实现完整系统设计要求;5)撰写实训报告。
第一部分:原理图及PBC版图制作制作原理图,我们选用的软件是proteldxp2004 ,我们选用这个软件是因为Protel DXP 在前版本的基础上增加了许多新的功能。
新的可定制设计环境功能包括双显示器支持,可固定、浮动以及弹出面板,强大的过滤和对象定位功能及增强的用户界面等。
Protel DXP 是第一个将所有设计工具集于一身的板级设计系统,电子设计者从最初的项目模块规划到最终形成生产数据都可以按照自己的设计方式实现。
Protel DXP 运行在优化的设计浏览器平台上,并且具备当今所有先进的设计特点,能够处理各种复杂的PCB设计过程。
通过设计输入仿真、PCB绘制编辑、拓扑自动布线、信号完整性分析和设计输出等技术融合,Protel DXP 提供了全面的设计解决方案。
与较早的版本——Protel99 相比,Protel DXP 2004 不仅在外观上显得更加豪华、人性化,而且极大地强化了电路设计的同步化,同时整合了VHDL和FPGA设计系统,其功能大大加强了。
关于单片机应用实习的实习报告一、实习目的本次实习的目的在于加深对MCS-51单片机的理解,初步掌握单片机应用系统的设计方法;掌握常用接口芯片的正确使用方法;强化单片机应用电路的设计与分析能力;提高学生在单片机应用方面的实践技能;培育学生综合运用理论知识解决问题的能力,力求实现理论结合实际,学以至用的原则。
二、设计题目: 单片机数据采集系统设计三、功能描述1.实时采集0-5V的电压信号;2.将采集的0-5V的电压信号实时显示;3.可以轮流采集8路通道,或指定通道数据;4.可以设定报警上下限,并报警。
四、方案设计4.1系统分析根据系统功能要求,可将系统组成结构分成四大部分。
单片机控制中心、键盘接口。
其中,单片机控制中心是核心。
MCU根据按键输入,可切换不同的显示模式或设置不同的参数。
数码显示管第2至4位将实时采集的0~5V电压,数码管第1位显示指定通道数。
通过按键可切换到设定电压上下限报警的模式。
由于我组单片机实验板缺少烽鸣器,因此利用LED 灯来报警。
以下是系统组成结构图:图1 系统组成结构图五、硬件电路设计5.1 单片机最小系统设计最小系统包括CPU 时钟与复位电路,其原理图如下:图2单片机最小系统设计5.2 显示电路设计数 码 管 显 示 显示上下限报警电压 实时显示采集的电压信号 LED 灯 报 警 单片机控制中心键盘接口数码管主要是用于数字的显示,图中采用共阴极。
电源+5V通过470欧的电阻直接给数码管的7个段位供电,P0.0-P0.7对应了两个接数码管的a,b,c,d,e,f,g和小数点位p,P1.0,P1.1,P1.2,P1.3接位选码。
其原理图如下:图3 显示电路设计5.3 按键电路设计其原理图如下:图4 按键电路设计5.4 A/D转换电路设计其原理图如下:图5 A/D转换电路设计5.5 电源电路设计单片机工作电压为5V。
一般使用USB接口供电,直接从USB接口获取5V电源。
其原理如下图。
51 单片机实训报告完整版一、设计目标1. 完成温度显示系统的设计,即以单片机位核心微处理器,完成接收处理温度信号和控制八段数码管显示两部分功能电路的设计;2. 使用Protel绘制电路原理图和PCB版图3. 通过使用凌阳单片机开发系统掌握单片机系统的基本开发方法,系统配置方法,IO口的读写方式以及数据处理方法。
4. 掌握基于C语言编程的单片机控制技术,完成实现温度采集、显示系统功能的控制程序设计(信号的接收、信息的处理及八段数码管显示控制程序);5. 软硬件联调,完成系统的最终功能。
二、设计任务1. 完成基于单片机的温度检测显示系统设计,利用自己设计的温度传感电路输出模拟信号,选用相应的A/D 转换芯片将模拟信号转换成数字信号送入单片机,单片机对接收的信号进行处理; 单片机输出经译码电路连接至八段数码管显示温度值。
2. 具体要求完成内容:1)传感器模块学习及信号输入设计2) LED数码管显示部分设计3)绘制电路原理图和PCB版图3)数据处理转换(使用C语言进行)4)软硬件联调实现完整系统设计要求;5)撰写实训报告。
第一部分:原理图及PBC版图制作制作原理图,我们选用的软件是proteldxp2004 ,我们选用这个软件是因为Protel DXP 在前版本的基础上增加了许多新的功能。
新的可定制设计环境功能包括双显示器支持,可固定、浮动以及弹出面板,强大的过滤和对象定位功能及增强的用户界面等。
Protel DXP 是第一个将所有设计工具集于一身的板级设计系统,电子设计者从最初的项目模块规划到最终形成生产数据都可以按照自己的设计方式实现。
Protel DXP 运行在优化的设计浏览器平台上,并且具备当今所有先进的设计特点,能够处理各种复杂的PCB设计过程。
通过设计输入仿真、PCB绘制编辑、拓扑自动布线、信号完整性分析和设计输出等技术融合,Protel DXP 提供了全面的设计解决方案。
与较早的版本——Protel99 相比,Protel DXP 2004 不仅在外观上显得更加豪华、人性化,而且极大地强化了电路设计的同步化,同时整合了VHDL和FPGA设计系统,其功能大大加强了。
首先是设计出系统整体框图,系统采用凌阳单片机61 板及相关模组构成,系统整体分三部分设计,分别为信号采集部分、单片机系统部分和显示部分。
(如图所示)温度传A/D(数模)八段数码单片机系统译码器感器电转换电路管显示路系统整体框图信号采集部分:本设计采用图1的惠斯登电桥电路,该电路采用4块电阻搭建组成,其中3块为普通电阻,另外一块为热敏电阻。
这四块电阻在正常室温(25?)的情况下,电阻值相同。
此时,加上如图所示的电压后,测量桥的两外两点的电位差接近为0V 。
当热敏电阻由于与体温接触,温度、阻值发生变化时,其测量选用AD624集成运放,对电路进行放大处理。
图 2所示为AD624放大器的引脚 位图。
、2引脚接输入,差分放大。
7、8引脚需提供正负相等的工作电压,由9引脚输出其中1放大后的电压值。
引脚6则是参考基准值,如果接地则引脚 9的输出即为对地 的相对电压。
AD624的放大增益公式如式(1)所示,由此我们可使用连接在11~13 引脚的电阻来对增益值进行设置。
八段数码管显示电路控制部分2点的电位发生显著的变化,从而产生温度信号向电信号的转运算放大器的选择电路整体说明:数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元(多一个小数点显示); 按能显示多少个“ 8”可分为 1 位、2位、4 位等等数码管;按发光二极管单元连接方式分为共阳极数码管和共阴极数码管。
共阳数码管是指将所有发光二极管的阳极接到一起形成公共阳极(CO M的数码管。
共阳数码管在应用时应将公共极COM接到+5V,当某一字段发光二极管的阴极为低电平时,相应字段就点亮。
当某一字段的阴极为高电平时,相应字段就不亮。
共阴数码管是指将所有发光二极管的阴极接到一起形成公共阴极(CO M的数码管。
共阴数码管在应用时应将公共极COM接到地线GNDt,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。
当某一字段的阳极为低电平时,相应字段就不亮。
3.8共阳A B C D E F G DP0 076421 9 10 52 I 9 10 5八段数码管需配合相应的译码驱动电路配合显示。
电源模块系统需要DC 5V 的电源为核心微处理器(单片机)和LED 供电,电源模块的参考 电路图如图7所示。
土5 卸DS1R1------ 揶LEH1VCC -------电源电路在设计该部分电路时,要注意为电源模块添加 LED 提示系统上电的情况是否正 常,减少系统供电问题被忽略的可能。
共阴 ij IV W U V u然后就是利用proteldxp2004画原理图了,在这之中,有些器件在系统默认的库中是找不到的,所以需要添加新的库而且找到需要的元器件,而元器件的使用说明则需要在网上进行查询。
然后根据实验方案,选择出所有所需要的器件,在这之中最好把所有的器件进行标注,以免出现错误,名称不能重复,这对后面制作PCB 版图的时候十分关键。
做好标注后开始连线,连线时要注意时候线是否全部连接,避免出错,检查无误后,原理图的工程就基本完成了。
(如图所示)原理图创建完成后,就是制作PCB版图,操作的步骤是创建网络表,进行电气检查,检查后无误后就会自动生成PCB版图,但是器件都是落在一起的,需要合理的分布开,不能用重叠,PCB版图如图所示:注irt&J第二部分:单片机的显示系统设计一.设计目标a)通过使用凌阳单片机开发系统掌握单片机系统的基本开发方法,系统配置方法,10 口的读写方式以及数据处理方法。
b)掌握基于C语言编程的单片机控制技术,显示系统功能的控制程序设计(八段数码管显示控制程序);c)软硬件联调,完成系统的最终功能。
二.设计任务a)完成基于单片机的显示系统设计,单片机输出经译码电路连接至八段数码管显示。
b)具体要求完成内容:1)LED数码管显示部分设计2)显示的数据,依照实例5在数码管显示数据,分别显示出学号在1,2和5,6 数码管,在3,4 数码管进行计时,每10个显示一次学号,直到计数到99,然后清零,继续循环计数(使用C语言进行)3)软硬件联调实现完整系统设计要求;三. 设计要求系统采用凌阳单片机61 板及相关模组构成系统整体分二部分设计,分别为单片机系统部分和显示部分。
八段数码译码器单片机系统管显示四. 设计方案1. 系统框图I/O 单片机串口点阵LED 电源模块2. 程序流程图开始Dig<=9&&a<=9Dig=03号数码管显示a的值,4号数码管显示Dig的值Dig++如果Dig>9 a++,Dig=0,3号数码管显示a的值,4号数码管显示Dig的值TimerCnt=0 TimerCnt++3,4 号数码管显示1,2,5,6 数码管分0 别显示1,5,2,7 TimerCnt++3,4 号数码管显示0结束3. 程序代码依照实例 5 用数码管显示数据//=================================================== /工/ 程名称:LED5_c// 功能描述: 控制所有数码管循环显示0,9 十个数字//硬件连接:将61板的IOBO,7用排线连接到LED键盘模组的SEG^针上;IOB8~IOB15连接到LED键盘模组的DIG排针上。
// 文件来源:《61 板实验教程》," 实验五数码管显示O,9"// IDE 环境: SUNPLUS u'nSPTM IDE 1.8.4// 涉及的库:LED5_c.h// 组成文件: main.c//===============================================//===================================================文// 件名称:main.c// 实现功能://===================================================#defineP_IOB_Data (volatile unsigned int *)Ox7OO5 #define P_IOB_Buffer(volatile unsigned int *)Ox7OO6 #define P_IOB_Dir (volatile unsigned int *)Ox7OO7 #define P_IOB_Attrib (volatile unsigned int *)Ox7OO8 #define P_Watchdog_Clear (volatile unsigned int *)Ox7O12 #define LED_SEG OxOOff//IOBO~IOB7#define LED_DIG Ox3fOO //IOB8~IOB13 const unsigned charDigCode[1O]={Ox3F,OxO6,Ox5B,Ox4F,Ox66,Ox6D,Ox7D,OxO7,Ox7F,Ox6F}; //O~9 十个数字的LED编码//// 函数名称: LedDispDig// 功能描述: 在指定的数码管上显示数字// 语法: void LedDispDig(int Pos,int Dig) // 输入: Pos: 要显示数字的数码管位置,取值范围1~6// Dig: 要显示的数字,取值范围0~9// 输出: 无//===================================================void LedDispDig(int Pos,int Dig) { *P_Watchdog_Clear=1;// 初始化IOB 为同相输出*P_IOB_Dir|=LED_SEG+LED_DIG;*P_IOB_Attrib|=LED_SEG+LED_DIG; *P_IOB_Data=(unsigned)0x0100<<(Pos-1);// 将数字的位置转换为IOB高8位值,选中相应的数码管*P」0B_Data|=DigCode[Dig]; // 将数字转换为编码,作为IOB低8位输出}int main(){int Pos,Dig,TimerCnt,a;a=0;while(Dig<=9&&a<=9){for(Dig=0;Dig<=9;Dig++)for(TimerCnt=0;TimerCnt<1000;TimerCnt++){LedDispDig(4,Dig);LedDispDig(3,a);}}if(Dig>9){a++;Dig=0;LedDispDig(3,a);LedDispDig(4,Dig);}for(TimerCnt=0;TimerCnt<1000;TimerCnt++) {LedDispDig(1,1);LedDispDig(2,5);LedDispDig(5,2);LedDispDig(6,9);}}LedDispDig(3,0);LedDispDig(4,0); }第四部分:实训总结经过了这次实训,对dxp的掌握加深了,对于c语言的使用也有了进一步的掌握,同时还熟悉了单片机硬件方面的搭接,初步了解单片机的开发,这次最大的困难就是在用dxp搭电路并生成pcb版图,这一过程比较曲折,还有在用c语言编写程序时调试了很多次,因为一些低级的错误,导致硬件不能正确的显示,总的来说,经过这次实训,我学到的只是很多,同时也体会到团队合作的重要,伙伴的重要,一个人是不能完成的。