EDN首页   博客首页

日志档案

发表于 2008-3-11 22:58:12

1

标签: STM32  GPIO  ARM  CORTEXM3  

STM32入门第一例子(GPIO)

STM32 GPIO库文档pdf

//**********************************************************************
// 作者:JingYong
// 时间:2007/12/14
//***********************************************************************
/***********************************************************************
main文件,GPIO操作,完成最简单的IO操作实验,就是控制LED灯
4个LED分别对应PC的6、7、8、9引脚。4个LED流水显示
**************************************************************************/
#include "stm32f10x_lib.h"

GPIO_InitTypeDef GPIO_InitStructure;

void LED_Init(void)
{
 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);//开GPIOC时钟
 /*配置 GPIOC.6、GPIOC7、GPIOC.8、GPIOC.9为输出*/
 GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9;
   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
   GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
   GPIO_Init(GPIOC, &GPIO_InitStructure);

}

void Delay(vu32 nCount)
{
  for(; nCount != 0; nCount--);
}

main()
{
 
 LED_Init();
 
 while(1)
 {
  GPIO_SetBits(GPIOC, GPIO_Pin_6);//GPIOC.6=1
  Delay(0x8ffff);
  GPIO_ResetBits(GPIOC, GPIO_Pin_6);////GPIOC.6=0
  Delay(0x8ffff);
  GPIO_SetBits(GPIOC, GPIO_Pin_7);//GPIOC.7=1
  Delay(0x8ffff);
  GPIO_ResetBits(GPIOC, GPIO_Pin_7);//GPIOC.7=0
  Delay(0x8ffff);
  GPIO_SetBits(GPIOC, GPIO_Pin_8);//GPIOC.8=1
  Delay(0x8ffff);
  GPIO_ResetBits(GPIOC, GPIO_Pin_8);//GPIOC.8=0
  Delay(0x8ffff);
  GPIO_SetBits(GPIOC, GPIO_Pin_9);//GPIOC.9=1
  Delay(0x8ffff);
  GPIO_ResetBits(GPIOC, GPIO_Pin_9);//GPIOC.9=0

  Delay(0x8ffff);
 }
}

 

其实GPIO用库函数很简单的,改天把库函数翻译了放上来!

系统分类: ARM   |   用户分类: 无分类   |   来源: 原创   |   【推荐给朋友】   |   【添加到收藏夹】

    阅读(675)    回复(2)  

投一票您将和博主都有获奖机会!

最新评论

  • wormchen

    2008-3-19 9:32:16

    我也在学习STM32,以后多交流!以前没接触过ARM!

  • cqcrr@163.com

    2008-4-7 20:09:28

    你好,我刚刚开始学习STM32, 你这个程序compile时显示identifier "GPIOC" is undefined,是为什么啊?谢谢! 我加入了stm32f10x_gpio.h的project了的。