type c pin定义_在C中定义宏以设置和清除PIN的位

type c pin定义

Given a PIN (value in HEX) and bit number, we have to SET and then CLEAR given bit of the PIN (val) by using Macros.

给定一个PIN(十六进制值)和位数,我们必须使用宏将SET(设置),然后清除给定的PIN(值)位(值)。

Macros definitions:

宏定义:

    #define SET(PIN,N) (PIN |=  (1<<N))
#define CLR(PIN,N) (PIN &= ~(1<<N))

Here,

这里,

  • SET and CLR are the Macro names

    SET和CLR是宏名称

  • PIN is the value whose bit to set or/and clear

    PIN是要设置或清除的位的值

  • N is the bit number to set or/and clear

    N是要设置或清除的位数

Example:

例:

#include <stdio.h>
#define SET(PIN,N) (PIN |=  (1<<N))
#define CLR(PIN,N) (PIN &= ~(1<<N))
int main(){
unsigned char val = 0x11;
unsigned char bit = 2;
printf("val = %X\n",val);
//set  bit 2 of val
SET(val,bit);
printf("Aftre setting  bit %d, val = %X\n", bit, val);
//clear bit 2 of val
CLR(val,bit);
printf("Aftre clearing bit %d, val = %X\n", bit, val);	
return 0;	
}

Output

输出量

    val = 11
Aftre setting  bit 2, val = 15
Aftre clearing bit 2, val = 11

Explanation:

说明:

  • Initially val is 0x11, its binary value is "0001 0001".

    最初val为0x11 ,其二进制值为“ 0001 0001”

  • In the example, we are setting and clear bit 2 (please note start counting bits from 0 i.e. first bit is 0, second bit is 1 and third bit is 2).

    在该示例中,我们正在设置并清除位2(请注意从0开始计数位,即第一位为0,第二位为1,第三位为2)。

  • After calling Macro SET(val,bit), the bit number 2 (i.e. third bit) will be set/hight and the value of val will be "0001 0101" that will be 0x15 in Hexadecimal.

    调用Macro SET(val,bit)后 ,将设置2位(即第三位)/高,并且val的值将为“ 0001 0101” ,十六进制为0x15

  • And then, we are calling CLR(val,bit), after calling this Macro, the bit number 2 (i.e. third bit) will be cleared and the value of val will be "0001 0001" again, that is 0x11 in Hexadecimal.

    然后,我们调用CLR(val,bit) ,在调用此宏后,将清除位数2(即第三位),并且val的值将再次为“ 0001 0001” ,即十六进制为0x11

翻译自: https://www.includehelp.com/c-programs/define-macros-to-set-and-clear-bit-of-a-pin-in-c.aspx

type c pin定义

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/542344.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android9有深色模式吗,深色模式还是黑色模式?微信把所有人都搞懵了

原标题&#xff1a;深色模式还是黑色模式&#xff1f;微信把所有人都搞懵了前一阵子&#xff0c;微信正式加入了对“深色模式”的支持&#xff0c;这也是除了Windows Phone 版本以外微信第一次从系统层面支持深色模式。虽然这次更新离WWDC上的演示已经过去了9个月&#xff0c;但…

网站后端_Python+Flask.0007.FLASK构造跳转之301跳转与302重定向?

构造地址:说明: FLASK支持通过视图函数及传参来构造URL,而且未来修改URL可一次性修改,且默认构建会转义特殊字符和Unicode数据,这些工作不需要我们自己处理,且不仅支持在上下文中构造而且还支持在模版文件中构造#!/usr/bin/env python # -*- coding: utf-8 -*- ""&qu…

python插值程序_计算方法(2)——插值法(附Python程序)

给定一些数据&#xff0c;生成函数的方式有两种&#xff1a;插值&#xff0c;回归。插值而得到的函数通过数据点&#xff0c;回归得到的函数不一定通过数据点。下面给出拉格朗日插值&#xff0c;牛顿插值和Hermite插值的程序&#xff0c;具体原理可参考课本&#xff0c;不再赘述…

java中cbrt_Java Math类静态double cbrt(double d)示例

java中cbrt数学类静态double cbrt(double d) (Math Class static double cbrt(double d)) This method is available in java.lang package. 此方法在java.lang包中可用。 This method is used to find the cube root of the given parameter in the method. 此方法用于查找方法…

html中电子邮件怎么写,谈html mailto(电子邮件)实际应用

大家知道&#xff0c;mailto是网页设计制作中的一个非常实用的html标签&#xff0c;许多拥有个人网页的朋友都喜欢在网站的醒目位置处写上自己的电子邮件地址&#xff0c;这样网页浏览者一旦用鼠标单击一下由mailto组成的超级连接后&#xff0c;就能自动打开当前计算机系统中默…

python爬虫urllib 数据处理_Python 爬虫笔记之Urllib的用法

urllib总共有四个子模块,分别为request,error,parse,robotparserrequest用于发送request(请求)和取得response(回应)error包含request的异常,通常用于捕获异常parse用于解析和处理urlrobotparser用于robot.txt文件的处理urllib.request 模块import urllib.requestresponseurlli…

