查看: 7288|回复: 8

[原创] 【LPC54114项目】制作简易示波器+逻辑分析仪

[复制链接]
  • TA的每日心情
    慵懒
    2024-1-9 10:30
  • 签到天数: 325 天

    连续签到: 1 天

    [LV.8]以坛为家I

    15

    主题

    1048

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2206
    最后登录
    2024-1-9
    发表于 2017-5-7 21:53:57 | 显示全部楼层 |阅读模式
    本帖最后由 xinchao 于 2017-5-11 15:59 编辑

    申请帖:制作简易示波器+逻辑分析仪

    基于LPC54114的简易示波器


    项目介绍
    1、方案功能
      示波器功能,能检测速度不高的简单的波形。
      逻辑分析仪功能,分析红外、IIC、SPI、UART等信号。
      电压表:显示电压。

    2、方案原理
      利用LPC54114芯片自身的ADC完成模拟信号的采集,IO口做数字信号的采集,通过UART把数据送到电脑,再通过上位机软件把波形显示出来。

    3、关键词
      LPC54114   示波器  逻辑分析仪  ADC

    工作原理介绍
    1、硬件介绍
      一块贫民版的万利电子LPC54110开发板(说好的带屏的航空母舰没了)。
      直接使用板子上标准Arduino接口的模拟部分进行信号的采样,然后通过仿真器集成的串口把数据发送到PC,PC上用VC软件显示波形。模拟和数字各用了两个通道,其实还可以更多的,但是鉴于我做这个东西只是为了学习这款MCU,实用意义不大,就先这样吧。。。
           A1---数字通道1
           A2---数字通道2
           A3---模拟通道1
           A4---模拟通道2
      当初想用54114的AD直接采样信号,做个简单的波形显示就行了,结果发现AD不能直接采集负电压,导致想显示一个简单的正弦波都不行。。。

    2、单片机软件
      单片机程序我直接用开发板的例程修改,增加了两路ADC的检测做模拟通道的检测,使用了两路输入IO口做数字部分的检测。另外还利用了板子上的4个按键和4个LED,来切换和显示测试模式。
      示波器分一下5种工作模式:
           Mode0---电压表模式:检测两个模拟通道的电压和两个数字通道的电平
           Mode1---模拟双通道+数字模式:显示两个模拟通道的波形
           Mode2---模拟通道1模式:显示模拟通道1的波形
           Mode3---模拟通道2模式:显示模拟通道2的波形
           Mode4---数字通道模式:显示两个数字通道的波形

      软件的工作流程很简单,初始化需要的资源后进入主循环,主循环中先检测按键动作,根据按键动作设置模式标志和LED状态,然后根据设置的模式进行数据采集,最后用串口把采集的数据发送到PC。

    3、通信
      通信使用串口的方式,用的最高的256000的波特率。
      5种模式使用了两种通讯协议。
      Mode0和Mode1在单片机软件中是一样的,用的数据帧的方式通信,每帧数据包含8个字节:两个字节帧头0x55、0xAA;接下来是两个模拟通道的数据,各占俩字节,直接使用的是12位的ADC采集值;最后两个字节为数字通道的数据,最大可以发生16个通道的数据。
      Mode2和Mode3使用单字节直接发生数据,12位的模拟信号只发生高8位,为了提高采样率。
      Mode4也使用单字节直接发生,最多可发送8个数字通道的数据。

    4、PC软件
      使用VC编写,如图,在界面右侧可以设置串口号和工作模式,还可对显示的波形进行控制。

      工作流程也比较简单,串口接收数据后按照设置的模式,根据通讯协议解析数据,把需要的数据放入缓存区,接收够一副波形显示的数据后显示波形。
    00.PNG


    测试演示
      为了测试,我用LPC824-Lite做了个了个简易的信号发生器,专门用来产生信号来测试这个示波器,能产生3种不同的信号,正弦波、尖波和两路PWM信号。824本身没有DAc,但是有PWM,用PWM+低通滤波可以简单的模拟DAc的输出。测试电路如图:
    0.jpg


    1、Mode1电压表模式
      分别显示两个模拟通道的电压值,和两个数字通道的电平。

    00.PNG


    2、双通道示波器模式
      显示两个模拟通道的波形。

    111.gif


    3、示波器---通道A采集正弦波
      下边是我做的示波器和真正的示波器显示的波形的对比,看起来差不多。

    02.PNG

    a.jpg


    4、示波器---通道B采集尖波
    03.PNG

    b.jpg


    5、逻辑分析仪模式---两路PWM信号
    04.PNG

    c.jpg

    d.jpg


    源文件
    LPC54114源代码.zip (1.21 MB, 下载次数: 42)
    回复

    使用道具 举报

    该用户从未签到

    16

    主题

    108

    帖子

    2

    中级会员

    Rank: 3Rank: 3

    积分
    398
    最后登录
    2025-1-15
    发表于 2017-5-8 08:42:33 | 显示全部楼层
    已经很不错了, 做个DC偏置,0-3.3V的AD已经可以了。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-2-5 17:05
  • 签到天数: 206 天

    连续签到: 1 天

    [LV.7]常住居民III

    28

    主题

    1814

    帖子

    2

    金牌会员

    Rank: 6Rank: 6

    积分
    5928
    最后登录
    2025-6-26
    发表于 2017-5-8 10:09:26 | 显示全部楼层
    加油加油
    哎...今天够累的,签到来了~
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2017-1-24 09:50
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    654

    主题

    3262

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    13263
    最后登录
    2019-1-27
    发表于 2017-5-8 10:44:34 | 显示全部楼层
    加油! 争取做出
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2020-6-6 16:15
  • 签到天数: 40 天

    连续签到: 1 天

    [LV.5]常住居民I

    4

    主题

    264

    帖子

    0

    高级会员

    Rank: 4

    积分
    808
    最后登录
    2020-6-6
    发表于 2017-5-8 15:46:46 | 显示全部楼层
    等待 更新啊
    签到签到
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-2-14 16:49
  • 签到天数: 296 天

    连续签到: 1 天

    [LV.8]以坛为家I

    241

    主题

    2239

    帖子

    6

    金牌会员

    Rank: 6Rank: 6

    积分
    4473
    最后登录
    2020-4-14
    发表于 2017-5-15 08:26:35 | 显示全部楼层
    很好的尝试。不用加偏置也可以。我曾经用软件调0,以3.3V的一半为ADC采样的中点进行计算显示点,自动同步在过3.3/2的位置上。当然只是为了显示在LCD上这么做的,实际上无法真正意义上的测量负电压的。
    当时采用的是PIC16F873A,晶振20MHz,10位ADC,检测小于100KHz还可以,数十KHz最好,高了以后曲线就变成折线了,达到数百K时,就变成散点了。由于那个芯片的RAM小,只能实时采样和显示,采样频率高了后,LCD显示的后半部分就虚了。%4110的RAM足够大,存在RAM数组中再显示应该不会有拖尾现象。
    这款54110芯片的ADC采样能上MHz,应该能快一点也能高一点的。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2025-1-21 08:52
  • 签到天数: 861 天

    连续签到: 1 天

    [LV.10]以坛为家III

    75

    主题

    2523

    帖子

    24

    金牌会员

    Rank: 6Rank: 6

    积分
    5867
    最后登录
    2025-1-22
    发表于 2017-8-2 09:26:45 | 显示全部楼层
    谢谢分享
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    开心
    12 小时前
  • 签到天数: 2967 天

    连续签到: 6 天

    [LV.Master]伴坛终老

    23

    主题

    4182

    帖子

    82

    金牌会员

    Rank: 6Rank: 6

    积分
    13969
    最后登录
    2025-9-2
    发表于 2017-8-2 09:33:38 | 显示全部楼层
    创意不错,支持
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-7-2 13:42
  • 签到天数: 31 天

    连续签到: 1 天

    [LV.5]常住居民I

    12

    主题

    253

    帖子

    0

    高级会员

    Rank: 4

    积分
    576
    最后登录
    2020-4-7
    发表于 2018-5-18 11:46:14 | 显示全部楼层
    谢谢分享
    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /3 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-9-2 12:53 , Processed in 0.109336 second(s), 28 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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