当前位置:首页 > 51单片机 > 正文内容

51单片机寄存器配置小技巧

整型数据转换二进制数据的技巧知识点:

该技巧比较适合应用在51单片机寄存器的配置方面;减少了我们的计算量。
思路——>我们比较习惯直接的整型数据;当我们需要配置寄存器,这时能不能直接利用该数据作为我们配置寄存器的数据呢?这过程需要将数据转换,例如将一个int 型  11110111 转换成 0xf7  该如何做到呢?
此时可以利用到##在C语言中的粘合作用,具体百度。

一,   #define   Bin(n)      LongToBin(0x##n##l) //注意该处l是L的小写,而不是1。

       此时使用时11110111则变为十六进制的0x11110111  而在此之前应先定义LongToBin(n)

二,    #define   LongToBin(n) \        

 (                               \

  ( ( n>>21) & 0x80 )|\

  ((n >> 18) & 0x40) | \

  ((n >> 15) & 0x20) | \

  ((n >> 12) & 0x10) | \

  ((n >>   9) & 0x08) | \

  ((n >>   6) & 0x04) | \

  ((n >>   3) & 0x02) | \

  ((n           ) & 0x01)   \

   

51单片机寄存器配置小技巧

扫描二维码推送至手机访问。

版权声明:本文由智凡单片机c语言入门发布,如需转载请注明出处。

分享给朋友:

相关文章

3*4矩阵键盘简单lcd1602密码锁控制

3*4矩阵键盘简单lcd1602密码锁控制

不好意思啊兄弟只能先把你写到这里了  跟真实的密码锁功能上相差甚远不过应该满足了你的要求还有之前你要求的3*3键盘只有9个数字  但是0~9是十个数字所以键盘我...

keil之c语言模块化编程初探

keil之c语言模块化编程初探

       很久就想要把自己曾经写过的程序变成一个自己的真正的程序库,曾经用过一个比较笨的方式——将每一个模块独立,复制粘贴。但是这样并不能够做到高效率的编程...

51单片机用STC12即可够用,STC15针脚变了,没必要用STC15

51单片机用STC12即可够用,STC15针脚变了,没必要用STC15

以前用了几片STC12C5A60S2,挺好用的。与传统51单片机针脚兼容,程序也差不多,又可以直接串口下载程序,非常方便。最近以为STC15比较新型,于是买了STC15F2K60S2,结果焊板时才发现...

STC单片机下载器的制作

STC单片机下载器的制作

       每一种单片机都有下载器,一般的均不集成下载电路,需要使用TTL电平进行下载,新的电脑往往不能够输出其所使用的电平信号。目前无论是笔记本还是台式机大...

内部扩展RAM和I/O口配置(理论)

内部扩展RAM和I/O口配置(理论)

内部扩展RAM的使用一、内部扩展RAM的使用       STC部分系列单片机中有很大的一部分内部扩展RAM,这部分RAM相当于传统8051单片机访问外部扩展...

阅读单片机程序代码

阅读单片机程序代码

1.看主循环,理解整体架构2.添加流程的注解,同时验证3.提取精华代码片段保存,可以经过简单修改重复利用4.API接口函数,理解每一个函数的意义5.修改代码验证自己的理解6.优化算法与代码7.反复理解...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。