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

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

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

探索DeepSeek的Ai-WB2模組程序:功能強(qiáng)大

安信可科技 ? 來源:安信可科技 ? 2025-02-11 09:37 ? 次閱讀

DeepSeek是什么?

DeepSeek,一家以代碼編寫能力為核心競(jìng)爭(zhēng)力的 AI 科技公司,致力于通過高性能 AI 模型賦能企業(yè)智能化轉(zhuǎn)型。公司擁有一支由頂尖程序員和 AI 專家組成的團(tuán)隊(duì),他們以卓越的代碼編寫能力,不斷優(yōu)化和創(chuàng)新 AI 技術(shù),為全球用戶提供高效、智能的解決方案。

DeepSeek 的 AI 模型以高效的代碼實(shí)現(xiàn)和強(qiáng)大的性能表現(xiàn)著稱,能夠在金融、醫(yī)療、教育等多個(gè)行業(yè)中發(fā)揮重要作用。其最新發(fā)布的大模型 R1,以極低的訓(xùn)練成本達(dá)到了行業(yè)領(lǐng)先水平,彰顯了 DeepSeek 在代碼編寫和 AI 技術(shù)創(chuàng)新方面的強(qiáng)大實(shí)力。憑借卓越的代碼能力和創(chuàng)新的商業(yè)模式,DeepSeek 正逐步成為全球 AI 領(lǐng)域的佼佼者,為全球科技產(chǎn)業(yè)的發(fā)展貢獻(xiàn)力量。

之前還癡心妄想讓它幫我搭建二次開發(fā)環(huán)境,但是因?yàn)闄?quán)限問題,DeepSeek 無法操作終端。

那就試試 DeepSeek 給 Ai-WB2 模組編程,能不能直接編譯運(yùn)行呢?

在寫這帖子之前,做了好多測(cè)試,大部分時(shí)間浪費(fèi)在了服務(wù)器繁忙這個(gè)問題上!

24d83a02-e798-11ef-9310-92fbcf53809c.png

在開始讓 DeepSeek 生成之前,注意要提前搭建好 Ai-WB2 的二次開發(fā)環(huán)境和測(cè)試工程,生成的代碼才能直接復(fù)制。

提問技巧

AI 工具畢竟還不是人,所以在提問的時(shí)候,盡量提供要求和一些信息。比如使用那些庫,需要達(dá)到什么效果等。

如果回復(fù)較慢,可以試試 siliconflow:

鏈接:https://cloud.siliconflow.cn/models

GPIO 點(diǎn)燈

提問內(nèi)容如下:

24e6f970-e798-11ef-9310-92fbcf53809c.png

已經(jīng)喜聞樂見了,接下來試試硅基流動(dòng)的:

24f42f46-e798-11ef-9310-92fbcf53809c.png

嘗試了兩次之后,至少生成了代碼,接下來完全不改動(dòng),復(fù)制測(cè)試一下:

#include 
#include 
#include 
#include   // 包含硬件定時(shí)器頭文件
#include 
#include 


#define LED_PIN 3       // 定義GPIO3引腳
#define BLINK_INTERVAL 500 // 閃爍間隔500ms(周期1秒)


void led_init(void)
{
    /* 初始化GPIO時(shí)鐘 */
    bl_gpio_enable_output(LED_PIN, 0, 0); // 配置GPIO3為輸出模式
  
    /* 初始狀態(tài)設(shè)置為低電平(根據(jù)電路設(shè)計(jì)可能需要反轉(zhuǎn)) */
    bl_gpio_output_set(LED_PIN, 0);
}


void led_blink_task(void *pvParameters)
{
    while (1) {
        // 翻轉(zhuǎn)GPIO狀態(tài)
        bl_gpio_output_set(LED_PIN, !bl_gpio_input_get(LED_PIN));
  
        // 使用FreeRTOS延時(shí)函數(shù)
        vTaskDelay(BLINK_INTERVAL / portTICK_PERIOD_MS);
    }
}


