简易数字示波器制作-2

简介: 简易数字示波器制作

简易数字示波器制作-1

https://developer.aliyun.com/article/1508443


2.电源控制电路

该项目可以使用 STM32 / GD32 最小系统板为核心,板载了5V转3.3V降压电路,所以在设计扩展板时只需要设计一个5V电源输入电路即可,这里选用了主流的Type-C为输入接口 ,且该接口只有两根线,插件封装,方便新手焊接学习,但需要注意的是这个Type-C接口仅用于供电,不能传输数据,如果需要使用传输数据,可以使用核心板上的Type-C接口。SW1为电源总开关、C1为输入滤波电容,R1是LED1的限流电阻。

d5e1bc2d967f415a432242901dd958e3_35fd536a9c1c41509fb4d2921ce1391f.png

除了电源输入电路以外,为保障运算放大器对于负电压的测量性能,使用了XD7660负压产生电路得到一个 负电压,该芯片外围电路简单,只需要两个电容和一个二极管即可工作,理论上输入电压为 +5V,也可以输出一个 -5V的电压,由于芯片内部存在一定压降及转换效率,实际测量负电压为 -4.3V左右,也能满足运算放大器的要求。

e42bbd04c9827bf5c0a9db7187c32a4c_76744bae7dd747d3a140370dad0de64d.png


3.单片机电路

原项目使用了由立创开发板团队推出的GD32最小系统板为主控,这款开发板是由立创开发板团队联合兆易创新推出的一款全国产的开发板,板载CH340下载芯片,只需要一根数据线就可以对板子进行烧录与串口调试,同时兼容STM32最小系统板的尺寸与引脚配置,可以直接进行替换。


ec31011776397bee2ec79562745b310a_4b81c0fcc99b4f599c980a74b64d2183.png


在配置核心板引脚与单片机功能时需结合引脚特性,比如SPI液晶屏驱动需要连接到对应的SPI引脚,ADC检测需要接到到ADC功能的引脚上,这里的引脚配置不唯一,可重新配置其他的方案,以数据手册中的引脚功能说明为准。


在这里我用的是STM32最小系统板作为主控,详细介绍可看:MCU最小系统电路设计(以STM32F103C8T6为例)_stm32f103c8t6最小系统电路-CSDN博客


4.人机交互电路

(1)液晶屏显示电路

1.8 TFT 是一款彩色显示屏,具有 128 x 160 个彩色像素,使用四线SPI通信方式与单片机进行连接,一共有八根引脚,模块引脚说明及与单片机连接情况如下所示:


be0edd125ac14ea39944cd9c85a9f2e2_87773f8e64dc479690ed8de8b52d85a3.png


(2)旋转编码器电路

旋转编码器属于一种特殊的按键,该项目使用的EC11旋转编码器有五个引脚,其中DE两个引脚类似于普通按键引脚,按下导通,松手断开,其余ABC三个引脚用于检测旋钮的转动方向,C脚为公共端,直接接地就行。


在旋转编码器时,A和B两个信号引脚存在相位差,也就是有一个引脚信号变化后另一个引脚信号再跟着变化,即两个引脚不同时变化,通过检测哪个引脚先变就能判断是正转还是反转功能。


87fbefe240e7ddb3a0d108ff1a53b861_77c7683c613b4738ba73fffde425119f.png


(3)LED灯指示电路

LED指示电路设计比较简答,采用低电平驱动的方式,当单片机引脚输出为低电平时,LED两端存在电势差,LED点亮;当单片机引脚输出为高电平时,LED灯熄灭。


8e87e303d618a48fa9a32d446574c0d8_759d7c44c07d4847a5a35a97f3e2c68a.png


(4)按键输入检测电路

除了旋转编码器外,该项目还使用了三个独立按键对系统进行控制,三个按键一侧直接接地,另一侧连接到单片机引脚,当单片机引脚检测到按键按下时,单片机引脚直接接到GND接地,单片机收到该引脚接地信号的反馈后再去实现对应的功能,为节约硬件成本,可以在软件设计时引入消抖功能,避免机械按键抖动时的误触发。


34a6acef6030d0cd238209a1713008c1_cf1bf48a8a664a8ba07a8964c9b63c20.png


(5)其他电路

除了示波器检测功能外,单独引出了一个PWM信号用于模拟一个简易的函数发生器功能,可以通过改变输出PWM的频率和占空比输出一个简易方波信号输出。


a63ea8c1bd3192534875115ca10820a0_7f80e2659f364734a50a49b677f6b9e8.png


四、免费PCB打样

嘉立创自2019年起给全国电子工程师及爱好者普及PCB免费打样服务至今,伴随着电子工程师的成长,解决学习过程中打样贵、打样慢的问题。在完成PCB设计后我们可以大胆地将文件提交到嘉立创平台进行PCB的打样,每个月可以支持免费打样两次,每次可打一款板子,实际生产5片,重点是还全国包邮!


1.优惠券领取

在进行PCB下单前需要先领取一张免费打样券,打开嘉立创下单平台的优惠券领券专区页面,嘉立创下单的账号与嘉立创EDA的账号通用,登录账号后即可领取优惠券:嘉立创-领券专区 (jlc.com)


进入领券专区后,选择PCB+SMT喷锡免费券进行领取,每个月可领取两张,领取后30天内有效。这里的PCB+SMT的意思是可用于PCB和SMT而不是一定要用SMT才能用券,系统会随机抽取幸运儿,有极小概率抽中的话还可以免费体验工厂帮忙焊接元器件(SMT)的服务,如果能抽中那也是极好的!


b862afd19f72c76c4f92aea9ea066d61_0823ef2bc24546878ebc0294451fa780.png


2.生成制造文件

领取优惠券后回到PCB设计页面,点击顶部菜单栏中的“文件”,选择“导出”选项,在里面可以选择导出物料清单(BOM)、PCB制板文件(Gerber)以及坐标文件,这三个文件是实际PCB设计生产中常用到的文件。其中物料清单是用于元器件采购以及SMT贴片时物料选择、坐标文件是用于SMT贴片时器件位置定位,而里面的PCB制板文件(Gerber)文件就是PCB生产用的文件。


799a2283d336147b7783329da36a56fa_b5edebee207c42509dff2dde35b01dbe.png


点击导出PCB制板文件(gerber),在选项中选择“导出Gerber”,这时系统会提醒先检查DRC再进行导出,这里需要点击“是,检查DRC”,当检查无误后才会导出Gerber文件下载到本地。然后再将Gerber文件上传到嘉立创下单系统即可完成下单。


769750d7f727db31ceab8a0c2f1f9abc_247201ae75bd4e3390023290dea7360c.png


在导出Gerber文件的窗口还有一个“PCB下单”的选型,直接点击PCB下单的话可以不需要下载文件直接跳转到嘉立创平台上进行PCB的打样操作,这里给PCB下单提供了更多的便利。点击自动下单后 同样需要对DRC进行检查,检查无误后系统会讲下单数据生产,点击“确认”按钮即可跳转到嘉立创下单平台页面进行下单。

530fae0738e87403ec68a53c32a9ab15_a4d7f0c8c23a45bf88f96fd6fd51f309.png

3.下单页面介绍

(1)基本信息

8e18bed8f205b2a120e948dabdf7a159_42e4c8fdf1a9faa177ce82966d55a8ab.png


  • 板材类别:选择FR-4,另外FPC板材为柔性PCB、铝基板常用于做灯板、铜基板散热性较好、高频板用于设计制作多阻抗和信号要求较高的板子;
  • 板子尺寸:默认会自动识别出来的,没有识别的话也可手动填写;
  • 板子数量:免费打样数量为5片,如果多打需要自费;
  • 板子层数:嘉立创现在支持1-4层的免费打样,板子设计是两层板,这里选择“2”;
  • 产品类型:选择工业/消费/其他类电子产品,航空和医疗板精度设计要求较高;
  • 确认生产稿:如果是批量生产那必须要确认生产稿,避免生产文件有误影响板子功能,免费打样则选择不需要生产稿即可。

(2)PCB工艺

PCB工艺选项里面内容较多,仅需关注下图中框选出来的几个选项:


  • 拼板款数:在进行批量打样时常将多个PCB拼在一个板子上生产,这样成本更低。由于目前仅做免费打样,拼板数量应为1,出货方式为单片;
  • 板子厚度:默认板子厚度为1.6mm,无特殊要求建议是默认1.6mm ,选择其他厚度和颜色匹配时容易选到冷门工艺会额外添加工艺费;
  • 阻焊颜色:即板子的颜色,嘉立创支持七种不同的阻焊颜色,其中绿色的生产周期最快,最快48小时内发货,其他颜色最快是72小时发货,可结合自身喜好和板子的着急程度选择合适的阻焊颜色。

bdbaa505c1330c566e7f95e32740eb1c_5add96e913aecffe804907f213df6125.png


(3)个性化服务

个性化服务没有特殊需求选默认即可。



(4)交期

交期与所选颜色有关,嘉立创最快支持12小时加急,但需额外支付加急费。若无特殊需求,选用默认交期即可。


1f9d171c875761b64319885633b958c0_2466504f189e99eef3292af20e0d03e5.png


(5)SMT贴片与激光钢网

