08讲 | 基于STM32单片机NBIOT定位实战项目

news2025/5/31 20:21:04

前言

绘制基于 STM32 单片机的 NBIOT 实战开发板。

文章目录

  • 前言
  • 一、原理图
    • 1、绘制
      • 1)电源供电
        • a、USB 转 TTL 电路
        • b、锂电池充电管理电路
        • c、3.3V电压转换电路
        • d、一键开关机电路
      • 2)单片机最小系统
      • 3)ADC电压转换电路
      • 4)NBIOT 模组串口电平转换电路
      • 5)BC20 模组电路
      • 6)SIM 卡物联网电路
      • 7)项目整体原理图
    • 2、原理图下载链接
      • 1)PDF 格式
      • 2)Altium Designer 格式
      • 3)立创 eda 格式
  • 二、PCB
    • 1、图示
    • 2、工程下载链接
      • 1)立创 eda 格式
      • 2)Altium Designer 格式

一、原理图

1、绘制

1)电源供电

a、USB 转 TTL 电路

  • USB 转 TTL 模块的作用就是把电平转换到双方都能识别进行通信。

  • 单片机通信接口的电平逻辑和 PC 机通信接口的电平逻辑不同,PC机上的通信接口有USB接口,相应电平逻辑遵照USB原则;还有 DB9 接口(九针口),相应电平逻辑遵照RS-232原则。

  • 单片机上的串行通信通过单片机的 RXD、TXD、VCC、GND 四个引脚,相应电平逻辑遵照TTL 原则。

  • 供电分为USB供电和锂电池供电,USB供电可以给锂电池充电同时也可进行产品的调试,故需要一个USB转TTL电路。

b、锂电池充电管理电路

c、3.3V电压转换电路

d、一键开关机电路

  • 当USB-5V不供电时,PMOS管G端电压为0,VBAT(锂离子电池供电电压最大为4.2V,最小为2.7V)通过PMOS管内部的二极管导通4.2V-0.1V=4.1V,S端电压为4.1V,PMOS管导通(区别NMOS)的条件时Vg-Vs<-0.7V(G端电压比S端电压小0.7伏以上或者1V以上),此时满足条件,PMOS导通,MOS管导通的时候相当于一根导线将内部的二极管短路,走上面VCC= VBAT,此时通过VBAT给后面的电路供电
  • 当接入USB时5V输入,G端电压比S端电压大,故PMOS管不导通,S端电压通过二极管2电压为4.7V大于VBAT电压4.2V故MOS管内部的二极管也不导通,此时VBAT就不再给后面电路供电了,只通过USB给供电
  • 按键实现开关机:当按键按下时,PMOS导通开始供电,当按键松开PMOS截至不供电,那要怎么保持住MOS管2G端的电压呢实现一键开机呢?
  • PWR_EN接单片机 的引脚,通过单片机高低电平控制三极管接通与否,当按键按下时,VCC有电,单片机开始工作运行程序将PWR_EN引脚置位高电平,三极管导通,放开按键,单片机保持运行,这样就实现了一键开机操作。

  • 开机之后再怎么实现一键关机呢?现在我们的单片机检测不到按键按下的状态。SHUT_DOWN引脚接单片机的一个引脚,按键按下开机,SHUT_DOWN引脚检测到按键按下。按键再次按下,SHUT_DOWN引脚检测到按键再次按下,就可以实现关机了

2)单片机最小系统

  • 单片机最小系统电路包括BOOT电路、复位电洛、下载接口、电源引脚BOOT引脚接GND之后单片机一上电就会运行我们下载进去的程序VDDA引脚是给单片机模拟器件(ADC)的电源供电引脚,VDD是给单片机数字电源的供电引脚。

3)ADC电压转换电路

  • ADC引脚只支持0-3.3V的输入不能直接将VBAT(可能超过3.3V)直接接入过来,我们用电阻分压的方式,BAT_ADC_EN经过分压之后最大电压为(2.1V,VBAT4.2V)。R16上拉电阻,R17限流电阻。当电路板关机的时候如果不加PMOS,锂电池会接电阻一直耗电,接个PMOS避免过放,断电之后PMOS不接通。

4)NBIOT 模组串口电平转换电路

  • NB模组的串口电压域为1.8V,而单片机的系统电压为3.3V,要想实现通信必须进行电平转换。
  • 当单片机的TXD为高电平时(3.3V),三极管的E极为3.3V,B极为1.8V,三极管不导通,模组的RXD被上拉电阻上拉成高电平,故此时单片机发送高电平,模组接收为高电平。
    当单片机的TXD发送低电平时(OV),三极管E极为OV,B极为1.8V,三极管导通,模组的RXD和TXD直连接都为OV低电平,故此时单片机发低电平,模组接收为低电平。

