搜索
bottom↓
回复: 44

我也凑个热闹, diy个简易示波器

  [复制链接]

出0入137汤圆

发表于 2020-7-18 12:42:50 | 显示全部楼层 |阅读模式
淘宝上有个示波器套件似乎很受欢迎,型号是DSO138,原理图如下(图片来自淘宝)

                              
基本指标:采样率1Msps,模拟带宽200kHz,垂直灵敏度从10mV/div5V/div,水平时基从10us/div50s/div,具有自动、普通和单次触发模式,自带1kHz/3.3V方波测试信号。是不是挺不错?
不过采样率1Msps还是低了点。以及切换耦合方式、垂直灵敏度都是用机械开关实现的,还需要用双联开关的另一联来告诉MCU开关状态。是不是有点傻?这两个地方看来可以改进一下。
首先MCU可以改用STM32F303CC,和STM32F103相比除了增加了4个片内运算放大器、7个比较器以外,最大的不同之处是它的ADC时钟可以运行在与主频相同的72MHz12位采样时的最高采样率可以达到72/(12.5+1.5)=5.14Msps。如果把分辨率降到6位,再超点主频到80MHz,最高采样率就是80/(6.5+1.5)=10Msps了,是不是很美妙?
输入端的几个机械开关则可以用继电器或者模拟开关代替。然而用模拟开关的问题是输入电压不能超过模拟开关的耐压了。然而我拿到电路板才发现忘了这一点,算了,反正一般情况用示波器也不会测到太高的电压,就这样吧。
原理图如下,除了之前两处,再就是改成了电池供电,这样可以做成一个手持式设备了。按钮则只用了两个,操作起来稍微麻烦一点。


还有个bug是高压必须先上电,否则DG409很容易闩锁,但是两个DCDCEN脚都忘了加下拉……只能下个版本改进了。
实物照片,果然还是搞gui最折腾,有句话怎么说的,凡是有gui的程序都得在gui上消耗80%的时间……


源代码和pdf原理图见github链接:

https://github.com/tomzbj/diy/tree/master/dso

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2020-7-18 13:53:23 | 显示全部楼层
非常佩服你们的动手能力,我就想搞个完整的,直接能用的

出0入0汤圆

发表于 2020-7-18 13:54:26 | 显示全部楼层
谢谢楼主分享~

出0入0汤圆

发表于 2020-7-18 13:58:33 | 显示全部楼层
好贴,有空装台玩玩

出0入0汤圆

发表于 2020-7-18 14:15:40 | 显示全部楼层
楼主代码工程文件工程去掉了么?只留下一些.c ,.h文件?整个工程如何打开?自己新建一个??

出0入137汤圆

 楼主| 发表于 2020-7-18 14:18:52 来自手机 | 显示全部楼层
qjp1988113 发表于 2020-7-18 14:15
楼主代码工程文件工程去掉了么?只留下一些.c ,.h文件?整个工程如何打开?自己新建一个?? ...

Makefile足够了
我从来不用keil iar之类

出140入145汤圆

发表于 2020-7-18 15:37:53 | 显示全部楼层
再用长条形的OLED屏,缩小一点点,做成示波笔,那就实用性很好了,现场检修设备非常有用。

出0入0汤圆

发表于 2020-7-18 16:29:17 | 显示全部楼层
单通道差评,怎么也得2个通道实用啊。F3系列记得有多个AD,可以同步采样的。

出0入0汤圆

发表于 2020-7-18 16:37:52 | 显示全部楼层
用2个轮拨啊。轮拨一个顶3个按钮。秀珍的都是用轮拨。

出0入96汤圆

发表于 2020-7-18 16:41:59 | 显示全部楼层
huangqi412 发表于 2020-7-18 16:29
单通道差评,怎么也得2个通道实用啊。F3系列记得有多个AD,可以同步采样的。 ...

我觉得恰恰单通道正好,如果需要多通道的用成品的就好了,单通道的便携 初测还是方便些

出0入137汤圆

 楼主| 发表于 2020-7-18 16:46:13 | 显示全部楼层
huangqi412 发表于 2020-7-18 16:29
单通道差评,怎么也得2个通道实用啊。F3系列记得有多个AD,可以同步采样的。 ...

我是放在85*50的blaster盒里的,2个通道估计是放不下了。。。除非双面贴
f3交错采样的话速度可以不止10M吧,我没试

出0入137汤圆

 楼主| 发表于 2020-7-18 16:48:47 | 显示全部楼层
huangqi412 发表于 2020-7-18 16:37
用2个轮拨啊。轮拨一个顶3个按钮。秀珍的都是用轮拨。

嗯,我也在考虑,有啥推荐的型号么?这东西似乎不太好买。。。
https://item.taobao.com/item.htm ... amp;id=543967456278
https://item.taobao.com/item.htm ... amp;id=539564061761
这俩如何?

出0入0汤圆

发表于 2020-7-18 16:51:27 | 显示全部楼层
不错,表示支持一下...

出0入0汤圆

发表于 2020-7-18 16:58:25 | 显示全部楼层
tomzbj 发表于 2020-7-18 16:48
嗯,我也在考虑,有啥推荐的型号么?这东西似乎不太好买。。。
https://item.taobao.com/item.htm?spm=a1 ...

这个不知道,一般都LC打板顺带。

出0入0汤圆

发表于 2020-7-18 17:09:34 | 显示全部楼层
tomzbj 发表于 2020-7-18 16:46
我是放在85*50的blaster盒里的,2个通道估计是放不下了。。。除非双面贴
f3交错采样的话速度可以不止10M ...

看用途定位,如果是便携看测试点,那确实单通道可能够,基本需要带USB直接手机屏看了,不用内置电池。  如果作为DIY用的廉价示波器,体积可以再稍微大点,双通道是必须的(总有同时看个输入输出的需求吧)。  稍微扩大体积也不影响便携性。  记得F3是支持多个AD同步采,交错采还是等于单通道提高采样率啊,同步采才是多通道。

之前坛里有个貌似是开源的DS201还是什么的吧,用F1+FPGA做的,非常迷你,外挂AD做的貌似跟F3应该差不多性能,不知道是1还是2CH。

出0入0汤圆

发表于 2020-7-18 19:47:28 | 显示全部楼层
成品套件是为了节约成本,想方设法的降低成本

出0入137汤圆

 楼主| 发表于 2020-7-18 20:53:24 | 显示全部楼层
huangqi412 发表于 2020-7-18 17:09
看用途定位,如果是便携看测试点,那确实单通道可能够,基本需要带USB直接手机屏看了,不用内置电池。   ...

adc是ad928x或者ads830之类吧,其实不用fpga,有个fifo就行,但是idt720x都停产了。。。

出0入0汤圆

发表于 2020-7-18 21:54:02 来自手机 | 显示全部楼层
不错不错

出0入0汤圆

发表于 2020-7-19 07:40:01 | 显示全部楼层
tomzbj 发表于 2020-7-18 14:18
Makefile足够了
我从来不用keil iar之类

能否把你的工具链分享出来,这个更感兴趣

出0入137汤圆

 楼主| 发表于 2020-7-19 07:41:34 | 显示全部楼层
adda 发表于 2020-7-19 07:40
能否把你的工具链分享出来,这个更感兴趣

就是gcc啊

出0入50汤圆

发表于 2020-7-19 08:25:04 来自手机 | 显示全部楼层
amigenius 发表于 2020-7-18 15:37
再用长条形的OLED屏,缩小一点点,做成示波笔,那就实用性很好了,现场检修设备非常有用。 ...

MARK,一直想DIY个示波笔。。。

出0入0汤圆

发表于 2020-7-19 16:36:26 | 显示全部楼层

能不能打包一个,看看你的命令行编译是怎么配置的

出0入137汤圆

 楼主| 发表于 2020-7-19 16:42:16 来自手机 | 显示全部楼层
全部编译make -Bsj  平时make -sj

出0入270汤圆

发表于 2020-7-20 09:22:02 | 显示全部楼层
不错不错,这个示波器挺好

出0入0汤圆

发表于 2020-7-20 12:37:45 来自手机 | 显示全部楼层
有创意,能搞个套件就好了

出0入0汤圆

发表于 2020-7-22 17:21:53 | 显示全部楼层
不错,这个示波器要是有套件就好了。

出0入0汤圆

发表于 2020-7-22 19:55:58 | 显示全部楼层
支持一下,不过如果没有人做套件的话个人做成本太高了

出100入101汤圆

发表于 2020-8-24 16:30:17 | 显示全部楼层
tomzbj 发表于 2020-7-19 16:42
全部编译make -Bsj  平时make -sj