void main(void)
{
    // 硬件初始化
    led_init();
  
    // 創(chuàng)建閃爍任務(wù)
    xTaskCreate(led_blink_task, "led_task", 512, NULL, 15, NULL);
  
    // 啟動(dòng)任務(wù)調(diào)度器
    vTaskStartScheduler();
  
    // 程序不會(huì)執(zhí)行到這里
    while(1) {}
}

代碼測(cè)試

25121524-e798-11ef-9310-92fbcf53809c.png

初步看著沒什么錯(cuò)誤,編譯試試。

編譯提示出了錯(cuò)誤,只能手動(dòng)改一下了。

修改之后

252e1224-e798-11ef-9310-92fbcf53809c.png

運(yùn)行成功的代碼

#include 
#include 
#include 
#include   // 包含硬件定時(shí)器頭文件
#include 
#include 


#define LED_PIN 3       // 定義GPIO3引腳
#define BLINK_INTERVAL 500 // 閃爍間隔500ms(周期1秒)


void led_init(void)
{
    /* 初始化GPIO時(shí)鐘 */
    bl_gpio_enable_output(LED_PIN, 0, 0); // 配置GPIO3為輸出模式


    /* 初始狀態(tài)設(shè)置為低電平(根據(jù)電路設(shè)計(jì)可能需要反轉(zhuǎn)) */
    bl_gpio_output_set(LED_PIN, 0);
}


void led_blink_task(void* pvParameters)
{
    int cnt = 0;
    while (1) {
        // 翻轉(zhuǎn)GPIO狀態(tài)
        bl_gpio_output_set(LED_PIN, cnt % 2);


        // 使用FreeRTOS延時(shí)函數(shù)
        vTaskDelay(BLINK_INTERVAL / portTICK_PERIOD_MS);
        cnt++;
        if (cnt>10)
        {
            cnt = 0;
        }


    }
}


void main(void)
{
    // 硬件初始化
    led_init();


    // 創(chuàng)建閃爍任務(wù)
    xTaskCreate(led_blink_task, "led_task", 512, NULL, 15, NULL);


    // 啟動(dòng)任務(wù)調(diào)度器
    // vTaskStartScheduler();


    // 程序不會(huì)執(zhí)行到這里
    while (1) {}
}

測(cè)試結(jié)果

253e8f14-e798-11ef-9310-92fbcf53809c.gif

PWM 調(diào)色

開發(fā)板上自帶了 RGB,對(duì)應(yīng)得 GPIO 如下:

25611b60-e798-11ef-9310-92fbcf53809c.png

好了開啟第二輪對(duì)話了,提問內(nèi)容如下:

2572b76c-e798-11ef-9310-92fbcf53809c.png

我已經(jīng)麻木了!

嘗試幾次之后,給了回復(fù):

258459cc-e798-11ef-9310-92fbcf53809c.png

提供的完整代碼

#include 
#include 
#include 
#include 


// PWM通道配置(根據(jù)實(shí)際GPIO-PWM映射關(guān)系調(diào)整)
#define PWM_RED_CH    0    // GPIO14對(duì)應(yīng)PWM通道0
#define PWM_GREEN_CH  1    // GPIO17對(duì)應(yīng)PWM通道1
#define PWM_BLUE_CH   2    // GPIO3對(duì)應(yīng)PWM通道2


// PWM頻率參數(shù)(假設(shè)系統(tǒng)時(shí)鐘144MHz)
#define PWM_FREQ      15000   // 15kHz
#define PWM_CLK_DIV   1       // 分頻系數(shù)
#define PWM_PERIOD    (144000000 / PWM_CLK_DIV / PWM_FREQ)  // 周期值計(jì)算


void pwm_init() {
    // 配置GPIO為PWM功能
    bl_pwm_init(PWM_RED_CH, GPIO_PIN_14);
    bl_pwm_init(PWM_GREEN_CH, GPIO_PIN_17);
    bl_pwm_init(PWM_BLUE_CH, GPIO_PIN_3);


    // 統(tǒng)一設(shè)置PWM參數(shù)
    for(int ch = 0; ch < 3; ch++) {
        bl_pwm_set_freq(ch, PWM_FREQ);
        bl_pwm_set_duty(ch, 0);  // 初始占空比0%
    }
    bl_pwm_start();
}


