1、STM32F407 LED Demo

#ifndef、#define、#endif格式条件编译,作用是避免头文件内容比重复定义

main.c

#include "stm32f4xx.h"
#include "led.h"
#include "delay.h"
//CPU主时钟168MHz
int main(void)
{delay_init(168);LED_Init();while(1){GPIO_SetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);delay_ms(500);GPIO_ResetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);delay_ms(500);}
}

led.h

#ifndef __LED_H#define __LED_Hvoid LED_Init(void);#endif

led.c

/*跑马灯实验用到的IO口为PF9和PF10,低电平点亮
*/
#include "led.h"
#include "stm32f4xx.h"void LED_Init(void)
{GPIO_InitTypeDef GPIO_InitStruct;GPIO_InitStruct.GPIO_Mode=GPIO_Mode_OUT;GPIO_InitStruct.GPIO_OType=GPIO_OType_PP;GPIO_InitStruct.GPIO_Pin=GPIO_Pin_9|GPIO_Pin_10;GPIO_InitStruct.GPIO_PuPd=GPIO_PuPd_UP;GPIO_InitStruct.GPIO_Speed=GPIO_Speed_50MHz;//1、使能时钟RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOF,ENABLE);//2、初始化IOGPIO_Init(GPIOF,&GPIO_InitStruct);//3、关闭LEDGPIO_SetBits(GPIOF,GPIO_Pin_9|GPIO_Pin_10);
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/194009.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python 读取电子发票PDF 转成Excel

Python 读取电子发票PDF 转成Excel 目录 0.前提 1.python相关的处理PDF的库 2.实际好用的 3.实际代码 4.思考 0.前提 只识别普通电子发票PDF,提取其中某些关键内容到excel中。 1.python相关的处理PDF的库 如下4个库是经常更新维护的! pyP…

采集工具-免费采集器下载

在当今信息时代,互联网已成为人们获取信息的主要渠道之一。对于研究者和开发者来说,如何快速准确地采集整个网站数据是至关重要的一环。以下将从九个方面详细探讨这一问题。 确定采集目标 在着手采集之前,明确目标至关重要。这有助于确定采集…

企业数字化的思考

1. 企业信息化 1.1 从0到1构建信息系统 随着it基础的不断成熟与在企业业务中的应用,企业构建专业化的信息系统已不再需要太多的讨论,基本都在基于自身的阶段构建各种各样的业务支撑系统,从OA\CRM\财务系统\HR\ERP\SAP等到类似更为专项的合同…

flink源码分析 - standalone模式下jobmanager启动过程配置文件加载

flink版本: flink-1.11.2 代码位置: org.apache.flink.runtime.entrypoint.StandaloneSessionClusterEntrypoint#main /** Licensed to the Apache Software Foundation (ASF) under one* or more contributor license agreements. See the NOTICE file* distributed with t…

SCAU:求数的位数

求数的位数 Time Limit:1000MS Memory Limit:65536K 题型: 编程题 语言: G;GCC 描述 由键盘输入一个不多于9位的正整数&#xff0c;要求输出它是几位数。输入格式 一个整数输出格式 输出该数为几位数输入样例 34921输出样例 6 #include <stdio.h> #include&l…

冲突域和广播域

文章目录 冲突域广播域 冲突域 在网络内部两个数据帧同时进行传输时&#xff0c;产生与发生冲突的区域&#xff0c;所有共享介质都是一个冲突域。冲突域时基于第一层&#xff0c;物理层的。 集线器和中继器因为都在物理层&#xff0c;没有MAC地址表&#xff0c;所以不能隔离冲…

数据结构之堆排序以及Top-k问题详细解析

个人主页&#xff1a;点我进入主页 专栏分类&#xff1a;C语言初阶 C语言程序设计————KTV C语言小游戏 C语言进阶 C语言刷题 数据结构初阶 欢迎大家点赞&#xff0c;评论&#xff0c;收藏。 一起努力 目录 1.前言 2.堆排序 2.1降序排序 2.2时间复杂…

Prime 1.0

信息收集 存活主机探测 arp-scan -l 或者利用nmap nmap -sT --min-rate 10000 192.168.217.133 -oA ./hosts 可以看到存活主机IP地址为&#xff1a;192.168.217.134 端口探测 nmap -sT -p- 192.168.217.134 -oA ./ports UDP端口探测 详细服务等信息探测 开放端口22&#x…

【Vulnhub 靶场】【HackathonCTF: 2】【简单】【20210620】

1、环境介绍 靶场介绍&#xff1a;https://www.vulnhub.com/entry/hackathonctf-2,714/ 靶场下载&#xff1a;https://download.vulnhub.com/hackathonctf/Hackathon2.zip 靶场难度&#xff1a;简单 发布日期&#xff1a;2021年06月20日 文件大小&#xff1a;2.6 GB 靶场作者&…

54.多级缓存

目录 一、传统缓存的问题、多级缓存方案。 二、JVM进程缓存。 1&#xff09;进程缓存和缓存。 2&#xff09;导入商品案例。 1.安装MySQL 2.导入SQL 3.导入Demo工程 4.导入商品查询页面 3&#xff09;初识Caffeine&#xff08;就是在springboot学过的注解方式的cache&…

C#网络编程(System.Net.Sockets命名空间)

目录 一、Socket类 1.示例源码 2.生成效果 二、TcpClient类和TcpListener类 1.示例源码 2.生成效果 三、UdpClient类 1.示例源码 2.生成效果 System.Net.Sockets命名空间主要提供制作Sockets网络应用程序的相关类&#xff0c;其中Socket类、TcpClient类、TcpListener类…

NAND Flash和NOR Flash的异同

NAND Flash和NOR Flash是两种常见的闪存类型。 NOR Flash是Intel于1988年首先开发出来的存储技术&#xff0c;改变了原先由EPROM和EEPROM一统天下的局面。 NAND Flash是东芝公司于1989年发布的存储结构&#xff0c;强调降低每比特的成本&#xff0c;更高的性能&#xff0c;并…

VSCode修改C++版本

新下载了一下VSCode&#xff0c;想使用C17的特性std::optional&#xff0c;但是显示有错误&#xff0c;想想可能是C 版本的问题&#xff0c;查了一下资料&#xff0c;按下面的博客操作&#xff0c;果然解决了。 vscode设置c 版本

Android跨进程通信,binder,native层,服务端在servicemanager注册服务

文章目录 Android跨进程通信&#xff0c;binder&#xff0c;native层&#xff0c;服务端在servicemanager注册服务1.服务端注册服务请求指令2.svcmgr_publish注册服务3.服务注册完毕通过服务端 Android跨进程通信&#xff0c;binder&#xff0c;native层&#xff0c;服务端在se…

展开说说:Android之广播接收者

1、是什么&#xff1a; BroadcastReceiver是Android四大组件之一的消息型组件&#xff1b;只有一个生命周期onReceiver但不可以进行耗时操作。可以代码动态注册也可清单文件静态注册&#xff1b; 2、啥原理&#xff1a; 广播分为广播发送者和广播接收者&#xff0c;发送者可…

栈和队列OJ题——15.循环队列

15.循环队列 622. 设计循环队列 - 力扣&#xff08;LeetCode&#xff09; * 解题思路&#xff1a; 通过一个定长数组实现循环队列 入队&#xff1a;首先要判断队列是否已满&#xff0c;再进行入队的操作&#xff0c;入队操作需要考虑索引循环的问题&#xff0c;当索引越界&…

网络接口规范

1、基本物理层: a) RJ45接口作为最基本的网络接口之一有两种形式&#xff1a;对于百兆网口有4条线&#xff0c;2对差分线&#xff1b;对于千兆网口有4对差分线。RJ45水晶头是有8个凹槽和8个触点&#xff08;8p8c&#xff09;的接头&#xff0c;分为集成网络变压器和非集成网络变…

使用进程池/线程池 加速 Python数据处理

使用进程池/线程池 加速 Python数据处理 目标简单模式多进程模式 参考 Python 是一种出色的编程语言&#xff0c;可用于处理数据和自动执行重复任务。尽管 Python 使编码变得有趣&#xff0c;但它并不总是运行速度最快的。默认情况下&#xff0c;Python 程序使用单个 CPU 作为单…

2022年9月8日 Go生态洞察:Go Developer Survey 2022 Q2 结果分析

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

物奇平台电容触摸功能调试

是否需要申请加入数字音频系统研究开发交流答疑群(课题组)?可加我微信hezkz17, 本群提供音频技术答疑服务,+群赠送语音信号处理降噪算法,蓝牙耳机音频,DSP音频项目核心开发资料, 物奇平台电容触摸功能调试 1 修改按键驱动宏 2 编译生成wpk 文件,import 导入烧录文件。…