完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
标准库就有这个可以写一列IO口值的函数:void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);
HAL库的是没有的吗? HAL库只找到这个位写函数:void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState); 可不可以把这个参数赋值为 GPIO_PIN_All的? 要自己用寄存器写一个?一个一个IO的赋值?这样效率很低下的吧 谢谢! |
|
相关推荐
18个回答
|
|
|
|
|
|
|
|
|
感谢版主的解说,我现在才知道可以写GPIO_PIN_All
|
|
|
|
|
|
这样子用HAL_GPIO_WritePin(GPIOC,GPIO_PIN_All,x)会有下面的警告的,说参数类型不匹配,参数好像只能是0/1的吧 warning: #188-D: enumerated type mixed with another type |
|
|
|
|
|
刚用HAL库,发现没有了Write_GPIO();所以就找到了GPIO_PIN_All
|
|
|
|
|
|
假如我要把数据0x68写到PC0-PC7,0x68=0110 1000B,这样就是PC0=0,PC1=1.....,该用哪个库函数一次性搞定呢 |
|
|
|
|
biao66 发表于 2019-1-30 16:38 发代码看下 |
|
|
|
|
|
既然写引脚的时候可以用"|"来连接,那么也可以用“GPIO_PIN_All”,所以应该可以的,前提是前面引脚都要初始化为输出。
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_All, GPIO_PIN_RESET); HAL_GPIO_WritePin(GPIOA, GPIO_PIN_All, GPIO_PIN_SET); |
|
|
|
|
|
#define IO_Data_Set(x) HAL_GPIO_WritePin(GPIOC,GPIO_PIN_All,(x&0x00f0)) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
直接右键,看一下代码实现,不就很清楚了嘛!!!!开源,啥叫开源,就是用来看滴!!!
|
|
|
|
|
biao66 发表于 2019-1-30 17:58 你的意思是给GPIOC端口赋值0X00F0, 这样赋值不行的,0X00F0 !=0 所以作为 “1”来处理, 这样你GPIOC端口所有的输出都是"1";如果你要按你的意愿来做,只有直接写寄存器。自己做个函数吧。网上例子挺多的。 |
|
|
|
|
|
看的懂那个库函数的,就是找不到GPIO_Write()功能的函数而已, |
|
|
|
|
苏州名之卓 发表于 2019-1-30 18:24 void IO_Write_DataBit(uchar data) { GPIOC->ODR |= 0xff; GPIOC->ODR &= data; } 我也是这样想的,直接操作寄存器算了,上面那个函数应该可以实现了吧 |
|
|
|
|
苏州名之卓 发表于 2019-1-30 18:24 #define GPIOCout(x) GPIOC->ODR=x; // GPIOC端口输出 X 先把GPIOC都设置为推挽输出,然后试试这个 |
|
|
|
|
|
";"可以不要写,程序中直接调用"GPIOCout(0x00f0);"
|
|
|
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
STM32F405驱动DS1302时钟模块,输出时间错乱该怎么排查?
2797 浏览 2 评论
stm32f405rgt6驱动DS1302ZN出现时间错乱问题
2403 浏览 1 评论
stm32用fsmc读取ad7606采集数据,数据不变,只有开发版复位才更新数据
2276 浏览 0 评论
2388 浏览 1 评论
1637 浏览 1 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-1 20:38 , Processed in 1.047284 second(s), Total 104, Slave 87 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
4158