完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
要自动配置固件,我需要读取通常用作输出的引脚 (GPIO13) 的电压。不幸的是,读取逻辑电平(两种硬件配置的值相同)没有用,所以我需要使用 ADC。
代码是: #define PIN_LED_RELAY2 13 int adc_raw; ESP_ERROR_CHECK(adc1_config_width(ADC_WIDTH_BIT_DEFAULT)); ESP_ERROR_CHECK(adc2_config_channel_atten(ADC2_CHANNEL_4, ADC_ATTEN_11db)); vTaskDelay(100 / porttiCK_PERIOD_MS); adc2_get_raw(ADC2_CHANNEL_4, ADC_WIDTH_BIT_DEFAULT, &adc_raw); printf("IO13: %dn", adc_raw); 如果(adc_raw > 1500) nRelay = 2; // 重新配置 GPIO 作为输出 PIN_FUNC_SELECT(GPIO_PIN_MUX_REG[PIN_LED_RELAY2], PIN_FUNC_GPIO); gpio_set_direction(PIN_LED_RELAY2, GPIO_MODE_OUTPUT); gpio_set_level(PIN_LED_RELAY3, 1); 但是如果我评论模拟读取部分,以这种方式设置或重置 GPIO13 无效,而它会起作用。 如何将 GPIO13 重新配置为输出? |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
192个成员聚集在这个小组
加入小组472 浏览 1 评论
1655 浏览 2 评论
647浏览 6评论
536浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
516浏览 5评论
517浏览 4评论
507浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-2-24 16:10 , Processed in 0.587618 second(s), Total 41, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191