历史上的今天
今天是:2025年01月12日(星期日)
2020年01月12日 | IAR编译STM8S 中的脚位操作对库函数的一点修改
2020-01-12 来源:eefocus
IAR编译STM8S 自带的库函数都知道,IO口中有个每局定义如下:
typedef enum
{
GPIO_PIN_0 = ((u8)0x01), /*!< Pin 0 selected */
GPIO_PIN_1 = ((u8)0x02), /*!< Pin 1 selected */
GPIO_PIN_2 = ((u8)0x04), /*!< Pin 2 selected */
GPIO_PIN_3 = ((u8)0x08), /*!< Pin 3 selected */
GPIO_PIN_4 = ((u8)0x10), /*!< Pin 4 selected */
GPIO_PIN_5 = ((u8)0x20), /*!< Pin 5 selected */
GPIO_PIN_6 = ((u8)0x40), /*!< Pin 6 selected */
GPIO_PIN_7 = ((u8)0x80), /*!< Pin 7 selected */
GPIO_PIN_LNIB = ((u8)0x0F), /*!< Low nibble pins selected */
GPIO_PIN_HNIB = ((u8)0xF0), /*!< High nibble pins selected */
GPIO_PIN_ALL = ((u8)0xFF) /*!< All pins selected */
}GPIO_Pin_TypeDef;
然后在调用 GPIO_Pin_TypeDef 时,如果传递更多的参数时会提示一下红色字体,虽然不会有什么影响,但看着也别扭
如函数 void GPIO_WriteBit(GPIO_TypeDef* GPIOx, GPIO_Pin_TypeDef GPIO_Pin, BitAction GPIO_BitVal)
操作void GPIO_WriteBit(GPIOA, GPIO_PIN_0 , BitAction GPIO_BitVal) //不会提示报警
操作void GPIO_WriteBit(GPIOA, GPIO_PIN_0|PIO_PIN_1 , BitAction GPIO_BitVal) //会提示报警
Warning[Pe188]: enumerated type mixed with another type C:Program FilesIAR SystemsEmbedded Workbench 6.0stm8examplesST-LINK复件 STM8S105C6-BoardProjectDiscoversrcmain.c 215
因此我宏定义如下,再次传递多个参数时,就没有出现警告的提示了。
#define GPIO_PIN_0 ((u8)0x01) /*!< Pin 0 selected */
#define GPIO_PIN_1 ((u8)0x02) /*!< Pin 1 selected */
#define GPIO_PIN_2 ((u8)0x04) /*!< Pin 2 selected */
#define GPIO_PIN_3 ((u8)0x08) /*!< Pin 3 selected */
#define GPIO_PIN_4 ((u8)0x10) /*!< Pin 4 selected */
#define GPIO_PIN_5 ((u8)0x20) /*!< Pin 5 selected */
#define GPIO_PIN_6 ((u8)0x40) /*!< Pin 6 selected */
#define GPIO_PIN_7 ((u8)0x80) /*!< Pin 7 selected */
#define GPIO_PIN_LNIB ((u8)0x0F)
#define GPIO_PIN_HNIB ((u8)0xF0)
#define GPIO_PIN_ALL ((u8)0xFF)
上一篇:STM8S AD转换
下一篇:STM8S TIM4库函数应用
史海拾趣
|
我想问下搞射频电子,嵌入式,通信方面分别依次要学些什么啊,最好把要看的书籍的名字写上,还有看这些书的先后顺序。我是一个电子专业的学生,想搞这些方面,虽然问题是多了点,但是那位回答的最好,分加的最多!君子一言,驷马难追! ...… 查看全部问答> |
|
请问我有多个PCI相同的设备插在了同一台主机上,可是只有一个设备功能正常。 请教我怎样修改驱动程序让它驱动多个相同设备呢?希望各位大虾提供些思路 ,小弟是pci的初学者… 查看全部问答> |
|
****************************************Report : timing -path full -delay max -max_paths 1Design : adder_N4Version: Z-2 ...… 查看全部问答> |
|
请各位大虾帮帮忙,怎么判断一个电路板上的一个模块是数字模块还是模拟模块?还是就是模拟器件与数字器件是如何确切定义是区别的?请知道的朋友帮我解答一下,对这两个概念有点混乱,先谢了!… 查看全部问答> |
|
最近在调试SPI SPI1用DMA1 Channel3 来发送数据 发现一个奇怪的问题 发送的数据存储器的最后一个数据(我这边是字节,因为数据大小选择为BYTE)的最高位为1的时候 ...… 查看全部问答> |
|
本人毕业设计是基于Zigbee的无线组网技术的研究,有些问题想请教大家 本人毕业设计是基于Zigbee的无线组网技术的研究,老师给我两块cc2430,有些问题想请教大家。1、老师给我的两的两块板子年代有点远了,没有相应资料,我自己拍了照片,想问问各位大神有人认识吗?或者有有关的资料能发我一份吗?2、大家还有什么好点 ...… 查看全部问答> |