void breathing_effect(uint8_t ch, uint32_t duration_ms) {
    const uint32_t steps = 100;
    const uint32_t delay = duration_ms / (steps * 2);


    // 漸亮
    for(int i = 0; i <= steps; i++) {
        bl_pwm_set_duty(ch, (PWM_PERIOD * i) / steps);
        vTaskDelay(delay / portTICK_PERIOD_MS);
    }
  
    // 漸暗
    for(int i = steps; i >= 0; i--) {
        bl_pwm_set_duty(ch, (PWM_PERIOD * i) / steps);
        vTaskDelay(delay / portTICK_PERIOD_MS);
    }
}


void rgb_test_task(void *pvParameters) {
    while(1) {
        // 紅色呼吸
        breathing_effect(PWM_RED_CH, 2000);
        // 綠色呼吸
        breathing_effect(PWM_GREEN_CH, 2000);
        // 藍(lán)色呼吸
        breathing_effect(PWM_BLUE_CH, 2000);
        // 白色混合呼吸
        for(int i = 0; i <= 100; i++) {
            bl_pwm_set_duty(PWM_RED_CH, (PWM_PERIOD * i) / 100);
            bl_pwm_set_duty(PWM_GREEN_CH, (PWM_PERIOD * i) / 100);
            bl_pwm_set_duty(PWM_BLUE_CH, (PWM_PERIOD * i) / 100);
            vTaskDelay(20 / portTICK_PERIOD_MS);
        }
        for(int i = 100; i >= 0; i--) {
            bl_pwm_set_duty(PWM_RED_CH, (PWM_PERIOD * i) / 100);
            bl_pwm_set_duty(PWM_GREEN_CH, (PWM_PERIOD * i) / 100);
            bl_pwm_set_duty(PWM_BLUE_CH, (PWM_PERIOD * i) / 100);
            vTaskDelay(20 / portTICK_PERIOD_MS);
        }
    }
}


void main() {
    pwm_init();
    xTaskCreate(rgb_test_task, "rgb_test", 512, NULL, 2, NULL);
    vTaskStartScheduler();
}

代碼測(cè)試

25a06f4a-e798-11ef-9310-92fbcf53809c.png

有三個(gè)錯(cuò)誤,做一下修改就好,修改或如下:

25ac027e-e798-11ef-9310-92fbcf53809c.png

編譯正常,通過了。

運(yùn)行測(cè)試

最后測(cè)試失敗了,因?yàn)?PWM 通道全都沒有對(duì)應(yīng)上 GPIO,所以需要把 PWM 通道號(hào)改回來,再測(cè)試:

25c102aa-e798-11ef-9310-92fbcf53809c.png


燈顏色正確了,但是呼吸效果不對(duì)啊。

直接讓 DeepSeek 幫我們修改,提問如下:

25d23df4-e798-11ef-9310-92fbcf53809c.png


根據(jù)意見,調(diào)節(jié)了 PWM 頻率和分頻系數(shù),得到了非常不錯(cuò)的呼吸效果。

完整程序

#include 
#include 
#include 
#include 


// PWM通道配置(根據(jù)實(shí)際GPIO-PWM映射關(guān)系調(diào)整)
#define PWM_RED_CH    4    // GPIO14對(duì)應(yīng)PWM通道0
#define PWM_GREEN_CH  2    // GPIO17對(duì)應(yīng)PWM通道1
#define PWM_BLUE_CH   3    // GPIO3對(duì)應(yīng)PWM通道2


// PWM頻率參數(shù)(假設(shè)系統(tǒng)時(shí)鐘144MHz)
#define PWM_FREQ      15000   // 15kHz
#define PWM_CLK_DIV   16       // 分頻系數(shù)
#define PWM_PERIOD    (32000000 / PWM_CLK_DIV / PWM_FREQ)  // 周期值計(jì)算


