0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于博流BL606P音视频开发板驱动LED数码管

芯片开放社区 来源:芯片开放社区 2023-07-20 10:58 次阅读

编辑语:

芯片开放社区(OCC)面向广大开发者推出应用实战系列内容,通过分享开发者实战开发案例,总结应用开发经验,梳理开发中的常见问题及解决方案,为后续参与的开发者提供更多参考与借鉴。

本文是关于开发者 swzswz基于BL606P-DVK开发板实战开发的系列文章中的一篇,主要介绍了驱动led数码管,后面还会持续更新社区开发者的测评内容,敬请期待!

01接线原理图

TM1638模块主要由三根线进行控制,分别是STB,CLK和DIO三个接口。现在用GPIO3,GPIO4以及GPIO5来进行控制。

a3e3ddea-26a8-11ee-962d-dac502259ad0.png

02程序

程序由两部分组成,tm1638和main主程序组成。

TM1638由头文件和c文件,分别如下:

tm1638头文件,主要定义三个接口控制以及log打印

tm1638头文件,主要定义三个接口控制以及log打印


#ifndef TM1638_H_
#define TM1638_H_


#define dio_l()         hal_gpio_output_low(&gpio_dio)
#define dio_h()        hal_gpio_output_high(&gpio_dio)


#define clk_l()         hal_gpio_output_low(&gpio_clk)
#define clk_h()        hal_gpio_output_high(&gpio_clk)


#define stb_l()         hal_gpio_output_low(&gpio_stb)
#define stb_h()        hal_gpio_output_high(&gpio_stb)


void init_tm1638(void);


void disp_led(uint8_t *dat);
void disp_log(void);


#endif

tm1638.c文件,主要定义主板和tm163模块进行控制,以及数码显示。

#include 
#include 
#include 
#include "app_main.h"
#include 




#include 
#include 
#include "tm1638.h"




gpio_dev_t gpio_stb = { GPIO_PIN_3, OUTPUT_PUSH_PULL, NULL };
gpio_dev_t gpio_clk= { GPIO_PIN_4, OUTPUT_PUSH_PULL, NULL };
gpio_dev_t gpio_dio = { GPIO_PIN_5, OUTPUT_PUSH_PULL, NULL };




uint8_t const tab[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F,0x77,0x7C,0x39,0x5E,0x79,0x71};
uint8_t ds_log[8]={0x40,0x7c,0x38,0x7d,0x3f,0x7d,0x73,0x40};


void tm1638_WriteDat(uint8_t dat)                        
{
uint8_t i;
for(i=0;i<8;i++)
{
clk_l();
if(dat&0X01)
{
dio_h();
}        
else
{
dio_l();
}
dat>>=1;
clk_h();
        }
}




void tm1638_WriteCmd(uint8_t cmd)                 
{
stb_l();
tm1638_WriteDat(cmd);
stb_h();
}




void tm1638_Write_Addr(uint8_t addr,uint8_t dat)                 
{
tm1638_WriteCmd(0x44);
stb_l();
tm1638_WriteDat(0xc0|addr);
tm1638_WriteDat(dat);
stb_h();
}




