没有对应芯片手册,不知道哪些IO口可以控,测试demo

 

复制代码
//sdk\apps\earphone\include\app_config.h
//////////↓↓↓↓↓↓↓↓↓↓code snippet from xwh↓↓↓↓↓↓↓↓↓↓////////////////////
#define LED0_IO IO_PORTA_01
#define LED0_ONOFF(x) do{gpio_set_pull_down(   LED0_IO, 0);\
                         gpio_set_pull_up(     LED0_IO, 0);\
                         gpio_direction_output(LED0_IO, x);}while(0)
#define LED1_IO IO_PORTA_02
#define LED1_ONOFF(x) do{gpio_set_pull_down(   LED1_IO, 0);\
                         gpio_set_pull_up(     LED1_IO, 0);\
                         gpio_direction_output(LED1_IO, x);}while(0)
#define LED2_IO IO_PORTA_03
#define LED2_ONOFF(x) do{gpio_set_pull_down(   LED2_IO, 0);\
                         gpio_set_pull_up(     LED2_IO, 0);\
                         gpio_direction_output(LED2_IO, x);}while(0)
//////////↑↑↑↑↑↑↑↑↑↑code snippet from xwh↑↑↑↑↑↑↑↑↑↑////////////////////

//sdk\apps\earphone\include\app_main.h
typedef struct _APP_VAR {
//...
    //////////↓↓↓↓↓↓↓↓↓↓code snippet from xwh↓↓↓↓↓↓↓↓↓↓////////////////////
    u8 mutex_var0;
    u8 led0_flash;
    u8 led1_flash;
    u8 led2_flash;
    //////////↑↑↑↑↑↑↑↑↑↑code snippet from xwh↑↑↑↑↑↑↑↑↑↑////////////////////
} APP_VAR;

//sdk\apps\earphone\board\br36\board_ac700n_demo.c
//////////↓↓↓↓↓↓↓↓↓↓code snippet from xwh↓↓↓↓↓↓↓↓↓↓////////////////////
#include "app_main.h"
void delay_execute_func(void*priv)
{
    static unsigned char cnt0;cnt0++;cnt0%=2;
    if(app_var.led0_flash)
    {
        printfbl("cnt0:%d\n",cnt0);
        LED0_ONOFF(cnt0);
    }
    if(app_var.led1_flash)
    {
        printfbl("cnt0:%d\n",cnt0);
        LED1_ONOFF(cnt0);
    }
    if(app_var.led2_flash)
    {
        printfbl("cnt0:%d\n",cnt0);
        LED2_ONOFF(cnt0);
    }
    printfr("led0_flash:%d,led1_flash:%d,led2_flash:%d\n",app_var.led0_flash,app_var.led1_flash,app_var.led2_flash);
}
//////////↑↑↑↑↑↑↑↑↑↑code snippet from xwh↑↑↑↑↑↑↑↑↑↑////////////////////
void board_init()
{
//...
//////////↓↓↓↓↓↓↓↓↓↓code snippet from xwh↓↓↓↓↓↓↓↓↓↓////////////////////
    u16 timer_id=0;
    if(!timer_id)
    {
        timer_id=sys_timer_add(NULL,delay_execute_func,1500);
        printf("bg color 底色\n");
        for(u8 i=40;i<48;i++)
        {
            //font
            printf("\e[%dm                                                                   %d\e[0m不加粗\n",i,i);
            printf("\e[1;%dm                                                                   %d\e[0m  加粗\n",i,i);
        }
    }
//////////↑↑↑↑↑↑↑↑↑↑code snippet from xwh↑↑↑↑↑↑↑↑↑↑////////////////////
}

//sdk\apps\earphone\key_event_deal.c
//////////↓↓↓↓↓↓↓↓↓↓code snippet from xwh↓↓↓↓↓↓↓↓↓↓////////////////////
#include "asm/pwm_led.h"
u8 key_value_bak;
void delay_change_led_mode(void *priv)
{
    static unsigned char pwmled_mode=PWM_LED_MODE_START;
    if(pwmled_mode>=PWM_LED_MODE_END){
        pwmled_mode=PWM_LED_MODE_START;
    }
    else
    {
        if((*((u8*)priv))>=11&&(*((u8*)priv))<=20)
        {
            pwmled_mode=*((u8*)priv);
        }
        else
        {
            switch (*((u8*)priv))
            {
            case 9:
                pwmled_mode--;
                break;
            case 10:
                pwmled_mode++;
                break;
            default:
                break;
            }
        }
        printfc("pwmled_mode:%d\n",pwmled_mode);
        pwm_led_mode_set(pwmled_mode);
        app_var.mutex_var0=1;
    }
}
//////////↑↑↑↑↑↑↑↑↑↑code snippet from xwh↑↑↑↑↑↑↑↑↑↑////////////////////
int app_earphone_key_event_handler(struct sys_event *event)
{
//////////↓↓↓↓↓↓↓↓↓↓code snippet from xwh↓↓↓↓↓↓↓↓↓↓////////////////////
    key_value_bak=key->value;
    sys_timeout_add(&key_value_bak,delay_change_led_mode,100);
    // return;
    switch (key_value_bak)
    {
    case 6:
        app_var.led0_flash=!app_var.led0_flash;
        printfy("KEY 6\n");
        break;
    case 7:
        printfy("KEY 7\n");
        app_var.led1_flash=!app_var.led1_flash;
        break;
    case 8:
        printfy("KEY 8\n");
        app_var.led2_flash=!app_var.led2_flash;
        break;
    default:
        break;
    }
//////////↑↑↑↑↑↑↑↑↑↑code snippet from xwh↑↑↑↑↑↑↑↑↑↑////////////////////
//...
}
复制代码

 

posted @   败人两字非傲即惰  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
历史上的今天:
2023-04-25 (隐式)自动类型转换
2023-04-25 为什么char*a[]是指针数组,char(*a)[]是数组指针?二者结合顺序不是一样的吗?
2023-04-25 VMware kali2023 桥接模式 联网 局域网主机发现
2023-04-25 地址&a和首地址&a[0]的区别
点击右上角即可分享
微信分享提示