void pwm_init() {
    // 配置GPIO為PWM功能
    bl_pwm_init(PWM_RED_CH, 14, PWM_FREQ);
    bl_pwm_init(PWM_GREEN_CH, 17, PWM_FREQ);
    bl_pwm_init(PWM_BLUE_CH, 3, PWM_FREQ);


    // 統(tǒng)一設(shè)置PWM參數(shù)
    for (int ch = 0; ch < 3; ch++) {
        bl_pwm_set_freq(ch, PWM_FREQ);
        bl_pwm_set_duty(ch, 0);  // 初始占空比0%
    }
    bl_pwm_start(PWM_RED_CH);
    bl_pwm_start(PWM_GREEN_CH);
    bl_pwm_start(PWM_BLUE_CH);
}


void breathing_effect(uint8_t ch, uint32_t duration_ms) {
    const uint32_t steps = 100;
    const uint32_t delay = duration_ms / (steps * 2);


    // 漸亮
    for (int i = 0; i <= steps; i++) {
        bl_pwm_set_duty(ch, (PWM_PERIOD * i) / steps);
        vTaskDelay(delay / portTICK_PERIOD_MS);
    }


    // 漸暗
    for (int i = steps; i >= 0; i--) {
        bl_pwm_set_duty(ch, (PWM_PERIOD * i) / steps);
        vTaskDelay(delay / portTICK_PERIOD_MS);
    }
}


void rgb_test_task(void* pvParameters) {
    while (1) {
        // 紅色呼吸
        breathing_effect(PWM_RED_CH, 2000);
        // 綠色呼吸
        breathing_effect(PWM_GREEN_CH, 2000);
        // 藍(lán)色呼吸
        breathing_effect(PWM_BLUE_CH, 2000);
        // 白色混合呼吸
        for (int i = 0; i <= 100; i++) {
            bl_pwm_set_duty(PWM_RED_CH, (PWM_PERIOD * i) / 100);
            bl_pwm_set_duty(PWM_GREEN_CH, (PWM_PERIOD * i) / 100);
            bl_pwm_set_duty(PWM_BLUE_CH, (PWM_PERIOD * i) / 100);
            vTaskDelay(20 / portTICK_PERIOD_MS);
        }
        for (int i = 100; i >= 0; i--) {
            bl_pwm_set_duty(PWM_RED_CH, (PWM_PERIOD * i) / 100);
            bl_pwm_set_duty(PWM_GREEN_CH, (PWM_PERIOD * i) / 100);
            bl_pwm_set_duty(PWM_BLUE_CH, (PWM_PERIOD * i) / 100);
            vTaskDelay(20 / portTICK_PERIOD_MS);
        }
    }
}


void main() {
    pwm_init();
    xTaskCreate(rgb_test_task, "rgb_test", 512, NULL, 2, NULL);
    // vTaskStartScheduler();
}

測(cè)試結(jié)果

25ebac1c-e798-11ef-9310-92fbcf53809c.gif

總結(jié)

1、官方的服務(wù)器還是不給力,一直服務(wù)器繁忙

2、生成的代碼有部分兼容性問題,達(dá)不到直接編譯使用要求

3、接口不可能完全可用

使用經(jīng)驗(yàn)

1、盡可能多的提供要求信息

2、需要結(jié)合自身編程經(jīng)驗(yàn)完善程序細(xì)節(jié),以達(dá)到想要的功能

3、嵌入式使用比較適合算法類的程序生成

最后最后,希望 DeepSeek 盡快完善起來!過來人的服務(wù)器繁忙:

260c5c28-e798-11ef-9310-92fbcf53809c.png

聲明:本文內(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)投訴
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    33467

    瀏覽量

    274040
  • 程序
    +關(guān)注

    關(guān)注

    117

    文章

    3816

    瀏覽量

    82121
  • DeepSeek
    +關(guān)注

    關(guān)注

    1

    文章

    750

    瀏覽量

    968

原文標(biāo)題:和大火的DeepSeek聊下Ai-WB2模組程序?它好會(huì)!

