国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

這篇具有很好參考價值的文章主要介紹了Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

若該文為原創(chuàng)文章,轉(zhuǎn)載請注明原文出處
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/130150728文章來源地址http://www.zghlxwxcb.cn/news/detail-420944.html

各位讀者,知識無窮而人力有窮,要么改需求,要么找專業(yè)人士,要么自己研究

紅胖子網(wǎng)絡(luò)科技博文大全:開發(fā)技術(shù)集合(包含Qt實用技術(shù)、樹莓派、三維、OpenCV、OpenGL、ffmpeg、OSG、單片機、軟硬結(jié)合等等)持續(xù)更新中…(點擊傳送門)

Qt開發(fā)專欄:開發(fā)技術(shù)(點擊傳送門)

上一篇:《Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(一):Q3DScatter三維散點圖介紹、Demo以及代碼詳解》
下一篇:《Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(三):Q3DSurface三維曲面圖介紹、Demo以及代碼詳解》


前言

??qt提供了q3d進行三維開發(fā),雖然這個框架沒有得到大量運用也不是那么成功,性能上也有很大的欠缺,但是普通的點到為止的應(yīng)用展示還是可以的。
??其中就包括華麗絢爛的三維圖表,數(shù)據(jù)量不大的時候是可以使用的。
??上一篇介紹了基礎(chǔ)的q3d散點圖,本篇介紹基礎(chǔ)的柱狀圖。


Demo:Q3DScatter散點圖演示效果

??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

下載地址:

??Demo v1.0.0運行包下載地址:https://download.csdn.net/download/qq21497936/87688822
??QQ群下載:請點擊博客主頭像,可進入博客首頁,查看右側(cè),有QQ群聯(lián)系方式,(點擊“文件”搜索“q3d”,群內(nèi)與博文同步更新)
??百度網(wǎng)盤下載地址:https://pan.baidu.com/s/14uQ3Hbhwys3aWxArxf9fXw?pwd=1234


Q3D提供的三維圖表

??依賴QtDataVisualization。在安裝qt的時候要選擇安裝QtDataVisualization模塊。

Q3DScatter散點圖

??Q3D的散點圖,性能大約支撐1000個點可以不卡頓,具體依賴pc,1000個點是什么 概念,可以理解為:10x10x10的區(qū)域,每個區(qū)域一個數(shù)據(jù)點。
??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

Q3DBars柱狀圖

??Q3D的柱狀圖,性能跟散點圖類似。
?? Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

Q3DSurface平面凹凸圖,平面紋理圖

??Q3D的柱狀圖,性能跟散點圖類似。
??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解


# Q3DBar柱狀圖 ## 簡介 ??Q3DBars類提供了用于渲染三維條形圖的方法。 ??該類使開發(fā)人員能夠以3D方式渲染條形圖,并通過自由旋轉(zhuǎn)場景來查看它們。
  • 旋轉(zhuǎn):通過按住鼠標右鍵并移動鼠標來完成的。
  • 縮放:通過鼠標滾輪完成的。
  • 選擇:如果啟用了選擇,則通過鼠標左鍵進行選擇。
  • 重置視角:通過單擊鼠標滾輪,可以將場景重置為默認的攝影機視圖。
    ??在觸摸設(shè)備中,旋轉(zhuǎn)通過點擊和移動來完成,選擇通過點擊和按住來完成,縮放通過捏來完成。
    ??如果沒有將任何軸明確設(shè)置為Q3DBar,則會創(chuàng)建不帶標簽的臨時默認軸。這些默認軸可以通過軸訪問器進行修改,但只要明確設(shè)置了方向的任何軸,該方向的默認軸就會被破壞。
    Q3DBars支持同時顯示多個系列。并非所有系列都必須具有相同數(shù)量的行和列。行和列標簽取自第一個添加的系列,除非明確定義為行和列軸。

構(gòu)造最小Q3D柱狀圖

??首先,構(gòu)造一個Q3DBars實例。由于在本例中,我們將圖形作為頂級窗口運行,因此需要清除Qt::FramelessWindowHint標志,該標志在默認情況下設(shè)置:

Q3DBars bars;
bars.setFlags(bars.flags() ^ Qt::FramelessWindowHint);

??構(gòu)造Q3DBar后,可以通過更改行和列軸上的范圍來設(shè)置數(shù)據(jù)窗口。這不是強制性的,因為數(shù)據(jù)窗口將默認顯示系列中的所有數(shù)據(jù)。如果數(shù)據(jù)量很大,通常最好只顯示其中的一部分。例如,讓我們將數(shù)據(jù)窗口設(shè)置為顯示前五行和前五列:

bars.rowAxis()->setRange(0, 4);
bars.columnAxis()->setRange(0, 4);

??現(xiàn)在Q3DBars已經(jīng)準備好接收要渲染的數(shù)據(jù)了。創(chuàng)建一個包含一行5個值的序列:

QBar3DSeries *series = new QBar3DSeries;
QBarDataRow *data = new QBarDataRow;
*data << 1.0f << 3.0f << 7.5f << 5.0f << 2.2f;
series->dataProxy()->addRow(data);
bars.addSeries(series);

??注意:數(shù)據(jù)窗口設(shè)置為5 x 5,但只添加了一行數(shù)據(jù)。沒添加的其余的行將是空白的。
??最后,設(shè)置為可見:

bars.show();

??創(chuàng)建和顯示此圖所需的完整代碼為:

#include <QtDataVisualization>

using namespace QtDataVisualization;

int main(int argc, char **argv)
{
    QGuiApplication app(argc, argv);

    Q3DBars bars;
    bars.setFlags(bars.flags() ^ Qt::FramelessWindowHint);
    bars.rowAxis()->setRange(0, 4);
    bars.columnAxis()->setRange(0, 4);
    QBar3DSeries *series = new QBar3DSeries;
    QBarDataRow *data = new QBarDataRow;
    *data << 1.0f << 3.0f << 7.5f << 5.0f << 2.2f;
    series->dataProxy()->addRow(data);
    bars.addSeries(series);
    bars.show();

    return app.exec();
}

??運行效果:
??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

??場景可以被旋轉(zhuǎn)、放大,并且可以選擇一個項目來查看其位置,但在這個最小的代碼示例中不包括其他交互。


Q3Ddemo構(gòu)建流程解析

步驟一:確認安裝QtDataVisualization模塊

??如何確認,則是在幫助文件中查看是否有Q3dscatter類。一般是安裝了模塊才會有對應(yīng)的幫助文件。沒有則重新安裝qt或者單獨安裝該模塊。
?? Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

步驟二:工程配置文件中加入模塊

??Q3d是在數(shù)據(jù)可視化模塊中,需要在pro或者pri配置文件中添加。

QT += datavisualization

??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

步驟三:添加使用到的頭文件

使用到Q3DBar相關(guān)類中添加頭文件,主要使用到Q3DBar、QBar3DSeries、QBarDataRow等等。

#include <Q3DBars>
#include <Q3DTheme>
#include <QBar3DSeries>
#include <QVector3D>

??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

步驟四:添加命名空間

??這時候還是無法使用對應(yīng)的類,需要添加命名空間才行:

using namespace QtDataVisualization;

??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解

步驟五:Q3D的圖標基礎(chǔ)構(gòu)建框架

??下面是包含注釋的Q3DBar基礎(chǔ)構(gòu)建流程,其與散點圖在軸(軸名稱和軸使用等)和數(shù)據(jù)(添加數(shù)據(jù)方式為每一個占位基本都需要,除非你能直接闊過去,從頭開始添加的中間有0則不好處理,需要添加0來占位,QBarDataRow自動依次排序的)

_pQ3DBars = new Q3DBars();
_pContainer = QWidget::createWindowContainer(_pQ3DBars, this);

