RM新时代网站-首页

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

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

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

零基礎(chǔ)開發(fā)小安派-Eyes-S1外設(shè)篇——ADC

AIoT行業(yè)洞察 ? 來(lái)源: AIoT行業(yè)洞察 ? 作者: AIoT行業(yè)洞察 ? 2024-11-27 16:43 ? 次閱讀

AiPi-Eyes-S1是安信可開源團(tuán)隊(duì)專門為Ai-M61-32S設(shè)計(jì)的一款開發(fā)板,支持WiFi6、BLE5.3。所搭載的Ai-M61-32S 模組具有豐富的外設(shè)接口,具體包括 DVP、MJPEG、Dispaly、AudioCodec、USB2.0、SDU、以太網(wǎng) (EMAC)、SD/MMC(SDH)、SPI、UART、I2C、I2S、PWM、GPDAC、GPADC、ACOMP 和 GPIO 等。

AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預(yù)留TF卡座,并且引出USB接口,可接入U(xiǎn)SB攝像頭。

從零開始學(xué)習(xí)小安派:

1、零基礎(chǔ)開發(fā)小安派-Eyes-S1【入門篇】——初識(shí)小安派-Eyes-S1

2、零基礎(chǔ)開發(fā)小安派-Eyes-S1【入門篇】——安裝VMware與Ubuntu

3、入門篇:零基礎(chǔ)開發(fā)小安派-Eyes-S1——新建工程并燒錄調(diào)試

4、零基礎(chǔ)開發(fā)小安派-Eyes-S1入門篇——Win下SSH連接Linux

5、零基礎(chǔ)開發(fā)小安派-Eyes-S1【入門篇】——Samba共享文件夾

6、零基礎(chǔ)開發(fā)小安派-Eyes-S1【入門篇】——工程文件架構(gòu)

7、零基礎(chǔ)開發(fā)小安派-Eyes-S1【外設(shè)篇】——GPIO 輸入輸出

8、零基礎(chǔ)開發(fā)小安派-Eyes-S1【外設(shè)篇】——GPIO中斷編程

9、零基礎(chǔ)開發(fā)小安派-Eyes-S1【外設(shè)篇】——PWM

10、零基礎(chǔ)開發(fā)小安派-Eyes-S1【外設(shè)篇】——UART

11、零基礎(chǔ)開發(fā)小安派-Eyes-S1【外設(shè)篇】——I2C

ADC 指的是模數(shù)轉(zhuǎn)換器Analog-to-Digital Converter),它是一種用于將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)電子設(shè)備或電路。

模擬信號(hào)是連續(xù)變化的信號(hào),可以取無(wú)限個(gè)可能的值,而數(shù)字信號(hào)則是離散的,只能表示有限個(gè)數(shù)值。ADC 的作用就是將模擬信號(hào)轉(zhuǎn)換為離散的數(shù)字信號(hào),以便數(shù)字電子系統(tǒng)進(jìn)行處理、存儲(chǔ)和傳輸。

ADC 的基本工作原理是通過一系列的采樣和量化過程來(lái)實(shí)現(xiàn)模擬到數(shù)字的轉(zhuǎn)換:

1.采樣(Sampling):ADC 根據(jù)一定的時(shí)間間隔,從模擬信號(hào)中獲取一系列離散的采樣點(diǎn)。采樣率決定了采樣點(diǎn)的密度,較高的采樣率可以更精確地表示原始模擬信號(hào)。

2.量化(Quantization):采樣得到的模擬信號(hào)樣本通常是連續(xù)的,量化則將每個(gè)采樣點(diǎn)映射為一個(gè)特定的數(shù)字值。量化過程將連續(xù)的模擬信號(hào)離散化,并分配給每個(gè)樣本一個(gè)數(shù)字值。

3.編碼(Encoding):編碼將量化后的數(shù)字值表示為二進(jìn)制形式,以便于數(shù)字系統(tǒng)處理。常見的編碼方式包括無(wú)符號(hào)二進(jìn)制、補(bǔ)碼和格雷碼等。

總的來(lái)說,生活中會(huì)有許多“模擬量”,如一段從低音到高音的音頻,在數(shù)字信號(hào)中,不能簡(jiǎn)單的把低音表示 0,高音表示 1,這樣歌曲中間的音頻變化是空的,沒有小數(shù)點(diǎn)這些概念來(lái)顯示他們從 0 到 0.5 到 1 的過程。所以需要有個(gè)模數(shù)轉(zhuǎn)換的過程,稱為 ADC。比如用 12 位精度的 ADC 來(lái)表示這段音頻,低音就 0,高音就是 2^12 次也就是 4096,那么在這段音頻中我們就可以通過 0-4096 的過程來(lái)判斷音頻的高和低,具體到高到有多高,低到有多低,而 ADC 的精度越高,如 16 位,就可達(dá)到 0-65535 的范圍。

一、了解小安派-Eyes-S1 的 ADC

芯片內(nèi)置一個(gè) 12bits 的逐次逼近式模擬數(shù)字轉(zhuǎn)換器 (ADC),支持 12 路外部模擬輸入和若干內(nèi)部模擬信號(hào)選擇。ADC 可以工作在 4 種模式下,轉(zhuǎn)換結(jié)果為 12/14/16bits 左對(duì)齊模式。

ADC 擁有深度為 32 字節(jié)的 FIFO,支持多種中斷,支持 DMA 操作。ADC 除了用于普通模擬信號(hào)測(cè)量外,還可以用于測(cè)量供電電壓,此外 ADC 還可以通過測(cè)量?jī)?nèi)/外部二極管電壓用于溫度檢測(cè)。

具有 12 路外部模擬通道,對(duì)應(yīng)的 GPIO 如下:

wKgZO2dG26iAU49WAACKa3-cOIA915.jpg

此外,還具有 2 路 DAC 內(nèi)部通道,1 路 VBAT/2 通道,1 路 TSEN 通道

adc clock div

對(duì) adc 時(shí)鐘再一次進(jìn)行分頻。分頻后的時(shí)鐘必須小于等于 500K。

ADC CLK = CLK_SOURCE/CLK_DIV/adc_clk_div

#define ADC_CLK_DIV_4 1
#define ADC_CLK_DIV_8 2
#define ADC_CLK_DIV_12 3
#define ADC_CLK_DIV_16 4
#define ADC_CLK_DIV_20 5
#define ADC_CLK_DIV_24 6
#define ADC_CLK_DIV_32 7

adc resolution

adc 位數(shù),可以選擇 12B、14B、16B。其中 14B 和 16B 自帶過采樣處理

#define ADC_RESOLUTION_12B 0
#define ADC_RESOLUTION_14B 2
#define ADC_RESOLUTION_16B 4

adc vref

adc 內(nèi)置參考電壓選擇,可以選擇 2.0 V 或者 3.2V

#define ADC_VREF_3P2V 0
#define ADC_VREF_2P0V 1

二、結(jié)構(gòu)體與 API

struct bflb_adc_config_s

說明:adc 初始化配置結(jié)構(gòu)體。

struct bflb_adc_config_s {
uint8_t clk_div;
uint8_t scan_conv_mode;
uint8_t continuous_conv_mode;
uint8_t differential_mode;
uint8_t resolution;
uint8_t vref;
};

wKgZPGdG26iAYNM8AABcrcIM9Qk711.jpg

掃描模式:可按照用戶指定通道個(gè)數(shù)和順序逐個(gè)轉(zhuǎn)換,結(jié)果推入 ADC 的 FIFO

連續(xù)轉(zhuǎn)換模式:允許 ADC 連續(xù)不斷地執(zhí)行模數(shù)轉(zhuǎn)換,只需要調(diào)用一次 ADC 啟動(dòng)

差分模式:ADC 支持單端輸入模式和差分模式,選擇單端時(shí)負(fù)極輸入通道選擇 GND

struct bflb_adc_channel_s

說明:配置 adc 通道時(shí)使用。

struct bflb_adc_channel_s {
uint8_t pos_chan;
uint8_t neg_chan;
};

wKgZO2dG26iASZCHAAAurtun7TA777.jpg

struct bflb_adc_result_s

說明:adc 標(biāo)準(zhǔn)轉(zhuǎn)換結(jié)果

struct bflb_adc_result_s {
int8_t pos_chan;
int8_t neg_chan;
int32_t value;
int32_t millivolt;
};

wKgZO2dG26mAeiVCAABDhS8-KFE513.jpg

bflb_adc_init

說明: 初始化 adc。adc 使用之前需要開啟 adc ip 時(shí)鐘、設(shè)置 adc 時(shí)鐘源和分頻值、選擇使用的 gpio 為 analog 模式。

void bflb_adc_init(struct bflb_device_s *dev, const struct bflb_adc_config_s *config);

wKgZPGdG26mAB9PzAAAnpLjrPOs269.jpg

bflb_adc_deinit

說明: 反初始化 adc。

void bflb_adc_deinit(struct bflb_device_s *dev);

wKgZO2dG26mAKCvIAAANT31F5oA323.jpg

bflb_adc_link_rxdma

說明: adc dma 功能開關(guān)。

void bflb_adc_link_rxdma(struct bflb_device_s *dev, bool enable);

wKgZO2dG26qAIxCyAAAoMn2lOAw772.jpg

bflb_adc_channel_config

說明: 配置 adc 通道。

int bflb_adc_channel_config(struct bflb_device_s *dev, struct bflb_adc_channel_s *chan, uint8_t channels);

wKgZPGdG26qARi9nAAA08zRIwuc521.jpg

bflb_adc_start_conversion

說明: 啟動(dòng) adc 轉(zhuǎn)換。連續(xù)轉(zhuǎn)換模式下只需要調(diào)用一次。

void bflb_adc_start_conversion(struct bflb_device_s *dev);

wKgZO2dG26uAXfS2AAAM22C5UR4151.jpg

bflb_adc_stop_conversion

說明: 停止 adc 轉(zhuǎn)換。

void bflb_adc_stop_conversion(struct bflb_device_s *dev);

wKgZPGdG26uAWVoKAAANMmHi4s4067.jpg

bflb_adc_get_count

說明: 獲取 adc 轉(zhuǎn)換個(gè)數(shù)。

uint8_t bflb_adc_get_count(struct bflb_device_s *dev);

wKgZO2dG26yANY1YAAAplaSUgB0901.jpg

bflb_adc_read_raw

說明: 讀取一次 adc 轉(zhuǎn)換值。

uint32_t bflb_adc_read_raw(struct bflb_device_s *dev);

wKgZPGdG26yACRF0AAAmEHGPOBw679.jpg

bflb_adc_rxint_mask

說明: adc 轉(zhuǎn)換完成中斷開關(guān)。

void bflb_adc_rxint_mask(struct bflb_device_s *dev, bool mask);

wKgZO2dG262AY6o_AAAlqG3F6Qs515.jpg

bflb_adc_errint_mask

說明: adc 錯(cuò)誤中斷開關(guān)。

void bflb_adc_errint_mask(struct bflb_device_s *dev, bool mask);

wKgZPGdG262AXasnAAAni2EgIps897.jpg

bflb_adc_get_intstatus

說明: adc 中斷標(biāo)志。

uint32_t bflb_adc_get_intstatus(struct bflb_device_s *dev);

wKgZO2dG262AQuYjAAAnUO2VkYY322.jpg

返回值如下:

ADC_INTSTS_NEG_SATURATIONADC_INTSTS_NEG_SATURATION
ADC_INTSTS_FIFO_UNDERRUN
ADC_INTSTS_FIFO_OVERRUN
ADC_INTSTS_ADC_READY

bflb_adc_int_clear

說明: 清除 adc 中斷標(biāo)志。

void bflb_adc_int_clear(struct bflb_device_s *dev, uint32_t int_clear);

wKgZPGdG266AcCTOAAAnZm9P1Y8718.jpg

int_clear 可以填入以下參數(shù):

ADC_INTCLR_NEG_SATURATIONADC_INTCLR_POS_SATURATION
ADC_INTCLR_FIFO_UNDERRUN
ADC_INTCLR_FIFO_OVERRUN
ADC_INTCLR_ADC_READY

bflb_adc_parse_result

說明: 對(duì) adc 轉(zhuǎn)換結(jié)果進(jìn)行解析。

