您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ GPIO_BIT函数代码示例

51自学网 2021-06-01 20:54:32
  C++
这篇教程C++ GPIO_BIT函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中GPIO_BIT函数的典型用法代码示例。如果您正苦于以下问题:C++ GPIO_BIT函数的具体用法?C++ GPIO_BIT怎么用?C++ GPIO_BIT使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了GPIO_BIT函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: gpio_get_cfg

static int gpio_get_cfg(int gpio){	struct s5p_gpio_bank *bank = gpio_get_bank(gpio);	int shift = GPIO_BIT(gpio) << 2;	return (readl(&bank->con) & CON_MASK(GPIO_BIT(gpio))) >> shift;}
开发者ID:andy737,项目名称:firebrickRemote,代码行数:7,


示例2: stm32_gpio_digital_write

void stm32_gpio_digital_write(int pin, int value){    if (value)        GPIO_SetBits(GPIO_PORT(pin), GPIO_BIT(pin));    else        GPIO_ResetBits(GPIO_PORT(pin), GPIO_BIT(pin));}
开发者ID:ebirger,项目名称:tinkerpal,代码行数:7,


示例3: pxa_gpio_set

voidpxa_gpio_set(int gpio, int on){    if (on)        GPSR(gpio) = GPIO_BIT(gpio);    else        GPCR(gpio) = GPIO_BIT(gpio);}
开发者ID:BreezeWu,项目名称:okl4_3.0,代码行数:8,


示例4: gpio_cfg_pin

void gpio_cfg_pin(int gpio, int cfg){	unsigned int value;	struct s5p_gpio_bank *bank = gpio_get_bank(gpio);	value = readl(&bank->con);	value &= ~CON_MASK(GPIO_BIT(gpio));	value |= CON_SFR(GPIO_BIT(gpio), cfg);	writel(value, &bank->con);}
开发者ID:andy737,项目名称:firebrickRemote,代码行数:10,


示例5: gpio_set_value

void gpio_set_value(int gp, int value){	struct davinci_gpio *bank;	bank = GPIO_BANK(gp);	if (value)		bank->set_data = 1U << GPIO_BIT(gp);	else		bank->clr_data = 1U << GPIO_BIT(gp);}
开发者ID:MOBO-Platform,项目名称:uboot_Webee210,代码行数:11,


示例6: gpio_set_value

int gpio_set_value(unsigned gpio, int value){	struct davinci_gpio *bank;	bank = GPIO_BANK(gpio);	if (value)		bank->set_data = 1U << GPIO_BIT(gpio);	else		bank->clr_data = 1U << GPIO_BIT(gpio);	return 0;}
开发者ID:0s4l,项目名称:u-boot-xlnx,代码行数:13,


示例7: GetPin