// 設(shè)置軸文本
{
    QStringList strList;
    _pQ3DBars->rowAxis()->setTitle("年");
    _pQ3DBars->rowAxis()->setTitleVisible(true);
    strList.clear();
    strList << "2010" << "2011" << "2012" << "2013" << "2014"
               << "2015" << "2016" << "2017" << "2018" << "2019"
               << "2020" << "2021" << "2022" << "2023" ;
    _pQ3DBars->rowAxis()->setLabels(strList);
    _pQ3DBars->columnAxis()->setTitle("月");
    strList.clear();
    strList << "1" << "2" << "3" << "4" << "5"
                << "6" << "7" << "8" << "9" << "10"
                << "11" << "12";
    _pQ3DBars->columnAxis()->setLabels(strList);
    _pQ3DBars->columnAxis()->setTitleVisible(true);
    _pQ3DBars->valueAxis()->setTitle("銷售額(萬元)");
    _pQ3DBars->valueAxis()->setTitleVisible(true);
}
// 設(shè)置軸范圍
{
    _pQ3DBars->rowAxis()->setRange(2010 - 2010, 2023 - 2010);   // 從0開始
    _pQ3DBars->columnAxis()->setRange(1 - 1, 12 - 1);           // 從0開始
    _pQ3DBars->valueAxis()->setRange(0, 40);
}

// 生成一個曲線
_pBar3DSeries = new QBar3DSeries(_pQ3DBars);
// 設(shè)置渲染平滑
_pBar3DSeries->setMeshSmooth(true);

// 視圖添加該曲線
_pQ3DBars->addSeries(_pBar3DSeries);

// 設(shè)置陰影質(zhì)量
_pQ3DBars->setShadowQuality(QAbstract3DGraph::ShadowQualitySoftLow);
// 設(shè)置視角
_pQ3DBars->scene()->activeCamera()->setCameraPreset(Q3DCamera::CameraPresetIsometricLeft);
// 設(shè)置子網(wǎng)格
_pQ3DBars->activeTheme()->setGridEnabled(true);

#if 1
// 添加模擬數(shù)據(jù)
QBarDataArray data;
for(int year = 2010; year <= 2023; year++)
{
    QBarDataRow *pBarDataRow = new QBarDataRow;
    for(int month = 1; month <= 12; month++)
    {
        if(year == 2023 && month >= 4)
        {
            LOG << year << month;
            // 當前2023年4月,無數(shù)據(jù)
            *pBarDataRow << 0;
        }else{
            *pBarDataRow << ((year - 2010) + month);
        }
    }
    data << pBarDataRow;
}
// 添加數(shù)據(jù)(自動沖掉之前的數(shù)據(jù))
_pBar3DSeries->dataProxy()->addRows(data);
#endif

Demo源碼

Q3dBarWidget.h
#ifndef Q3DBARWIDGET_H
#define Q3DBARWIDGET_H

#include <QWidget>
#include <Q3DBars>
#include <Q3DTheme>
#include <QBar3DSeries>
#include <QVector3D>


using namespace QtDataVisualization;

namespace Ui {
class Q3dBarWidget;
}

class Q3dBarWidget : public QWidget
{
    Q_OBJECT

public:
    explicit Q3dBarWidget(QWidget *parent = 0);
    ~Q3dBarWidget();

protected:
    void initControl();


protected:
    void resizeEvent(QResizeEvent *event);

private:
    Ui::Q3dBarWidget *ui;

private:
    Q3DBars *_pQ3DBars;             // q3d柱狀視圖
    QWidget *_pContainer;           // q3d窗口容器
    QBar3DSeries *_pBar3DSeries;    // q3d柱狀圖數(shù)據(jù)
};

#endif // Q3DBARWIDGET_H

Q3dBarWidget.cpp

#include "Q3dBarWidget.h"
#include "ui_Q3dBarWidget.h"
#include <Q3DTheme>


#include <QDebug>
#include <QDateTime>
//#define LOG qDebug()<<__FILE__<<__LINE__
//#define LOG qDebug()<<__FILE__<<__LINE__<<__FUNCTION__
//#define LOG qDebug()<<__FILE__<<__LINE__<<QThread()::currentThread()
//#define LOG qDebug()<<__FILE__<<__LINE__<<QDateTime::currentDateTime().toString("yyyy-MM-dd")
#define LOG qDebug()<<__FILE__<<__LINE__<<QDateTime::currentDateTime().toString("yyyy-MM-dd hh:mm:ss:zzz")

