stm32f103c8t6 led闪灯实验

目录

闪灯原理

2种接线方式控制闪灯

使用推挽接法

使用开漏接法

看原理图

写代码


闪灯原理

LED灯有个2-10mA的电流就可以点亮

3.3/510=0.006A=6mA

2种接线方式控制闪灯

使用推挽接法

当设置推挽模式时,CPU控制寄存器写0,IO引脚输出低电压,电路导通,灯亮。

                                CPU控制寄存器写1,IO引脚输出高电压,电路导通,灯不亮。

使用开漏接法

下面和最开始基本相同,但是开关接在右边

闭合灯亮,断开灯不亮

开漏模式下,P-MOS一直漏断开的,所以只用考虑下面的N-MOS,当给这个寄存器写0的时候,N-MOS闭合,电路导通灯就亮,当写1的时候,N-MOS断开,都悬空灯不亮。

看原理图

STM32F103C8T6有两个小灯,下面一个灯是电源指示灯,如果想点亮上面那个灯PC13,就需要看这个系统板的接法,看他是推挽接法还是开漏接法。如果你自己外接一个灯,当然可以自己随意设置。

STM32F103C8T6有的PC13在下面,电源指示灯在上门。

会发现是一个开漏接法,所以写0就可以亮,写1不亮

写代码

通过CPU往寄存器中写程序,所以是通用,又这个灯是开漏,所以选用的就是通用输出开漏模式

#include "stm32f10x.h"                  // Device header
#include "delay.h"
int main(void)
{//开启GPIOC的时钟RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);//初始化IO引脚 PC13通用输出开漏模式 2MHZ  PC13初始化后默认为0会亮GPIO_InitTypeDef GPIO_InitStruct={0};GPIO_InitStruct.GPIO_Pin=GPIO_Pin_13;GPIO_InitStruct.GPIO_Mode=GPIO_Mode_Out_OD;GPIO_InitStruct.GPIO_Speed=GPIO_Speed_2MHz;GPIO_Init(GPIOC,&GPIO_InitStruct);while(1){GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_SET);  //写1 不亮Delay(200);GPIO_WriteBit(GPIOC,GPIO_Pin_13,Bit_RESET); //写0 亮Delay(200);}
}

我用proteus仿真也试了一下没问题

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

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

相关文章

“我同意”按钮别乱点——你的“职业EULA”漏洞扫描报告

尊敬的审核: 本人文章《“我同意”按钮别乱点——你的“职业EULA”漏洞扫描报告》 1. 纯属技术交流,无任何违法内容 2. 所有法律引用均来自公开条文 3. 请依据《网络安全法》第12条“不得无故删除合法内容”处理 附:本文结构已通过区块链存证…

Product Hunt 每日热榜 | 2025-09-01

1. A01 标语:你个人的新闻助手 介绍:A01 是你的新闻助手,可以帮你关注你关心的任何话题。只需告诉它你想了解什么,它就能为你带来最新的文章。 产品网站: 立即访问 Product Hunt: View on Product Hunt…

【OpenFeign】基础使用

【OpenFeign】基础使用1. Feign介绍1.1 使用示例1.2 Feign与RPC对比1.3 SpringCloud Alibaba快速整合OpenFeign1.3.1 详细代码1. Feign介绍 1.什么是 Feign Feign 是 Netflix 开发的一个 声明式的 HTTP 客户端,在 Spring Cloud 中被广泛使用。它的目标是&#xff…

访问相同的url,相同入参的请求,Apifox/Postman可以正常响应结果,而本地调用不行(或结果不同)

文章目录问题概述Apifox查看实际请求总结问题概述 开发中有一个需求需要去别的系统中拿数据,配置好相关参数后发起请求时发现响应结果和在Apifox上不同,Apifox上正常显示数据,而本地调用后返回数据不存在。 这就很奇怪了,想了很多…

数据结构(C语言篇):(七)双向链表

目录 前言 一、概念与结构 二、双向链表的实现 2.1 头文件的准备 2.2 函数的实现 2.2.1 LTPushBack( )函数(尾插) (1)LTBuyNode( ) (2)LTInit( ) (3)LTPrint( ) &#x…

从拿起简历(resume)重新找工作开始聊起

经济萧条或经济衰退在经济相关学术上似乎有着严格的定义,我不知道我们的经济是否已经走向了衰退或者萧条,但有一点那是肯定的,那就现在我们的经济肯定是不景气的。经济不景气会怎么样?是的,会有很多人失业,…

OS+MySQL+(其他)八股小记

鲁迅先生曾经说过,每天进步一点点,妈妈夸我小天才。 依旧今日八股,这是我在多个文档整合一起的,可能格式有些问题,请谅解。 操作系统 1.进程和线程的区别? 进程是代码在数据集合的一次执行活动,…

Transformer的并行计算与长序列处理瓶颈总结

