历史上的今天

今天是:2024年09月24日(星期二)

正在发生

2020年09月24日 | STM32F4的IO设置测试

发布者:cangart 来源: eefocus关键字:STM32F4  IO设置  测试 手机看文章 扫描二维码
随时随地手机看文章

环境:


主机:WIN7


开发环境:MDK4.72


MCU:STM32F407VGT6




说明:


目标板上有一个LED,有一个按键,按键实现LED状态翻转.




LED:PE2,低电平亮,高电平灯灭


按键:PC13,低电平按下,高电平松开




源代码:


main.c



/*********************************************************************

*   主文件

* (c)copyright 2014,jdh

*   All Right Reserved

*新建日期:2014/3/25 by jdh

**********************************************************************/

 

/*********************************************************************

* 头文件

**********************************************************************/

 

#include "main.h"

#include "stm32f4xx_rcc.h"

#include "stm32f4xx_gpio.h"

 

/*********************************************************************

* 全局变量

**********************************************************************/

 

static __IO uint32_t TimingDelay;

 

/*********************************************************************

* 函数定义

**********************************************************************/

 

void Delay(__IO uint32_t nTime);

 

 

/*********************************************************************

* 函数

**********************************************************************/

 

int main(void)

{

    //定义IO初始化结构体

GPIO_InitTypeDef GPIO_InitStructure;

    

    //系统时钟:1ms滴答1次

    if (SysTick_Config(SystemCoreClock / 1000))

    { 

        while (1);

    }

  

    //设置LED的IO口

    //初始化时钟

    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE, ENABLE);

    //管脚模式:输出口

    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;

    //类型:推挽模式

GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;

    //上拉下拉设置:不使能

GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;

    //IO口速度

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;

    //管脚指定

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;

    //初始化

GPIO_Init(GPIOE, &GPIO_InitStructure);

    

    //设置按键的IO口

    //初始化时钟

    RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);

    //管脚模式:输出口

    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;

    //类型:推挽模式

GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;

    //上拉下拉设置:不使能

GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;

    //IO口速度

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;

    //管脚指定

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_13;

    //初始化

GPIO_Init(GPIOC, &GPIO_InitStructure);

 

    while (1)

    {

        //GPIO_SetBits(GPIOE,GPIO_Pin_2);

        //Delay(500);

        //GPIO_ResetBits(GPIOE,GPIO_Pin_2);

        //Delay(500);

        //按键检测

        if (GPIO_ReadInputDataBit(GPIOC,GPIO_Pin_13) == 0)

        {

            GPIO_ToggleBits(GPIOE,GPIO_Pin_2);

            Delay(500);

        }

    }

}

 

/**

  * @brief  Inserts a delay time.

  * @param  nTime: specifies the delay time length, in milliseconds.

  * @retval None

  */

void Delay(__IO uint32_t nTime)

  TimingDelay = nTime;

 

  while(TimingDelay != 0);

}

 

/**

  * @brief  Decrements the TimingDelay variable.

  * @param  None

  * @retval None

  */

void TimingDelay_Decrement(void)

{

  if (TimingDelay != 0x00)

  { 

    TimingDelay--;

  }

}

 

#ifdef  USE_FULL_ASSERT

 

/**

  * @brief  Reports the name of the source file and the source line number

  *         where the assert_param error has occurred.

  * @param  file: pointer to the source file name

  * @param  line: assert_param error line source number

  * @retval None

  */

void assert_failed(uint8_t* file, uint32_t line)

  /* User can add his own implementation to report the file name and line number,

     ex: printf("Wrong parameters value: file %s on line %drn", file, line) */

 

  /* Infinite loop */

  while (1)

  {

  }

}

#endif

 

/**

  * @}

  */ 

 

/**

  * @}

  */ 

 

/******************* (C) COPYRIGHT 2011 STMicroelectronics *****END OF FILE****/


关键字:STM32F4  IO设置  测试 引用地址:STM32F4的IO设置测试

上一篇:STM32F103停机模式测试
下一篇:STM32单片机用FSMC接口控制SRAM

推荐阅读

