整型数据转换二进制数据的技巧知识点:
该技巧比较适合应用在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) \
)
上一篇:89C51与STM8简要对比
下一篇:Keil 51 Asm & C 混搭
推荐阅读
史海拾趣
随着技术的不断进步,Dresden Elektronik公司不断加大对研发的投入,致力于推动技术的创新和突破。一次偶然的实验中,公司的研发团队发现了一种新的材料,能够显著提高电子元件的性能和稳定性。这一发现被迅速转化为产品,并成功推向市场,使公司的产品在竞争中脱颖而出。
1969年,大金成功开发了一台室外机连接多台室内机的家用多联系统空调。这一创新产品不仅提高了空调的能效比,还满足了大型住宅和办公场所的多样化需求。多联系统空调的诞生,使得大金在家用中央空调领域取得了领先地位。
Essentra Components公司一直将客户服务放在首位,通过提供优质的售前咨询、售中支持和售后服务,赢得了客户的广泛赞誉。公司不仅为客户提供了丰富的产品选择,还根据客户的具体需求提供定制化的解决方案。此外,公司还建立了完善的物流配送体系,确保产品能够及时、准确地送达客户手中。这些努力使得Essentra Components在客户中树立了良好的口碑,为公司的发展奠定了坚实的基础。
今天收到网友的邮件,看来有必要来介绍一下这一块的东西啦! matlab的强大,可以从它的功能看的出来! 应用 MATLAB 产品族可以用来进行以下各种工作: ● 数值分析 ● 数值和符号计算 ● 工程与科学绘图 ● 控制系统 ...… 查看全部问答∨ |
|
wince启动时出现first chance exception in nk.exe?? 在将系统镜像从开发工作站通过网络下载到开发板的时候,开发工作站上看到镜像下载过去了,wince开始启动。但是wince系统启动不起来,调试时会出现一个错误: First chance exception in nk.exe(0xC00000C0 Invalid system service) 各位老大,这 ...… 查看全部问答∨ |
|
.net compact framework目标版本不支持后期绑定问题? 我在pc上用vb.net做好的程序 上位机发送数据到下位机,测试没有问题,然后在vs2005提供的wince方针环境下运行出现.net compact framework目标版本不支持后期绑定问题 下面是程序 红色字体是报错的地方 之前没有做过相关的东 ...… 查看全部问答∨ |
|
/ { model = "MPC8313ERDB"; compatible = "mpc83xx"; #address-cells = <1>; & ...… 查看全部问答∨ |
在6.0下接上USB OTG设备是,正常情况下应该弹出个倒即时对话框,可是我的现在就没有出现?硬件接线都是正常的,通过USB线与PC连接ActiveSync正常… 查看全部问答∨ |
当板子和PC机直连的时候,如果不知道板子的IP地址,那么PC机可获取到其IP地址?? 除了查询PC机的ARP列表外地址外还有别的方法吗? 板子上是否需要加些工作??比如检测到连接后主动广播下自己的地址》?? 有较好的方 ...… 查看全部问答∨ |