51教程(3)-I/O控制代码分析

发布者:心满意足最新更新时间:2022-04-21 来源: eefocus关键字:51教程  控制 手机看文章 扫描二维码
随时随地手机看文章

库包含


#include 所有51程序都要包含的基本库,里面包含了SFR(特殊寄存器)的映射,例如P2^2按照机器编译的话应该是一个二进制地址,reg51.h内将其封装为对应有序的名字更方便开发者使用,也包括中断向量和定时器资源等。


#include 标准打印输出库,内部包含printf()函数,如果使用该函数需要包含该库,但是单片机尤其是51基本不使用PC的printf()函数,需要重映射fputc()函数,使得其功能映射到串口打印实现和PC一样的打印效果。


#include 目前使用_NOP_时需要添加的库,针对汇编使用的库。


02


位声明


sbit LED=P2^2; 由于reg51库的封装使得所有引脚按照自己的号进行命名当开发者需要将引脚连接到对应外设时,需要记住引脚和外设的对应关系,数量较少时不易出错,但是数量过多时会发生记错翻找的事情,不利于开发效率提高,51可以对位进行操作所以位声明就是一种特殊的引脚映射宏,使得引脚映射更方便记住,也使得编程更加方便快捷。


03


MAIN函数


void main()是程序执行的真正开始,单片机复位后会从这个函数的第一行开始执行,俗称主函数,点亮LED的主函数只有一行就是LED=1;但是为了防止程序跑飞通常每一个单片机程序都要运行在一个死循环里,所以main里是有一个while(1)嵌套的大部分的循环执行的内容都写在while(1)里面,在外面写上一个错误反馈函数。

关键字:51教程  控制 引用地址:51教程(3)-I/O控制代码分析

上一篇:51教程(5)-定时器及其寄存器介绍
下一篇:51教程(2)-最基础的控制I/O控

推荐阅读最新更新时间:2024-11-09 10:22

怎样控制步进电机快慢_步进电机不用脉冲如何驱动
  怎样控制步进电机快慢   步进电机的旋转速度可以通过控制脉冲信号的频率和电机驱动方式来实现。   脉冲频率控制:步进电机的旋转速度与脉冲信号的频率成正比,因此可以通过调整脉冲信号的频率来控制电机的旋转速度。一般来说,脉冲信号的频率越高,电机的旋转速度就越快,反之亦然。通过微控制器或其他控制电路,可以根据需要改变脉冲信号的频率,从而实现步进电机的速度控制。   电机驱动方式控制:步进电机有全步、半步、1/4步、1/8步、1/16步等多种驱动方式。在全步驱动模式下,电机每接收到一次脉冲信号就会转动一个完整的步距角。而在1/16步驱动模式下,电机需要接收16个脉冲信号才能完成一个步距角的转动。因此,在选择电机驱动方式时,可以
