hongmark 发表于 2014-9-13 15:05:20

牛,支持

绝对零度 发表于 2014-9-13 15:37:35

强大!顶起!!!

mubei 发表于 2014-9-13 16:14:46

jonyzhu 发表于 2014-9-13 14:29
运放部分太像了!

春风那个好像是黑金出的老版AD/DA模块
我感觉做示波器,FPGA+ARM才是正道,目前这种方案没啥发展前景的,不过调试单片机基本应用倒是够了
如果自己做示波器的话,魏坤那个是重点参考对象,{:3_47:} 最近正在边仿造魏坤的板子边研究他的程序,刚学FPGA看起来很吃力

mubei 发表于 2014-9-13 16:15:03

jonyzhu 发表于 2014-9-13 14:29
运放部分太像了!

春风那个好像是黑金出的老版AD/DA模块
我感觉做示波器,FPGA+ARM才是正道,目前这种方案没啥发展前景的,不过调试单片机基本应用倒是够了
如果自己做示波器的话,魏坤那个是重点参考对象,{:3_47:} 最近正在边仿造魏坤的板子边研究他的程序,刚学FPGA看起来很吃力

mubei 发表于 2014-9-13 16:22:41

抱歉,网速不好,重复发帖了

kdtcf 发表于 2014-9-13 16:26:05

mubei 发表于 2014-9-13 16:15
春风那个好像是黑金出的老版AD/DA模块
我感觉做示波器,FPGA+ARM才是正道,目前这种方案没啥发展前景的, ...

是黑金的板子,双路65Mbps   12bitADC   就是配套FPGA来使用的

xlz406 发表于 2014-9-13 16:34:55

支持{:smile:}

goolloo 发表于 2014-9-13 20:02:47

支持。赞下楼主 。
做个记号。{:lol:}

ycwjl728 发表于 2014-9-13 20:25:27

学习一下 谢谢楼主分享

jonyzhu 发表于 2014-9-13 21:14:10

kdtcf 发表于 2014-9-13 16:26
是黑金的板子,双路65Mbps   12bitADC   就是配套FPGA来使用的

谢谢你!不过,FPGA 对我来说有点儿陌生了,让我先把简单的弄出来吧。否则,你这块板子在我这里恐怕也要先闲置一段时间了{:sad:} 。我想用 OpenCV 配合 ARM Cortex-A 系列的平台做个机器人,这个示波器是前期的开发工具+练手用的。保持这个示波器的简单设计,一方面是因为我的确刚起步,另外一个方面,简单的设计容易验证想法。

jonyzhu 发表于 2014-9-13 21:18:36

mubei 发表于 2014-9-13 16:14
春风那个好像是黑金出的老版AD/DA模块
我感觉做示波器,FPGA+ARM才是正道,目前这种方案没啥发展前景的, ...

你说的对,这个就是我调试单片机用的。10M 左右采样率基本够用了。加上这个设计的简单,所以可以让我较快的验证一些想法。我自己的感受是:做出来显示波形,容易;做出来能够稳定的触发显示波形,有点儿难;做出来能够显示参数,更难;做出来能够用旋钮、按键调整参数,起停波形、暂停查看等功能,比前面这些加起来还难。

FPGA 我还没开始,不过我估计以后会上的 {:smile:}

elbor 发表于 2014-9-13 21:22:14

学习一下 谢谢楼主分享

jonyzhu 发表于 2014-9-13 21:26:54

本帖最后由 jonyzhu 于 2014-9-13 21:28 编辑

I2C
I2C 其实是一个挺复杂的协议,以前用 AVR 的时候我最得意的事情就是把它的 I2C 搞得非常透彻,然后还用这个协议设计制作了一款 “4芯” 的 ATMega8 开发板可以4个芯片互相通信(真的是 4 芯啊!正面两颗,背面两颗。)


今天用示波器测试了一下 STM32 的 I2C(同一块板,I2C1 发送,I2C2 接收),不得不说,比 AVR 的配置容易多了。不过有件事情我不太明白,怎么波形出来是下面这个样子的呢(但数据收发都是正常的),有人知道为什么吗?

