STM32F103C8T6-第一步。继续做示波器

文章的继续这次,我们将尝试在不降低测量频率的情况下连接USB,并收集单通道模拟部分。


与USB对抗


我们的MK具有硬件USB。我真的很想使用它。在购买之前,我什至想要它。但是由于困难,他被推迟了。困难是:
  • USB开发人员显然花了太多时间和精力。问题在于他们认为其他所有人都应该拥有不少。如果您尝试根据文档处理USB,那么这一课显然不是一天。
  • 连接库时,困难不断出现。我还不知道如何在Coocox项目中连接它们。

结果,在一个论坛上,我找到了一个转换为Coocox的示例,该示例行之有效。

我们USB的问题并没有就此结束。单独的USB <-> USART适配器具有单独的优点,这意味着其操作不依赖于我们的MK,即:
  • 频率(对于更高的转换频率,我对MK超频了);
  • 刷新期间发生的重新引导。

如果有适配器,我们可以使用MK进行任何操作-在这种情况下,适配器可以使用,并且系统中的COM端口将无处可用。
通过超频,可以做出以下决定:在正常状态下,MK以标准频率运行。当需要进行测量时,我们对MK超频(是的,与AVR不同,他可以随时随地执行此操作),收集数据,降低频率并将数据缓慢传输到计算机。
为了在每次重新启动/闪烁后不切换任何东西,我们看一下电路板:

使用跳线时,其中一根线被上拉至+3.3 V,并且计算机会看到设备已连接。通过实验发现,在刷新MK之后,为了使COM端口再次起作用,您需要拔出并再次插入USB连接器,或者卸下并重新安装跳线。第二个选项更易于自动化。跨接器连接器的第二个引脚通过连接到MK脚的电阻器,经过一段时间的重启后,我将其馈入了一个高电平。结果,计算机认为该设备已关闭然后再打开。还有一点:如果在端口打开的情况下断开设备的连接,然后再打开它,则COM端口将出现在设备管理器中,但您将无法打开它(我使用Windows 7)。

现在关于超频。为了使USB工作,MK可以在以下最大频率下运行:

为了获得最大ADC速度,我将其超频至以下

频率要更改PLL乘法器,必须将其关闭。而且,至少在片刻之间断开PLL时,从其时钟输出的USB会不喜欢它,并且在大多数情况下,计算机上的应用程序都使用开放端口挂起。对该问题进行了失败的搜索之后,发现了一种将内置USB和超频结合在一起的方法:
  1. PC上的应用程序发送MK命令以执行一系列转换,并立即关闭端口。
  2. MK等待一段时间(以便应用程序有时间关闭端口),并禁用USBDP线上拉至+3.3 V;
  3. MK禁用PLL,将乘数从9更改为16,然后再次打开PLL。
  4. MK进行了一系列存储结果的转换;
  5. MK关闭PLL,将系数从16改回9,然后再次打开PLL。
  6. MK包括将USBDP线拉至+3.3 V;
  7. 一段时间后,虚拟COM端口将再次出现在PC上。
  8. PC上的应用程序重新打开端口,并向MK发送命令以收集结果;
  9. MK慢慢传送结果,应用程序建立时间表。

不方便,但是为了放弃USB <-> USART硬件适配器而又不损失7/16 = 44%的速度,这是值得的。

我们另收费


一直以来,我一直在使用该板:

当它是设备中的主要时很方便,但是我不想将其通过电线连接到面包板上。为此,很久以前就订购了另一块板

,您可以将其粘在板上或轻松焊接到另一块板上。
论坛上几乎找不到该电路板的电路
一些印象。总的来说,她很高兴。左侧有SWD引脚,每个触点都经过签名,并且如果中国人没有在那儿焊接角连接器,则签名甚至比每次查看前一块板上的JTAG引脚都更为可见和方便。一切都闪烁无误,出现了USB,但出现了一个小问题:USBDP线被一个电阻器紧紧隐藏在+3.3V。因此,USB变成了非断开式连接...我不得不拆焊该电阻器,然后将通过电阻器的线路焊接到MK的自由端。

模拟部分


在此之前,我只使用0-3.3V范围内的信号。这不是在那里浮零,而是USB电缆附带的接地。但我希望示波器能够查看电源电压(几百伏)和ECG(几毫伏的分数)的形式。
任务通常很简单:获取示波器的输入范围并将其映射到ADC的输入范围(0-3.3V)。发明了这样的电路:

R1,R2,R3-输入分频器。将MK支路转移到输入或输出模式,我们可以更改分频比。
R11,R12,R13-同相放大器的电阻器。增益取决于控制器支脚的状况。

对于是否有可能将MK的数字输出用于此类目的存在疑问。测量结果表明,通过MK输出的电流为3.3 mA时,输出电流达到80 mV,即输出电阻约为24欧姆。悬空在3-4 mV的输出电位在地面/电源上有所不同。对于不太精确的系统,结果是完全可以接受的。

为了不破坏我为之奋斗的频率特性,无论如何,都需要手术人员,而且要快速。我选择了AD826。然后有麻烦。谁在乎,您可以在这里这里阅读故事简而言之:假芯片在Ebay上出售。

庇护所需要双极电源。为此,需要另一个芯片-LT1054。连接图摘自数据表,因此我将不对其进行详细描述。


记住本文第一部分中的计划
  1. 击败USB放弃USB转换器<-> USART;
  2. 完成模拟部分的工作,以使输入电压范围不是0-3.3 V,而是更合适。
  3. 设为多通道模式;
  4. 通过PC实施控制;
  5. 制作完成后的设备;

我了解我已经完成了第1、2和部分第4段。

家庭中是否需要这种设备?好吧,如果将其与模拟C1-117进行比较,则在频率C1-117中,它会大几倍。但是,您可以在此处记录信号足够长的时间,然后慢慢检查它。因此,例如,我在Arduino上看到了由我的生成器触发的中断:


与AVR或声卡上的工艺品相比,该中断大大超过了它们的转换频率。
事实证明,以组件为代价:
  • LT1054-0.8美元;
  • 带控制器板-$ 4;
  • 手术-$ 3;
  • 电阻器,电容器,二极管-不超过$ 1。

总共大约$ 9 +板+案。
转换频率9 MSPS允许您观察高达1 MHz的信号频率。只需60美元,您就可以购买具有最佳功能的基于PC的示波器,但是对于由此产生的金额根本没有任何报价。

但是,对我来说最有价值的设备不是设备本身,而是尝试使事情变得比用二极管闪烁更困难并声称有用的结果!我从未参与过工作中的电子产品,作为业余爱好者,我可以说这并不困难。好久不见 需要一些功能-您开始做。在途中,您收集了很多耙子,但最终结果是。如此多次。即使在这样看似很小的任务中,也已经有很多次了。例如,我仅从第三次尝试就为运放成功实现了双极营养。但是,如果有足够的毅力,并且该任务从原则上讲是可行的,那么结果肯定会带来与最初设想的相似的结果!

工艺品外观:


Source: https://habr.com/ru/post/zh-CN385385/


All Articles