5)BC20 模组电路

6)SIM 卡物联网电路

7)项目整体原理图

2、原理图下载链接

1)PDF 格式

链接:https://pan.baidu.com/s/1BGQz7L04XPwBR3xKyptQMg?pwd=oald
提取码:oald

2)Altium Designer 格式

链接:https://pan.baidu.com/s/1D0AnsFHlAjxvL355ZUe-Ow?pwd=oald
提取码:oald

3)立创 eda 格式

链接:https://pan.baidu.com/s/1-qbmFcJq3dqdGbCxL_YmZQ?pwd=oald
提取码:oald


二、PCB

1、图示

在这里插入图片描述

2、工程下载链接

1)立创 eda 格式

链接:https://pan.baidu.com/s/1TBVdZX0XkEuBizLoK4FZdQ?pwd=oald
提取码:oald

2)Altium Designer 格式

链接:https://pan.baidu.com/s/1ctyMn7y-jCt2cmIG5eC6fQ?pwd=oald
提取码:oald

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

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

相关文章

Resin内存马逆袭之路

前言 故事还是要从很久很久以前说起&#xff0c;红蓝对抗越来越激烈&#xff0c;常见的免杀Webshell文件已经逃脱不了蓝队大佬的火眼金睛了&#xff0c;函数混淆的花里胡哨最后还是能被轻松分析&#xff0c;所以早在很多年前&#xff0c;就已经进入了内存马的时代&#xff0c;…

细讲一个 TCP 连接能发多少个 HTTP 请求(一)

一道经典的面试题是从 URL 在浏览器被被输入到页面展现的过程中发生了什么&#xff0c;大多数回答都是说请求响应之后 DOM 怎么被构建&#xff0c;被绘制出来。但是你有没有想过&#xff0c;收到的 HTML 如果包含几十个图片标签&#xff0c;这些图片是以什么方式、什么顺序、建…

Android主页面进程卡死黑屏怎么办?多线程机制来解决

问题描述 在做一个页面跳转小案例&#xff0c;在输入页输入要计算第几项斐波那契数列&#xff0c;然后跳转到另一个页面显示计算的结果&#xff0c;当输入的值很大时&#xff0c;跳转到另一个页面时&#xff0c;页面卡死黑屏。 页面卡死黑屏问题原因 计算斐波那契数列的常规方法…

Linux--fork

一、fork入门知识 fork&#xff08;&#xff09;函数通过系统调用创建一个与原来进程几乎完全相同的进程&#xff0c;也就是两个进程可以做完全相同的事&#xff0c;但如果初始参数或者传入的变量不同&#xff0c;两个进程也可以做不同的事。可以简单地说fork()的作用就是创建一…

如何在Python里使用ChatGPT及ChatGPT是什么?怎么注册?

废话不多说&#xff0c;直接开干! 需要库 pip install openaiimport openai# Set your API keyopenai.api_key "你的chatgpt的密钥key"# Use the GPT-3 modelcompletion openai.Completion.create(engine"text-davinci-002",prompt"Once upon …

纯CSS实现[喵咪小挂件]

效果预览 网页上&#xff1a; 小程序中&#xff1a; 在微信小程序中使用时&#xff0c;将div标签改成view即可。 小程序中封装 如下&#xff0c;在小程序中可封装成组件&#xff08;方便使用&#xff09; 1、先在components目录下新建一个目录存放该组件。 2、右键上一步…

Unity-ROS与激光雷达小车搭建(五)

0. 简介 我们在第三章和第四章中详细介绍了如何使用URDF以及Navigation 2&#xff0c;而第五章开始我们将学习如何将前面所学的结合起来&#xff0c;来形成一个Unity与ROS完整且系统的框架 1. 创建并导入URDF 这一部分作为我们第三讲的内容&#xff0c;我们在之前的基础上通…

【STL】综述

STL&#xff0c;一文即可知 文章目录一、STL基本知识概述容器二、序列式容器详述数组容器array向量容器vector双端队列容器deque链式容器list正向链容器forward_list参考博客&#x1f60a;点此到文末惊喜↩︎ 一、STL基本知识 概述 STL六大组件&#xff08;前三个是主要的&am…

在线支付系列【21】微信支付服务商接入前准备