dong889 发表于 2014-9-13 21:33:40

mark 赞一个!其实我也很想整一个~

hantnt 发表于 2014-9-13 21:52:39

jonyzhu 发表于 2014-9-13 21:26
I2C
I2C 其实是一个挺复杂的协议,以前用 AVR 的时候我最得意的事情就是把它的 I2C 搞得非常透彻,然后还用 ...

这个应该是正常的波形,个人觉得原因是由于I2C为开漏引脚,在MCU将引脚由拉低转为悬空时,上啦电阻会对芯片引脚的内部的寄生电容充电,从而产生这种积分波形。时间常数应该就是t=RC

hantnt 发表于 2014-9-13 21:56:26

然后从你的波形上看,时间常数大概为20us,假设你的上啦电阻为10K,那么I2C引脚的寄生电容应该就是2nf了

hantnt 发表于 2014-9-13 22:00:24

至于数据发送正常的问题,你可以看看芯片手册关于的I2C说明,就你图分析,黄色为时钟信号,红色为数据,那么时钟信号应该是在下降沿采的样,然后只要在下降沿时刻数据线的电平大于0.7vcc就判定为高电平,否则为低,你可以对比一下波形图看看,时序是满足要求的大于0.7Vcc。

jonyzhu 发表于 2014-9-13 22:38:50

hantnt 发表于 2014-9-13 21:52
这个应该是正常的波形,个人觉得原因是由于I2C为开漏引脚,在MCU将引脚由拉低转为悬空时,上啦电阻会对芯 ...

嗯,有道理。但我关了I2C的模拟滤波器波形没有变化,还是这个样子。屏幕上看到的时间宽度是 36us 多一点儿,大约16个完整时钟周期(黄色的波形),分到上升沿的部分差不多刚好 1us,按照 70% 的时间常熟计算 t=0.69*RC,R是10K,1us=0.69*10K*C 计算,C大约是145pF。有点儿意思,可我怎么测量以验证这个计算结果呐?{:sad:}

海案 发表于 2014-9-13 22:43:47

学习一下

hantnt 发表于 2014-9-13 23:06:44

jonyzhu 发表于 2014-9-13 22:38
嗯,有道理。但我关了I2C的模拟滤波器波形没有变化,还是这个样子。屏幕上看到的时间宽度是 36us 多一点 ...

很简单,换上啦电阻

唱小沈阳的大海 发表于 2014-9-13 23:07:48

感谢分享。。。
学习~

Benyjuice 发表于 2014-9-13 23:21:57

mark,神贴

jonyzhu 发表于 2014-9-14 12:37:38

10K 上拉电阻改成 2.5K,波形略微“方”一点儿了,而且传输速率也变快了。据说I2C最高可以到5Mbit/s,嗯,我会考虑用它来做总线,当然,在我搞定 CAN 以后再说。

guyue180 发表于 2014-9-14 14:05:38

看起来不错。

ST_GND 发表于 2014-9-14 23:25:17

顶楼主期望看到楼主走的更远。

cinple 发表于 2014-9-14 23:50:21

STM32 示波器

guyong2012 发表于 2014-9-17 11:51:04

这是要火的节奏,STM32也有示波器了

moen 发表于 2014-9-17 17:32:54

不错的~~

busterace 发表于 2014-9-17 18:56:55

谢谢分享,支持一下

ArthurBruin 发表于 2014-9-17 19:24:52

好有前途,哈哈,顶

gwalle 发表于 2014-9-17 19:26:52

哈哈,很不错的哈,回头有问题可以咨询你么

Uplate 发表于 2014-9-19 16:27:48

火钳刘明

jonyzhu 发表于 2014-9-20 08:20:20

gwalle 发表于 2014-9-17 19:26
哈哈,很不错的哈,回头有问题可以咨询你么

欢迎发帖讨论!

atonghua 发表于 2014-9-20 09:15:49

楼主厉害啊 支持

yyj6798 发表于 2014-9-20 09:49:52

楼主“钱”程远大

lishunfu 发表于 2014-9-20 10:36:23