能源互联网研究与实践快速推进,新理念、新技术开始涌现,呈现开放、融合态势。准确把握能源互联网发展方向与基本特征对研判中国能源行业未来形态、科学推进能源转型尤为重要。立足于中国中长期能源转型不同路径比较,着眼于“能源+”的高度去定位能源在未来经济高质量发展中的位置,结合对能源互联网架构与运行机理的分析以及对跨界融合实践特点的总结...
USART_ITConfig只能使用一个中断标志!看看中断参数的定义:#define USART_IT_PE ((uint16_t)0x0028)#define USART_IT_TXE ((uint16_t)0x0727)#define USART_IT_TC ((uint16_t)0x0626)#define USART_IT_RXNE ...
RTX 3080显卡首发这几天一直供不应求,玩家们很难抢到,要么就得加钱买高价的。但是黄牛党们赚翻了,有人甚至用机器人程序抢到了42块RTX 3080显卡,这更让真正的玩家不爽。面对玩家的不满,NVIDIA今天通过官网社区再次致歉,并公布了他们解决供不应求的成果。NVIDIA表示:“今天早晨,包括NVIDIA在线商城在内,我们注意到了全球范围内的零售商对RTX 308...
近日,国际知名市场调研公司 Yole 发布了《汽车和工业应用的激光雷达》行业研究报告。其中,在 ADAS 这个激光雷达细分场景,五名中国玩家上榜。国内玩家速腾聚创(RoboSense)则以 10% 市占率的成绩排名全球第二,中国第一。而去年 12 月才首次公布车规级激光雷达产品和解决方案的华为,以 3% 的市场份额,拿下了非常不错的成绩。报告显示,在这个...

史海拾趣

问答坊 | AI 解惑

不能乱点的网站

注意]25个最恶意的病毒网站 千万不要点击浏览!如今的恶意网站真是太多了,稍不小心就会中招,小编尽己所能在茫茫互联网中搜集了25个恶意网站,警示大家,但凡遇到以下网站,千万别点击哦!警告:以下网站请勿进去!进去者自己处理。25个最恶意的中 ...…

查看全部问答∨

凤凰写卡器制作

这是我在网上看到的凤凰写卡器,很简单,不过都是英文,相关的编程软件没有提供,不过通用的软件ICPROG应该是可以使用的.要制作可以刷写卫星电视接收卡就是这么简单.元件清单:25 LED green 590-34526 LED red 590-33927 IC 7407N 306-33627b IC socket ...…

查看全部问答∨

bootloader说明

bootloader 来自网络。…

查看全部问答∨

STM32资料集锦(不断补充中...)

绿茶的帖子,转个链接,希望有用。 //*-----------------------------------------------------*/ STM32资料集锦(不断补充中...) https://bbs.eeworld.com.cn/thread-75235-1-1.html //*---------------------------------------------------- ...…

查看全部问答∨

怎样理解肖特基二极管中少数载流子的存贮效应甚微

看了半天书还是不理解肖特基二极管中少数载流子的存贮效应甚微,肯请达人们详细解答下,拜托了,谢谢…

查看全部问答∨

Mini2440 与 j-link v6如何连接?

Mini2440如何与j-link v6连接? 我的连接是j-link        mini2440            1    ——————    1           ...…

查看全部问答∨

avr中的twi协议有误???(状态码0x40)

avr中的twi协议有误么??   在主机接收模式的状态码里:的0x40 .。 No TWDR action or No TWDR action 我认为应该是 Read data byte or Read data byte。。 这个时候是来了一个ack信号,但是紧接着来了个8个字节的数据在twdr中 ...…

查看全部问答∨

关于EVC程序下载到NK内核 下载目标板 无法运行

Windows CE.NET的应用为MyApp.exe 1.将MyApp.exe复制到E:\\PROJECTS\\MyWinCE\\RelDir\\CEPC_X86Release目录下; 2.创建快捷方式文件MyApp.lnk(文本文件),文件内容如下: 10#\\Windows\\MyApp.exe MyApp.lnk文件也放入E:\\PROJECTS\\MyWinC ...…

查看全部问答∨

求程序员故事,有故事的朋友请进来。

本人正在写一个关于程序员的故事。 《程序员神话之XX》欢迎有故事的朋友发e-mail给我 e-mail:huawuzixun@163.com…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved