zoukankan      html  css  js  c++  java
  • STM32F4寄存器初始化系列:GPIO

     1 static void GPIO_Init(void)
     2 {
     3   
     4   //sound
     5   GPIO_Set(GPIOB,PIN4,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_NONE);//复用功能
     6   PBout(4)=0; 
     7   
     8   //24路ADC采集
     9   GPIO_Set(GPIOA,PIN0|PIN1|PIN2|PIN3|PIN4|PIN5|PIN6|PIN7,GPIO_MODE_AIN,0,0,GPIO_PUPD_PD);    //PA0,模拟输入,下拉
    10   GPIO_Set(GPIOB,PIN0|PIN1,GPIO_MODE_AIN,0,0,GPIO_PUPD_PD);    //PA0,模拟输入,下拉 
    11   GPIO_Set(GPIOC,PIN0|PIN1|PIN2|PIN3|PIN4|PIN5,GPIO_MODE_AIN,0,0,GPIO_PUPD_PD);
    12   GPIO_Set(GPIOF,PIN3|PIN4|PIN5|PIN6|PIN7|PIN8|PIN9|PIN10,GPIO_MODE_AIN,0,0,GPIO_PUPD_PD);
    13   
    14   //TFT
    15   GPIO_Set(GPIOG,PIN13|PIN14|PIN15,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PD);//PG13/PG14设置 
    16   GPIO_AF_Set(GPIOB,3,5);    //PB3,AF5 
    17   GPIO_AF_Set(GPIOB,5,5);    //PB3,AF5 
    18   GPIO_Set(GPIOB,PIN3|PIN5,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PD);//复用功能,下拉输出
    19   
    20   
    21   //触摸
    22   GPIO_Set(GPIOE,PIN0,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PD);
    23   GPIO_Set(GPIOB,PIN9|PIN7,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PD);
    24   GPIO_Set(GPIOB,PIN6,GPIO_MODE_IN,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PD);
    25   GPIO_Set(GPIOB,PIN8,GPIO_MODE_IN,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PU);
    26   
    27   //指南针USART2
    28   GPIO_AF_Set(GPIOD,6,7);       //接收
    29   GPIO_Set(GPIOD,PIN5,GPIO_MODE_OUT,GPIO_OTYPE_OD,GPIO_SPEED_50M,GPIO_PUPD_PU);
    30   PDout(5)=1;
    31   
    32   GPIO_Set(GPIOD,PIN6,GPIO_MODE_AF,GPIO_OTYPE_OD,GPIO_SPEED_50M,GPIO_PUPD_PU);
    33   
    34   //蓝牙USART5
    35   GPIO_AF_Set(GPIOD,2,8);    
    36   GPIO_AF_Set(GPIOC,12,8);
    37   GPIO_Set(GPIOD,PIN2,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PU);
    38   GPIO_Set(GPIOC,PIN12,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PU);
    39   
    40   //蓝牙匹配状态
    41   GPIO_Set(GPIOG,PIN5,GPIO_MODE_IN,GPIO_OTYPE_OD,GPIO_SPEED_2M,GPIO_PUPD_NONE);
    42   
    43   //蓝牙指令和透传切换  空闲高电平,  发送80ms低脉冲可切换
    44   GPIO_Set(GPIOG,PIN6,GPIO_MODE_OUT,GPIO_OTYPE_OD,GPIO_SPEED_2M,GPIO_PUPD_PU);
    45   PGout(6)=1;
    46   
    47   //蓝牙断开匹配  空闲高电平,  发送80ms低脉冲可断开
    48   GPIO_Set(GPIOG,PIN7,GPIO_MODE_OUT,GPIO_OTYPE_OD,GPIO_SPEED_2M,GPIO_PUPD_PU);
    49   PGout(7)=1;
    50   
    51   //蓝牙开关   高关闭,低打开
    52   GPIO_Set(GPIOA,PIN8,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_2M,GPIO_PUPD_PD);
    53   PAout(8)=0;
    54   
    55   //LED灯
    56   GPIO_Set(GPIOF,PIN0,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_2M,GPIO_PUPD_PU);
    57   PFout(0)=1;
    58   
    59   
    60   //主电机PWM输出 ************
    61   GPIO_AF_Set(GPIOD,12,2);    //PD12,AF2    定时器4
    62   GPIO_AF_Set(GPIOD,13,2);    //PD13,AF2 
    63   GPIO_AF_Set(GPIOD,14,2);    //PD14,AF2 
    64   GPIO_AF_Set(GPIOD,15,2);    //PD15,AF2 
    65   GPIO_Set(GPIOD,PIN12|PIN13|PIN14|PIN15,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_NONE);//复用功能
    66   
    67   GPIO_AF_Set(GPIOC,6,3);    //PC6,AF3    定时器8
    68   GPIO_AF_Set(GPIOC,7,3);    //PD7,AF3 
    69   GPIO_AF_Set(GPIOC,8,3);    //PD8,AF3 
    70   GPIO_AF_Set(GPIOC,9,3);    //PD9,AF3 
    71   GPIO_Set(GPIOC,PIN6|PIN7|PIN8|PIN9,GPIO_MODE_AF,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_NONE);//复用功能
    72   
    73   //RUN **********
    74   GPIO_Set(GPIOG,PIN3,GPIO_MODE_IN,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PU);
    75   
    76   //KM *******
    77   GPIO_Set(GPIOG,PIN9,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PD);
    78   
    79   //DJ *********
    80   GPIO_Set(GPIOD,PIN7,GPIO_MODE_OUT,GPIO_OTYPE_PP,GPIO_SPEED_50M,GPIO_PUPD_PD);
    81   
    82   
    83 }
  • 相关阅读:
    go函数
    Linux 查看磁盘容量、查找大文件、查找大目录
    五分钟理解一致性哈希算法(consistent hashing)
    使用Java实现三个线程交替打印0-74
    Python实现IOC控制反转
    Wannafly挑战赛5 A珂朵莉与宇宙 前缀和+枚举平方数
    Yandex Big Data Essentials Week1 Scaling Distributed File System
    Yandex Big Data Essentials Week1 Unix Command Line Interface Processes managing
    Yandex Big Data Essentials Week1 Unix Command Line Interface File Content exploration
    Yandex Big Data Essentials Week1 Unix Command Line Interface File System exploration
  • 原文地址:https://www.cnblogs.com/penuel/p/11265274.html
Copyright © 2011-2022 走看看