GPIO怎么用库函数对IO进行取反

2019-08-17 00:27发布

GPIO怎么用库函数对IO进行取反
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
20条回答
Llinuxu
1楼-- · 2019-08-19 01:24
回复【4楼】热情的meng:
---------------------------------
这样肯定是不行的啊,读出的IO口本来就是一个值,怎么能再对一个值赋值呢?又不是变量!!!
热情的meng
2楼-- · 2019-08-19 07:05
回复【10楼】聚东风:
---------------------------------

TIM_OCInitTypeDef TIM_OCInitStructure; 
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1; 
TIM_OCInitStructure.TIM_Channel = TIM_Channel_1; 
TIM_OCInitStructure.TIM_Pulse = 0x3FFF; 
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_High; 
TIM_OCInit(TIM2, & TIM_OCInitStructure);
这条TIM_OCInitStructure.TIM_Pulse = 0x3FFF; 编译没反应
而用这个
    while(1)
{
   Delay_MS(10);  
if(dir)led0pwmval++;
else led0pwmval--;

   if(led0pwmval>300)dir=0;
if(led0pwmval==0)dir=1;   
TIM_SetCompare2(TIM3,led0pwmval);    
}
怎么可以
热情的meng
3楼-- · 2019-08-19 08:21
回复【10楼】聚东风:
---------------------------------
TIM_OCInitStructure.TIM_Pulse = 0x3FFF; 为什么用这条语句没有效果
小达人
4楼-- · 2019-08-19 13:39
 精彩回答 2  元偷偷看……
Seeking
5楼-- · 2019-08-19 15:30
回复【10楼】聚东风:
---------------------------------
#define GPIOA_ODR_Addr    (GPIOA_BASE+12) //0x4001080C  
#define GPIOB_ODR_Addr    (GPIOB_BASE+12) //0x40010C0C  
#define GPIOC_ODR_Addr    (GPIOC_BASE+12) //0x4001100C  
#define GPIOD_ODR_Addr    (GPIOD_BASE+12) //0x4001140C  
#define GPIOE_ODR_Addr    (GPIOE_BASE+12) //0x4001180C  
#define GPIOF_ODR_Addr    (GPIOF_BASE+12) //0x40011A0C     
#define GPIOG_ODR_Addr    (GPIOG_BASE+12) //0x40011E0C   这些宏定义都代表意思??有参考文件吗??  大神
聚东风
6楼-- · 2019-08-19 20:52
回复【17楼】Seeking:
---------------------------------
GPIOA_BASE,是GPIO端口的基础地址
在他的基础上加上个12就可以得到相应端口ODR寄存器的地址,这样写只是为了减少自己的记忆程度,基础弄好后,这些翻译工作编译器都会帮你完成的

一周热门 更多>