[嵌入式]
教室智能照明控制系统的设计说明
摘要:针对室内不同区域对于光照强度的不同要求,设计了一个利用STM32作为控制器的教室智能照明控制系统,能够依据室内照明强度以及室内人员分布情况对教室内光照强度进行实时,动态的调整。结果表明,该系统既可以保证教室内的光照强度充足,又不会造成电力浪费。 0. 引言 在学校的每个教室里,照明设备都是不可或缺的。然而,有时会见到某个空无一人的教室灯火通明,或者在白天室外阳光强烈,无需开灯的情况下,教室里的灯却开着。这些情况都造成了很大的浪费。因此,教室智能照明控制系统要能够依据室内光照强度以及室内人员分布情况对教室内光照强度进行实时,动态的调整,既使得教室内的光照强度充足,又不会造成电力浪费。 1. 系统的总体设计 教室智能照明
[单片机]
教室智能照明<font color='red'>控制</font>系统的设计说明
基于S3C2410A微控制器的嵌入式数字示波器的应用设计方案
1 引言 嵌入式数字示波器是近年发展起来的一种实现数据及波形实时显示的智能终端设备。目前通用的数字示波器多采用DSP、内嵌微处理器型FPGA或DSP+FPGA结构。嵌入式数字示波器可看成是一种低成本、功能相对较少、可作为一个模块使用的嵌入式智能终端。虽然DSP数据处理能力强大,运行速度较高,FPGA灵活性强,可以充分地进行设计开发和验证,便于系统升级。但是,DSP和内嵌微处理器型FPGA一般价格较高。不适合在低成本的嵌入式数字示波器开发中使用。 ARM是面向低价位市场设计的一种RISC微处理器,其优势是性价比高,适合嵌入式数字示波器的需求。当前采用ARM芯片设计的嵌入式数字示波器主要基于ARM7内核的微控制器S3C44BOX。
[单片机]
基于S3C2410A微<font color='red'>控制</font>器的嵌入式数字示波器的应用设计方案
VASS06-PLC控制机器人分析
FB 201 FB_Rob_PN_A  FB 201输入影像到DB块 该模块将Robot的输出数据复制到Robot结构中。 该模块通常使用自己的实例数据模块进行访问。 实例数据模块的“符号名称”应如下所示: xxxxxx Rxx#FB_Rob_PN_A_DB,例如110010R01#FB_Rob_PN_A_DB以下内容应在“符号注释”处注册:机器人输出. 该变量是机器人输出(SPS输入)的初始地址,模块将所有机器人输出数据写入机器人结构中。 FB 202 FB_Rob_PN_E  FB 201DB块输出机器人 该模块将机器人结构的数据复
[机器人]
基于PLC+变频器的恒压供水控制应用方案
1 引言 本文是针对某生活小区实际情况,结合用户生活 / 消防双恒压供水控制的要求,我们进行改造的一些心得。现将其中的改造情况介绍如下。 众所周知,恒压供水系统对于生活小区是非常重要的,例如在生活小区供水过程中,若自来水供水因故压力不足或短时断水,可能影响居民生活。又如当发生火警时,若供水压力不足或无水供应,不能迅速灭火,可能引起重大损失和人员伤亡。所以,生活小区采用生活 / 消防双恒压供水系统,具有较大的经济和社会意义。 基于上述情况,我公司对某生活小区供水系统进行改造,采用西门子 PLC 作为主控单元。利用风光供水变频器,根据系统状态可快速调整供水系统的工作压力,达到恒压供水的目的。改造提高了系统的工作稳定性,得到了良
[嵌入式]
基于PLC+变频器的恒压供水<font color='red'>控制</font>应用方案
【技术干货】为什么电机FOC控制越来越流行?
FOC控制算法 为什么FOC越来越流行? 什么是FOC? FOC(Field-Oriented Control),即磁场定向控制,也称矢量变频,是目前高效控制无刷直流电机(BLDC)和永磁同步电机(PMSM)的最佳选择。 FOC精确地控制磁场大小与方向,使得电机转矩平稳、噪声小、效率高,并且具有高速的动态响应。目前已在很多应用上逐步替代传统的控制方式,在运动控制行业中备受瞩目。 FOC的原理 FOC控制首选需要得到电机转子的位置、电机转速、电流大小等信息作为反馈输入,需要采集电机相电流,对其进行一系列的数学变换和估算算法后得到解耦的易用控制的反馈量。 控制器根据反馈量与目标值的误差进行动态调节,最终输出3相正弦波驱
[嵌入式]
【技术干货】为什么电机FOC<font color='red'>控制</font>越来越流行?
如何实现对永磁同步电动机的控制
一、永磁同步电动机的工作原理 永磁同步电机通过定子产生的磁场与转子产生的磁场之间的磁力作用来实现动力传递。其定子上的齿槽通过三相交流电流来产生旋转磁场,而转子则通过永磁体产生恒定的磁场。当定子旋转磁场的频率与转子磁场的频率一致时,磁力作用相互抵消,使得转子能够同步运转。这种同步运转的特性使得永磁同步电机在工业领域得到广泛应用。 二、如何实现对永磁同步电动机的控制? 1、矢量控制: 矢量控制是目前应用最广泛的永磁同步电机控制策略之一。它基于电机的数学模型和空间矢量调制技术,通过控制电机的转子磁场和定子电流来实现对电机的精确控制。矢量控制可以实现高动态性能和高效率,适用于各种负载条件下的应用。 FOC算法流程可以叙述如下: (1)
[嵌入式]
如何实现对永磁同步电动机的<font color='red'>控制</font>?
长安深蓝汽车SL03上面使用的BMS控制板电路分析
今天看下长安深蓝汽车SL03上面使用的BMS控制板,如下图所示。 它的电池包是下图这个样子的,可以看到似乎一共有两个采集板和一个控制板,都布置在电池包的同一端,电芯的采样线束看起来似乎拉得比较长。 换个角度看下PACK后端的图片,看起来也是有一些采样线束从模组引线出来。 下面主要看下这个控制板,正面如下图,其尺寸大概为155mm*120mm*26mm,壳体呈黑色,塑料材质,分为上下两个部分;在其表面贴有铭牌,可以获知这个控制器是由重庆金美汽车电子公司来设计的,给长安供的产品。 这里插个内容,重庆金美汽车电子公司之前不太了解,特地去官网查了一下,它涉及的领域比较多,但基本都是汽车上面的ECU,客户有长安,金康等等。(
[嵌入式]
长安深蓝汽车SL03上面使用的BMS<font color='red'>控制</font>板电路分析

推荐帖子

请教关于6410上DDR内存的问题
我们将6410老开发板上的mobileDDR换成了DDR400(降频使用)的普通DDR,但一直跑步起来通过跟踪确定是内存的问题。我试着修改了时间参数、发送的命令,但一直不行,内存读写不正确。用示波器打过一些信号,除了个别的信号线有纹波(不影响逻辑)之外,其他都比较正常希望有做过的达人指点一下啊请教关于6410上DDR内存的问题关注再换另一种型号的内存。对比一下电压。具体的几个延迟设置。从理论上讲,这样换肯定没问题的,只要cpu别太挑剔。引用2楼shuiyan的回复:再
dujin 嵌入式系统
Verilog 黄金参考指南
Verilog黄金参考指南Verilog黄金参考指南这个东西比较好,就是再贵也要下载.
douglas816 嵌入式系统
芯片求教
本帖最后由dontium于2015-1-2313:11编辑请问我现在使用TPS62590,批量生产的时候经常遇到FB管脚击穿的情况。SMT回来还没怎么使用就坏了。电路为:芯片求教
yuxiangqiezi 模拟与混合信号
题目出来了欢迎大家加入群24321662讨论
本帖最后由paulhyde于2014-9-1509:00编辑欢迎大家加入群24321662讨论适合于2007年全国电子设计大赛主要针对控制类小车题目出来了欢迎大家加入群24321662讨论本帖最后由paulhyde于2014-9-1509:00编辑顶下!人满了就加这个:18743035回复:欢迎大家加入群24321662讨论本帖最后由paulhyde于2014-9-1509:00编辑欢迎各位加入本群!为电子设计大赛奋斗四天三
hhe001 电子竞赛
晒WEBENCH设计的过程+5V/0.5A 3.3V/0.5A双路输出设计
需求:输入,14到22V输出,5V/0.5A3.3V/0.5A,设计步骤:第一步参数设置,增加一路输出,修改电源电压和电流第二步,提交项目需求,检视项目细节第三步,创建项目前预览第四步,点击创建项目后等待系统完成设计第五步设计页面,可以下载原理图,pcb图,物料表,仿真参数等第六步,导出allegro原理图和封装库晒WEBENCH设计的过程+5V/0.5A3.3V/0.5A双路输出设计
youzizhile 模拟与混合信号
PFC电压和电流数字补偿器
大家好,最近在学习PFC的数字实现,阅读了一些文档之后对其中的电压环和电流环的数字补偿不是很理解,处在一种似懂非懂的状态,我从TI和Microchip官方网站求助之后也没有得到比较满意的回复,要么是找不到文档或应用笔记的原作者,要么就是没有回复。下面的链接是Microchip官网的一篇关于PFC数字实现的应用笔记:PFC数字实现前面的大部分都是可以理解的,从第13页介绍电流误差补偿器和电压误差补偿器开始就不明白,都是用的PI补偿,但是不明白为什么Kpi和Kpv会变成如下图所示,是
power_wong921 开关电源学习小组
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved