嵌入式单片机产品开发设计框架

2023-05-16

转载于:https://blog.csdn.net/weixin_43982452/article/details/119616145?spm=1001.2014.3001.5502

老板突然要给你一个新的需求,要你做一款自己不熟悉的产品,第一感觉都是懵的,不知道这个产品的工作原理是什么?用的是什么方案,什么芯片?

我们首先是买个样品回来研究一下,看别人是怎么做的,然后在别人样品的基础上优化升级,做出自己的产品。 比较郁闷的事情就是买回来的样品,芯片的丝印被打磨了,或者找不到芯片相关的资料。

对于电子工程而言,个人从事的行业不一样,个人的经历和经验也局限于自己做过的产品,随意再有经验的工程师,碰到自己没有做过的产品都是一样。

设计一款,首先是要确定产品的设计方案。产品的设计方案决定着产品设计的成功与失败,比较重要,所以我们在产品方案确定的时候,我们会不断的比较不同的方案,不同的模块,最终确定自己的产品设计。

今天,我们就以无际单片机编程给学员的第二个项目“WIFI防盗报警网关”为例,给大家比较透彻的解析一下硬件设计的过程。

img

第一步:根据产品的需求,确定产品设计的方案

先把产品的需求按照功能进行拆解成几个部分,然后逐个确定方案。

WIFI防盗报警网关的需求我们需要拆解成四个部分:

1.WIFI****无线通讯(广域网)

2.ASK****无线通讯(局域网)

**3.**用户交互

4.单片机

**1.WIFI****无线通讯(**广域网)

WIFI无线通讯模块可以选择的非常多,其中比较热的包括上海乐鑫ESP8266、ESP32,有人科技的USR-C210、USR-216、WIFI232-B2/A2、涂鸦科技的WRG1等。

不同的模块的比较,各自有各自的优势,我们最终选择的是涂鸦科技的WRG1,为什么选择涂鸦科技的?

ESP8266、ESP32、USR-C210等WIFI 模块,我们之前在产品设计中也有过应用,比较熟悉,但这些模块需要自己搭云服务器,开发手机端APP。

搭建云平台服务器,开发手机端APP(安卓和IOS),需要巨大的成本。

而涂鸦科技,只要我们购买它们的模块,就可以免费使用涂鸦科技的云平台,并提供的SDK包,支持自行生产手机应用端APP。

不仅帮我们省了成本,还大大缩短产品开发周期。

最终选择了的WIFI模块是涂鸦科技的WRG1 这个型号模组。