void tm1638_Write_LED(uint8_t LED_flag)                                         
{
uint8_t i;
for(i=0;i<8;i++)
{
if(LED_flag&(1<

main.c文件,给定程序主控制。




/*
 * Copyright (C) 2015-2020 Alibaba Group Holding Limited
 */




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




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


    board_yoc_init();
init_led();
init_tm1638();
    
    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=0;
}
while(1)
{
i++;
printf("zhanghui %d
",i);


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;
}

03效果

a408170a-26a8-11ee-962d-dac502259ad0.png

总体感觉还是很不错!

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • led
    led
    +关注

    关注

    237

    文章

    22450

    浏览量

    645879
  • 接口
    +关注

    关注

    33

    文章

    7640

    浏览量

    148496
  • 数码管
    +关注

    关注

    31

    文章

    1827

    浏览量

    89949
  • 音视频
    +关注

    关注

    4

    文章

    414

    浏览量

    29575
  • 开发板
    +关注

    关注

    25

    文章

    4430

    浏览量

    94016

原文标题:应用速递 | 博流BL606P音视频开发板+驱动led数码管

文章出处:【微信号:芯片开放社区,微信公众号:芯片开放社区】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    基于博流BL606P音视频开发板的ADC Key按钮例程

    本文是关于开发者 kit7828 基于BL606P-DVK开发板实战开发的系列文章中的第三篇,主要介绍了ADC Key按钮例程,后面还会持续更新该
    的头像 发表于 05-22 11:09 843次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>的ADC Key按钮例程

    基于博流BL606P音视频开发板开发环境搭建及例程测试

    本文是关于开发者 zhanghui 基于BL606P-DVK开发板实战开发的系列文章中的第一篇,主要介绍了开发环境搭建及例程测试,后面还会持
    发表于 06-09 10:04 521次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>的<b class='flag-5'>开发</b>环境搭建及例程测试

    博流BL606P音视频开发板:(三)ADC测试

    本文是关于开发者 qinyunti 基于BL606P-DVK开发板实战开发的系列文章中的一篇,主要介绍了ADC测试,后面还会持续更新该开发
    的头像 发表于 04-10 10:26 498次阅读

    基于博流BL606P音视频开发板的智能音箱测试

    本文是关于开发者 qinyunti 基于BL606P-DVK开发板实战开发的系列文章中的一篇,主要介绍了智能音箱测试,后面还会持续更新该开发
    的头像 发表于 05-09 11:22 587次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>的智能音箱测试

    博流BL606P音视频开发板:HelloWord Demo运行及跳线帽设置

    本文是关于开发者 kit7828 基于BL606P-DVK开发板实战开发的系列文章中的第一篇,主要介绍了环境搭建及HelloWord Demo运行,后面还会持续更新该
    的头像 发表于 05-15 15:25 653次阅读
    博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>:HelloWord Demo运行及跳线帽设置

    基于博流BL606P音视频开发板实现RGB点灯

    本文是关于开发者 kit7828 基于BL606P-DVK开发板实战开发的系列文章中的第二篇,主要介绍了BL606P实现RGB点灯,后面还会
    的头像 发表于 05-18 10:57 610次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>实现RGB点灯

    博流BL606P音视频开发板CKLink无法下载的解决办法

    本文是关于开发者 kit7828 基于BL606P-DVK开发板实战开发的系列文章中的第五篇,主要介绍了CKLink无法下载的解决办法,后面还会持续更新该
    的头像 发表于 05-29 10:59 497次阅读
    博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>CKLink无法下载的解决办法

    基于博流BL606P音视频开发板的智能音箱系统开发方案

    本文是关于开发者 乔帮主 分享了在Docker环境下,基于博流BL606P音视频开发板,进行智能音箱系统搭建的完成过程。按照文中步骤操作后,你将得到一个可以进行对话的智能音箱。
    的头像 发表于 06-06 17:11 2080次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>的智能音箱系统<b class='flag-5'>开发</b>方案

    基于博流BL606P音视频开发板的蓝牙音频测试

    本文是关于开发者 zhanghui 基于BL606P-DVK开发板实战开发的系列文章中的第三篇,主要介绍了蓝牙音频测试,后面还会持续更新该开发
    的头像 发表于 06-25 09:42 349次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>的蓝牙音频测试

    基于博流BL606P音视频开发板驱动LED数码管

    本文是关于开发者 zhanghui 基于BL606P-DVK开发板实战开发的系列文章中的第四篇,主要介绍了LED数据管模块TM1638
    的头像 发表于 06-29 09:49 273次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b><b class='flag-5'>驱动</b><b class='flag-5'>LED</b><b class='flag-5'>数码管</b>

    基于博流BL606P音视频开发板的CAN扩展模块收发测试

    本文是关于开发者 zhanghui 基于BL606P-DVK开发板实战开发的系列文章中的第五篇,主要介绍了CAN扩展模块收发测试,后面还会持续更新社区
    的头像 发表于 07-03 10:06 409次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>的CAN扩展模块收发测试

    基于BL606P-DVK音视频开发板的实战案例

    本文是关于开发者 乘简 基于BL606P-DVK开发板实战开发的系列文章中的第五篇,主要介绍了CAN扩展模块收发测试!
    发表于 07-06 10:51 344次阅读

    博流BL606P音视频开发板驱动MAX7219点阵模组

    本文是关于开发者 乘简 基于BL606P-DVK开发板实战开发的系列文章中的一篇,主要介绍了驱动MAX7219点阵模组,后面还会持续更新社区
    的头像 发表于 07-10 10:43 537次阅读
    博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>:<b class='flag-5'>驱动</b>MAX7219点阵模组

    基于博流BL606P音视频开发板的GPIO点灯教程

    本文是关于开发者 swzswz 基于BL606P-DVK开发板实战开发的系列文章中的一篇,主要介绍了GPIO点灯,后面还会持续更新社区开发
    的头像 发表于 07-17 10:54 448次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>的GPIO点灯教程

    基于博流BL606P音视频开发板的音响测试

    本文是关于开发者 swzswz 基于BL606P-DVK开发板实战开发的系列文章中的一篇,主要介绍了音响测试,后面还会持续更新社区开发者的测
    的头像 发表于 07-25 09:56 341次阅读
    基于博流<b class='flag-5'>BL606P</b><b class='flag-5'>音视频</b><b class='flag-5'>开发板</b>的音响测试