51单片机分外功用寄存器操作进程

发布时间:2023-08-09  

  51单片机特有的程序语法以及 Keil 软件的根柢操作进程,请咱们必定要有耐性。

  咱们首要是用 C 言语来对单片机编程,而有的单片机有那么几条很分外的特有的编程句子,51 单片机就有,先介绍 2 条。


  榜首条句子是:sfr P0 = 0x80;

  sfr 这个要害字,是 51 单片机特有的,他的作用是界说一个单片机分外功用寄存器(special function register)。51 单片机内部有许多个小模块,每个模块寓居在具有仅有房间号的房间内,一同每个模块都有 8 个操控开关。P0 便是一个功用模块,就住在了 0x80 这个房间里,咱们便是经过设置 P0 内部这个模块的 8 个开关,来让单片机的 P0 这 8 个 IO 口输出高电平或许低电平的。而 51 单片机内部有许多寄存器,假定咱们想运用的话有必要提行进行 sfr 声明。不过 Keil 软件现已把悉数这些声明都预先写好并保存到一个专门的文件中去了,咱们要用的话只需文件开端添加一行#include即可,这个在后边有用法详解。


  第二条句子是:sbit LED = P0^0;

  这个 sbit,便是对方才所说的 SFR 里面的 8 个开关其间的一个进行界说。经过上边第二条句子后,往后只需在程序里写 LED,就代表了 P0.0 口(“^”这个符号在数字键 6 上边),留神这个 P 有必要大写,也便是说咱们给 P0.0 又取了一个更形象的姓名叫做 LED。


  了解了这两个句子后,咱们来大约看一下单片机的分外功用寄存器。请留神,每个类型的单片机都会配有出产厂商所编写的数据手册(Datasheet),所以咱们来看一下 STC89C52 的数据手册,从 21 页到 24 页,悉数是对分外功用寄存器的介绍以及地址映射列表。咱们在运用这个寄存器之前,有必要对这个寄存器的地址进行阐明。是不是花花绿绿的太多了,记不住啊,这个没联络的,不需求你记住,了解一下,后边大有些我会逐步给咱们阐明,稀有些需求用到的时分,自个过来查手册就能够了,做技能不是为了唐塞考试,你能够随时翻阅手册查找你需求的材料。


  如图 2-7,是截取的手册中第 22 页最下边的一个表格。

  51单片机分外功用寄存器操作进程

  图 2-7 IO 口分外功用寄存器

  咱们来看一下这个表,其间 P4 口 STC89C52 对规范 51 的拓宽,咱们先疏忽它,只看前边的 P0、P1、P2、P3 这 4 个,每个 P 口自身又有 8 个操控端口。咱们能够联络咱们的开发板原理图或许图 2-1 来看,那么这么就断定了咱们的单片机一共有 32 个 IO 口(IO,Input 和 Output,别离是输入和输出)。


  其间 P0 口地址的地址是 0x80,一共有从 7 到 0 这 8 个 IO 口操控位,后边有个 Reset Value(复位值),这个很首要,是咱们看寄存器必看的一个参数,8 个操控位复位值悉数都是 1。


  这便是通知咱们,每逢单片机上电复位的时分,悉数的引脚的值默许是都是 1,即高电平,咱们在方案电路的时分也要充沛的思考这个疑问。


  那么上边那 2 条句子,咱们写 sfr 的时分,有必要要根据手册里的这个地址(Add)去写,写sbit 的时分,就能够直接将一个字节其间某一位取出来。咱们编程的时分,也有现成的写好寄存器地址的头文件,咱们直接包括该头文件就能够了,不需求逐一去写了。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    我们就以上图中自底向上的顺序逐一介绍一下各区的功能以及访问方法。 工作寄存器工作寄存器区为R0-R7,它们各为1个字节,但51单片机一共有4组工作寄存器单片机在工作过程中只能有一组工作寄存器工作。各个工作寄存器的地址以及工作寄存器组......
    。累加器非常繁忙,是单片机的执行程序瓶颈,制约了单片机工作效率的提高,现在已经有些单片机用寄存器阵列来代替累加器ACC。 3)寄存器B 寄存器B是8位寄存器,主要用于乘除运算。乘法运算时,B中存......
    栈区。一个 8 位的堆栈指针(SP),用于指向堆栈区。单片机复位后,堆栈指针 SP 为 07H,指向了工作寄存器组 0 中的 R7,因此,用户初始化程序都应对 SP 设置初值,一般设置在 80H 以后......
    单片机内部256字节RAM存储分布 由图1中,我们可以发现,MCS-51单片机的地址范围是00H到7FH (52系列延伸到FFH),为8位地址,所以最大可寻址的范围为256个单元地址。这些地址被分成4......
    为256个单元地址 00H到1FH 共32字节,分成四个工作寄存器区,每区有寄存器 R0~R7。对此区域,可以使用 R0~R7 来操作,代码短捷,但是,只有一个当前工作区是可以这样读写的。对此区域,也可以使用字节地址......
    为256个单元地址 • 00H到1FH 共32字节,分成四个工作寄存器区,每区有寄存器 R0~R7。对此区域,可以使用 R0~R7 来操作,代码短捷,但是,只有一个当前工作......
    为256个单元地址 • 00H到1FH 共32字节,分成四个工作寄存器区,每区有寄存器 R0~R7。对此区域,可以使用 R0~R7 来操作,代码短捷,但是,只有一个当前工作......
    是8051系列单片机原理和内部结构基础介绍 外部引脚功能 存储空间配置和功能  片内RAM结构和功能  特殊功能寄存器的用途和功能  程序计数器PC的作用和基本工作方式  I/O端口结构、工作......
    :      MCS-51单片机中,除了程序计数器PC和4组工作寄存器组外,其它所有的寄存器均为特殊功能寄存器(SPR),分散在片内RAM区的高128字节中,地址范围为80H~0FFH。SFR中有11个寄存器......
    令系统仅有两条:MOVC A,@A+DPTR 和 MOVC A,@A+PC 复位后,程序计数器PC的内容为0000H MCS-51最多可外扩64K字节程序存储器 数据存储器 从00H~1FH的32B单元是4个工作寄存器组......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>