LZ 高手,佩服

nhztb 发表于 2014-9-20 10:54:04

牛X,真的是给你提鞋都不行.

xfdr 发表于 2014-9-20 14:08:39

果然历害啊!

chenyg 发表于 2014-9-20 14:30:28

收藏,学习

xd785 发表于 2014-9-20 15:53:36

收藏,学习   

jonyzhu 发表于 2014-9-20 17:46:13

本帖最后由 jonyzhu 于 2014-9-20 17:48 编辑

设计经验

为什么不买一台示波器?
因为我想自己经历一遍产品的设计、实现的过程。另外我看上的示波器都要好几万,所以,暂时先自己做个简单的用着。

为什么选择 STM32F303VCT6?

[*]STM32 Cortex 内核,可以重用现有的设计、开发经验。曾经也尝试用 LPC1769,无奈开发环境太难用,实在是没有时间精力去和开发环境搞。

[*]采样率高。12bit 时一个 ADC 即可实现 5M/s 的采样率,而且还有 4 个ADC 可以同时采样(4 通道 5M/s,降低采样精度速度更快)。以调试 STM32F4 上面的 SPI 为例,在主频 168MHz 的时候,SPI 最慢可以 1/256 分频,这样 SPI 的时钟频率 656KHz,要想看到正常的波形,采样率选 10 倍的话,就是 6.5M/s 的采样率,所以 STM32F303VCT6 刚好够用。
[*]官方开发板非常便宜,不到 90 元即可买到。
[*]要做100M/s的示波器,我得先有10M/s的示波器。


为什么要自己设计PCB
因为一堆散件(开发板)用线接在一起太丑了。从实现功能原型,到整合进入一块PCB,这之间有巨大的工作量;前者如果要用1个月,那么后者需要3个月。整个人得到的能力提升完全不可同日而语。

为什么不用虚拟示波器来实现?
虚拟示波器手感、使用体验不好,摸旋钮的感觉比用鼠标点那要好太多了。我愿意为好的使用体验付费。

有哪些超出意料的性能?

[*]+/- 5v 电源超稳定!接上负载输出电压纹丝不动(额,是10mv级别上没有变化),长时间工作也仅仅是温温的。
[*]锡浆超好用!手工焊接 100 Pin 的芯片非常轻松!

[*]把自己的项目 Logo 印在PCB上面了,乐呵呵的对着看了半天。
[*]Altium Designer 手动布线非常好用!451根连线轻松布完,非常愉快。
[*]自制的信号线还行。



有哪些意料不到的问题?

[*]ADC 通过 DMA 保存采样数据的时候,会出现 Overrun 的情况。这在以前用 STM32F4 调试3通道交替采样(7.2M/s)的时候都是没有出现过的情况。这个问题随着采样率的提高而越发明显,导致实测 6bit 分辨率时,理论上的 18M/s 采样率只能到 13.5M/s,而且波形偶尔会有“撕裂”的情况。至今无解,我的判断是 SysTick 的干扰,但目前还没有进行验证。
[*]ADC 控制线路上的干扰比想像中大很多。设计时,我安排了一些通过 ADC 直接接电位器的控制电路,比如波形的水平轴移动。但是,这样做法得到的电压波动比想像中大很多,导致水平移动波形时,即使停止转动电位器,采样的电压还会波形,波形不能稳定。最后没办法,改成了用+/-按钮来调整,但是使用体验就远不如转动电位器的旋钮了。所以,下一个版本会换成旋转编码器。
[*]PCB 布线完成以后,自己作死又去手动改了几根GND的宽度,结果导致其中一根和另外的线路短路了,还好我焊接的时候发现了。以后千万别再这么干了。


下一个版本会有哪些改进?