文章出處:【微信號(hào):安信可科技,微信公眾號(hào):安信可科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 0人收藏

    評(píng)論

    相關(guān)推薦

    DeepSeek推動(dòng)AI算力需求:800G光模塊的關(guān)鍵作用

    )800G光模塊 憑借其出色性能,為高速以太網(wǎng)和InfiniBand網(wǎng)絡(luò)提供強(qiáng)大支持。 總結(jié) 綜上所述,DeepSeek等大規(guī)模AI算力需求的不斷增長推動(dòng)了光模塊技術(shù)的飛速進(jìn)步。800G光模塊作為
    發(fā)表于 03-25 12:00

    HarmonyOS NEXT開發(fā)實(shí)戰(zhàn):DevEco Studio中DeepSeek的使用

    隨著HarmonyOS Next的持續(xù)發(fā)布,鴻蒙系統(tǒng)對(duì)AI能力的支持顯著增強(qiáng)。本文將深入探討如何在鴻蒙應(yīng)用中集成AI模型,結(jié)合接入DeepSeek,一起來探索開發(fā)鴻蒙原生應(yīng)用的更多可能
    發(fā)表于 03-07 14:56

    低價(jià)不貴!安信可WiFi+BLE模組Ai-WB2系列

    讓您買到同時(shí)實(shí)現(xiàn)Wi-Fi+BLE功能模組,經(jīng)過“雙85”測(cè)試,產(chǎn)品的可靠性與穩(wěn)定性更強(qiáng)。 01采用WPA3安全協(xié)議,數(shù)據(jù)安全性大幅提升 Ai-WB2系列模組支持 WPA3 安全協(xié)議
    的頭像 發(fā)表于 03-06 08:49 ?300次閱讀
    低價(jià)不貴!安信可WiFi+BLE<b class='flag-5'>模組</b><b class='flag-5'>Ai-WB2</b>系列

    RK3588開發(fā)板上部署DeepSeek-R1大模型的完整指南

    擴(kuò)展規(guī)劃、嵌入式適配等技術(shù)維度的突破。 RK3588作為瑞芯微推出的旗艦級(jí)芯片,憑借多核異構(gòu)計(jì)算能力以及強(qiáng)大的CPU、GPU和NPU性能,成為嵌入式AI應(yīng)用的理想平臺(tái)。DeepSeek
    發(fā)表于 02-27 16:45

    鴻蒙原生應(yīng)用開發(fā)也可以使用DeepSeek

    (現(xiàn)為Proxy AI,本文以CodeGPT代指)接入DeepSeek,一起來探索開發(fā)鴻蒙原生應(yīng)用的更多可能吧! 第一步:環(huán)境準(zhǔn)備 安裝DevEco Studio:如果尚未安裝DevEco Studio
    發(fā)表于 02-20 18:06

    添越智創(chuàng)基于 RK3588 開發(fā)板部署測(cè)試 DeepSeek 模型全攻略

    AI 技術(shù)日新月異的當(dāng)下,新的模型與突破不斷涌現(xiàn)。近期,DeepSeek(深度求索)模型以其卓越性能和親民成本,迅速在全球開發(fā)者圈子里引發(fā)熱議。作為一款強(qiáng)大的語言模型,DeepSeek
    發(fā)表于 02-14 17:42

    DeepSeek模型成功部署,物通博聯(lián)在 AI 賦能工業(yè)上持續(xù)探索、不斷前行

    近期,DeepSeek(深度求索)AI大模型在全球引發(fā)廣泛關(guān)注,其強(qiáng)大的自然語言處理和多模態(tài)分析能力,為各行各業(yè)帶來了全新的智能化想象空間。 DeepSeek選擇開源模型,允許開發(fā)者自
    的頭像 發(fā)表于 02-12 11:15 ?363次閱讀

    deepseek國產(chǎn)芯片加速 DeepSeek的國產(chǎn)AI芯片天團(tuán)

    ,從而紛紛繼續(xù)“卷”起來,效仿DeepSeek的“開源”模式。 對(duì)于DeepSeek本身,人們關(guān)注其如何在有限算力實(shí)現(xiàn)強(qiáng)大性能,更關(guān)注其在重重條令圍城之下的未來之路。而在最近,全世界的芯片廠商集體出動(dòng),紛紛宣布支持
    的頭像 發(fā)表于 02-10 15:07 ?2487次閱讀
    <b class='flag-5'>deepseek</b>國產(chǎn)芯片加速 <b class='flag-5'>DeepSeek</b>的國產(chǎn)<b class='flag-5'>AI</b>芯片天團(tuán)

    安信可Ai-WB2系列的優(yōu)勢(shì)是?一秒讀懂!

    ) 集成度 (內(nèi)置功能、接口類型等) 功耗與續(xù)航 、 尺寸與外觀 、 成本 等多個(gè)因素。 安信可Ai-WB2系列模組集成Wi-Fi&藍(lán)牙于一體,搭載BL602芯片作為核心處理器,支持Wi-Fi
    的頭像 發(fā)表于 12-13 18:16 ?603次閱讀

    Ai-WB2開發(fā)板做智能家居全彩LED小夜燈

    業(yè)余菜狗制作 大家是不是經(jīng)??吹礁鞣N彩色的小燈 bingbing的五顏六色很吸引人 今天用WB2開發(fā)板做了一個(gè)能加入HA的全彩LED小夜燈 來看看主要的教程 連接WiFi 先對(duì)Ai-Thinker-WB2/applications/protoco
    的頭像 發(fā)表于 11-13 14:03 ?543次閱讀
    用<b class='flag-5'>Ai-WB2</b>開發(fā)板做智能家居全彩LED小夜燈

    外設(shè)移植 安信可Ai-WB2+FPM383C指紋

    -M61-32S https://bbs.ai-thinker.com/forum.php?mod=viewthreadfromuid=15918 這里主要說一下移植 FPM383C 指紋到 Ai-WB2 模塊時(shí)遇到
    的頭像 發(fā)表于 10-29 14:54 ?473次閱讀
    外設(shè)移植 安信可<b class='flag-5'>Ai-WB2</b>+FPM383C指紋

    外設(shè)移植 安信可Ai-WB2-32S開發(fā)板+TM1637 NTP時(shí)鐘

    圖上方帖子里已經(jīng)有了,TM1637支持5V電壓,原貼用是的AI-M61-32S 3V3的供電,本次需要更改為AI-WB2支持的方式并用5V供電,主要是更改io以
    的頭像 發(fā)表于 09-24 14:29 ?548次閱讀
    外設(shè)移植 安信可<b class='flag-5'>Ai-WB2</b>-32S開發(fā)板+TM1637 NTP時(shí)鐘

    安信可Ai-WB2系列模組/開發(fā)板連接AWS亞馬遜云方法

    一、軟硬件的準(zhǔn)備二、亞馬遜云物模型建立三、連接亞馬遜云demo獲取以及配置四、硬件接線五、燒錄軟件的使用六、連接亞馬遜云七、聯(lián)系我們前言Ai-WB2系列模組是安信可科技開發(fā)的Wi-Fi&
    的頭像 發(fā)表于 07-05 08:23 ?683次閱讀
    安信可<b class='flag-5'>Ai-WB2</b>系列<b class='flag-5'>模組</b>/開發(fā)板連接AWS亞馬遜云方法

    Ai-WB2使用HomeAssistant-C庫接入HomeAssistant

    Ai-M61/62只用來連接MQTT太浪費(fèi)資源了,Ai-WB2更具性價(jià)比!
    的頭像 發(fā)表于 06-15 14:00 ?842次閱讀
    <b class='flag-5'>Ai-WB2</b>使用HomeAssistant-C庫接入HomeAssistant

    安信可Wi-Fi&amp;BLE模組WB2系列的特點(diǎn)概述

    Ai-WB2系列模組(下稱模組)是由安信可科技開發(fā)的Wi-Fi&BLE模組,該模組搭載BL602芯片作為核心處理器,支持Wi-Fi 802.
    的頭像 發(fā)表于 05-11 11:49 ?1068次閱讀

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品