专栏首页嵌入式学习单片机与嵌入式系统中C语言的位运算小记

单片机与嵌入式系统中C语言的位运算小记

昨天编了个PIC的项目,对C语言里的位运算还是蛮有感悟的,特此记录一下。 譬如说,在程序中定义了一个char类型的变量, purge_short_enable_flag, //bit<0>-- start short circuit circle timing //bit<1>--short circuit enable //bit<2>--purge H2 enable 所以在复制的时候,一定要记得不要影响其他为,之前我在使能purge的时候,直接复制了,就像purge_short_enable_flag = 0x02,结果,pic跑起来就出问题了,因为这样就影响到了short的使能的,所以还是要purge_short_enable_flag |= 0x02,这样就没问题了。 用一个变量来控制好几个因素,有好处也有坏处,优点是节省了变量的使用,然而不仔细的话,很容易出错,code的时候要仔细点,不要编写代码,边听音乐。不过这在编了久了,心里自然有底,不过还是要是是提防,因为少个或的“|”符号,很难看出来的。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • C语言面试题——位域及大小端模式的理解

    a占4个bit、b占5个bit、c占7个bit,总共16bit,大小和short的一样大!执行完下面的三条语句之后

    用户4645519
  • codeblocks编译调试C语言二级指针小记

    下图时用codeblocks调试C语言的界面,codeblocks版本是17.12nosetup版,也为继承mingw,我用的编程器是tdm-gcc-5.1.0...

    用户4645519
  • iar8.32版本关于cmsis的说明

    平台是cubemx5.3 keil5.26 带freertos,使用iar8.32,在上图中的use cmsis 打勾与否都能编译通过。

    用户4645519
  • 高级信管 | 需求分析

    _______称为设计视图,它表示了设计模型中在架构方面具有重要意义的部分,即类、子系统、包和用例实现的子集。

    小团子
  • ——HyperLeger Fabric智能合约(链码)

    在Fabric中,智能合约也称为链码(chaincode),分为用户链码和系统链码。系统链码用来实现系统层面的功能,包括系统的配置,用户链码的部署、升级,用户交...

    又建一梦
  • 针对B端产品,如何顺利开展workshop?

    各位B端产品/需求分析的同学一定对workshop这个名词不陌生,它的中文名是需求访谈会。个人对C端产品不熟,本文也仅就B端产品的访谈聊一聊个人经验。本文适合0...

    物流IT圈
  • 基于RabbitMQ+Hessian+spring实现远程RPC调用

    对RPC通俗的理解就是,调用远程服务和调用本地服务一样透明化无感知。使用过dubbo和motan的同学肯定有这种感觉。实现RPC调用过程,无非解决两个问题:

    kl博主
  • java之this关键字和super关键字的区别

    绝命生
  • Elasticsearch——Rest API中的常用用法

    本篇翻译的是Elasticsearch官方文档中的一些技巧,是使用Elasticsearch必不可少的必备知识,并且适用于所有的Rest Api。 返回数...

    用户1154259
  • python_day19_Django-

      全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(...

    py3study

扫码关注云+社区

领取腾讯云代金券