【GD32评测】+ 3、arduino扩展板驱动LED

[复制链接]
961|25
手机看帖
扫描二维码
随时随地手机跟帖
tlled|  楼主 | 2020-5-6 08:40 | 显示全部楼层 |阅读模式
     为了测试方便,设计了Arduino扩展接口,方便学习使用。

    一、扩展板

     扩展了常用的IIC,SPI,UART,RS485,CAN,ADC和并口LCD等
    1.jpg
    2.jpg
    和GD32E231开发板的连接
    3.jpg
    整体图片,有些器件还没有焊接完成,大部分都有了。
    4.jpg

    二、测试LED灯

    使用扩展板点亮LED灯。
   2.1、电路图
    01.png
    02.png
    03.png
     对用开发板的接口
    04.png
    三、驱动程序

    3.1、驱动主要部分程序

void LED_Init(void)
{
        /* enable the LED1 GPIO clock */
    rcu_periph_clock_enable(RCU_GPIOA);
                rcu_periph_clock_enable(RCU_GPIOB);
    /* configure LED1 GPIO port */
    gpio_mode_set(GPIOA, GPIO_MODE_OUTPUT, GPIO_PUPD_NONE, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_11|GPIO_PIN_12);
    gpio_output_options_set(GPIOA, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_2|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_11|GPIO_PIN_12);
       
                gpio_mode_set(GPIOB, GPIO_MODE_OUTPUT, GPIO_PUPD_PULLUP, GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5|
                                                                                                                                                                                                                                                 GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_12);
       
                gpio_output_options_set(GPIOB, GPIO_OTYPE_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5|
                                                                                                                                                                                                                                                         GPIO_PIN_6|GPIO_PIN_7|GPIO_PIN_8|GPIO_PIN_12);

    /* reset LED1 GPIO pin */
    gpio_bit_reset(GPIOA,GPIO_PIN_7);
                gpio_bit_reset(GPIOA,GPIO_PIN_2);                //A2=0
                gpio_bit_reset(GPIOA,GPIO_PIN_1);                //A0=0
                gpio_bit_reset(GPIOB,GPIO_PIN_12);                //PB12=0
}

void write_busdat(uint8_t bus)
{
        uint16_t gb_sta;
        gb_sta=gpio_output_port_get(GPIOB);
        gb_sta=gb_sta&(~0x1fb);
        gb_sta=gb_sta|((bus&0x3f)<<3)|(bus>>7)|((bus>>5)&0x02);
        gpio_port_write(GPIOB, gb_sta);
}

void led_drv(uint8_t ld)
{
        write_busdat(ld);
        led_ctl_l();
        led_ctl_h();
}


void led_test(void)
{
        delay_1ms(100);
        led_drv(~0x01);
        delay_1ms(100);
        led_drv(~0x02);
        delay_1ms(100);
        led_drv(~0x04);
        delay_1ms(100);
        led_drv(~0x08);
}

    四、测试结果

   LED灯轮询点亮
    100.gif   

使用特权

评论回复
coshi| | 2020-6-1 18:06 | 显示全部楼层
非常感谢楼主分享

使用特权

评论回复
zljiu| | 2020-6-1 18:06 | 显示全部楼层
板子很漂亮啊

使用特权

评论回复
wiba| | 2020-6-1 18:06 | 显示全部楼层
调试过程顺利吗

使用特权

评论回复
gygp| | 2020-9-5 14:31 | 显示全部楼层
           

使用特权

评论回复
chenci2013| | 2020-9-5 14:31 | 显示全部楼层
有工程文件吗   

使用特权

评论回复
biechedan| | 2020-9-5 14:32 | 显示全部楼层
配套的板子吗?      

使用特权

评论回复
isseed| | 2020-9-5 14:33 | 显示全部楼层
         

使用特权

评论回复
xietingfeng| | 2020-9-5 14:33 | 显示全部楼层
这个性能怎么样      

使用特权

评论回复
suzhanhua| | 2020-9-5 14:34 | 显示全部楼层
GD32也可以使用吗   

使用特权

评论回复
mituzu| | 2020-9-5 14:34 | 显示全部楼层
方便学习使用。   

使用特权

评论回复
mituzu| | 2020-9-5 14:34 | 显示全部楼层
方便学习使用。   

使用特权

评论回复
hellosdc| | 2020-9-5 14:34 | 显示全部楼层
这个板子在哪里购买的呢  

使用特权

评论回复
uiint| | 2020-9-5 14:35 | 显示全部楼层
Arduino扩展接口?

使用特权

评论回复
chenci2013| | 2020-9-5 14:35 | 显示全部楼层
看着不错呢。      

使用特权

评论回复
gygp| | 2020-9-5 14:35 | 显示全部楼层
谢谢楼主分享的资料了。  

使用特权

评论回复
suzhanhua| | 2020-9-5 14:35 | 显示全部楼层
GD32也兼容吗   

使用特权

评论回复
xietingfeng| | 2020-9-5 14:35 | 显示全部楼层
常用的IIC,SPI,UART,RS485,CAN,ADC和并口LCD都有了。   

使用特权

评论回复
mituzu| | 2020-9-5 14:35 | 显示全部楼层
测试方便多了。         

使用特权

评论回复
isseed| | 2020-9-5 14:35 | 显示全部楼层
谢谢楼主分享了。      

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

125

主题

689

帖子

6

粉丝