LEVEL CGpio::GetPin(GPIO_GROUP group, int num){	volatile ULONG *pDAT = (volatile ULONG *)GetDat(group);	if(pDAT == NULL) return ERROR;//	SetDir(group, num, GPIO_IN);	if((*pDAT & GPIO_BIT(num)) == GPIO_BIT(num))		return HIGH;	else		return LOW;}
开发者ID:gandy555,项目名称:MTM_V3,代码行数:13,


示例8: gpio_set_value

int gpio_set_value(unsigned gpio, int value){	unsigned int val;	struct s5p_gpio_bank *bank = gpio_get_bank(gpio);	val = readl(&bank->dat);	val &= ~DAT_MASK(GPIO_BIT(gpio));	if (value)		val |= DAT_SET(GPIO_BIT(gpio));	writel(val, &bank->dat);	return 0;}
开发者ID:andy737,项目名称:firebrickRemote,代码行数:13,


示例9: gpio_amlogic_direction_output

int gpio_amlogic_direction_output(struct gpio_chip *chip,unsigned offset, int value){	unsigned int reg,bit;	if(offset==GPIO_BSD_EN){		aml_clr_reg32_mask(P_PREG_PAD_GPIO0_O,1<<29);#ifndef CONFIG_MESON_TRUSTZONE		aml_set_reg32_mask(P_AO_SECURE_REG0,1<<0);#else		meson_secure_reg_write(P_AO_SECURE_REG0, meson_secure_reg_read(P_AO_SECURE_REG0) | (1<<0));#endif		if(value)			aml_set_reg32_mask(P_PREG_PAD_GPIO0_O,1<<31);//out put high		else			aml_clr_reg32_mask(P_PREG_PAD_GPIO0_O,1<<31);//out put low		aml_clr_reg32_mask(P_PREG_PAD_GPIO0_O,1<<30);//out put enable		return 0;	}	if(offset==GPIO_TEST_N){		if(value)			aml_set_reg32_mask(P_AO_GPIO_O_EN_N,1<<31);//out put high		else			aml_clr_reg32_mask(P_AO_GPIO_O_EN_N,1<<31);//out put low#ifndef CONFIG_MESON_TRUSTZONE		aml_set_reg32_mask(P_AO_SECURE_REG0,1);// out put enable#else		meson_secure_reg_write(P_AO_SECURE_REG0, meson_secure_reg_read(P_AO_SECURE_REG0) | (1<<0));#endif		return 0;	}	if(value){		reg=GPIO_REG(amlogic_pins[offset].out_value_reg_bit);		bit=GPIO_BIT(amlogic_pins[offset].out_value_reg_bit);		aml_set_reg32_mask(p_gpio_output_addr[reg],1<<bit);		gpio_print("out reg=%x,value=%x/n",p_gpio_output_addr[reg],aml_read_reg32(p_gpio_output_addr[reg]));	}	else{		reg=GPIO_REG(amlogic_pins[offset].out_value_reg_bit);		bit=GPIO_BIT(amlogic_pins[offset].out_value_reg_bit);		aml_clr_reg32_mask(p_gpio_output_addr[reg],1<<bit);		gpio_print("out reg=%x,value=%x/n",p_gpio_output_addr[reg],aml_read_reg32(p_gpio_output_addr[reg]));	}	reg=GPIO_REG(amlogic_pins[offset].out_en_reg_bit);	bit=GPIO_BIT(amlogic_pins[offset].out_en_reg_bit);	aml_clr_reg32_mask(p_gpio_oen_addr[reg],1<<bit);	gpio_print("==%s==%d/n",__FUNCTION__,__LINE__);	gpio_print("oen reg=%x,value=%x/n",p_gpio_oen_addr[reg],aml_read_reg32(p_gpio_oen_addr[reg]));	gpio_print("value=%d/n",value);	return 0;}
开发者ID:Kivutar,项目名称:linux-amlogic,代码行数:49,


示例10: gpio_direction_output

int gpio_direction_output(unsigned gpio, int value){	unsigned int val;	struct s5p_gpio_bank *bank = gpio_get_bank(gpio);	gpio_cfg_pin(gpio, EXYNOS_GPIO_OUTPUT);	val = readl(&bank->dat);	val &= ~DAT_MASK(GPIO_BIT(gpio));	if (value)		val |= DAT_SET(GPIO_BIT(gpio));	writel(val, &bank->dat);	return 0;}
开发者ID:andy737,项目名称:firebrickRemote,代码行数:15,


示例11: stm32_gpio_set_pin_mode

int stm32_gpio_set_pin_mode(int pin, gpio_pin_mode_t mode){    GPIO_InitTypeDef GPIO_InitStructure;    STM32_GPIO_PERIPH_ENABLE(GPIO_PERIPH(pin));    GPIO_InitStructure.GPIO_Pin = GPIO_BIT(pin);     GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;    /* XXX: not all pins are actually available */    switch (mode)    {    case GPIO_PM_INPUT:        STM32_GPIO_PIN_TYPE_IN(GPIO_InitStructure);        GPIO_Init(GPIO_PORT(pin), &GPIO_InitStructure);        break;    case GPIO_PM_OUTPUT:        STM32_GPIO_PIN_TYPE_OUT(GPIO_InitStructure);        GPIO_Init(GPIO_PORT(pin), &GPIO_InitStructure);        break;    case GPIO_PM_INPUT_PULLUP:        STM32_GPIO_PIN_TYPE_IN_PU(GPIO_InitStructure);        GPIO_Init(GPIO_PORT(pin), &GPIO_InitStructure);        break;    case GPIO_PM_INPUT_PULLDOWN:        STM32_GPIO_PIN_TYPE_IN_PD(GPIO_InitStructure);        GPIO_Init(GPIO_PORT(pin), &GPIO_InitStructure);        break;    default:        tp_err("Pinmode %d is not supported yet/n", mode);        return -1;    }    return 0;}
开发者ID:ebirger,项目名称:tinkerpal,代码行数:34,


示例12: __gpio_set

void __gpio_set(int gpio, u32 value){	int port = GPIO_PORT(gpio);	int bit = GPIO_BIT(gpio);	writel(value, __GPIO_BASE(port) + (0x4 << bit));}
开发者ID:a-rubini,项目名称:bathos,代码行数:7,


示例13: pnx4008_gpio_unregister_pin

int pnx4008_gpio_unregister_pin(unsigned short pin){	unsigned long bit = GPIO_BIT(pin);	int ret = -EFAULT;	/* Not registered */	gpio_lock();	if (GPIO_ISBID(pin)) {		if (~access_map[GPIO_INDEX] & bit)			goto out;		access_map[GPIO_INDEX] &= ~bit;	} else if (GPIO_ISRAM(pin)) {		if (~access_map[GPIO_INDEX] & bit)			goto out;		access_map[GPIO_INDEX] &= ~bit;	} else if (GPIO_ISMUX(pin)) {		if (~access_map[MUX_INDEX] & bit)			goto out;		access_map[MUX_INDEX] &= ~bit;	} else if (GPIO_ISOUT(pin)) {		if (~access_map[OUTP_INDEX] & bit)			goto out;		access_map[OUTP_INDEX] &= ~bit;	} else if (GPIO_ISIN(pin)) {		if (~access_map[INP_INDEX] & bit)			goto out;		access_map[INP_INDEX] &= ~bit;	} else		goto out;	ret = 0;out:	gpio_unlock();	return ret;}
开发者ID:E-LLP,项目名称:n900,代码行数:35,


示例14: __gpio_get

/* The following functions don't check the gpio value, for speed */u32 __gpio_get(int gpio){	int port = GPIO_PORT(gpio);	int bit = GPIO_BIT(gpio);	return readl(__GPIO_DAT(port)) & (1 << bit);}
开发者ID:a-rubini,项目名称:bathos,代码行数:8,


示例15: gumstix_init

static int __init gumstix_init(void){	printk("gumstix_init: Initialising board.../n"); 	pxa_map_io();	pxa_generic_init(); 	/* Set up nPWE */	pxa_gpio_mode(GPIO49_nPWE_MD);	/* Set up the chip selects */ 	pxa_gpio_mode(GPIO15_nCS_1_MD);	(void) platform_add_devices(devices, ARRAY_SIZE(devices));		pxa_gpio_func(36, GPIO_MODE, GPIO_IN);	/* Set rising edge detect for GPIO 36 */ 	GFER(36) &= ~GPIO_BIT(36); 	GRER(36) |= (GPIO_BIT(36)); 	/* We assume that the bootloader has set up the rest for us */ 	//        set_irq_type(IBOX_ETH_IRQ, IRQT_RISING);		return 0;}
开发者ID:CSU-GH,项目名称:okl4_3.0,代码行数:26,


示例16: gpio_amlogic_get

int gpio_amlogic_get(struct gpio_chip *chip,unsigned offset){	unsigned int reg,bit;	gpio_print("==%s==%d/n",__FUNCTION__,__LINE__);	reg=GPIO_REG(amlogic_pins[offset].input_value_reg_bit);	bit=GPIO_BIT(amlogic_pins[offset].input_value_reg_bit);	return aml_get_reg32_bits(p_gpio_input_addr[reg],bit,1);}
开发者ID:Kivutar,项目名称:linux-amlogic,代码行数:8,


示例17: gpio_direction_input

int gpio_direction_input(int gp){	struct davinci_gpio *bank;	bank = GPIO_BANK(gp);	setbits_le32(&bank->dir, 1U << GPIO_BIT(gp));	return 0;}
开发者ID:MOBO-Platform,项目名称:uboot_Webee210,代码行数:8,


示例18: gpio_get_value

int gpio_get_value(unsigned gpio){	unsigned int value;	struct s5p_gpio_bank *bank = gpio_get_bank(gpio);	value = readl(&bank->dat);	return !!(value & DAT_MASK(GPIO_BIT(gpio)));}
开发者ID:andy737,项目名称:firebrickRemote,代码行数:8,


示例19: gpio_amlogic_direction_input

int gpio_amlogic_direction_input(struct gpio_chip *chip,unsigned offset){	unsigned int reg,bit;	gpio_print("==%s==%d/n",__FUNCTION__,__LINE__);	reg=GPIO_REG(amlogic_pins[offset].out_en_reg_bit);	bit=GPIO_BIT(amlogic_pins[offset].out_en_reg_bit);	aml_set_reg32_mask(p_gpio_oen_addr[reg],1<<bit);	return 0;}
开发者ID:Kivutar,项目名称:linux-amlogic,代码行数:9,


示例20: gpio_get_value

int gpio_get_value(int gp){	struct davinci_gpio *bank;	unsigned int ip;	bank = GPIO_BANK(gp);	ip = in_le32(&bank->in_data) & (1U << GPIO_BIT(gp));	return ip ? 1 : 0;}
开发者ID:MOBO-Platform,项目名称:uboot_Webee210,代码行数:9,


示例21: gpio_direction_output

int gpio_direction_output(int gp, int value){	struct davinci_gpio *bank;	bank = GPIO_BANK(gp);	clrbits_le32(&bank->dir, 1U << GPIO_BIT(gp));	gpio_set_value(gp, value);	return 0;}
开发者ID:MOBO-Platform,项目名称:uboot_Webee210,代码行数:9,


示例22: gpio_read

static inline uint32_tgpio_read(struct tegra_gpio_softc *sc, bus_size_t reg, struct gpio_pin *pin){	int bit;	uint32_t val;	bit = GPIO_BIT(pin->gp_pin);	val = bus_read_4(sc->mem_res, reg + GPIO_REGNUM(pin->gp_pin));	return (val >> bit) & 1;}
开发者ID:2asoft,项目名称:freebsd,代码行数:10,


示例23: gpio_set_rate

void gpio_set_rate(int gpio, int mode){	unsigned int value;	struct s5p_gpio_bank *bank = gpio_get_bank(gpio);	value = readl(&bank->drv);	value &= ~RATE_MASK(GPIO_BIT(gpio));	switch (mode) {	case EXYNOS_GPIO_DRV_FAST:	case EXYNOS_GPIO_DRV_SLOW:		value |= RATE_SET(GPIO_BIT(gpio));		break;	default:		return;	}	writel(value, &bank->drv);}
开发者ID:andy737,项目名称:firebrickRemote,代码行数:19,


示例24: gpio_set_pull

void gpio_set_pull(int gpio, int mode){	unsigned int value;	struct s5p_gpio_bank *bank = gpio_get_bank(gpio);	value = readl(&bank->pull);	value &= ~PULL_MASK(GPIO_BIT(gpio));	switch (mode) {	case EXYNOS_GPIO_PULL_DOWN:	case EXYNOS_GPIO_PULL_UP:		value |= PULL_MODE(GPIO_BIT(gpio), mode);		break;	default:		break;	}	writel(value, &bank->pull);}
开发者ID:andy737,项目名称:firebrickRemote,代码行数:19,


示例25: GPIO_BIT

void CGpio::SetPin(GPIO_GROUP group, int num, LEVEL level){	volatile ULONG *pDAT = (volatile ULONG *)GetDat(group);	if(pDAT == NULL) return;//	SetDir(group, num, GPIO_OUT);	(level) ? (*pDAT |= GPIO_BIT(num)) : (*pDAT &= ~GPIO_BIT(num));}
开发者ID:gandy555,项目名称:MTM_V3,代码行数:10,


示例26: ti_arm_mcu_pin_mode_i2c

static inline void ti_arm_mcu_pin_mode_i2c(int pin, int scl, int i2c_af){    ti_arm_mcu_periph_enable(ti_arm_mcu_gpio_periph(pin));    if (i2c_af)        MAP_GPIOPinConfigure(i2c_af);    MAP_GPIOPinTypeI2C(ti_arm_mcu_gpio_base(pin), GPIO_BIT(pin));    if (scl)        ti_arm_mcu_pin_config(pin, GPIO_PIN_TYPE_STD_WPU);    else        ti_arm_mcu_pin_config(pin, GPIO_PIN_TYPE_OD);}
开发者ID:ebirger,项目名称:tinkerpal,代码行数:11,


示例27: gpio_amlogic_set

void	gpio_amlogic_set(struct gpio_chip *chip,unsigned offset, int value){	unsigned int reg,bit;	reg=GPIO_REG(amlogic_pins[offset].out_value_reg_bit);	bit=GPIO_BIT(amlogic_pins[offset].out_value_reg_bit);	gpio_print("==%s==%d/n",__FUNCTION__,__LINE__);	if(value)		aml_set_reg32_mask(p_gpio_output_addr[reg],1<<bit);	else		aml_clr_reg32_mask(p_gpio_output_addr[reg],1<<bit);}
开发者ID:Kivutar,项目名称:linux-amlogic,代码行数:11,


示例28: gpio_config_uart

/* * Routine: gpio_config_uart * Description: Force GPIO_PI3 low on Seaboard so UART4 works. */void gpio_config_uart(void){	int gp = GPIO_PI3;	struct gpio_ctlr *gpio = (struct gpio_ctlr *)NV_PA_GPIO_BASE;	struct gpio_ctlr_bank *bank = &gpio->gpio_bank[GPIO_BANK(gp)];	u32 val;	/* Enable UART via GPIO_PI3 (port 8, bit 3) so serial console works */	val = readl(&bank->gpio_config[GPIO_PORT(gp)]);	val |= 1 << GPIO_BIT(gp);	writel(val, &bank->gpio_config[GPIO_PORT(gp)]);	val = readl(&bank->gpio_out[GPIO_PORT(gp)]);	val &= ~(1 << GPIO_BIT(gp));	writel(val, &bank->gpio_out[GPIO_PORT(gp)]);	val = readl(&bank->gpio_dir_out[GPIO_PORT(gp)]);	val |= 1 << GPIO_BIT(gp);	writel(val, &bank->gpio_dir_out[GPIO_PORT(gp)]);}
开发者ID:Aorjoa,项目名称:bootloader,代码行数:24,


示例29: intr_write_masked

/* -------------------------------------------------------------------------- * * Interrupts * */static inline voidintr_write_masked(struct tegra_gpio_softc *sc, bus_addr_t reg,    struct tegra_gpio_irqsrc *tgi, uint32_t val){	uint32_t tmp;	int bit;	bit = GPIO_BIT(tgi->irq);	tmp = 0x100 << bit;		/* mask */	tmp |= (val & 1) << bit;	/* value */	bus_write_4(sc->mem_res, reg + GPIO_REGNUM(tgi->irq), tmp);}
开发者ID:2asoft,项目名称:freebsd,代码行数:17,


示例30: gpio_set_drv

void gpio_set_drv(int gpio, int mode){	unsigned int value;	struct s5p_gpio_bank *bank = gpio_get_bank(gpio);	value = readl(&bank->drv);	value &= ~DRV_MASK(GPIO_BIT(gpio));	switch (mode) {	case EXYNOS_GPIO_DRV_1X:	case EXYNOS_GPIO_DRV_2X:	case EXYNOS_GPIO_DRV_3X:	case EXYNOS_GPIO_DRV_4X:		value |= DRV_SET(GPIO_BIT(gpio), mode);		break;	default:		return;	}	writel(value, &bank->drv);}
开发者ID:andy737,项目名称:firebrickRemote,代码行数:21,



注:本文中的GPIO_BIT函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ GPIO_CFG函数代码示例
C++ GPIOSetValue函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。