完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
简化后的user目录下的main程序代码如下:
#include "STM32f10x.h" void GPIO_Config() { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE); //PB14 -> LD GPIO_InitStructure.GPIO_Pin = GPIO_Pin_14; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //上拉输入 GPIO_Init(GPIOB, &GPIO_InitStructure); } int main(void) { u8 Read_LD; SystemInit(); GPIO_Config(); Read_LD = GPIO_ReadInputDataBit(GPIOB, GPIO_Pin_14); } 为什么结果显示“Read_LD被定义但从未使用过”?而且Read_LD也并没有获取到GPIOB的14管脚信息 |
|
相关推荐
9个回答
|
|
你确实没使用Read_LD,加一条Read_LD=Read_LD就不出现“Read_LD被定义但从未使用过”。
最佳答案
|
|
|
|
自己顶一个
|
|
|
|
楼上正解,不然会被编译器优化掉的
|
|
|
|
定义成全局变量。。。
|
|
|
|
是这样的,原来我也遇到这样的问题。
|
|
|
|
定义为全局变量或者加上Read_LD=Read_LD;就会执行的
|
|
|
|
编译器给你优化没了吧
|
|
|
|
重新优化看看, 重新定义
|
|
|
|
这样子确实是只执行一次,变量会被优化掉,建议放到while里面轮询,或者用中断。再或者变量加__IO防止优化
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
2183 浏览 1 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
2011 浏览 3 评论
4612 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
2154 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
2687 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-25 13:13 , Processed in 1.407882 second(s), Total 90, Slave 74 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号