单片机 > 单片机程序设计 > 详情

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

发布时间:2024-07-03 发布时间:
|

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


该技巧比较适合应用在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单片机寄存器配置小技巧


关键字:51单片机  寄存器配置 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
PIC 单片机遇到的串口接收问题