您现在的位置: 主页 > MCU > 单片机技术应用 > 第一个程序点亮一个LED灯 -
本文所属标签:
为本文创立个标签吧:

第一个程序点亮一个LED灯 -

来源: 网络用户发布,如有版权联系网管删除 2018-09-06 

[导读]#include // 引用52包文件 可以理解为命名空间sbit P1_0 = P1^0; // 定义P1管脚0void main()// 主程序 C语言所必需要有的{P1_0 = 0; // 点亮P1第0管脚连接的LED}===============以下非程序代码===============

#include // 引用52包文件 可以理解为命名空间

本文引用地址: http://www.21ic.com/app/mcu/201807/782989.htm

sbit P1_0 = P1^0; // 定义P1管脚0

void main()// 主程序 C语言所必需要有的
{
P1_0 = 0; // 点亮P1第0管脚连接的LED
}

===============以下非程序代码===================

上面的程序,首先引用reg52.h,这里有对操作单片机相关数据的封装,方便用户使用

接着,用P1_0这个sbit类型的变量,引用P1口的第1个引脚(P1^0)

接着,主程序开始

将P1口的第1个引脚置为低电平(亮)

结束程序

在reg52.h上右键菜单(Keil中)open document可以打开reg52单元,发现P1的定义:sfr P1= 0x90;什么意思呢?

sfr 是用于定义特殊寄存器(Special Function Register)的关键字,是单片计算机中的一组特殊的临时存储区域,用于动态存放计算机运行过程的一些状态信息、并依此做相应的控制。51系列单片机中,通常每个寄存器也就一个字节,这个字节是P1(通用寄存器1)P1有8个位,但0x91~0x97与P1毫无关系,同理其他3个寄存器P0, P2, P3也是这个道理。MCS-51单片机就设有18个专用寄存器,P0-P3端口,定时/计数器T0、T1,TMOD、TCON、PCON、SCON 、PSW、IE、A、B、IP等等。SFR越多,编和控制功能越强、越灵活,但需要硬资源,所以系统设计时会根据需要来确定。

sbit(Set Bit)与sfr用法类似,只是sbit是位操作,用于将某个sfr中具体位赋值给一个变量,这样后面程序就可用通过该变量为该位清0或置1。

要点:

1.sfr和sbit的含意,特殊功能寄存器的含意

2.如何用位控制引脚




              查看评论 回复



嵌入式交流网主页 > MCU > 单片机技术应用 > 第一个程序点亮一个LED灯 -
 

"第一个程序点亮一个LED灯 -"的相关文章

网站地图

围观()