您现在的位置是:首页 > 数字电源 > 技术解析

单片机入门:寄存器简易控制教程解读

时间:2018-03-07 来源:

单片机在电学里面,属于很简单的一种器件,外表看,就是一个芯片,长着很多的脚。内部,就是一堆寄存器。不同的单片机,外部表现就是形状和引脚数量和引脚名称可能不一样,内部,就是寄存器名称不一样。

本文引用地址: http://power.21ic.com//digi/technical/201803/60106.html

我们要做的,就是写程序控制单片机里面的寄存器,然后通过引脚表现出来完成各种电子产品。

所以,你在看别人写的程序的时候,会经常看到给单片机寄存器赋值的语句。下面就以最简单的控制51单片机引脚高低电平来说明一下。(不要总是存在51单片机已经淘汰的想法,51单片机至今任然是出货量最大的单片机,并且各大公司每年都有新款的51单片机推出,功能越来越强劲,做产品,要选最合适的单片机,而不要总想用牛逼的单片机。)

例如,单片机P1口有8个引脚,分别为P1.0~P1.7,如果想让P1口的8个引脚都输出高电平,是这么写:P1=0XFF;如果想让P1口的8个引脚都输出低电平,是这么写:P1=0X00;如果只让P1.0输出高电平,其他引脚输出低电平,是这么写:P1=0X01......

这些值是怎么来的呢?

计算方法:

 

 

一个数,前面以0X开头,标示后面的数是十六进制数。所以首先,我们先要知道十进制和十六进制的转换。

十六进制:0 1 2 3 4 5 6 7 8 9 A B C D E F

十进制: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

以上十六进制和十进制是对应关系,例如B对应11。

单片机和计算机一样,是以“位”为最小单片机,例如,P1是一个8位的寄存器。P1寄存器的8个位名称分别是:P1.7 P1.6 P1.5 P1.4 P1.3 P1.2 P1.1 P1.0

上面的0X开头的数,是以4个“位”为一个单位进行计算,以8421码进行相加计算,听这里很迷糊吧。举个例子就明白了。

你可以做一个这样的表格:

 

 

从上表看出,把寄存器的“位”,从高到低排列,然后以4个为一组,对应的8421码如上图所示。

给寄存器写值,实际上就是给它的每个位写0或者1,例如要使得哪个引脚为高电平,就给对应的位写1;要使得哪一个引脚为低电平,就给对应的位写0。然后把对应为1的8421加起来,以4个位为一组。

例如,我们要让每一个引脚都输出高电平,就是每个位的值都为1,那对应寄存器的高四位,8+4+2+1=15,15对应的是十六进制的F,再看寄存器的低四位,8+4+2+1=15,还是对应F,所以最后的值就是0xFF。

再看,如果让每一个引脚都输出低电平,就是每个位的值都是1,前面说过,只有对应位是1,才把它们的8421加起来,现在都是0,所以都不用加,结果就是0x00。

再看,如果只让P1.0引脚是高电平,其他引脚输出低电平,那么,只有P1.0对应的位是1,其它的位是0,所以,只需要取P1.0上面的1码,所以结果就是0x01。

再看,如果让P1.0、P1.1、P1.7、P1.5输出高电平,其它引脚输出低电平,那么对应的值如下图所示:

我们看寄存器的高四位,取对应1上面的码8+2=10,10对应十六进制的A,再看寄存器的低四位,取对应1上面的码2+1=3,3对应的十六进制还是3,所以结果就是0XA3,这是,你写P1=0XA3,就可以使得引脚该高的高,该低的低了。

不管是51的8位寄存器,还是ARM的32位寄存器,寄存器中的每一个位都有一定的用意,这些用意可以查看单片机的用户手册得知,你只需要按照你的要求,给对应的位写1或者0,然后利用上面的方法得出结果,就可以操作单片机的寄存器了。

换一批

延伸阅读

[资讯] 一种新型光伏控制器PWM精确控制的解决方案

一种新型光伏控制器PWM精确控制的解决方案

摘 要: 本文针对现有光伏控制器控制模式的不足,提出一种精粗调组合的新型PWM精确控制的解决方案,将太阳能电池分成N个独立的太阳能子阵,只令一路子阵采用PWM控制作为精调......

关键字:控制器 精确 光伏

[资讯] 智能灵活的大电流 DC/DC 控制器简化电信和数据通信系统中的电源

智能灵活的大电流 DC/DC 控制器简化电信和数据通信系统中的电源

电信和数据通信系统中常见的下一代路由器和交换机的复杂性和可扩展性不断提高,这给电源制造带来了压力,因为人们需要提供智能灵活、可横跨多种平台扩展的高效率电源解决方案。系统设计师经常会需要几种基础架构变体,以能够提供高、中、低端系统,且每种系统......

关键字:DC/DC 控制器 电源

[资讯] “跨界智能化”将有望为未来照明带来新的火花?

“跨界智能化”将有望为未来照明带来新的火花?

伏波,广东省高级工业设计师、副教授,现任广东轻工职业技术学院艺术设计学院工业设计系主任、全国机械行指委工业设计教指委委员、国家高职教育艺术设计(工业设计)专业教学资源库建设工作子项目负责人、广东省第一批省级高职教育重点专业建设项目负责人;拥......

关键字:LED照明 智能照明 智能化控制

[资讯] 100W真做到了:USB充电大跃进

100W真做到了:USB充电大跃进

台湾钰创科技(Etron)今天宣布推出新款USB供电芯片“EJ888”,全球第一个符合“USB Power Delivery Rev. 1.0”供电规范,最大功率达到了惊人的100W,是......

关键字:USB充电 供电芯片 闪存控制器

[资讯] 德州仪器推出业界首款支持动态温度补偿电感器电流传感的模拟 DC/DC 控制器

德州仪器推出业界首款支持动态温度补偿电感器电流传感的模拟 DC/DC 控制器

20V DC/DC 同步降压控制器以最小电感器尺寸实现超过 95% 的效率21ic讯 日前,德州仪器 (TI) 宣布推出首款支持远程双极结晶体管 (BJT) 温度补偿电感器电流传感的模拟 DC/DC......

关键字:DC-DC控制器 温度补偿 电感器 电流传感

[疯狂史] 电子工程师的八种级别

电子工程师的八种级别

当你60岁时呢?对于那些渴望成为工程师的工程师来说,最好的职业生涯出路是什么呢?开个玩笑,如果我告诉你,工程师可分为八种级别,你会怎么想呢?......

关键字:电子工程师

[新鲜事] 谷歌上亿大奖空置11年无人领取!难道真的没人眼馋吗?

谷歌上亿大奖空置11年无人领取!难道真的没人眼馋吗?

Google在11年前为了激励民间航天业的发展,曾设立探月大奖赛,只要满足一定条件就可以领取高达3000万美元(约合人民币1.9亿)奖金,但是直到11年后大奖还是名花无主。......

关键字:谷歌 民间航天业
发表评论 共有条评论
用户名: 验证码:

精确稳定 让平均电流法帮你实现模块电源并联

精确稳定 让平均电流法帮你实现模块电源并联

今天要为大家介绍的是平均电流法,这种方法能够精确稳定的帮助工程师实现电源模块的并……

九款最简单的电子镇流器电路图原理图分析

九款最简单的电子镇流器电路图原理图分析

从工作原理而言,电子镇流器是一个电源变换电路,它将交流输入市电电源的波形、频率和……

干货|交流接触器常用接线电路图和实物图

干货|交流接触器常用接线电路图和实物图

今天分享一些电气知识中的交流接触器常用接线电路图和实物图,从简单到复杂。

……

项目外包