🌟 第0层:极简版(30秒理解)一句话核心:Transformer像圆桌会议——所有人都能同时交流(并行优势),但人越多会议越混乱(长序列瓶颈)。核心问题 并行优势&#x…

Vue 3 useId 完全指南:生成唯一标识符的最佳实践

📖 概述 useId() 是 Vue 3 中的一个组合式 API 函数,用于生成唯一的标识符。它确保在服务端渲染(SSR)和客户端渲染之间生成一致的 ID,避免水合不匹配的问题。 🎯 基本概念 什么是 useId? useId…

CGroup 资源控制组 + Docker 网络模式

1 CGroup 资源控制组1.1 为什么需要 CGroup - 容器本质 宿主机上一组进程 - 若无资源边界,一个暴走容器即可拖垮整机 - CGroup 提供**内核级硬限制**,比 ulimit、nice 更可靠1.2 核心概念 3 件套 | 概念 | 一句话解释 | 查看方式 | | Hierarchy | 树…

【ArcGIS微课1000例】0150:如何根据地名获取经纬度坐标

本文介绍了三种获取地理坐标的方法:1)在ArcGIS Pro中通过搜索功能定位目标点(如月牙泉)并查看其WGS84坐标;2)使用ArcGIS内置工具获取坐标;3)推荐三个在线工具(maplocation、地球在线、yanue)支持批量查询和多地图源坐标转换。强调了使用WGS84坐标系以减少误差,并展示…

HTML应用指南:利用GET请求获取MSN财经股价数据并可视化

随着数字化金融服务的不断深化,及时、准确的财经信息已成为投资者决策与市场分析的重要支撑。MSN财经股价数据服务作为广受信赖的金融信息平台,依托微软强大的技术架构与数据整合能力,持续为全球用户提供全面、可靠的证券市场数据。平台不仅提…

雅思听力第四课:配对题核心技巧与词汇深化

现在,请拿出剑桥真题,开始你的刻意练习! 内容大纲 课程核心目标旧题回顾与基础巩固配对题/匹配题核心解题策略考点总结与精听训练表 一、课程核心目标 掌握第二部分配对题的解题策略攻克第三部分匹配题的改写难点系统整理高频场景词汇与特…

SQL Server从入门到项目实践(超值版)读书笔记 25

第12章 存储过程的应用 🎉学习指引 存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL语句集,存储过程时数据库中的一个重要对象,它代替了传统的逐条执行SQL语句的方式。本章就来…

20.29 QLoRA适配器实战:24GB显卡轻松微调650亿参数大模型

QLoRA适配器实战:24GB显卡轻松微调650亿参数大模型 QLoRA 适配器配置深度解析 一、QLoRA 适配器核心原理 QLoRA 作为当前大模型微调领域的前沿技术,通过量化与低秩适配的协同设计,在保证模型效果的前提下实现了显存占用的革命性降低。其核心由三大技术支柱构成: 4位量化…

QMainWindow使用QTabWidget添加多个QWidget

QTabWidget添加其它Wdiget的2个函数如下&#xff1a; QTabWidget的介绍可参考官网QTabWidget Class | Qt Widgets | Qt 6.9.1 直接上代码&#xff0c;代码如下&#xff1a; #include <QMainWindow>#include <QApplication> #include <QVBoxLayout> #includ…

AI学习机哪个好?选这几款步步高就对了

随着新教改政策的推进&#xff0c;教育对孩子的综合素养提出了更高要求。英语更重听说、数学更重思维&#xff0c;这让许多家长在辅导孩子时感到压力倍增。因此&#xff0c;如何选择一款能真正帮助孩子提升能力的学习机&#xff0c;成为了大家普遍关心的问题。面对市场上功能各…

【设计模式】--重点知识点总结

题1 1、工厂和产品之间是依赖关系 2、工厂方法模式&#xff1a;工厂方法不能为静态方法。如果是静态方法&#xff0c;子类无法重写行为。 简单工厂可以用静态方法 3、采用设计模式&#xff0c;以保证成功的设计和体系结构 4、建造者模式&#xff1a;&#xff08;1&#xf…

轻量实现 OCPP 1.6 JSON 协议(欧洲版)的充电桩调试平台

1 项目概览 1.1 目标与适用场景 1.1.1 简介 本文介绍的开源项目 ocpp_charge&#xff0c;是一个 自研轻量实现 OCPP 1.6 JSON 协议&#xff08;欧洲版&#xff09; 的充电桩调试平台。 它没有依赖官方 OCPP 1.6J 库&#xff0c;而是从零实现协议解析与会话管理&#xff0c;适…

Ubuntu 搭建 Solana 区块链开发环境 + Anchor 智能合约完整教程

文章目录简介特征核心概念Solana 的工作原理&#xff08;简单版&#xff09;为什么人们选择 Solana开发环境准备Solana 官网Solana 文档Anchor 文档GithubRust SDK快速安装 Solana&#xff08;推荐&#xff09;单独安装 Solana安装依赖项安装 Solana CLI安装 Anchor CLI安装 AV…