完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
实验一:LED闪烁灯
一、实验目的 掌握51单片机开发板的使用步骤; 掌握51单片机开发板所需软件的安装过程; 以LED灯闪烁为例子,掌握软件KEIL4的使用方法。 二、实验设备 实验仪器设备: 计算机 软件: Proteus仿真软件、KELL开发软件 三.实验任务 在单片机I/O口(P0.0)上外接一个发光二极管LED,通过程序实现LED闪烁显示,即不停的一亮一灭,亮,灭持续时间均为1秒。 四、实验内容及实验步骤 1.项目背景: 单片机原理:单片机的工作原理与计算机CPU的工作原理是一样的,主要是利用片内的半导体存储器存放用户的程序和数据,单片机的核心中央微处理器CPU中有指令寄存器、指令译码器,程序计数器等部件,由程序计数器寻找下一条要执行的指令,找到后,将指令送给指令寄存器,再由指令译码器翻译执行该指令,完成对指令功能的操作。 单片机的特点: (1)高集成度,体积小,高可靠性 单片机将各功能部件集成在一块晶体芯片上,集成度很高,体积自然也是最小的。芯片本身是按工业测控环境要求设计的,内部布线很短,其抗工业噪音性能优于一般通用的CPU。单片机程序指令,常数及表格等固化在ROM中不易破坏,许多信号通道均在一个芯片内,故可靠性高。 (2)控制功能强 为了满足对对象的控制要求,单片机的指令系统均有极丰富的条件:分支转移能力,I/O口的逻辑操作及位处理能力,非常适用于专门的控制功能。 (3)低电压,低功耗,便于生产便携式产品 为了满足广泛使用于便携式系统,许多单片机内的工作电压仅为1.8V~3.6V,而工作电流仅为数百微安。 (4)易扩展 片内具有计算机正常运行所必需的部件。芯片外部有许多供扩展用的三总线及并行、串行输入/输出管脚,很容易构成各种规模的计算机应用系统。 (5)优异的性能价格比 单片机的性能极高。为了提高速度和运行效率,单片机已开始使用RISC流水线和DSP等技术。单片机的寻址能力也已突破64KB的限制,有的已可达到1MB和16MB,片内的ROM容量可达62MB,RAM容量则可达2MB。由于单片机的广泛使用,因而销量极大,各大公司的商业竞争更使其价格十分低廉,其性能价格比极高。 单片机的用途: (1) 工业自动化:如数据采集,测控技术; (2) 智能仪器仪表:如数字示波器,数字信号源,数字万用表,感应电流表等 (3) 消费类电子产品:洗衣机,电冰箱,空调,电视机,微波炉等 (4) 通信方面:如调制解调器,程控交换技术,手机,小灵通等 (5) 武器装备:飞机军舰,坦克,导弹,航天飞机等 单片机I/O口: (1) 电源和时钟引脚,如VCC,GND,XTAL1,XTAL2; (2) 编程控制引脚,如RST,PSEN,ALE/PROG,EA/VPP; I/O口引脚,如P0,P1,P2,P3,四组I/O口; 2.需求分析: Keil4——编程环境简介 Keil uVision是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统c语言的语法来开发,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和项目开发周期,他还能嵌入汇编,您可以在关键的位置嵌入,使程序Keil C51生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。 在开发大型软件时更能体现高级语言的优势。与汇编相比,C语言在功能上、结构上、可读性、可维护性上有明显的优势,因而易学易用。Keil C51软件提供丰富的库函数和功能强大额集成开发调试工具,全Windows界面。达到接近于汇编的工作效率。 PROTEUS——仿真环境简介 Proteus 软件是来自英国Labcenter electronics 公司的EDA 工具软件,Proteus 软件有近20年的历史,在全球广泛使用。它除了具有和其它EDA 工具一样的原理布图、PCB 自动或人工布线及电路仿真的功能外,其革命性的功能是,它的电路仿真是交互的,可视化的,针对微处理器的应用,还可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出,还能看到运行后输入输出的效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,可以测量仿真的波形及记录仿真数据。在不需要硬件设备投入的情况下,Proteus 软件可以建立完整的电子学习设计开发环境,缩短研发周期,并且降低开发成本。 Proteus 组合了高级原理布图、混合模式SPICE 仿真,PCB 设计以及自动布线来实现一个完整的电子设计系统。此系统受益于多年来的持续开发,被《电子世界》在其对PCB 设计系统的比较文章中评为最好产品—“The Route to PCB CAD”。Proteus 产品系列也包含了我们革命性的VSM 技术,用户可以对基于微控制器的设计连同所有的周围电子器件一起仿真。用户甚至可以实时采用诸如LED/LCD、键盘、RS232 终端等动态外设模型来对设计进行交互仿真。其功能模块:—个易用而又功能强大的ISIS 原理布图工具;PROSPICE 混合模型SPICE 仿真; ARESPCB 设计。PROSPICE 仿真器的一个扩展PROTEUS VSM:便于包括所有相关的器件的基于微处理器设计的协同仿真。此外,还可以结合微控制器软件使用动态的键盘,开关,按钮,LED 甚至LCD 显示CPU 模型。 3.项目内容及仿真软件: (1)打开Keil软件,新建一个工程,命名为“LED”; (2)选择芯片类型,虽然使用的是STC90C516RD 或 STC89C52RC的单片机,但这里选择ATMEL------AT89C51这个芯片就行。 (3)新建一个文件,输入LED闪烁灯实验的相关代码(代码绝对正确)这是用的C语言中的延时函数“delayxms(unsigned int xms)”; (4)保存文件看,文件名为“01-闪烁灯.c”; (5)右键单击“Source Group 1”,单击“Add Files to Group ‘Source Group 1’”,将刚刚生成的“01-闪烁灯.c”文件加入到工程中; 注:一定要将保存的文件加入到工程中,否者将会报错 (6)单击编译按钮 或按F7编译工程,结果如下则视为编译无误; 注:保存的代码文件一定要后缀“.c”。 (7)右键单击“Target1”→“Options for Target ‘Target 1’…”,选择对话框中“Output”选项卡,选中“Create HEX File”选项用于生成十六进制文件,再次单击按钮编译,成功后会生成同名的十六进制文件; 单击 若结果如下则视为已成功生成十六进制文件: (8)运行Proteus软件,绘制出原理图(根据老师的要求,此处我所用的是P0.0I/O口)如下: 为AT89C51单片机添加“test.hex”文件单击所放置的芯片,如下: 4.测试过程:若如下图所示一样则视为试验成功: 五、实验收获与体会 做单片机硬件和软件结合的实验,在以前学过的编程语言基础上,学习用单片机编程实现点亮熄灭LED和单片机控制LED闪烁,在理解老师讲解的知识基础上和同学一起探讨交流,慢慢熟悉了一些新知识。操作过程中,软硬件方面都出现一些问题,实验中实验结果讨论遇到发光二极管不亮的情况,于是改用程序之后问题得以解决,因此实验中程序应该及时检查,不然会影响实验的顺利进行。 |
|
|
|
只有小组成员才能发言,加入小组>>
2545 浏览 0 评论
1142浏览 2评论
741浏览 1评论
495浏览 0评论
256浏览 0评论
417浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-18 11:24 , Processed in 1.445629 second(s), Total 47, Slave 38 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号