有道无术&#xff0c;术尚可求&#xff0c;有术无道&#xff0c;止于术。 文章目录项目概述接入准备1. 注册服务商号&#xff08;获取服务商mchid&#xff09;2. 注册公众号&#xff08;获取服务商APPID&#xff09;3. 绑定应用ID和服务商ID4. 入驻子商户&#xff08;特约商户进…

MyBatis基础知识

1 JDBC基础知识1.1 JDBC简介JDBC是使用Java语言操作关系型数据库的一套API&#xff0c;全称Java DataBase Connectivity&#xff0c;Java数据库连接。JDBC定义了操作所有关系型数据库的规则&#xff0c;同一套Java代码可以操作不同的关系型数据库。也就是JDBC是Java语言操作数据…

分布式高级篇3 —— RabbitMQ

一、RabbitMQ1、RabbitMQ 介绍2、RabbitMQ 的相关概念3、安装 RabbitMQ4、交换机类型&#xff08;1&#xff09;direct - 直连交换机&#xff08;2&#xff09;fanout - 扇出交换机&#xff08;3&#xff09;topic - 主题交换机5、RabbitMQ 管理界面6、SpringBoot 整合RabbitMQ…

Autowired注解源码解析

一、Autowired注解的原理的概览 我们都知道一个Bean的大致生命周期有这几个阶段&#xff0c;实例化--> 属性填充 --> 初始化 --> 销毁回调 其中Autowired作用的时间就是在属性填充阶段&#xff0c;而且是通过AutowiredAnnotation BeanPostProcessor类进行处理的。注…

android14预览版介绍及解读

​ 前言&#xff1a; android14快要来了&#xff0c;最近2月8日&#xff0c;android14的第一个开发者预览版发布了&#xff0c;正式版大约会和往常一样&#xff0c;大概率在六月份左右推出&#xff0c;八九月份时会有国内会有第一批手机支持安卓14。所以&#xff0c;本文就带…

为什么要用频谱分析仪测量频谱?

频谱分析仪是研究电信号频谱结构的仪器&#xff0c;用于信号失真度、调制度、谱纯度、频率稳定度和交调失真等信号参数的测量&#xff0c;可用以测量放大器和滤波器等电路系统的某些参数&#xff0c;是一种多用途的电子测量仪器。从事通信工程的技术人员&#xff0c;在很多时候…

免费下载学术文献的网站,好用!

推荐几款好用的免费下载学术文献网站&#xff0c;让你的查找文献环节更加事半功倍&#xff01; 1、Open Access Library&#xff08;OALib&#xff09;图书馆让学者可以免费下载学术文献和论文&#xff0c;并在这个平台上发表自己的论文。提供Open Access数据库资源。 2、文献…

Spring Security实现RBAC权限模型练习

1.Spring Security介绍 Spring Security的核心功能就是认证、授权、攻击防护&#xff0c;Spring Boot项目启动之后会自动进行配置&#xff0c;其核心就是一组链式过滤器。 如下图所示&#xff0c;对于一个用户请求&#xff0c;Username Password Authentication Filter验证用…

2022年API安全研究报告

导读 API应用的增速与其安全发展的不平衡,使其成为恶意攻击的首选目标,围绕API安全的攻防较量愈演愈烈。 2022年API安全风险概况 2022年平均每月遭受攻击的API数量超21万 2022年全年平均每月遭受攻击的API数量超过21万,第二季度(4-6月)遭受攻击的API数量达到高峰,月均…

经典文献阅读之--IGP2(可解释性目标的自动驾驶预测与规划)

0. 简介 对于自动驾驶的预测和规划而言&#xff0c;能够有效的对目标产生可解释性是非常有必要的&#xff0c;而《Interpretable Goal-based Prediction and Planning for Autonomous Driving》文中就提出了一种综合的自动驾驶预测和规划系统&#xff0c;它利用合理的逆规划来…

php mysql娱乐场所运营管理系统

目 录 1 背景与意义 3 1.1 研究背景 3 1.2 国内外发展状况研究 3 2 系统开发环境与技术 4 2.1 PHP介绍 4 2.2 MYSQL介绍 5 2.3 APACHE介绍 6 2.4 dreameaver介绍 7 2.5 wamp介绍 7 3 系统分析 8 3.1 系统可行性分析 8 3.1.1 技术可行性 …

【编程基础之Python】1、初始Python

【编程基础之Python】1、初始Python初始Python什么是PythonPython的运行过程Python的应用领域如何学好Python初始Python Python是一种跨平台的、开源免费的、解释型的、面向对象的高级编程语言。 Python的应用领域非常广泛&#xff0c;包括客户端程序、服务器程序、移动端程序…