Jorgen's blog Jorgen's blog
首页
  • 平台架构
  • 混合式开发记录
  • 推送服务
  • 数据分析
  • 实时调度
  • 架构思想

    • 分布式
  • 编程框架工具

    • 编程语言
    • 框架
    • 开发工具
  • 数据存储与处理

    • 数据库
    • 大数据
  • 消息、缓存与搜索

    • 消息队列
    • 搜索与日志分析
  • 前端与跨端开发

    • 前端技术
    • Android
  • 系统与运维

    • 操作系统
    • 容器化与 DevOps
  • 物联网与安全

    • 通信协议
    • 安全
    • 云平台
收藏
  • 关于我
  • 终身学习
  • 关于时间的感悟
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

jorgen

Love it, make mistakes, learn, keep grinding.
首页
  • 平台架构
  • 混合式开发记录
  • 推送服务
  • 数据分析
  • 实时调度
  • 架构思想

    • 分布式
  • 编程框架工具

    • 编程语言
    • 框架
    • 开发工具
  • 数据存储与处理

    • 数据库
    • 大数据
  • 消息、缓存与搜索

    • 消息队列
    • 搜索与日志分析
  • 前端与跨端开发

    • 前端技术
    • Android
  • 系统与运维

    • 操作系统
    • 容器化与 DevOps
  • 物联网与安全

    • 通信协议
    • 安全
    • 云平台
收藏
  • 关于我
  • 终身学习
  • 关于时间的感悟
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 平台架构
  • 技术选型
  • 开发脚手架
  • UI规范
  • 开发规范
  • 代码分支管理模型
  • 需求分析与管理
  • 权限设计
  • 树形组织设计
  • 协议设计
  • 指令交互
  • OTA
  • 规则引擎
  • 数据流转
  • 报告生成与导出
  • 监控设备接入
  • 时序数据库
  • 平台监控
  • 云⛈
  • 接口设计
  • 安全传输
  • CI&CD
  • 缓存
  • 消息处理引擎
  • 性能调优🔥
  • 线上事故🔥
  • 混合式开发记录
  • 推送服务
  • 机器人通信协议
  • 数据分析
  • flink模板工程
  • 实时调度
  • 机器人模块化设计
  • STM32入门
    • 💡 开始探索:点亮第一个外设
      • ✅ 1. 查数据手册
      • ✅ 2. 看典型电路
      • ✅ 3. 读电路图
      • ✅ 4. 写代码
      • ✅ 5. 验证
    • 🛠 嵌入式开发:电路分析技巧
      • 🔍 常见问题排查
      • 📊 嵌入式编程模式
    • 📚 常见应用场景总结
    • 🔍 GPIO_Mode 详解
    • 🎯 总结:每一步都是成长
  • 开发日志
Jorgen
2025-03-09
目录

STM32入门

🌟 入坑 STM32,动手实践,遇到问题别怕,查资料、调试、记录,慢慢就能上手!

刚入手 STM32,满怀期待!🎉 这是物联网开发的必经之路,动手试试,看看它到底怎么玩!

STM32


# 💡 开始探索:点亮第一个外设

# ✅ 1. 查数据手册

👉 确认关键引脚:

  • VCC(供电)
  • GND(地)
  • DATA(数据)

📌 STM32 运行电压 3.3V-5V,要注意匹配电源。


# ✅ 2. 看典型电路

🔍 发现 DATA 引脚 需要 10kΩ 上拉电阻,否则信号可能无法正常读取!


# ✅ 3. 读电路图

📖 反复确认:
✅ 电源连接正确吗?
✅ 信号路径清晰吗?


# ✅ 4. 写代码

💻 初始化 GPIO4 为输入模式,然后尝试读取点亮LED灯。

gpio_set_direction(GPIO_NUM_4, GPIO_MODE_INPUT);
1

# ✅ 5. 验证

🔍 看看灯是否正常输出:

  • 亮:电路连接正确,STM32 工作正常
  • 不亮:检查电路、代码,重新调试

🎯 成功的话,STM32 第一步就算完成!🎉


# 🛠 嵌入式开发:电路分析技巧

💡 学会看电路 = 开发更快更稳

# 🔍 常见问题排查

  • 电源不稳 ⚡:去耦电容别忘了!
  • 信号丢失 📉:上拉/下拉电阻是否匹配?
  • 接口错误 🔄:GPIO 复用有没有冲突?

📌 Tips:做个调试笔记 📒,记录每次踩过的坑。


# 📊 嵌入式编程模式

💻 开发中,你会遇到这些模式:

  • 模块化设计 🔗:把硬件驱动封装成函数,减少代码重复
  • 状态机 🎛:用 switch-case 让多任务更清晰
  • 中断 & 轮询 🔄:中断更高效,轮询适合简单任务

# 📚 常见应用场景总结

场景 GPIO_Pin GPIO_Mode GPIO_Speed
LED 控制 PB0 GPIO_MODE_OUTPUT_PP GPIO_SPEED_FREQ_LOW
按键检测 PA1 GPIO_MODE_INPUT 无需配置
I2C 通信 (SDA) PB7 GPIO_MODE_AF_OD GPIO_SPEED_FREQ_HIGH
ADC 采集 PA0 GPIO_MODE_ANALOG 无需配置
PWM 输出 PB3 GPIO_MODE_AF_PP GPIO_SPEED_FREQ_HIGH

# 🔍 GPIO_Mode 详解

💡 GPIO_Mode 决定了引脚的用途!

模式 作用 示例
GPIO_MODE_INPUT 读取外部信号 读取按键
GPIO_MODE_IT_RISING 上升沿中断 检测按钮按下
GPIO_MODE_OUTPUT_PP 推挽输出 控制 LED、继电器
GPIO_MODE_OUTPUT_OD 开漏输出 I2C 通信(需上拉)
GPIO_MODE_AF_PP 复用推挽输出 UART TX,SPI CLK
GPIO_MODE_ANALOG 模拟输入 采集 ADC,DAC

# 🎯 总结:每一步都是成长

💡 下一步?
📌 试试 接更多外设、I2C、UART 通信,继续探索更有趣的功能吧!🔥

上次更新: 2025/03/09, 15:45:50
机器人模块化设计

← 机器人模块化设计

最近更新
01
ADB调试
03-09
02
微信小程序学习记录
02-09
03
TLS与SSL
01-09
更多文章>
Theme by Vdoing | Copyright © 2019-2025 Jorgen | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式