基于GD32的简易示波器项目学习

根据立创训练营项目:[简易数字示波器设计(入门版) - 立创开源硬件平台(https://oshwhub.com/course-examples/yi-qi-yi-biao-jian-yi-shu-zi-shi-bo-qi-she-ji-cha-jian-ban)

技术点:原理图绘制,PCB设计,打板,焊接。外部中断,定时器中断,ADC,PWM输出,输入捕获,波形显示

原理图:

PCB:

焊接后:

使用测试:

  • 采用核心板加扩展板设计理念,采用插件器件设计,让学习更能简单;
  • 核心板选用国产GD32为主控,同时兼容同类型其它款式开发板;
  • 项目综合程度高,实用性强,设计完成后可作为桌面日常仪表使用;
  • 项目学习资料丰富,包括电路设计教学、PCB设计以及代码编程的学习。

PCB走线

  • 走线以直线为主,如需拐弯时拐角以135°钝角或圆角优先,减少直角的使用;
  • 走线线宽电源线宽大于信号线,该项目中信号线走线宽度为15mil,电源走线为20mil,GND和AGND网络使用铺铜的方式连接;
  • 走线线宽电源线宽大于信号线,该项目中信号线走线宽度为15mil,电源走线为20mil,GND和AGND网络使用铺铜的方式连接;
  • 对AGND和GND需要以0欧姆电阻处为分界单独覆铜,这里需结合PCB布局情况来调整覆铜范围;
  • 覆铜完成后如果还存在飞线,可通过在存在飞线的位置放置对应网络的过孔或者是调整走线位置使网络能够连接,也可以采用手动接线的方式消除飞线;
  • 走线完成后可在“工具”菜单栏选择泪滴添加,加强焊盘与走线的连接,最后再进行覆铜操作,如果对走线有移动调整也应使用快捷键Shift+B进行重建覆铜。

基于GD32的简易示波器的更多相关文章

  1. 基于Android 平台简易即时通讯的研究与设计[转]

    摘要:论文简单介绍Android 平台的特性,主要阐述了基于Android 平台简易即时通讯(IM)的作用和功能以及实现方法.(复杂的通讯如引入视频音频等可以考虑AnyChat SDK~)关键词:An ...

  2. 【转】基于Map的简易记忆化缓存

    看到文章后,自己也想写一些关于这个方面的,但是觉得写的估计没有那位博主好,而且又会用到里面的许多东西,所以干脆转载.但是会在文章末尾写上自己的学习的的东西. 原文出处如下: http://www.cn ...

  3. 基于Map的简易记忆化缓存

    背景 在应用程序中,时常会碰到需要维护一个map,从中读取一些数据避免重复计算,如果还没有值则计算一下塞到map里的的小需求(没错,其实就是简易的缓存或者说实现记忆化).在公司项目里看到过有些代码中写 ...

  4. c++开发ocx入门实践三--基于opencv的简易视频播发器ocx

    原文:http://blog.csdn.net/yhhyhhyhhyhh/article/details/51404649  利用opencv做了个简易的视频播放器的ocx,可以在c++/c#/web ...

  5. 基于redis的简易分布式爬虫框架

    代码地址如下:http://www.demodashi.com/demo/13338.html 开发环境 Python 3.6 Requests Redis 3.2.100 Pycharm(非必需,但 ...

  6. 基于QtAV的简易播放器(开源)

    这个开源代码,是我利用QtAV源码,提取其中一部分代码,进行整合到我自己项目中,做的一个小型播放器测试,至于怎么安装一些环境以及QtAV源码编译在我以前写的一篇博客中可以看到(Qt第三方库QtAV-- ...

  7. 基于jQuery的简易瀑布流实现

    <!doctype html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. C语言 linux环境基于socket的简易即时通信程序

    转载请注明出处:http://www.cnblogs.com/kevince/p/3891033.html      ——By Kevince 最近在看linux网络编程相关,现学现卖,就写了一个简易 ...

  9. 基于Torndb的简易ORM

    ============================================================================ 原创作品,同意转载. 转载时请务必以超链接形式 ...

  10. 用STM32内置的高速ADC实现简易示波器

    做一个数字采样示波器一直是我长久以来的愿望,不过毕竟这个目标难度比较大,涉及的方面实在太多,模拟前端电路.高速ADC.单片机.CPLD/FPGA.通讯.上位机程序.数据处理等等,不是一下子就能成的,慢 ...

随机推荐

  1. vue3 中屏蔽控制台中的警告信息

    main.js中 const app = Vue.createApp({}); // 屏蔽错误信息 app.config.errorHandler = () => null; // 屏蔽警告信息 ...

  2. 【第2章】matlab程序设计基础

    matlab语言的常量与变量 matlab语言的变量命名规则 由一个字母引导,后面可以为其他字符. 区分大小写 如Abc ≠ ABc matlab的保留常量 以下为系统保留常量,自己定义的变量不能与他 ...

  3. 使用pjsip封装自定义软电话sdk

    环境: window10_x64 & vs2022pjsip版本: 2.14.1python版本: 3.9.13 近期有关于windows环境下软电话sdk开发的需求,需要开发动态库给上层应用 ...

  4. Tauri2.0-Vue3OS桌面端os平台|tauri2+vite6+arco电脑版OS管理系统

    自研tauri2.x+vite6+vue3+arco.design客户端os管理系统Tauri2ViteOS. vue3-tauri2-os原创跨平台Tauri2.0+Vite6+Pinia2+Arc ...

  5. 对DenseTensor进行Transpose

    ML.NET 是微软推出的为. NET 平台设计的深度学习库,通过这个东西(ModelBuilder)可以自己构建模型,并用于后来的推理与数据处理.虽然设计是很好的,但是由于现在的 AI 发展基本上都 ...

  6. Linux驱动开发笔记(七):操作系统MMU介绍,操作系统操作寄存器的原理和Demo

    前言   做过单片机的都知道,写驱动是直接代码设置和读取寄存器来控制外设实现基本的驱动功能,而linux操作系统上是由MMU(内存管理单元)来控制,MMU实现了虚拟地址与芯片物理地址的对应,设置和获取 ...

  7. 【软件】【逆向】StarUML regist

    // 安装npm brew install node //安装打包工具 npm install asar -g C:\Program Files\StarUML\resources StarUML\r ...

  8. springboot连接mysql报错errorCode 0, state 08S01

    前言许久未维护的项目需要检查一些数据,重新运行项目发现有create connection SQLException ,具体报错信息是 errorCode 0, state 08S01 . Sprin ...

  9. error C2589: “(”:“::”右边的非法标记错误的处理

    问题:error C2589: "(":"::"右边的非法标记错误的处理 标准库在<algorithm>头中定义了两个模板函数std::min() ...

  10. [转]Windows10+VS2013+OpenCV3.0开发环境搭建配置

    首先要说明一下:不管VS(Visual Studio)的版本是什么,也不管OpenCV的版本是什么,配置都大同小异.所以如果您希望在Window下配置OpenCV的开发环境,那么仔细阅读学习这篇文章即 ...