一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

小熊派Hi3861獲取mpu6050數(shù)據(jù)在oled屏幕中顯示

聶小生 ? 來(lái)源:聶小生 ? 作者:聶小生 ? 2023-08-14 14:39 ? 次閱讀

硬件:

開(kāi)發(fā)板:小熊派

主控MCU:Hi3861

接線(xiàn):

MPU6050:

SCL:IO_01

SDA:IO_00

OLED

SCL:IO_09
SDA:IO_10

效果圖:

wKgaomTXPKKAKOoBAPY6bJ6j_PA966.png運(yùn)行效果圖

軟件方案:

MPU6050驅(qū)動(dòng)

這部分代碼參考使用小熊派例程代碼

初始化引腳:

GpioInit();

IoSetFunc(WIFI_IOT_IO_NAME_GPIO_0, WIFI_IOT_IO_FUNC_GPIO_0_I2C1_SDA);   // GPIO_0復(fù)用為I2C1_SDA
IoSetFunc(WIFI_IOT_IO_NAME_GPIO_1, WIFI_IOT_IO_FUNC_GPIO_1_I2C1_SCL);   // GPIO_1復(fù)用為I2C1_SCL
I2cInit(WIFI_IOT_I2C_IDX_1, 400000); /* baudrate: 400kbps */
I2cSetBaudrate(WIFI_IOT_I2C_IDX_1, 400000);

OLED驅(qū)動(dòng)

相關(guān)代碼在文末附件中。

在oled.c中初始化引腳:

//初始化
    GpioInit();
    //GPIO_10復(fù)用為I2C0_SDA
    IoSetFunc(WIFI_IOT_IO_NAME_GPIO_10, WIFI_IOT_IO_FUNC_GPIO_10_I2C0_SDA);
    //GPIO_9復(fù)用為I2C0_SCL
    IoSetFunc(WIFI_IOT_IO_NAME_GPIO_9, WIFI_IOT_IO_FUNC_GPIO_9_I2C0_SCL);
    //baudrate: 400kbps
    I2cInit(WIFI_IOT_I2C_IDX_0, 400000);
    I2cSetBaudrate(WIFI_IOT_I2C_IDX_0, 400000);

在主線(xiàn)程中獲取mpu6050數(shù)據(jù),并在oled顯示

// 定義陀螺儀數(shù)據(jù)
Sensor_Data_TypeDef Sensor_Data;

char array[64]; 

static int task_sensor_entry(void)
{
    float k = 127.0/4200;
    OLED_Init();
    Sensor_Init();
    OLED_Clear();

    while(1)
    {
        //OLED_Show();
        usleep(100000);

        // 讀取數(shù)據(jù)
        Sensor_Read_Data();
        // 邏輯處理
        printf("Accel[0]:%6d  Accel[1]:%6d  Accel[2]:%6drn", (int)Sensor_Data.Accel[0],(int)Sensor_Data.Accel[1],(int)Sensor_Data.Accel[2]);

        // 顯示實(shí)時(shí)數(shù)據(jù)
        memset(array, 0, sizeof(array) - 1);
        sprintf(array, "x:%6d", (int)Sensor_Data.Accel[0]);
        OLED_ShowString(0,0,array,16);
        
        memset(array, 0, sizeof(array) - 1);
        sprintf(array, "y:%6d", (int)Sensor_Data.Accel[1]);
        OLED_ShowString(0,20,array,16);
        OLED_ProcessBar(0,40,(int)((Sensor_Data.Accel[1]+2100)*k));
        OLED_Refresh();
    }

    return 0;
}

static void OC_mpu6050_oled(void)
{

    osThreadAttr_t attr;

    attr.name = "task_main_entry";
    attr.attr_bits = 0U;
    attr.cb_mem = NULL;
    attr.cb_size = 0U;
    attr.stack_mem = NULL;

    attr.stack_size = 2048;
    attr.priority = 25;
    attr.name = "task_sensor_entry";
    
    if (osThreadNew((osThreadFunc_t)task_sensor_entry, NULL, &attr) == NULL)
    {
        printf("Falied to create task_sensor_entry!n");
    }
}

APP_FEATURE_INIT(OC_mpu6050_oled);

相關(guān)代碼文件