Q3dBarWidget::Q3dBarWidget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Q3dBarWidget),
    _pQ3DBars(0),
    _pContainer(0),
    _pBar3DSeries(0)
{
    ui->setupUi(this);

    QString version = "v1.0.0";
    setWindowTitle(QString("q3d柱狀圖示例 %1(作者:長沙紅胖子 QQ:21497936 WX:15173255813 www.hpzwl.com").arg(version));

    initControl();
}

Q3dBarWidget::~Q3dBarWidget()
{
    delete ui;
}


void Q3dBarWidget::initControl()
{
    _pQ3DBars = new Q3DBars();
    _pContainer = QWidget::createWindowContainer(_pQ3DBars, this);

    // 設(shè)置軸文本
    {
        QStringList strList;
        _pQ3DBars->rowAxis()->setTitle("年");
        _pQ3DBars->rowAxis()->setTitleVisible(true);
        strList.clear();
        strList << "2010" << "2011" << "2012" << "2013" << "2014"
                << "2015" << "2016" << "2017" << "2018" << "2019"
                << "2020" << "2021" << "2022" << "2023" ;
        _pQ3DBars->rowAxis()->setLabels(strList);
        _pQ3DBars->columnAxis()->setTitle("月");
        strList.clear();
        strList << "1" << "2" << "3" << "4" << "5"
                << "6" << "7" << "8" << "9" << "10"
                << "11" << "12";
        _pQ3DBars->columnAxis()->setLabels(strList);
        _pQ3DBars->columnAxis()->setTitleVisible(true);
        _pQ3DBars->valueAxis()->setTitle("銷售額(萬元)");
        _pQ3DBars->valueAxis()->setTitleVisible(true);
    }
    // 設(shè)置軸范圍
    {
        _pQ3DBars->rowAxis()->setRange(2010 - 2010, 2023 - 2010);   // 從0開始
        _pQ3DBars->columnAxis()->setRange(1 - 1, 12 - 1);           // 從0開始
        _pQ3DBars->valueAxis()->setRange(0, 40);
    }

    // 生成一個曲線
    _pBar3DSeries = new QBar3DSeries(_pQ3DBars);
    // 設(shè)置渲染平滑
    _pBar3DSeries->setMeshSmooth(true);

    // 視圖添加該曲線
    _pQ3DBars->addSeries(_pBar3DSeries);

    // 設(shè)置陰影質(zhì)量
    _pQ3DBars->setShadowQuality(QAbstract3DGraph::ShadowQualitySoftLow);
    // 設(shè)置視角
    _pQ3DBars->scene()->activeCamera()->setCameraPreset(Q3DCamera::CameraPresetIsometricLeft);
    // 設(shè)置子網(wǎng)格
    _pQ3DBars->activeTheme()->setGridEnabled(true);

#if 1
    // 添加模擬數(shù)據(jù)
    QBarDataArray data;
    for(int year = 2010; year <= 2023; year++)
    {
        QBarDataRow *pBarDataRow = new QBarDataRow;
        for(int month = 1; month <= 12; month++)
        {
            if(year == 2023 && month >= 4)
            {
                LOG << year << month;
                // 當前2023年4月,無數(shù)據(jù)
                *pBarDataRow << 0;
            }else{
                *pBarDataRow << ((year - 2010) + month);
            }
        }
        data << pBarDataRow;
    }
    // 添加數(shù)據(jù)(自動沖掉之前的數(shù)據(jù))
    _pBar3DSeries->dataProxy()->addRows(data);
#endif

}

void Q3dBarWidget::resizeEvent(QResizeEvent *event)
{
    if(_pContainer)
    {
        _pContainer->setGeometry(rect());
    }
}

工程模板v1.1.0

??Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解


上一篇:《Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(一):Q3DScatter三維散點圖介紹、Demo以及代碼詳解》
下一篇:《Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(三):Q3DSurface三維曲面圖介紹、Demo以及代碼詳解》


若該文為原創(chuàng)文章,轉(zhuǎn)載請注明原文出處
本文章博客地址:https://hpzwl.blog.csdn.net/article/details/130150728

