基本操作 闪烁灯 流水灯.docVIP

  • 15
  • 0
  • 约3.69千字
  • 约 12页
  • 2020-05-26 发布于广东
  • 举报
实验一:硬件,软件介绍以及闪烁灯和流水灯 一.实验目的 1.认识单片机以及外围硬件。 2.掌握KEIL软件的基本操作。 3.掌握单片机编程的一般流程。 二.实验内容 1.认识单片机开发板上的硬件,串口以及usb转串口线。 2.使用keil软件建立工程并编写闪烁灯程序,下载到开发板上进行验证。 3.改写闪烁灯程序,进一步熟悉操作。 3.编写流水灯程序并下载到开发板上进行验证。 三.实验设备 电脑,单片机开发板,串口线,usb转串口线。 四.硬件介绍 1.51单片机介绍 图1-1 开发板的硬件资源 图1-1为本实验中用到的单片机开发板,该开发板包含了较多的硬件资源。这里主要介绍一下主芯片stc89c52,其它大部分硬件在以后相应的实验中再做介绍。 上图中间最大的那个黑色长方块就是单片机,使用单片机就可以控制开发板上其他的硬件,此单片机全名为STC89C52RC,其中STC代表生产该单片机的厂家,8代表单片机是8051内核,9代表内部有EEPROM存储器,C表示该器件是CMOS产品,5是固定不变的数字,2表示单片机内部含有8KB的程序存储空间(如果是1表示4KB,如果是3表示12KB,以此类推。),RC表示内部的随机存储器RAM大小为512B。除了这些文字还有标明单片机的最大接入频率,产品级别,封装形式,生产日期,以及生产工艺的文字,这里就不一一说明。 2.串口线以及usb转串口线的介绍 图1-2 串口线 串口线如图1-2所示,串口线主要用来给单片机下载程序以及串口通讯时使用,其结构以及通讯方式将在串口通讯实验时介绍,开始只拿串口下载程序使用。一般的台式机都会有串口,将串口线一段插在台式机上一段插在单片机上,接上电源就可以给单片机下载程序。但是很多时候使用的是笔记本,笔记本上很少有串口,所以就需要使用usb转串口线,如图1-3所示。 图1-3 usb转串口线 usb转串口线将usb接口通过芯片和程序虚拟出一个串口来进行电脑与单片机的通讯,所以使用时还需给笔记本安装驱动,芯片一般为PL2303或者HL340,根据usb转串口使用的芯片不同安装不同的驱动。 3.led灯的硬件电路 图1-4 led灯的电路 如图所示,8个led灯的阳极通过排阻接到了电源上,阴极接到了74hc573锁存器的输出口,输入口与单片机的P1口连接,锁存器的锁存口L与单片机的P2.5连接。锁存器的功能如图1-5所示。 图1-5 锁存器功能表 如上图,为使能端口,低电平有效。L为锁存口,当锁存口L为高时,输入和输出口的状态一致,当L为低时锁存上一个L为高时的状态。 4.建立第一个工程 首先,在桌面新建一个文件夹,然后打开keil软件,显示如图1-6。 图1-6 打开keil 然后,单击菜单栏的project,在弹出的子菜单中点击new uvision project,在弹出的对话框中给工程命名(这里命名为闪烁灯或者其他)并将工程保存在刚才新建的文件夹之中。如图1-7。 图1-7 点击保存,会弹出选择单片机的对话框,选择STC89C52RC,单击OK,如图1-8。然后会弹出一个对话框问你是否添加启动代码,单击 是(Y)。 图1-8 下来,单击菜单栏的file在子菜单中单击new,此时会生成一个文本输入框text1,然后单击file—save,将该文件保存为 闪烁灯.c,如图1-9. 图1-9 在软件左侧project窗口中打开文件夹target,在子文件夹中右键单击source group 1,在弹出的菜单中单击add files to group ‘source group 1’ 图1-10 图1-11 这样,一个工程就建立好了,如图1-12,接下来就是在闪烁灯.c中编写程序了。 图1-12 建立工程完毕 5.闪烁灯程序的编写 要想使led灯产生一明一暗的闪烁效果,根据电路图1-4,可以将锁存器的锁存端L置高电平,然后通过编程使片机的P1口每隔一段时间为高电平一段时间为低电平,而led灯的阳极接电源所以当P1口为低电平时led灯亮,P1为高电平时led灯灭。如图1-13. 图1-13 P1口的状态 在闪烁灯.c中输入程序如图1-14,(//以及后面的文字是注释,用来解释程序可以不输)。 图1-14 首先介绍头文件,reg52.h文件定义了stc89c52单片机内部的寄存器,为了使用方便将16进制地址的寄存器定义成了各种名称,例如P1,P2等。 sbit diola=P2^5; sbit是位定义,意思是说之后的diola对应于单片机的P2.5脚,要注意的是,这里的P2^5中间的^是异或的意思,是一个运算,不能直接使用。所以当使用单片机的一个引脚必须要对其重新定义。 下来是延时函数,延时函数主要是为了是单片机的引脚保持一种状态一段时间,执行一次

文档评论(0)

1亿VIP精品文档

相关文档