单片机点亮一个LED灯

描述

一、MDK uVision开发环境界面介绍

单片机

二、什么是宏定义

  • 宏定义就是用我们人比较好理解的字符串来代替某个数或字符串。宏定义是由#define空格+新字符串+空格+被代替的数或字符串。如下面的例子:
  • #define TRUE 1 //用TRUE来代替1
  • #define FALSE 0 //用FALSE来代替0
  • #define Pin_LED P32 //用Pin_LED来代替P32
  • #define PinLed_High() Pin_LED=1 //用Pin_LedHigh()来代替Pin_LED=1

三、#include 含义

在C语言中,经常会用到其它已经定义好的文件,这时我们不必重新写一遍,只需要用#include <文件名>的格式,就可以把文件包含到我们的程序项目中。如:#include 就表示将已有的STC15.H文件加入到我们的项目当中。<>表示这个文件的路径是在MDK的安装目录中。

四、什么是函数

在C语言中,我们经常会用到函数。如C语言程序的入口函数main。一个函数通常用来表示一个程序功能块。这个功能块有输入参数和输出参数。就像一个水箱有一个进水口和一个出水口。如下面的函数:

单片机

五、什么是函数原型

  • 在C语言中,所谓函数原型,就是指我们只定义了一个函数的名字和输入、输出参数,但并没有在函数中实现功能。如下面的例子:
  • void PinLED_DirOut(void);
  • 表示这是个LED灯的管脚输出控制函数定义。
  • 输入参数为无效参数,输出参数也为无效参数。

六、单片机输出口设置和输出

为了让单片机能点亮/熄灭指示灯,我们必须控制与LED指示灯相连接的引脚。在这里,P32表示是单片机的输出品P3的第2个脚。从原理图上可以看出,如果要点亮LED指示灯,则必须将P32这个引脚输出低电平。下面是与P32引脚有关的宏定义:

#define Pin_LED P32

#define Pin_LED_M1 P3M1

#define Pin_LED_M0 P3M0

#define Pin_LED_BIT BIT2

#define PinLed_High() Pin_LED=1

#define PinLed_Low() Pin_LED=0

我们要让单片机P32引脚控制LED指示灯,就必须将P32引脚设置为输出模式,下面这个函数就是设置P32为输出的代码:

//Pin_LED_M1实际上就是P3M1

//Pin_LED_M0实际上就是P3M0

//P3M1和P3M0两个寄存器单元,是用来配置P3口各引脚的输入/输出模//式

void PinLED_DirOut(void)

{

Pin_LED_M1 &=~Pin_LED_BIT;

  Pin_LED_M0 |=Pin_LED_BIT;

}

七、点亮LED指示灯的完整源程序

* #include < STC15.h >
*
* #define BIT0 0x01
* #define BIT1 0x02
* #define BIT2 0x04
* #define BIT3 0x08
* #define BIT4 0x10
* #define BIT5 0x20
* #define BIT6 0x40
* #define BIT7 0x80
* #define TRUE 1
* #define FALSE 0
* #define BEEP_ON          1
* #define BEEP_OFF        0
* #define Pin_LED P32
* #define Pin_LED_M1 P3M1
* #define Pin_LED_M0 P3M0
* #define Pin_LED_BIT BIT2
* #define PinLed_High()Pin_LED=1
* #define PinLed_Low()Pin_LED=0
*
* void PinLED_DirIn(void);
* void PinLED_DirOut(void);
*
* void main(void)
* {
*         PinLED_DirOut();
*         PinLed_Low();
*         while(TRUE)
*         {
*
*         }
* }

八、单片机程序编译

在uVision开发环境的菜单中,选择[Project(项目)]->[Build Target(编译目标)],然后开始编译程序。

单片机

九、找到单片机烧写文件

在项目文件夹下找到刚才编译好的烧写文件(HEX文件),在本项目中为STC15WPrj.hex文件。

单片机

十、下载烧写文件到单片机中

(1)先在网上找到STC单片机下载程序STC-ISP(V6.89).exe,然后下载到本地。

(2)启动STC-ISP(V6.89C)程序,然后点击[打开程序文件],在文件夹中找到刚才编译好的STC15WPrj.hex文件。

单片机

(3)断开单片机电源,然后点击[下载/编程],然后再将单片机电源接通,则接下来等待下载完成。

单片机

十一、单片机点亮LED指示灯输出结果

单片机

至此,一个完整的单片机编写、编译、下载过程就讲完了。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分