[*]控制电路会引入旋转编码器,杜绝干扰。
[*]更大的显示屏,目前心中极其希望做 5寸,800x480 的。采用保守方案的话,至少也是 480x272 的那种。
[*]重新设计触发电路,采用独立的触发放大通道。这个太重要了。
[*]希望是4通道的,调试步进电机、SPI 其实还是需要的。
[*]加入频率计。
[*]总体方案1:让 STM32F3 专心做 ADC,会用单独的 MCU 来做控制电路(甚至可能考虑单独的显示用MCU,即“显卡”)。这是最稳妥的升级方案。
[*]总体方案2:放弃 STM32F3,改用 TI 的更高采样率的专用 IC,但这样研发时间就长了。这是最激进的升级方案。但仍然不用 FPGA,因为我还不会用。。。
[*]总体方案3:采用单片 STM32F303VCT6,全集成,甚至模拟部分都用它自带的运放。这是最省钱的方案,如果出套件,估计这款最受欢迎吧。


我最终到底想做什么?
Jibo

hy2515131 发表于 2014-9-20 17:49:21

好帖子啊,厉害啊!

kevin_me 发表于 2014-9-20 17:51:09

楼主牛人,学习了。

psbhero 发表于 2014-9-20 22:30:00

支持
学习了

disheng 发表于 2014-9-22 09:05:38

最终到底想做什么? {:sad:}{:sad:}{:dizzy:}

1066950103 发表于 2014-9-22 09:19:36

这个的认真学习

disheng 发表于 2014-9-22 09:25:05

找到了图片是家用机器人Jibo

myxiaonia 发表于 2014-9-23 12:54:41

kdtcf 发表于 2014-9-13 10:12
非常支持楼主,希望楼主能做出非常酷的示波器来,接下来可能楼主要玩高大上一点的了,春风哥有个板子可以借 ...

春风。。。只闻其人不见其人的传说中的人物

xiaotaodzgzs 发表于 2014-9-23 12:57:10

{:lol:}学习了谢谢分享 很好的资料 做的很漂亮

iridescent_rsy 发表于 2014-9-23 13:05:06

mark,向楼主学习

Chash 发表于 2014-9-23 13:05:16

论坛好像有开源的口袋示波器。

caoxuerji 发表于 2014-9-23 13:37:18

佩服,是个牛人

hsc0588 发表于 2014-9-23 14:42:43

{:victory:}{:victory:}{:victory:}{:victory:}

CrystalShell 发表于 2014-9-23 15:03:14

楼主做的也挺好的

zhpic 发表于 2014-9-24 14:31:53

牛人呀,学习学习。

echoecho_cxp 发表于 2014-9-24 14:37:53

楼主神人啊。

konger2012 发表于 2014-9-24 16:11:20

好牛的样子

rom 发表于 2014-9-24 17:25:48

风格不错啊,值得学习,等开发板出来{:lol:}。

wx85105157 发表于 2014-10-7 23:05:27

jonyzhu 发表于 2014-9-13 22:38
嗯,有道理。但我关了I2C的模拟滤波器波形没有变化,还是这个样子。屏幕上看到的时间宽度是 36us 多一点 ...

你还忽略了你示波器探头引入的电容呢。

wx85105157 发表于 2014-10-7 23:08:42

用他的运放最好了。带宽貌似至少有1Mhz还带片内pga的。还有几路比较器可以做硬件触发,不知道好不好做等效采样。

wx85105157 发表于 2014-10-7 23:09:57

还有一个单芯片的方案是lpc4370204-MHz ARM Cortex -M4带一个12bit80M采样的ADC片上还有两个同样是204Mhz的M0做协处理器。

jonyzhu 发表于 2014-10-7 23:14:48

wx85105157 发表于 2014-10-7 23:09
还有一个单芯片的方案是lpc4370204-MHz ARM Cortex -M4带一个12bit80M采样的ADC片上还有两个同样是 ...

LPC 我试过了,开发环境(IDE)实在是恶劣。。。我宁可用独立的 ADC,也不想碰 LPC 的东西了。

rabbit512 发表于 2014-10-7 23:18:49

都是牛人啊,学习了

lzgs2866 发表于 2014-10-8 00:11:27

不错。学习了!

qiqirachel 发表于 2014-10-8 00:56:39

卧槽,真有意思,火钳留名

xxd_9980 发表于 2014-10-8 00:57:10

横河的东西确实好

ycping 发表于 2014-10-8 08:49:08

