我这样设置gpio对吗??

cooler1981   2007-12-26 23:00 楼主
我怀疑我的设置顺序,如下:
  //初始化GPIO接口
  /* Enable GPIOC clock */
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB, ENABLE);
  RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);

  /* Configure PA.8, PC.15 as Output push-pull */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_15 ;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  GPIO_Init(GPIOA, &GPIO_InitStructure);
  /* Configure PB.0 --, PB.9 as Output push-pull */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_2 | GPIO_Pin_3 | 
              GPIO_Pin_4 | GPIO_Pin_5 |GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 ;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  GPIO_Init(GPIOB, &GPIO_InitStructure);

  /* Configure PC.13, PC.14 as Output push-pull */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13 | GPIO_Pin_14 ;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
  GPIO_Init(GPIOC, &GPIO_InitStructure);

后面应该怎么去设置输出的高低电平呢??

回复评论 (8)

GPIO,定时,中断是菜鸟三部曲,可惜俺还没加电开机~~~

                                  
点赞  2007-12-26 23:09

那方法可多了。

提示: 作者被禁止或删除 内容自动屏蔽
点赞  2007-12-27 00:02

请问这几种方法编译长度都一样吗???哪个最佳???

谢谢~~~

GPIO_WriteBit(GPIOA, GPIO_Pin_15, Bit_SET);   Bit_RESET是清零

GPIO_Write(GPIOA, 0x1101);

GPIO_SetBits(GPIOA, GPIO_Pin_10 | GPIO_Pin_15);

GPIO_ResetBits(GPIOA, GPIO_Pin_10 | GPIO_Pin_15);
点赞  2007-12-27 00:05

GPIO,定时,中断是菜鸟三部曲

                                 hotpower越来越崇拜你了,哈哈。
点赞  2007-12-27 07:48

呵呵....條條大路通羅馬

GPIO_SetBits(GPIOA, GPIO_Pin_10 | GPIO_Pin_15);

GPIO_ResetBits(GPIOA, GPIO_Pin_10 | GPIO_Pin_15);

上面這個有點匯編語言的味道.   ST7的BSET  BRES

点赞  2007-12-27 11:16

hehe,

感谢以上回复!
灵活且简单!这就是我喜欢st库的原因,hehe,缺点是时间长了,都忘了,
我是懒人,:D
点赞  2007-12-27 11:22

hotpower,我没有具体看过汇编得结果

我上传个GPIO得例子,里面有上述几种方法的实例。工程包含了IAR和Keil的两种,可直接编译,在STM3210 Evaluation Board上调试。



我想从理论上看应该是Bit Band技术的代码要少一些指令吧。
相关链接:https://bbs.eeworld.com.cn/upfiles/img/200712/2007122713140457.rar
点赞  2007-12-27 13:01

哈哈~~~下午俺再研究一下~~~不过俺看STM32的汇编"很眼熟"~~~

                                  
点赞  2007-12-27 13:17
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复