void bflb_adc_parse_result(struct bflb_device_s *dev, uint32_t *buffer, struct bflb_adc_result_s *result, uint16_t count);

wKgZO2dG266AB5jeAAA5nrVYQFg218.jpg

bflb_adc_tsen_init

說明: 初始化 adc tsen 模塊。

void bflb_adc_tsen_init(struct bflb_device_s *dev, uint8_t tsen_mod);

wKgZO2dG26-ADmzQAAAn2avgO8E073.jpg

bflb_adc_tsen_get_temp

說明: 獲取 adc tsen 模塊采集的溫度。

float bflb_adc_tsen_get_temp(struct bflb_device_s *dev);

wKgZPGdG26-AV2-kAAAmlqrczkc748.jpg

bflb_adc_vbat_enable

說明: 開啟 vbat 。

void bflb_adc_vbat_enable(struct bflb_device_s *dev);

wKgZO2dG27CAIXlNAAAPDDEZkpU600.jpg

bflb_adc_vbat_disable

說明: 關(guān)閉 vbat。

void bflb_adc_vbat_disable(struct bflb_device_s *dev);

wKgZPGdG27CAZ3aiAAAOj1drrTw165.jpg

三、示例——連續(xù)讀取 IO 的 ADC 值,ADC 轉(zhuǎn)換完成中斷

Main

#include "bflb_adc.h"
#include "bflb_mtimer.h"
#include "board.h"
#include "bflb_gpio.h"
//頭文件
struct bflb_device_s *adc;
//外設(shè)結(jié)構(gòu)體設(shè)置
void My_adc_gpio_init()
{
struct bflb_device_s *gpio;
gpio = bflb_device_get_by_name("gpio");
bflb_gpio_init(gpio, GPIO_PIN_0, GPIO_ANALOG | GPIO_SMT_EN | GPIO_DRV_0);
}
//設(shè)置需要AD采集的IO腳,對(duì)應(yīng)的通道和IO要匹配
volatile uint32_t raw_data;
//接收AD值變量
void adc_isr(int irq, void *arg)
{
uint32_t intstatus = bflb_adc_get_intstatus(adc);
if (intstatus & ADC_INTSTS_ADC_READY) {
bflb_adc_int_clear(adc, ADC_INTCLR_ADC_READY);
raw_data= bflb_adc_read_raw(adc);
}
}
//中斷函數(shù),清除中斷標(biāo)志位,將讀取的AD變量賦給raw_data
int main(void)
{
board_init();
My_adc_gpio_init();
adc = bflb_device_get_by_name("adc");
/* adc clock = XCLK / 2 / 32 */
struct bflb_adc_config_s cfg;
cfg.clk_div = ADC_CLK_DIV_32;
cfg.scan_conv_mode = false;
cfg.continuous_conv_mode = false;
cfg.differential_mode = false;
cfg.resolution = ADC_RESOLUTION_16B;
cfg.vref = ADC_VREF_3P2V;
//adc結(jié)構(gòu)體配置
struct bflb_adc_channel_s chan;
chan.pos_chan = ADC_CHANNEL_9;
chan.neg_chan = ADC_CHANNEL_GND;
//通道配置,單端模式下neg選擇GND,pos注意對(duì)應(yīng)IO口的通道
bflb_adc_init(adc, &cfg);
bflb_adc_channel_config(adc, &chan, 1);
bflb_adc_rxint_mask(adc, false);
bflb_irq_attach(adc->irq_num, adc_isr, NULL);
bflb_irq_enable(adc->irq_num);
//中斷使能配置
while (1) {
struct bflb_adc_result_s result;
bflb_adc_start_conversion(adc);
bflb_adc_parse_result(adc, (uint32_t *)&raw_data, &result, 1);
printf("rnpos chan %drnADC Value = %drnCurrent Voltage = %d mvrn", result.pos_chan, result.value, result.millivolt);
bflb_adc_stop_conversion(adc);
bflb_mtimer_delay_ms(1000);
//主函數(shù)讀取AD值并轉(zhuǎn)化為電壓
}
}

四、效果

wKgZO2dG27CAYVZdAAB9M3wUA7g121.jpg

