完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
没明白uint8 HalLedSet (uint8 leds, uint8 mode)这个函数怎么使用?
例如我LED的控制GPIO是A15, #define LED_PIN (GPIO_Pin_15) HAL_Init( ); GPIOA_SetBits(LED_PIN); GPIOA_ModeCfg(LED_PIN, GPIO_ModeOut_PP_20mA); DelayMs(5000); // GPIOA_ResetBits(LED_PIN); HalLedSet(LED_PIN, HAL_LED_MODE_ON); DelayMs(5000); // GPIOA_SetBits(LED_PIN); HalLedSet(LED_PIN, HAL_LED_MODE_OFF); 灯不能亮,当用GPIOA_ResetBits(LED_PIN);灯右以正常亮。 HalLedSet()时要注意什么呢? |
|
相关推荐
1个回答
|
|
|
如果你看了EVT>EXAM>BLE>HAL>LED.c 的源码
你将发现这个函数的具体定义; 其最终的结果是通过查表方式调用一些在LED.h中通过#define 方式定义的对LED 控制的相关的宏. 下面是VT>EXAM>BLE>HAL>LED.h的部分源码: LED引脚需要事先在这里定义. /* 1 - LED */ #define LED1_BV BV(15) #define LED2_BV #define LED3_BV #define LED1_OUT (R32_PB_OUT) #define LED2_OUT 0 #define LED3_OUT 0 #define LED4_OUT 0 #define LED1_DDR (R32_PB_DIR|=LED1_BV) #define LED2_DDR 0 #define LED3_DDR 0 #define HAL_TURN_OFF_LED1() (LED1_OUT |= LED1_BV) #define HAL_TURN_OFF_LED2() #define HAL_TURN_OFF_LED3() #define HAL_TURN_OFF_LED4() #define HAL_TURN_ON_LED1() (LED1_OUT &= (~LED1_BV)) #define HAL_TURN_ON_LED2() #define HAL_TURN_ON_LED3() #define HAL_TURN_ON_LED4() 这个实现,是为了一些简单的控制快速演示. 像绝大多数情况一样, 进一步的函数封装和抽象是建立在损失灵活性的基础上的. 你可以完全不使用LED.C 里的代码, 而通过以往的控制一般GPIO的经验去控制外部的led. |
|
|
|
|
只有小组成员才能发言,加入小组>>
379 浏览 0 评论
CH582M HOST发送数到设备后,提交IN一直是2A是什么问题?
885 浏览 0 评论
1483 浏览 1 评论
CH579M+RT-Thread,RTC从Sleep模式唤醒失败是什么原因?
3433 浏览 2 评论
2842 浏览 1 评论
安卓手机支持外接otg扩展坞 然后使用ch340+ch9329控制电脑吗
1833浏览 1评论
1483浏览 1评论
380浏览 0评论
CH582M HOST发送数到设备后,提交IN一直是2A是什么问题?
887浏览 0评论
485浏览 0评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-13 03:56 , Processed in 0.434288 second(s), Total 41, Slave 35 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
1666