『STC8H8K64U』概述

您所在的位置:网站首页 双向跑马灯程序怎么设置 『STC8H8K64U』概述

『STC8H8K64U』概述

2024-07-14 18:34| 来源: 网络整理| 查看: 265

3. 点亮第一个LED🏳‍🌈

        拿到一款单片机,相信大家第一个学习的就是点灯了😎(大佬除外)

由于单片机I/O口的结构 决定了它灌电流的能力较强,比一般高电平时的拉电流要大,驱动能力强,所以都采用低电平点亮LED的方式

单片机程序由:头文件,变量声明,函数声明,子函数,主函数等这几部分组成

3.1 🎈调用头文件

代码第一行,就是调用这款单片机的头文件;每款单片机都有相对应的头文件,头文件其实就是一种声明,将单片机中的一些常用的符号变量、特殊功能寄存器、关键字等进行定义声明;

例如:STC89C52单片机的头文件

#include

例如:STC15W408S单片机的头文件

#include

我们要介绍的这款单片机型号是:STC8H8K64U,头文件如下:

#include //调用STC8H头文件 3.2 🎈定义变量LED

        这里我们要点亮一个LED,首先要定义它在哪个I/O口,可以随便定义哪个I/O口吗?可以的;当然可以了,用在什么地方,就要相对应的配置I/O口的工作模式

这款单片机引出的I/O口有:P0.0~P0.7,P1.0~P1.7(无P1.2),P2.0~P2.7,P3.2~P3.7,P4.5~P4.7,P5.2和P5.4,对我个人来说是相当够用了;

这里我们用单片机的P1.0口来点亮LED,但是在C语言里,如果直接写P1.0,C编译器并不能识别,而且P1.0也不是一个合法的C语言变量名,所以得给它起另外一个名字,就暂且给它起名为LED吧,这里必须要给它们建立联系,我们就用到了C的关键字  sbit  来定义,sbit的用法有三种:

第一种方法:sbit 位变量名 = 地址值

第二种方法:sbit 位变量名 = SFR名称^变量位地址值

第三种方法:sbit 位变量名 = SFR地址值^变量位地址值

我们这里这样写:

sbit LED = P1^0; //定义LED为P1^0口 3.3 🎈编写主函数

直接上程序:

void main() { P1M0 = 0x00;P1M1 = 0x00; //设置P1口为准双向口状态,弱上拉 while(1) { LED = 0; //LED为低电平,即点亮LED } }

这里void main() 的意思是这个main()函数无返回值,void也就是无效的、空的意思

我们写的主函数需要用大括号 {} 给括起来,里面就是我们要运行的内容

第一步就是配置所调用的I/O口的工作模式P1M0 = 0x00,P1M1 = 0x00(准双向口模式);

如何配置工作模式上面我们也做了详细的介绍

第二步,是让这个LED灯一直亮呢,还是闪烁呢,还是做呼吸灯的效果呢,就需要我们根据自己的想法来了;既然是点亮LED,那就让它常亮吧,不需要外部触发,让主函数循环我们所需要的效果就行了,这里用的是一个while循环,主程序会一直执行while(1)里的程序

第三步,用低电平点亮P1.0口,即P1.0 = 0就可以了,前面我们定义了LED为P1.0口,所以正确写法是:LED = 0;就是这么简单,📌一定一定要记得最后的分号噢(相信有些程序猿后期调试代码BUG是有关于这个分号的😂)



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3