欢迎光临散文网 会员登陆 & 注册

16进制取值小工具

2023-04-05 19:49 作者:ecircuitlab  | 我要投稿


    Windows中的程序员计算器    

经常给芯片写驱动的都会有个痛苦的经历,芯片中某个寄存器包括的功能会比较多,通常使用几个bit的组合用来选择特定的功能,写驱动包时,这些功能都需要写进去,通常都会在头文件把这些功能提前定义好,然后依习惯定义结构体去选择或者其他方式选择配置。

最难受的过程是头文件里要写的这些宏定义,通常情况下都是拿系统计算器调为程序员模式挨个取值,然后复制结果放到头文件中,但Windows系统自带的计算器,它的计算结果每隔4个bit会自动空格,每次复制后要自己手动删除空格,这让人有点崩溃。然后还有一个难以接受的是它只有bit 0,bit 4,bit 8这样的字节开头位,遇到比如32bit的位宽,要计算中间的bit26、bit27组合,自己还要去数一下...,经历数次折磨后的今天再次遇到这个问题,于是决定给自己写个工具来改变这种局势。

图片

图1. Win 11中的程序员计算器计算bit26和bit27的16进制值

    CalcHex诞生    

CalcHex不去做复杂的计算,就单纯的实现清晰显示每个bit,点击对应的bit后会根据上次是 “1” 自动变为 “0”,上次是  “0” 自动变为 “1”,bit位为 “1” 时自动高亮,这样更容易被注意到,如下。

图片

图2. CalcHex有清晰的bit位置指示,bit位为 “1” 时自动高亮

翻了很多的芯片规格书,总结下来为芯片寄存器取值位宽多数为32bit、24bit、16bit、8bit,所以为CalcHex加了对应32bit、24bit、16bit、8bit的16进制输出框,点击bit位后,对应的16进制数据实时显示在32bit、24bit、16bit、8bit的16进制输出框中,并且很友好的自动加了字符“0x”,还放了复制按钮,直接点击即可复制到系统粘贴板,然后到工程头文件中 Ctrl+V即可,可以说比Windows自带的工具好用了很多。当然,如果操作了一堆取值,想要复位下,这种需求也是常有的,所以也放了个 “Clear ALL”按钮,点击复位所有bit为 “0”。

图片

图3. CalcHex使用界面

放上一个详细的操作说明图和操作动图如下。

图片

图4. CalcHex详细操作说明

图片

图5. CalcHex操作动图

小工具可关注公众号"ecircuitlab"购买,费用¥5,软件工作环境为Windows 64位,请注意确认自己的电脑支持运行后再购买。


* 著作权归公众号”ecircuitlab“所有。商业转载请联系作者获得授权,非商业转载请注明出处。


16进制取值小工具的评论 (共 条)

分享到微博请遵守国家法律