语法分析-C语言程序

⑴<C语言程序>——〉begin<语句串>end ⑵<语句串>——〉<语句>{&#xff1b;<语句>} ⑶<语句>——〉<赋值语句> ⑷<赋值语句>——〉ID&#xff1a;<表达式> ⑸<表达式>——〉<项>{<项> | -<项>…

python中对比数组长度_在Python中检索数组长度的首选方法

python中对比数组长度The __len__() is a method on container types. However, python also provides another option of retrieving the length of an array, using the method len(). __len __()是关于容器类型的方法。 但是&#xff0c;python还使用len()方法提供了另一个检…

html window 属性,html中window对象top 、self 、parent 等属性

top 属性返回最顶层的先辈窗口。该属性返回对一个顶级窗口的只读引用。如果窗口本身就是一个顶级窗口&#xff0c;top 属性存放对窗口自身的引用。如果窗口是一个框架&#xff0c;那么 top 属性引用包含框架的顶层窗口。下面的例子窗口是否在一个框架中&#xff0c;如果是&…

python随机抽签列表中的同学值日_神奇的大抽签--Python中的列表_章节测验,期末考试,慕课答案查询公众号...

神奇的大抽签--Python中的列表_章节测验,期末考试,慕课答案查询公众号更多相关问题下图表示几个植物类群的进化关系。下列叙述不正确的是[ ]A&#xff0e;最先出现的植物类群是甲B&#xff0e;乙和丙都是由甲进化来的请结合下图中的有关动物回答问题。(1)___的发育为不完全变态…

LightGBM中GBDT的实现

现在LightGBM开源了&#xff0c;这里将之前的一个文档发布出来供大家参考&#xff0c;帮助更快理解LightGBM的实现&#xff0c;整体思路应该是类似的。 LightGBM优雅&#xff0c;快速&#xff0c;效果好&#xff0c;希望LightGBM越来越好:) LightGBM中GBDT的实现 http://www.do…

python逗号分隔符_在Python中用逗号将数字打印为数千个分隔符

python逗号分隔符什么是质数&#xff1f; (What is a prime number?) Many times, while writing the code we need to print the large number separated i.e. thousands separators with commas. 很多时候&#xff0c;在编写代码时&#xff0c;我们需要打印大量的分隔符&…

html页面foot,HTML tfoot用法及代码示例

HTML中的标记用于提供页脚内容组。此标记在带有标题和正文的HTML表中使用&#xff0c;称为“thead”和“tbody”。 标记是表的子标记&#xff0c;是和的父标记。用法: // Table footer contents... 属性&#xff1a;标记包含HTML4.1支持但HTML5不支持的许多属性。align:设置文本…

Tensorflow学习笔记4:分布式Tensorflow

简介 Tensorflow API提供了Cluster、Server以及Supervisor来支持模型的分布式训练。 关于Tensorflow的分布式训练介绍可以参考Distributed Tensorflow。简单的概括说明如下&#xff1a; Tensorflow分布式Cluster由多个Task组成&#xff0c;每个Task对应一个tf.train.Server实例…

c语言指针访问 静态变量_使用C中的指针访问变量的值

c语言指针访问 静态变量As we know that a pointer is a special type of variable that is used to store the memory address of another variable. A normal variable contains the value of any type like int, char, float etc, while a pointer variable contains the me…

迭代器 java_Java设计模式8:迭代器模式

迭代器模式迭代器模式又叫做游标(Cursor)模式&#xff0c;其作用是提供一种方法访问一个容器元素中的各个对象&#xff0c;而又不暴露该对象的内部细节。迭代器模式结构迭代器模式由以下角色组成&#xff1a;1、迭代器角色负责定义访问和遍历元素的接口2、具体迭代器角色实现迭…

html二级下拉菜单模板,基于jQuery实现二级下拉菜单效果

本文通过代码实例详细介绍一下简单的二级下拉菜单是如何实现的&#xff0c;当然还有更为复杂的二级菜单&#xff0c;不过先学会如何制作简单的&#xff0c;分享给大家供大家参考&#xff0c;具体内容如下代码如下&#xff1a;下拉菜单nav a{text-decoration:none;}nav>ul>…

给定一个整数判断是否为素数_Ruby程序检查给定数字是否为素数

给定一个整数判断是否为素数检查素数 (Checking prime number) Before getting into writing the code, let us understand what exactly the prime numbers are? So that we could easily design its logic and implement it in the code. Prime numbers are those numbers w…

python 正则findall右斜杠_python中正则表达式的使用

本文将介绍几个最常用的正则符号&#xff0c;以及正则表达式的应用场景。如果说【数学表达式】刻画的是数字的内在规律&#xff0c;那么【正则表达式】则是用来刻画和描述字符串内在规律的表达式。记得刚接触python时学习过slice&#xff0c;replace&#xff0c;split等方法&am…

JavaScript | 用户定义函数的一些示例

1) Design a function, print message and assign the function to a variable and print it like a function 1)设计一个功能&#xff0c;打印消息并将该功能分配给变量&#xff0c;然后像打印功能一样打印 <html lang"en"><head><script>functi…