完整代碼在資源中

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • OLED
    +關(guān)注

    關(guān)注

    119

    文章

    6253

    瀏覽量

    226538
  • MPU6050
    +關(guān)注

    關(guān)注

    39

    文章

    309

    瀏覽量

    72500
  • Hi3861
    +關(guān)注

    關(guān)注

    1

    文章

    63

    瀏覽量

    6888
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    第6節(jié) Hi3861 OLED屏幕驅(qū)動(dòng) 基于鴻蒙系統(tǒng)

    `` 本帖最后由 jf_39160458 于 2020-10-2 22:37 編輯 Hi3861 OLED驅(qū)動(dòng)Hispark WiFi開(kāi)發(fā)套件又提供一個(gè)OLED屏幕,但是鴻蒙源碼
    發(fā)表于 10-02 22:33

    【HarmonyOS HiSpark Wi-Fi IoT套件】I2C驅(qū)動(dòng) Hi3861 驅(qū)動(dòng)OLED屏幕顯示

    ,大家自己下載。(2)設(shè)置I2C引腳復(fù)用確定i2c引腳,查看原理圖,可以看到OLED屏幕使用到的是I2C0,引腳是GPIO13、GPIO14所以我們需要修改源碼,vendor\hisi\hi
    發(fā)表于 10-16 09:26

    MPU6050模塊

    下載,公眾號(hào):小白學(xué)移動(dòng)機(jī)器人,發(fā)送:MPU6050,即可獲得。2.4.1 解決的問(wèn)題DMP庫(kù)的移植(文件已被更改過(guò),更好的移植)MPU6050數(shù)據(jù)
    發(fā)表于 08-09 07:17

    利用小熊派獲取MPU6050六軸原始數(shù)據(jù)的過(guò)程

    摘要:使用小熊派開(kāi)發(fā)板,通過(guò)硬件IIC與MPU6050六軸傳感器模塊通信,完成相應(yīng)寄存器配置,成功獲取陀螺儀、加速度計(jì)數(shù)據(jù)。本問(wèn)主要講述使用小熊派
    發(fā)表于 02-10 07:00

    STM32 MPU6050模塊數(shù)據(jù)獲取

    下載,公眾號(hào):小白學(xué)移動(dòng)機(jī)器人,發(fā)送:MPU6050,即可獲得。2.4.1 解決的問(wèn)題DMP庫(kù)的移植(文件已被更改過(guò),更好的移植)MPU6050數(shù)據(jù)
    發(fā)表于 02-10 06:01

    Hi3861潤(rùn)和開(kāi)發(fā)板+小熊派,智能家居項(xiàng)目

    +華為云IoTDA+Android APP......Haohanyh-HAMOS-ProjectX是我們的一個(gè)LiGHTs計(jì)劃的部分,目的就是開(kāi)源我們hi3861上與物聯(lián)網(wǎng)(智能家居)上做的探索
    發(fā)表于 04-30 00:37

    MPU6050原始數(shù)據(jù)處理

    我用MPU6050接到小熊派開(kāi)發(fā)版上讀取到加速度原始數(shù)據(jù),按照網(wǎng)上說(shuō)的公式轉(zhuǎn)換成加速度,加速度基本上都是0附近,要大力快速晃動(dòng)MPU6050
    發(fā)表于 05-17 19:28

    輕量系統(tǒng):小熊派BearPi-HM Nano(HI3861

    開(kāi)發(fā)板名稱(chēng)(芯片型號(hào)) 小熊派BearPi-HM Nano(HI3861) 芯片架構(gòu) CPU頻率 介紹(字?jǐn)?shù)請(qǐng)控制200字以?xún)?nèi)) 小熊派BearPi-HM Nano外型上延續(xù)了三
    發(fā)表于 10-19 11:10

    MPU6050簡(jiǎn)介

    MPU6050簡(jiǎn)介什么是MPU6050MPU6050的特點(diǎn)MPU6050框圖MPU6050初始化MPU6050—DMP使用介紹
    發(fā)表于 12-06 11:51 ?76次下載
    <b class='flag-5'>MPU6050</b>簡(jiǎn)介

    STM32 MPU6050數(shù)據(jù)獲取、數(shù)據(jù)處理

    下載,公眾號(hào):小白學(xué)移動(dòng)機(jī)器人,發(fā)送:MPU6050,即可獲得。2.4.1 解決的問(wèn)題DMP庫(kù)的移植(文件已被更改過(guò),更好的移植)MPU6050數(shù)據(jù)
    發(fā)表于 12-06 12:06 ?33次下載
    STM32 <b class='flag-5'>MPU6050</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>獲取</b>、<b class='flag-5'>數(shù)據(jù)</b>處理

    STM32獲取MPU6050數(shù)據(jù)

    STM32獲取MPU6050數(shù)據(jù)
    發(fā)表于 12-06 13:06 ?55次下載
    STM32<b class='flag-5'>獲取</b><b class='flag-5'>MPU6050</b><b class='flag-5'>數(shù)據(jù)</b>

    如何利用小熊派獲取MPU6050六軸原始數(shù)據(jù)

    摘要:使用小熊派開(kāi)發(fā)板,通過(guò)硬件IIC與MPU6050六軸傳感器模塊通信,完成相應(yīng)寄存器配置,成功獲取陀螺儀、加速度計(jì)數(shù)據(jù)。本問(wèn)主要講述使用小熊派
    發(fā)表于 12-06 14:21 ?18次下載
    如何利用<b class='flag-5'>小熊派</b><b class='flag-5'>獲取</b><b class='flag-5'>MPU6050</b>六軸原始<b class='flag-5'>數(shù)據(jù)</b>

    K013 基于51/STM32 MPU6050測(cè)試 OLED0.96顯示原始數(shù)據(jù)

    . 接線(xiàn)六.代碼說(shuō)明1. MPU6050引腳配置2. MPU6050模塊寫(xiě)數(shù)據(jù)與命令函數(shù)3. MPU6050模塊初始化函數(shù)4. MPU6050
    發(fā)表于 12-06 16:06 ?29次下載
    K013 基于51/STM32 <b class='flag-5'>MPU6050</b>測(cè)試 <b class='flag-5'>OLED</b>0.96<b class='flag-5'>顯示</b>原始<b class='flag-5'>數(shù)據(jù)</b>

    android 獲取gpio電平值_STM32 MPU6050數(shù)據(jù)獲取(IIC + DMP)

    下載,公眾號(hào):小白學(xué)移動(dòng)機(jī)器人,發(fā)送:MPU6050,即可獲得。2.4.1 解決的問(wèn)題DMP庫(kù)的移植(文件已被更改過(guò),更好的移植)MPU6050數(shù)據(jù)
    發(fā)表于 12-06 17:06 ?17次下載
    android <b class='flag-5'>獲取</b>gpio電平值_STM32 <b class='flag-5'>MPU6050</b><b class='flag-5'>數(shù)據(jù)</b><b class='flag-5'>獲取</b>(IIC + DMP)

    小熊派Hi3861讀取mpu6050數(shù)據(jù)并在oled顯示

    基于小熊派相關(guān)代碼,修改得到的讀取mpu6050數(shù)據(jù),并在oled顯示
    發(fā)表于 08-14 15:00 ?20次下載