大牛,makefile

出0入0汤圆

发表于 2020-8-31 22:25:36 | 显示全部楼层
谢谢。学习了,了解下

出0入0汤圆

发表于 2020-9-1 06:08:38 来自手机 | 显示全部楼层
有套件出的话,支持一下。

出0入0汤圆

发表于 2020-9-7 22:42:09 | 显示全部楼层
都很厉害 学习了

出0入0汤圆

发表于 2020-9-15 09:11:22 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2020-9-24 14:37:27 | 显示全部楼层
哪里可以买嘞,想搞一个玩玩

出0入0汤圆

发表于 2020-9-30 11:48:30 | 显示全部楼层
挺好,入门级

出10入0汤圆

发表于 2020-12-10 13:55:49 | 显示全部楼层
很牛逼的,支持

出0入10汤圆

发表于 2021-1-1 22:38:06 | 显示全部楼层
很牛逼的,支持 有套件吗 这个可以满足基本DIY需求了

出0入0汤圆

发表于 2021-2-25 08:55:21 | 显示全部楼层
请教下楼主,不用ide的话,调试该怎么解决?

出0入4汤圆

发表于 2021-2-25 09:55:30 | 显示全部楼层
本帖最后由 ZL_electric 于 2021-2-25 09:57 编辑
tomzbj 发表于 2020-7-18 14:18
Makefile足够了
我从来不用keil iar之类


大神能不能大概讲一下怎么只用makefile编译?怎么建工程、设置

出0入137汤圆

 楼主| 发表于 2021-2-25 10:16:16 | 显示全部楼层
本帖最后由 tomzbj 于 2021-2-25 10:18 编辑
menglongfc 发表于 2021-2-25 08:55
请教下楼主,不用ide的话,调试该怎么解决?


用stlink就差不多了, 对着map文件检查地址, 再不行在适当的地方插printf输出呗
我是用eclipse, 但不用它的工程, 用"新建Makefile工程并导入现有代码"

好处是不管stm32, stm8, avr, 还是51, 都用同一套流程搞定, 省得换个平台还得换ide了.

出0入137汤圆

 楼主| 发表于 2021-2-25 10:17:50 | 显示全部楼层
ZL_electric 发表于 2021-2-25 09:55
大神能不能大概讲一下怎么只用makefile编译?怎么建工程、设置

找个Makefile教程自己动手写一次, 之后每次就不用从头写了, 把之前的改改就行.
我上面有源码, 里面有Makefile啊

出0入0汤圆

发表于 2021-2-25 10:57:17 | 显示全部楼层
tomzbj 发表于 2021-2-25 10:16
用stlink就差不多了, 对着map文件检查地址, 再不行在适当的地方插printf输出呗
我是用eclipse, 但不用它 ...

谢了,总觉得gdb不太好用,打断点啥的还是得回到常用的ide,所以makefile的方式没坚持下来,看你用的这么溜也只有羡慕的份了,膜拜大神

出0入4汤圆

发表于 2021-3-1 10:55:58 | 显示全部楼层
tomzbj 发表于 2021-2-25 10:17
找个Makefile教程自己动手写一次, 之后每次就不用从头写了, 把之前的改改就行.
我上面有源码, 里面有Make ...

这种情况怎么仿真?

出0入137汤圆

 楼主| 发表于 2021-3-1 11:09:26 | 显示全部楼层
ZL_electric 发表于 2021-3-1 10:55
这种情况怎么仿真?


有啥好仿真的, 直接板上调试
需要看寄存器的话用stlink可以看, 就是得到reference manual里查寄存器地址, 麻烦一点.

出100入101汤圆

发表于 2021-3-1 20:11:27 来自手机 | 显示全部楼层
大神就是牛。还是习惯在IDE环境仿真调试

出0入4汤圆

发表于 2021-3-2 09:59:50 | 显示全部楼层
tomzbj 发表于 2021-3-1 11:09
有啥好仿真的, 直接板上调试
需要看寄存器的话用stlink可以看, 就是得到reference manual里查寄存器地址, ...

明白了,JLINK其实也只是在查寄存器地址来实现仿真的,谢谢大哥!
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子论坛 ( 公安交互式论坛备案:44190002001997 粤ICP备09047143号 )

GMT+8, 2022-7-3 03:42

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表