如需选择工厂代焊接元器件则在此选择需要SMT贴片,工厂生产PCB后会将元器件一同焊接好寄出,SMT属于收费服务,若不需要则选择不需要即可。钢网是用于SMT贴片刷锡膏用的,如果自己有贴片机,可在生产PCB时选择开钢网回来自己进行贴片焊接。



13ba221af235fa4888236a00596bee0d_7bdb847eba64c89394a51abf27c78a2f.png


(6)开票与支付

嘉立创是支持开票的,下单前需填写开票税号,免费打样无需开票,开票信息填写个人即可。在确认订单方式推荐选择“系统自动扣款并确认”选项,避免个人疏忽忘记确认订单影响生产。


68f8d7c8f141363f2d2d80d24537af48_f0ac7e5f5dc4a2febd0c4b8629a9d5e4.png


(7)发货与快递

在发货页面建议选择电子收据,发货方式可选不同交期是否一起发后,填写收货地址,下单联系人和技术联系人都可以填自己的联系方式,快递根据地区不同会由不同的快递显示,选择里面一个免费的快递即可。


0a2d8cddab7f2a2c56b398bc3b21921a_b91953d08ddaba66a9448c497ee34b8a.png


(8)使用优惠券下单

填写完下单数据后,在右侧结算页面选择使用优惠券下单即可获得减免,这里注意下优惠前面额应该是20元,如果超过20那可能是选了某个特殊工艺,应修改回默认工艺后再使用优惠券下单。


7ee295a8809ad1bac85a93316aa56f4d_aee1e2302ddfcc95f91249377519db25.png


提交订单后还需确认订单,系统可能会自动审核通过,也有可能会有人工审核参与,这时需等待审核通过后进行确认订单才可以进入生产环节,如果前面选了“系统自动扣款并确认选项”在有余额的前提下系统就自动确认并进入生产。


91959b9b94c5f2bc6a80039b47186508_9f99b4c8cf5aa01074f0a18994e23f40.png


生产中的板子可在嘉立创下单平台的PCB订单中查看进度以及快递情况。


五、软件开发(基于STM32标准库)

在这里我用STM32标准库测试需要的功能,主要测试了:


  • TFT屏幕
  • LED
  • 输出比较
  • 输入捕获
  • ADC采集
  • KEY按键

由于测试代码太多了,在这里我就不呈现了,后续再把代码开源。


bd4b9c61a24c9053756a7269be014da1_eb87e17c5df2445591d6e0d0d7a711cd.png


具体测试功能代码可以看:


STM32标准库基础知识_stm32标准库有什么内容-CSDN博客

STM32标准库外部中断和定时器知识点总结-CSDN博客

STM32标准库ADC和DMA知识点总结-CSDN博客

STM32标准库SPI通信协议与W25Q64-CSDN博客

后续有时间的话我再用HAL库复刻一遍,然后开源代码。


六、项目演示视频

image.png

数字示波器演示视频

相关文章
|
11天前
点阵式汉字LED显示屏的原理与制作
点阵式汉字LED显示屏的原理与制作
20 2
|
6月前
|
算法
LabVIEW在同一个面板下描绘模拟波形和数字波形
LabVIEW在同一个面板下描绘模拟波形和数字波形
47 0
|
6月前
|
存储 前端开发 人机交互
|
数据采集
LabVIEW虚拟数字示波器
本篇博文将设计一款虚拟示波器(简易版+复杂版),不依托外部设备,通过LabVIEW内置的信号发生VI,生成各类型波形,通过上位机软件可以对波形进行分析。当然,感兴趣的朋友也可以参照之前博文项目进行修改,将生成波形信号的功能,替换为采集实际设备,实现对实际设备数据的采集和分析。
|
芯片
数电实验 数字电子钟设计 基于quartus 实现计时校时闹钟秒表稍复杂音频 分享电路图设计以及工程文件
数电实验 数字电子钟设计 基于quartus 实现计时校时闹钟秒表稍复杂音频 分享电路图设计以及工程文件
1529 1
数电实验 数字电子钟设计 基于quartus 实现计时校时闹钟秒表稍复杂音频 分享电路图设计以及工程文件
|
传感器 数据处理 芯片
基于单片机的数字温度计设计
基于单片机的数字温度计设计
203 0
基于单片机的数字温度计设计
|
存储 芯片 内存技术
基于单片机的数字万年历设计
基于单片机的数字万年历设计
339 0
基于单片机的数字万年历设计
|
存储 数据采集 芯片
基于单片机的数字存储示波器设计
基于单片机的数字存储示波器设计
177 0
基于单片机的数字存储示波器设计
数字逻辑电路实验:基本电子钟
数字逻辑电路实验:基本电子钟
113 0
数字逻辑电路设计实验:七段数码管译码器
数字逻辑电路设计实验:七段数码管译码器
144 0