到了這里,關(guān)于Qt開發(fā)技術(shù):Q3D圖表開發(fā)筆記(二):Q3DBar三維柱狀圖介紹、Demo以及代碼詳解的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • Three.js--》前端開發(fā)者掌握3d技術(shù)不再是夢,初識threejs

    Three.js--》前端開發(fā)者掌握3d技術(shù)不再是夢,初識threejs

    ????????這十年來 web 得到了快速的發(fā)展,隨著 webgl 的普及,網(wǎng)頁的表現(xiàn)能力越來越強大,網(wǎng)頁上已經(jīng)開始可以做出很多復雜的動畫和精美的效果,還可以通過 webgl 在網(wǎng)頁中繪制高性能的3d圖形,別的不說,凡是入門程序員都離不開github這個網(wǎng)站,細心的人都會發(fā)現(xiàn),gi

    2024年02月01日
    瀏覽(98)
  • 短視頻矩陣營銷系統(tǒng)技術(shù)開發(fā)者開發(fā)筆記分享

    短視頻矩陣營銷系統(tǒng)技術(shù)開發(fā)者開發(fā)筆記分享

    1. 確定系統(tǒng)需求:根據(jù)客戶的需求,確定系統(tǒng)的功能和特點,例如用戶注冊登錄、視頻上傳、視頻瀏覽、評論點贊等。 2. 設(shè)計系統(tǒng)架構(gòu):根據(jù)系統(tǒng)需求,設(shè)計系統(tǒng)的整體架構(gòu),包括前端、后端、數(shù)據(jù)庫等組件的功能和交互方式。 3. 選擇技術(shù)棧:根據(jù)系統(tǒng)的特點和需求,選擇

    2024年02月14日
    瀏覽(26)
  • 【云開發(fā)筆記NO.25】緩存和技術(shù)中臺

    在云開發(fā)領(lǐng)域中,緩存技術(shù)是一項至關(guān)重要的技術(shù),它具有多個特征和廣泛的應(yīng)用。緩存技術(shù)的核心原理是將經(jīng)常訪問或需要快速響應(yīng)的數(shù)據(jù)存儲在更接近用戶或請求源的地方,以便能夠更快地提供這些數(shù)據(jù),減少對原始數(shù)據(jù)源(如數(shù)據(jù)庫或遠程服務(wù)器)的頻繁訪問。 緩存技

    2024年04月14日
    瀏覽(21)
  • 【云開發(fā)筆記NO.22】運用云原生產(chǎn)品打造技術(shù)中臺

    云原生產(chǎn)品以其容器化、微服務(wù)化、自動化等特性,為技術(shù)中臺的建設(shè)提供了強大的技術(shù)支持。容器化技術(shù)使得應(yīng)用可以更容易地進行部署和管理,提高了應(yīng)用的可移植性和彈性。微服務(wù)架構(gòu)則讓應(yīng)用更加模塊化,便于獨立擴展和維護。自動化工具則能夠大大提升開發(fā)和運維

    2024年04月08日
    瀏覽(22)
  • 國民技術(shù)N32G430C8開發(fā)筆記二-UART驅(qū)動開發(fā)

    國民技術(shù)N32G430C8開發(fā)筆記二-UART驅(qū)動開發(fā)

    參考demo E:tfsdatasmartsafeN32G430Nations.N32G430_Library.1.0.0projectsn32g430_EVALexamplesUSARTInterrupt開發(fā)uart1和uart3驅(qū)動。Uart1用于通信,uart3用于調(diào)試。 參考用戶手冊5.2.5復用功能。Uart1_tx引腳使用PA9,重映射使用AF5,Uart1_rx引腳使用PA10,重映射使用AF5,Uart3_tx引腳使用PB10,重映射使用

    2024年01月25日
    瀏覽(22)
  • 國民技術(shù)N32G430開發(fā)筆記(9)- IAP升級 Bootloader的制作

    國民技術(shù)N32G430開發(fā)筆記(9)- IAP升級 Bootloader的制作

    1、上節(jié)提到Flash的分區(qū),0x8000000-0x8004000為Boot分區(qū),我們的bootloader就燒錄到此分區(qū)。 Bootloader很簡單,新建一個普通的工程, 也不用初始化外部設(shè)備,開機后,直接跳轉(zhuǎn)到 App分區(qū)所在的地址即可, 當然App的分區(qū)程序也要提前燒錄進去, 否則也是跳不過去的。 代碼 開機延時

    2024年02月02日
    瀏覽(52)
  • 國民技術(shù)N32G430開發(fā)筆記(12)- IAP升級 Settings區(qū)域數(shù)據(jù)初始化

    國民技術(shù)N32G430開發(fā)筆記(12)- IAP升級 Settings區(qū)域數(shù)據(jù)初始化

    1、假如,有兩個產(chǎn)品,A產(chǎn)品跟B產(chǎn)品,硬件都一樣,要求一個軟件里的board_name為N32G430C8L7_STB_A,另一個軟件里的board_name為N32G430C8L7_STB_B。 那我們?nèi)绾卧诓桓腷oot程序跟App程序的基礎(chǔ)上,快速的使兩個軟件看上去不同呢? 這里我們將setting區(qū)域的數(shù)據(jù)提前初始化,通過c語言的文

    2024年02月01日
    瀏覽(27)
  • 國民技術(shù)N32G430開發(fā)筆記(18)- I2C1 從機收發(fā)數(shù)據(jù)

    國民技術(shù)N32G430開發(fā)筆記(18)- I2C1 從機收發(fā)數(shù)據(jù)

    1、將PB6 PB7設(shè)置為i2c從機,跟android板卡通訊。 2、Android發(fā)送 寫命令: 0x05 0x02 0x00 0x00 checksum n32將收到的命令打印出來 讀版本命令: 0x01 0x02 0x00 0x00 checksum n32將app_version返回電視端 3、i2c從機配置,采用中斷方式收發(fā)數(shù)據(jù)。 主要代碼: 從機配置代碼: 中斷處理函數(shù): 接收到數(shù)

    2024年02月03日
    瀏覽(27)
  • JavaWeb小項目——【源碼】使用Vue+axios+Servlet+Lombok+JDBC+MySQL技術(shù)棧實現(xiàn)云筆記管理系統(tǒng)案例的開發(fā)

    JavaWeb小項目——【源碼】使用Vue+axios+Servlet+Lombok+JDBC+MySQL技術(shù)棧實現(xiàn)云筆記管理系統(tǒng)案例的開發(fā)

    使用Vue+axios+Servlet+Lombok+JDBC+MySQL技術(shù)棧實現(xiàn)云筆記管理系統(tǒng)案例的開發(fā) (一)題目要求 使用Vue+axios+Servlet+Lombok+JDBC+MySQL技術(shù)棧實現(xiàn)云筆記管理系統(tǒng)案例的開發(fā) (二)數(shù)據(jù)庫設(shè)計(10分) 創(chuàng)建數(shù)據(jù)庫woniu_note (1)用戶表:t_user,必要字段包含:用戶名(username)、密碼(passwd)

    2024年02月09日
    瀏覽(23)
  • 嵌入式培訓機構(gòu)四個月實訓課程筆記(完整版)-Linux ARM驅(qū)動編程第三天-ARM Linux ADC和觸摸屏開發(fā) (物聯(lián)技術(shù)666)

    嵌入式培訓機構(gòu)四個月實訓課程筆記(完整版)-Linux ARM驅(qū)動編程第三天-ARM Linux ADC和觸摸屏開發(fā) (物聯(lián)技術(shù)666)

    鏈接:https://pan.baidu.com/s/1V0E9IHSoLbpiWJsncmFgdA?pwd=1688 提取碼:1688 ? 教學內(nèi)容: 1 、 ADC S3C2440 的 A/D 轉(zhuǎn)換器包含一個 8 通道的模擬輸入轉(zhuǎn)換器,可以將模擬輸入信號轉(zhuǎn)換成 10 位數(shù)字編碼。 在 A/D 轉(zhuǎn)換時鐘頻率為 2.5MHz 時,其最大轉(zhuǎn)換率為 500KSPS ( 5 個時鐘周期完成一次轉(zhuǎn)換) 輸

    2024年02月20日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包