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

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

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

基于博流BL606P音視頻開發(fā)板的CAN擴展模塊收發(fā)測試

芯片開放社區(qū) ? 來源:芯片開放社區(qū) ? 2023-07-03 10:06 ? 次閱讀

編輯語:

芯片開放社區(qū)(OCC)面向廣大開發(fā)者推出應(yīng)用實戰(zhàn)系列內(nèi)容,通過分享開發(fā)者實戰(zhàn)開發(fā)案例,總結(jié)應(yīng)用開發(fā)經(jīng)驗,梳理開發(fā)中的常見問題及解決方案,為后續(xù)參與的開發(fā)者提供更多參考與借鑒。

本文是關(guān)于開發(fā)者 zhanghui基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第五篇,主要介紹了CAN擴展模塊收發(fā)測試,后面還會持續(xù)更新社區(qū)開發(fā)者的測評內(nèi)容,敬請期待!

本計劃是使用這款開發(fā)板來播放CAN通信控制的語音播放功能的,對語音這塊還不太會用,下面測試下擴展CAN通信模塊收發(fā)測試功能。

01硬件部分

1.1 使用到了硬件上的LCD接口

827bc372-1945-11ee-962d-dac502259ad0.png

1.2 外擴CAN模塊部分

829ea338-1945-11ee-962d-dac502259ad0.png

1.3 硬件連接圖

82c2d834-1945-11ee-962d-dac502259ad0.jpg

02程序部分

2.1 端口初始化部分

gpio_dev_t gpio_2515_so = { GPIO_PIN_24, INPUT_PULL_UP, NULL };  //PIO24/LCD-PWM
gpio_dev_t gpio_2515_si = { GPIO_PIN_26, OUTPUT_PUSH_PULL, NULL }; //PIO26/LCD-DIO
gpio_dev_t gpio_2515_sck= { GPIO_PIN_27, OUTPUT_PUSH_PULL, NULL };  //PIO27/LCD-CLK
gpio_dev_t gpio_2515_cs = { GPIO_PIN_28, OUTPUT_PUSH_PULL, NULL };   //PIO28/LCD-CS
gpio_dev_t gpio_2515_int = { GPIO_PIN_25, IRQ_MODE, NULL };  //PIO25

#define mcp2515_clk_l()         hal_gpio_output_low(&gpio_2515_sck)
#define mcp2515_clk_h()        hal_gpio_output_high(&gpio_2515_sck)

#define mcp2515_si_l()         hal_gpio_output_low(&gpio_2515_si )
#define mcp2515_si_h()        hal_gpio_output_high(&gpio_2515_si )

#define mcp2515_cs_l()         hal_gpio_output_low(&gpio_2515_cs )
#define mcp2515_cs_h()        hal_gpio_output_high(&gpio_2515_cs )

csi_pin_set_mux( GPIO_PIN_24, PIN_FUNC_GPIO);
csi_pin_set_mux( GPIO_PIN_25, PIN_FUNC_GPIO);
csi_pin_set_mux( GPIO_PIN_26, PIN_FUNC_GPIO);
csi_pin_set_mux( GPIO_PIN_27, PIN_FUNC_GPIO);
csi_pin_set_mux( GPIO_PIN_28, PIN_FUNC_GPIO);

hal_gpio_init(&gpio_2515_so);
hal_gpio_init(&gpio_2515_si);
hal_gpio_init(&gpio_2515_sck);
hal_gpio_init(&gpio_2515_cs);
hal_gpio_init(&gpio_2515_int);
hal_gpio_output_low(&gpio_2515_si);
hal_gpio_output_low(&gpio_2515_sck);
hal_gpio_output_low(&gpio_2515_cs);

hal_gpio_enable_irq(&gpio_2515_int, IRQ_TRIGGER_FALLING_EDGE, can_eint, NULL);

2.2 main.c

#include 
#include 
#include 
#include "app_main.h"
#include 
#include "led.h"
#include "tm1638.h"
#include "mcp2515.h"