審核編輯 黃宇

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

    關(guān)注

    455

    文章

    50714

    瀏覽量

    423131
  • adc
    adc
    +關(guān)注

    關(guān)注

    98

    文章

    6495

    瀏覽量

    544457
  • 模擬信號(hào)
    +關(guān)注

    關(guān)注

    8

    文章

    1128

    瀏覽量

    52442
  • 開源
    +關(guān)注

    關(guān)注

    3

    文章

    3309

    瀏覽量

    42471
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    零基礎(chǔ)開發(fā)小安-Eyes-S1外設(shè)——I2S

    等。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預(yù)留TF卡座,并且引出USB接口,可接入U(xiǎn)SB攝像頭。 從開始學(xué)習(xí)小安
    的頭像 發(fā)表于 12-13 18:02 ?910次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b><b class='flag-5'>外設(shè)</b><b class='flag-5'>篇</b>——I2<b class='flag-5'>S</b>

    電子DIY作品 小安R1做個(gè)86盒中控

    前言 筆者之前看小安的開源資料, 就對(duì) R1 這個(gè)板子情有獨(dú)鐘 這就是為 86 盒而生啊 剛好安信可社區(qū)一直有積分兌換活動(dòng) (https://bbs.ai-thinker.com/) 這次就用
    的頭像 發(fā)表于 12-05 14:34 ?149次閱讀
    電子DIY作品 <b class='flag-5'>小安</b><b class='flag-5'>派</b>R<b class='flag-5'>1</b>做個(gè)86盒中控

    零基礎(chǔ)開發(fā)小安-Eyes-S1外設(shè)】——FLASH

    。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預(yù)留TF卡座,并且引出USB接口,可接入U(xiǎn)SB攝像頭。 從開始學(xué)習(xí)小安
    的頭像 發(fā)表于 12-05 14:31 ?160次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>【<b class='flag-5'>外設(shè)</b><b class='flag-5'>篇</b>】——FLASH

    零基礎(chǔ)入門PCB工程師

    各位前輩大家好,零基礎(chǔ)入門PCB工程師,有什么學(xué)習(xí)資料推薦嗎?
    發(fā)表于 11-27 16:54

    零基礎(chǔ)開發(fā)小安-Eyes-S1 外設(shè) ——I2C

    。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預(yù)留TF卡座,并且引出USB接口,可接入U(xiǎn)SB攝像頭。 從開始學(xué)習(xí)小安
    的頭像 發(fā)表于 11-27 16:39 ?200次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b> <b class='flag-5'>外設(shè)</b><b class='flag-5'>篇</b> ——I2C

    小安 AiPi-Eyes-R2 玩植物大戰(zhàn)僵尸

    - Eyes-R1 帶外置 ES8388 音頻芯片,支持兩路音頻輸入輸出。小安 - Eyes-R2 采用內(nèi)置 CodeC,支持單路音頻輸入輸出。 如果是編譯帶 8388
    的頭像 發(fā)表于 11-06 16:10 ?206次閱讀
    用<b class='flag-5'>小安</b><b class='flag-5'>派</b> AiPi-<b class='flag-5'>Eyes</b>-R2 玩植物大戰(zhàn)僵尸

    零基礎(chǔ)開發(fā)小安-Eyes-S1【入門】——工程文件架構(gòu)

    -Eyes-S1【入門】——初識(shí)小安-Eyes-S12、零基礎(chǔ)
    的頭像 發(fā)表于 11-06 16:10 ?143次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>【入門<b class='flag-5'>篇</b>】——工程文件架構(gòu)

    零基礎(chǔ)開發(fā)小安-Eyes-S1外設(shè)】——PWM

    】——工程文件架構(gòu)7、零基礎(chǔ)開發(fā)小安-Eyes-S1外設(shè)
    的頭像 發(fā)表于 11-06 16:10 ?140次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>【<b class='flag-5'>外設(shè)</b><b class='flag-5'>篇</b>】——PWM

    零基礎(chǔ)開發(fā)小安-Eyes-S1外設(shè)——GPIO中斷編程

    等。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預(yù)留TF卡座,并且引出USB接口,可接入U(xiǎn)SB攝像頭。 產(chǎn)品資料:https://docs.ai-thinker.com/eyes
    的頭像 發(fā)表于 10-29 14:56 ?743次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b><b class='flag-5'>外設(shè)</b><b class='flag-5'>篇</b>——GPIO中斷編程

    零基礎(chǔ)開發(fā)小安-Eyes-S1外設(shè)——GPIO 輸入輸出

    等。 AiPi-Eyes-S1集成了SPI屏幕接口,DVP攝像頭接口,外置ES8388音頻編解碼芯片以及預(yù)留TF卡座,并且引出USB接口,可接入U(xiǎn)SB攝像頭。 從開始學(xué)習(xí)小安
    的頭像 發(fā)表于 10-25 13:50 ?1013次閱讀
    <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b><b class='flag-5'>外設(shè)</b><b class='flag-5'>篇</b>——GPIO 輸入輸出

    開發(fā)教程 零基礎(chǔ)開發(fā)小安-Eyes-S1入門——Win下SSH連接Linux

    AiPi-Eyes-S1 是安信可開源團(tuán)隊(duì)專門為Ai-M61-32S設(shè)計(jì)的一款開發(fā)板,支持WiFi6、BLE5.3。所搭載的Ai-M61-32S 模組具有豐富的
    的頭像 發(fā)表于 09-24 14:31 ?289次閱讀
    <b class='flag-5'>開發(fā)</b>教程 <b class='flag-5'>零基</b>礎(chǔ)<b class='flag-5'>開發(fā)</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>入門<b class='flag-5'>篇</b>——Win下SSH連接Linux

    RT-Thread驅(qū)動(dòng)開發(fā)指南進(jìn)階-動(dòng)手驅(qū)動(dòng)先楫未適配的外設(shè)LCD

    經(jīng)過上一的《《RT-Thread設(shè)備驅(qū)動(dòng)開發(fā)指南》基礎(chǔ)--以先楫bsp的hwtimer設(shè)備為例》闡述,可以大致了解到RT-thread設(shè)備驅(qū)動(dòng)開發(fā)的方法步驟,
    的頭像 發(fā)表于 02-25 11:04 ?2512次閱讀
    RT-Thread驅(qū)動(dòng)<b class='flag-5'>開發(fā)</b>指南進(jìn)階<b class='flag-5'>篇</b>-動(dòng)手驅(qū)動(dòng)先楫未適配的<b class='flag-5'>外設(shè)</b>LCD

    功德+1,用小安-Eyes-S1做一個(gè)電子木魚

    2024積德累功,心想事成!接下來(lái) 看看如何用小安-Eyes-S1做一個(gè)電子木魚 。 01、GUI-Guider 頁(yè)面設(shè)計(jì) 先新建一個(gè)工程。 直接進(jìn)入 UI 設(shè)計(jì)界面,這里用到了兩個(gè)組件, 一個(gè)是圖片按鈕,一個(gè)是文本框 。 先
    的頭像 發(fā)表于 01-16 14:33 ?737次閱讀
    功德+<b class='flag-5'>1</b>,用<b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>做一個(gè)電子木魚

    如何用小安-Eyes-S1做一個(gè)電子木魚?

    2024年的第一教程來(lái)了,本篇學(xué)習(xí)如何添加LVGL事件,并制作完成一個(gè)電子木魚(小美苦苦哀求,我略微出手而已)。祝大家2024積德累功,心想事成!接下來(lái)看看如何用小安-Eyes-S1
    的頭像 發(fā)表于 01-13 15:18 ?1018次閱讀
    如何用<b class='flag-5'>小安</b><b class='flag-5'>派</b>-<b class='flag-5'>Eyes-S1</b>做一個(gè)電子木魚?

    用安信可的小安小安,DIY個(gè)簡(jiǎn)單的CC表

    本作品由安信可社區(qū)用戶 bzhou830 制作 原貼地址:【DIY電子作品】電壓與電流CC表 基于小安AiPi-Eye-S1 匯總 https://bbs.ai-thinker.com
    的頭像 發(fā)表于 12-25 17:07 ?687次閱讀
    用安信可的<b class='flag-5'>小安</b><b class='flag-5'>派</b><b class='flag-5'>小安</b><b class='flag-5'>派</b>,DIY個(gè)簡(jiǎn)單的CC表
    RM新时代网站-首页