牛逼哄哄的

icoyool 发表于 2014-10-8 09:09:42

楼主为什么要用STM32这个平台做示波器呢,

so_so_so_so 发表于 2014-10-8 09:12:44

楼主,加油,精神可嘉!

tuohang2013 发表于 2014-10-8 09:12:50

顶楼主,虽然这个的实用性不高,但是能做出来这个程度,足以说明楼主是很厉害的。{:sad:}{:smile:}

cloudboy 发表于 2014-10-8 10:08:34

不错~~~围观看看

wx85105157 发表于 2014-10-8 13:23:01

记错了片内的运放带宽有8.2M,PGA模式有2 4 8 16.   今天研究了下stm32的dma   最少需要8个hclk的时钟开销,和cpu没有竞争的情况下只有72M/8=9M的带宽。只够搬运一个ADC全速转换的数据。四个ADC同事全速转换的话需要32M的带宽,两个时钟cpu就要搬运一个adc的数据。cpu应该忙不过来吧。

WITSOFT 发表于 2014-10-16 22:20:15

支持楼主搞下去

MINGYU40 发表于 2014-10-18 11:29:10

这贴非火不可!

snfjhudng 发表于 2014-10-18 13:42:18

留名等直播!!

mcuprogram 发表于 2014-10-18 13:43:18

{:lol:}{:lol:}{:lol:}

johnlj 发表于 2014-10-18 18:30:29

楼主的开发步骤非常正规,非常有潜力

哇嘎 发表于 2014-10-20 15:25:22

支持楼主!

zhouqw1979 发表于 2014-10-20 15:36:38

强悍,不服不行

zhongsandaoren 发表于 2014-10-26 12:37:30

这是要火吗

nnmnnm 发表于 2014-10-26 16:39:08

楼主太厉害了!也想自己折腾折腾示波器,一直狠不下心来开始

jonyzhu 发表于 2014-10-26 21:17:47

机器人
为两轮平衡车的底盘做了准备,找时间开工了。

Z_X 发表于 2014-11-7 15:00:11

记录的很详细,学习

bg3mo 发表于 2014-11-7 15:05:28

看来真需要下决改用stm32了,总停留在51里面不行了

varding 发表于 2014-11-7 15:32:01

mark,等楼主更新

second_chan 发表于 2014-11-7 15:37:05

谢谢分享。。。

bmbm5466 发表于 2014-11-18 23:27:26

Mark ... ....

lcmgood 发表于 2014-11-19 00:12:34

厉害,很受用

999 发表于 2014-11-23 00:02:04

很好的分享,谢谢

jack_yu 发表于 2014-11-25 15:39:45

谢谢楼主分享!

ゞ從此消失╭ァ 发表于 2014-12-13 16:03:17

楼主牛逼

ZJetWay 发表于 2014-12-13 22:25:17

佩服楼主的精神。

yzl0208994 发表于 2014-12-13 23:09:12

牛啊,可以用PC显示吗

kenanhcf88 发表于 2014-12-14 17:14:50

楼主太牛逼了

FatRabbit 发表于 2014-12-14 17:15:31

    从硬件到软件,而后能够慢熟悉这一套流程,学习LZ!

heyueming0 发表于 2014-12-14 18:51:55

洞洞板看着挺不错!用起来方便吗?

jonyzhu 发表于 2014-12-14 19:51:28

heyueming0 发表于 2014-12-14 18:51
洞洞板看着挺不错!用起来方便吗?

洞洞板极不方便!难以检查和出错,制作效率很低,乐趣也很低,纯体力活。只要有可能,最好是用开发板或者自己打板。

utopianism 发表于 2015-1-1 22:04:52

太牛逼了
---字数补丁。

NJ8888 发表于 2015-1-1 22:44:22

楼主是真正电子爱好者

hantnt 发表于 2015-1-2 13:43:03

楼主继续努力,学一下FPGA,把采样率弄上去,100M模拟带宽吧,做一个真正的手持示波器。
页: 1 [2] 3
查看完整版本: 记录我的 STM32 示波器的研发经历