int main(int argc, char *argv[])
{
int i=0;
uint8_t dispbuf[8];
uint32_t cnt=0;
uint8_t cantx_buf[8];

    board_yoc_init();
init_led();
init_tm1638();
init_mcp2515();
    
    printf("
app start core clock %d........
", soc_get_cur_cpu_freq());

disp_log();
aos_msleep(2000);
    
    //codec_output_init();
    //codec_input_init();
    //codec_loop_init();
for(i=0;i<8;i++)
{
dispbuf[i]=0;
}
while(1)
{
cantx_buf[0]=i;
cantx_buf[1]=i+1;
cantx_buf[2]=i+2;
cantx_buf[3]=i+3;
cantx_buf[4]=i;
cantx_buf[5]=i+1;
cantx_buf[6]=i+2;
cantx_buf[7]=i+3;

CAN_Send(cantx_buf);
printf("can tx data :  %02x %02x %02x %02x %02x %02x %02x %02x
",cantx_buf[0],cantx_buf[1],cantx_buf[2],cantx_buf[3],cantx_buf[4],cantx_buf[5],cantx_buf[6],cantx_buf[7]);
i++;
if(i>250)
{
i=0;
}


set_ledr();
clr_ledg();
clr_ledb();
aos_msleep(100);

clr_ledr();
set_ledg();
clr_ledb();
aos_msleep(100);

clr_ledr();
clr_ledg();
set_ledb();
aos_msleep(100);

clr_ledr();
clr_ledg();
clr_ledb();
aos_msleep(100);

if(cnt>999)
{
cnt=0;
}
cnt++;
dispbuf[4]=cnt/1000;
dispbuf[5]=(cnt%1000)/100;
dispbuf[6]=((cnt%1000)%100)/10;
dispbuf[7]=((cnt%1000)%100)%10;
disp_led(dispbuf);
}
    return 0;
}

2.3 can接收部分程序

void can_eint(void *args)
{
uint8_t rx_sta;
rx_sta=CAN_ReadINTF(); 
if(rx_sta&0x01)
{
CAN_SetINTF(0x00);
CAN_RecRXB0(canrx_buf);
printf("can rx data : %02x %02x %02x %02x %02x %02x %02x %02x
",canrx_buf[0],canrx_buf[1],canrx_buf[2],canrx_buf[3],canrx_buf[4],canrx_buf[5],canrx_buf[6],canrx_buf[7]);

}
}

03運行結(jié)果

CAN軟件和串口收發(fā)數(shù)據(jù)顯示

82e5ad82-1945-11ee-962d-dac502259ad0.png

審核編輯:湯梓紅

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

    關(guān)注

    34

    文章

    4363

    瀏覽量

    166184
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    57

    文章

    2663

    瀏覽量

    462435
  • 音視頻
    +關(guān)注

    關(guān)注

    4

    文章

    452

    瀏覽量

    29781
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    4771

    瀏覽量

    96159
  • 通信模塊
    +關(guān)注

    關(guān)注

    2

    文章

    137

    瀏覽量

    33013

原文標題:應(yīng)用速遞 | 博流BL606P音視頻開發(fā)板:(5)CAN擴展模塊收發(fā)測試

文章出處:【微信號:芯片開放社區(qū),微信公眾號:芯片開放社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    基于BL606P音視頻開發(fā)板的ADC Key按鈕例程

    本文是關(guān)于開發(fā)者 kit7828 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第三篇,主要介紹了ADC Key按鈕例程,后面還會持續(xù)更新該
    的頭像 發(fā)表于 05-22 11:09 ?1051次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>的ADC Key按鈕例程

    基于BL606P音視頻開發(fā)板開發(fā)環(huán)境搭建及例程測試

    本文是關(guān)于開發(fā)者 zhanghui 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第一篇,主要介紹了開發(fā)環(huán)境搭建及例程
    發(fā)表于 06-09 10:04 ?678次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>的<b class='flag-5'>開發(fā)</b>環(huán)境搭建及例程<b class='flag-5'>測試</b>

    BL606P音視頻開發(fā)板:(三)ADC測試

    本文是關(guān)于開發(fā)者 qinyunti 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的一篇,主要介紹了ADC測試,后面還會持續(xù)更新該
    的頭像 發(fā)表于 04-10 10:26 ?683次閱讀

    基于BL606P音視頻開發(fā)板的智能音箱測試

    本文是關(guān)于開發(fā)者 qinyunti 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的一篇,主要介紹了智能音箱測試,后面還會持續(xù)更新該
    的頭像 發(fā)表于 05-09 11:22 ?804次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>的智能音箱<b class='flag-5'>測試</b>

    基于BL606P音視頻開發(fā)板通過藍牙進行WIFI配網(wǎng)測試

    本文是關(guān)于開發(fā)者 qinyunti 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的一篇,主要介紹了通過藍牙進行WIFI配網(wǎng)測試,后面還
    的頭像 發(fā)表于 05-10 16:59 ?936次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>通過藍牙進行WIFI配網(wǎng)<b class='flag-5'>測試</b>

    BL606P音視頻開發(fā)板:HelloWord Demo運行及跳線帽設(shè)置

    本文是關(guān)于開發(fā)者 kit7828 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第一篇,主要介紹了環(huán)境搭建及HelloWord Demo運行,后面還會持續(xù)更新該
    的頭像 發(fā)表于 05-15 15:25 ?936次閱讀
    <b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>:HelloWord Demo運行及跳線帽設(shè)置

    基于BL606P音視頻開發(fā)板實現(xiàn)RGB點燈

    本文是關(guān)于開發(fā)者 kit7828 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第二篇,主要介紹了BL606P實現(xiàn)RGB點燈,后面還會
    的頭像 發(fā)表于 05-18 10:57 ?891次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>實現(xiàn)RGB點燈

    BL606P音視頻開發(fā)板CKLink無法下載的解決辦法

    本文是關(guān)于開發(fā)者 kit7828 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第五篇,主要介紹了CKLink無法下載的解決辦法,后面還會持續(xù)更新該
    的頭像 發(fā)表于 05-29 10:59 ?753次閱讀
    <b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>CKLink無法下載的解決辦法

    基于BL606P音視頻開發(fā)板的智能音箱系統(tǒng)開發(fā)方案

    本文是關(guān)于開發(fā)者 喬幫主 分享了在Docker環(huán)境下,基于BL606P音視頻開發(fā)板,進行智能
    的頭像 發(fā)表于 06-06 17:11 ?2475次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>的智能音箱系統(tǒng)<b class='flag-5'>開發(fā)</b>方案

    基于BL606P音視頻開發(fā)板的藍牙音頻測試

    本文是關(guān)于開發(fā)者 zhanghui 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第三篇,主要介紹了藍牙音頻測試,后面還會持續(xù)更新該
    的頭像 發(fā)表于 06-25 09:42 ?536次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>的藍牙音頻<b class='flag-5'>測試</b>

    基于BL606P音視頻開發(fā)板驅(qū)動LED數(shù)碼管

    本文是關(guān)于開發(fā)者 zhanghui 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第四篇,主要介紹了LED數(shù)據(jù)管模塊TM1638驅(qū)動的
    的頭像 發(fā)表于 06-29 09:49 ?406次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>驅(qū)動LED數(shù)碼管

    基于BL606P-DVK音視頻開發(fā)板的實戰(zhàn)案例

    本文是關(guān)于開發(fā)者 乘簡 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的第五篇,主要介紹了CAN擴展
    發(fā)表于 07-06 10:51 ?508次閱讀

    基于BL606P音視頻開發(fā)板的GPIO點燈教程

    本文是關(guān)于開發(fā)者 swzswz 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的一篇,主要介紹了GPIO點燈,后面還會持續(xù)更新社區(qū)開發(fā)
    的頭像 發(fā)表于 07-17 10:54 ?599次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>的GPIO點燈教程

    基于BL606P音視頻開發(fā)板驅(qū)動LED數(shù)碼管

    本文是關(guān)于開發(fā)者 swzswz 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的一篇,主要介紹了驅(qū)動led數(shù)碼管,后面還會持續(xù)更新社區(qū)開發(fā)
    的頭像 發(fā)表于 07-20 10:58 ?477次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>驅(qū)動LED數(shù)碼管

    基于BL606P音視頻開發(fā)板的音響測試

    本文是關(guān)于開發(fā)者 swzswz 基于BL606P-DVK開發(fā)板實戰(zhàn)開發(fā)的系列文章中的一篇,主要介紹了音響測試,后面還會持續(xù)更新社區(qū)
    的頭像 發(fā)表于 07-25 09:56 ?510次閱讀
    基于<b class='flag-5'>博</b><b class='flag-5'>流</b><b class='flag-5'>BL606P</b><b class='flag-5'>音視頻</b><b class='flag-5'>開發(fā)板</b>的音響<b class='flag-5'>測試</b>