1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- #include "eyemap.h"
- #include "ui_eyemap.h"
- #include <QApplication>
- #include <QPainter>
- EyeMap::EyeMap(QWidget *parent) :
- QWidget(parent),
- ui(new Ui::EyeMap)
- {
- ui->setupUi(this);
- m_logger = spdlog::get("OSC");
- if(m_logger == nullptr)
- {
- SPDLOG_ERROR("获取 OSC logger 失败");
- return;
- }
- /* 自定义大小 */
- setFixedSize(1600, 900);
- SPDLOG_LOGGER_INFO(m_logger, "EyeMap 初始化成功");
- OscData.initOsc();
- if(OscData.openOSC())
- {
- SPDLOG_LOGGER_INFO(m_logger, "打开示波器成功");
- } else {
- SPDLOG_LOGGER_ERROR(m_logger, "打开示波器失败");
- return;
- }
- /* 获取零电压值 */
- OscData.getZeroVoltage();
- OscData.printZeroVoltage(OscChannel::CH_A);
- OscData.printZeroVoltage(OscChannel::CH_B);
- /* 获取电压校准系数 */
- OscData.getVoltageCalibration();
- OscData.printVoltageCalibration(OscChannel::CH_A);
- OscData.printVoltageCalibration(OscChannel::CH_B);
- /* 设置示波器参数 */
- OscData.setExternalTrigger(false);
- OscData.setTriggerPosition(0, 0); /* 在中间位置触发 */
- OscData.setSampleRate(OscSampleRate::SR_100MHZ);
- OscData.setChannelARange(OscChannelRange::CR_8V);
- OscData.setChannelATrigger(true);
- OscData.setChannelCoupling(OscChannel::CH_A, OscChannelCoupling::DC);
- OscData.setChannelCoupling(OscChannel::CH_B, OscChannelCoupling::DC);
- OscData.setTriggerMode(OscTriggerMode::TM_RISE);
- OscData.setTriggerLevel(128);
- OscData.setTriggerSensitivity(OscTriggerSensitivity::TS_LOW);
-
- OscData.startCapture();
- }
- EyeMap::~EyeMap()
- {
- if(OscData.isOpen())
- {
- OscData.closeOSC();
- }
- delete ui;
- }
- /**
- * @brief 绘制图形
- *
- * @param event
- */
- void EyeMap::paintEvent(QPaintEvent *event)
- {
- QPainter painter(this);
- /* 绘制背景 */
- painter.setRenderHint(QPainter::Antialiasing, true);
- painter.setPen(QPen(Qt::blue, 1, Qt::SolidLine));
- painter.setBrush(QBrush(Qt::black, Qt::SolidPattern));
- painter.drawRect(0, 0, 1600, 900);
- /* 绘制刻度 */
- /* 绘制网格 */
-
- /* 绘制眼图 */
- }
|