2.局域网无线通讯(ASK

ASK技术相对非常成熟,我们直接选择市面上比较成熟的模块即可,而且成本也不是很高。

img

**3.**用户交互设计

**输入操作:**按键输入

输出部分: LCD显示、蜂鸣器、喇叭报警声输出。

**按键操作:**向上、向下、向左、向右、确定、取消 6个按键操作

LCD 显示: 我们选择的128×64 OLED 液晶屏显示,

蜂鸣器和喇叭输出比较常规,我们就在这里不讲了

4.单片机选型

单片机型号: STM32F103.

我们开发的WIFI报警主机最主要是为了让大家通过这个项目学习掌握STM32单片机的开发,所以一定要选择出货量比较大的通用型的信号,在这里就不多谈了。

2步:确定供电方式和电源电路设计

很多兄弟可能觉得电源设计比较简单,这是一个比较危险的想法,因为电源是产品最重要的环节之一,很多硬件出问题,都是因为电源设计不合理导致的。

img

电源设计注意事项:

  • 供电满足所有芯片的供电电压,比较典型的包括:1.8V 3.0V 3V 5V
  • 供电电流高过系统最大电流的50%以上
  • 注重电源纹波的处理,一边要求纹波小于100mV

报警主机的系统工作电压:

WIFI报警主机系统的所有模块,包括WIFI模块,蜂鸣器、ASK无线接收,喇叭、单片机等都支持3.3V 供电,所以选择3.3V供电。

外部输入的电压通常有5V、9V、12V、24V、220V等,不能直接满足系统的供电要求,需要增加电源转换电路。

WIFI报警主机是通过USB 5V供电,我们需要增加5V转3.3V的电路。我们选择的电源芯片是XL1513E,可以满足5V转换3.3V的要求.

供电电流:

根据各自模块的工作电流确定,系统的正常的工作电流大概在25-40mA 之间,报警电流100mA 左右,XL1513E的供电电流支持2A. 远远的超过电路需求,可以满足产品设计。

系统纹波处理:

  • 芯片的VCC输入脚,需要增加1-4个100nF的贴片电容
  • 射频,4G,NB等工作峰值电流比较大的电路需要增加多个电解电容和贴片电容,减少纹波对模块工作的干扰。

3步:测试验证设计方案的可行性

通过以上的两步,确定了电路设计的整体框架,接下来就需要测试验证设计的合理性,并要确定设计的可行性。

对于自己比较熟悉的,有丰富的经验,直接使用就OK。

自己之前没有使用过的芯片或模块,我们需要提前测试,简单的验证一下方案的可行性。

喇叭,蜂鸣器,按键,ASK等我们比较熟悉,我们着重测试了涂鸦科技的WRG1模块,确定模块的可行性。

通过1-2周的开发测试验证,确定涂鸦科技的WIFI模块可以满足我们的需求。

最后**😗* 确定产品的硬件设计方案,开始进一步设计原理图,绘制PCB、焊接样品,测试调试。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

嵌入式单片机产品开发设计框架 的相关文章

  • Tomcat部署Web项目的几种方法

    tomcat 部署web项目的四种方法 Tomcat部署Web项目的3种方式
  • 心跳机制详解

    心跳机制 心跳机制详解 什么是TCP心跳机制
  • 学习Spring之前要先学习什么?

    转载于 xff1a https zhuanlan zhihu com p 64001753 开门见山 xff0c 先放结论 要开始学习Spring xff08 以IOC和Spring MVC为核心 xff09 xff0c 只需要做好以下准备
  • 【程序员学理财】有关fd的一些了解

    https www 163 com dy article GJK2KL600535EAS7 html https www fangdaijisuanqi com https www 163 com dy article GMUC9K5805
  • 【Java学习路线之JavaWeb】JSP教程

    文章目录 为什么要学习JSP xff1f 读者阅读条件 JSP到底是什么JSP的由来Servlet与JSP异同点JSP相对于Servlet的优点1 xff09 易于维护2 xff09 快速开发 xff1a 无需重新编译和部署3 xff09
  • 用了五年 VS Code ,我决定换成 JetBrains……

    作者 Jeremy Liu 译者 许学文 策划 闫园园 审校 王强 本文最初发布于 Blankly 上 xff0c 经原作者授权由 InfoQ 中文站翻译并分享 在编程中 xff0c VS Code 作为我的主 IDE 长达 5 年之久 在
  • 分布式、分布式系统、分布式计算、分布式存储

    用大白话聊聊分布式系统 什么是分布式系统 xff0c 如何学习分布式系统 分布式学习最佳实践 xff1a 从分布式系统的特征开始 xff08 附思维导图 xff09 分布式系统 分布式 到底什么是分布式系统 xff1f 你需要了解这些 ht
  • 第19章 操作系统设计的思想

    19 1 操作系统的概述 操作系统的设计是将方方面面的技术和设计有机的结合起来 xff0c 构建一个掌控计算机的巨无霸软件系统 各种各样的技术细节不一定相互兼容或者相得益彰 xff0c 甚至有些是相互矛盾的 xff0c 操作系统能把进程管理
  • 【Java学习路线之JavaWeb】Spring MVC框架入门教程

    文章目录 读者阅读条件 MVC设计模式简介JSP 43 JavaBeanServlet 43 JSP 43 JavaBeanMVC优缺点优点缺点 Spring MVC是什么Spring MVC优点 第一个Spring MVC程序1 创建We
  • 【Java学习路线之JavaWeb】Spring Cloud教程(非常详细)

    文章目录 读者阅读条件 微服务是什么微服务 xff0c 我们可以从字面上去理解 xff0c 即 微小的服务 xff0c 下面我们从 服务 和 微小 两个方面进行介绍 微服务架构微服务架构 vs 单体架构微服务的特点微服务框架Java 微服务
  • 架构设计:如何实现一个高性能分布式 RPC 框架

    在前面的课程中 xff0c 我们由浅入深地讲解了 Netty 的基础知识和实现原理 xff0c 并对 Netty 的核心源码进行了剖析 xff0c 相信你已经体会到了 Netty 的强大之处 本身学习一门技术是一个比较漫长的过程 xff0c
  • 【Java学习路线之JavaWeb】Hibernate框架入门教程

    文章目录 Hibernate框架入门教程读者阅读条件 ORM是什么ORM 的缺点ORM 框架总结 Hibernate是什么什么是 ORM xff1f 什么是持久化 xff1f Hibernate 支持的数据库Hibernate 是一种全自动
  • JDBC快速入门教程

    JDBC快速入门教程 xff1a https www yiibai com jdbc jdbc quick guide html
  • 嵌入式中5个难查的软件问题

    在嵌入式开发软件中查找和消除潜在的错误是一项艰巨的任务 通常需要英勇的努力和昂贵的工具才能从观察到的崩溃 xff0c 死机或其他计划外的运行时行为追溯到根本原因 在最坏的情况下 xff0c 根本原因会破坏代码或数据 xff0c 使系统看起来
  • 【Go语言入门教程】Go语言简介

    文章目录 Go语言简介Go语言创始人1 Ken Thompson2 Rob Pike3 Robert Griesemer Go 是编译型语言为什么要学习Go语言Go语言吉祥物 Go语言的特性有哪些 xff1f 语法简单并发模型内存分配垃圾回
  • 【Go语言入门教程】Go语言基本语法

    文章目录 Go语言变量的声明 xff08 使用var关键字 xff09 标准格式批量格式简短格式 Go语言变量的初始化回顾C语言 变量初始化的标准格式编译器推导类型的格式短变量声明并初始化 Go语言多个变量同时赋值Go语言匿名变量 xff0
  • 【Go语言入门教程】Go语言容器(container)

    文章目录 其它语言中的容器 Go语言数组详解Go语言数组的声明比较两个数组是否相等遍历数组 访问每一个数组元素 Go语言多维数组简述Go语言切片详解从数组或切片生成新的切片1 从指定范围中生成切片2 表示原有的切片3 重置切片 xff0c
  • 跨平台组件方案设计

    转一篇看完有点收获的文章 xff1a https blog csdn net c12345423 article details 117914561 一 背景说明 模块是对业务的抽象 xff0c 组件是对功能的抽象 xff0c 组件化的目的
  • 996,活着抑或死亡

    就在昨天 xff0c 2021年元旦假期的最后一天 xff0c 网传某大厂多多买菜的23岁小姑娘离开了这个世界 不久之前 xff0c 也有另一大厂的朋友因工作强度太大 xff0c 在字节跳动与心脏跳动中选择了后者 还有更戏剧化的新闻是刚因大
  • 怎么用手机拍摄制作视频

    今天看了一个用手机拍摄视频的Up主讲解他用手机拍摄来制作视频的过程 xff0c 在此总结一下 xff0c 学习一下 任何形式的内容创作 xff0c 都需要及时记录 xff0c 现在手机这么方便 xff0c 用备忘录记录一下想法和灵感 写稿子

随机推荐