回答

收藏

[评测分享] 【RISC-V 沁恒微-CH585M-R1开发板试用体验】+上电点灯

#板卡评测 #板卡评测 715 人阅读 | 0 人回复 | 2025-06-23

本帖最后由 yinwuqing 于 2025-6-24 00:00 编辑


一、概述

       收到开发板有段时间了,前段时间由于感冒了,因此没来及即时发帖。今天来分享一下开箱点灯的过程。
      CH585是集成BLE无线通讯和高速USB及NFC的RISC-V MCU/SoC。片上集成了2Mbps低功耗蓝牙BLE通讯模块、USB全速控制器及收发器、USB高速控制器及收发器(480Mbps)、NFC近场通信无线接口、段式LCD驱动模块、LED点阵屏接口、2个SPI、4个串口、14路ADC、触摸按键检测模块等丰富的外设资源。CH585评估板配有以下资源:
①. 开关 S1 :供电开关,用于切断或连接外部5V供电或USB供电。
②. 按键 RESET :复位按键,用于外部手动复位(注意需要开启芯**动复位功能)。
③. 按键 DOWNLOAD :下载按键,在 ISP 下载时使用。
④. 两个USB 接口:主芯片的USB 通讯接口:一个高速USB;一个全速USB,具有Host 和Device功能。
⑤. 插排P2/P3:包括芯片功能、电源、LED灯负载操作引脚。
⑥. NFC和BLE天线:负责无线信号的传输。


二、资料获取


       关于该板的SDK包,我们可以通过沁恒官网获取,用户跳转https://www.wch.cn/products/CH585.html获取CH585的开发资料。当然包括数据手册,以及官网提供的IDE:MounRiver Studio(MRS)。软件包CH585EVT.ZIP中的PUB目录下也包含了该开发板的原理图。


三、实物开箱
      
       拿到的开发板实物如下,板子天线射频部分电路占板空间比较大,整块板子采用PCB天线,




       背面没有设计其它小元器件,PCB走线清晰,过孔连线非常规范、标准。


四、环境搭建

      
      首先是安装“MounRiver Studio”开发工具,最好是最新版本的,笔者使用的是v1.92版。其界面构造与Eclipse相似,用起来也比较顺手;其次需要准备好“CH585EVT.ZIP”资料包,并解压到一个无中文字符的简短路径下;最后需要准备ISP下载工具,用户可通过链接:WCHISPTool_Setup.exe获取。同样也建议更新到最新版本,笔者这里采用的是v3.70。
       准备好上述工作后,进入到“\EVT\EXAM\LED”目录下,直接双击打开“LED.wvproj”文件,然后点击编译图标,即完成工程编译。


五、代码编写

      
      根据PUB文件夹下的“CH585SCH”原理图可知,板上的LED0、LED1的管脚分布,这里笔者自备了一块RGB灯板,与板上的逻辑电平刚好相反,板上的LED0、LED1是低电平有效,而RGB灯板的逻辑是高电平有效。


      这里用到PA0、PA1、PA2、PA3、PA5即对应LED0~LED4,在LED工程中的main.c中编写如下:
  1. #include "CH58x_common.h"
  2. #include "ch58x_drv_ledc.h"

  3. void RGB_Led_Contol(uint8_t color)
  4. {
  5.     switch(color)
  6.     {
  7.         case 0:
  8.             GPIOA_SetBits(GPIO_Pin_2);
  9.             GPIOA_ResetBits(GPIO_Pin_3);
  10.             GPIOA_ResetBits(GPIO_Pin_5);
  11.             break;
  12.         case 1:
  13.             GPIOA_ResetBits(GPIO_Pin_2);
  14.             GPIOA_SetBits(GPIO_Pin_3);
  15.             GPIOA_ResetBits(GPIO_Pin_5);
  16.             break;
  17.         case 2:
  18.             GPIOA_ResetBits(GPIO_Pin_2);
  19.             GPIOA_ResetBits(GPIO_Pin_3);
  20.             GPIOA_SetBits(GPIO_Pin_5);
  21.             break;
  22.         case 3:
  23.             GPIOA_SetBits(GPIO_Pin_2);
  24.             GPIOA_SetBits(GPIO_Pin_3);
  25.             GPIOA_SetBits(GPIO_Pin_5);
  26.             break;
  27.         default:
  28.             GPIOA_ResetBits(GPIO_Pin_2);
  29.             GPIOA_ResetBits(GPIO_Pin_3);
  30.             GPIOA_ResetBits(GPIO_Pin_5);
  31.             break;
  32.     }
  33. }

  34. int main()
  35. {
  36.     HSECFG_Capacitance(HSECap_18p);
  37.     SetSysClock(CLK_SOURCE_HSE_PLL_62_4MHz);
  38.         
  39.     //LED 0
  40.     GPIOA_ModeCfg( GPIO_Pin_0, GPIO_ModeOut_PP_5mA );
  41.     //LED 1
  42.     GPIOA_ModeCfg( GPIO_Pin_1, GPIO_ModeOut_PP_5mA );
  43.     //LED 2
  44.     GPIOA_ModeCfg( GPIO_Pin_2, GPIO_ModeOut_PP_5mA );
  45.     //LED 3
  46.     GPIOA_ModeCfg( GPIO_Pin_3, GPIO_ModeOut_PP_5mA );
  47.     //lED 4
  48.     GPIOA_ModeCfg( GPIO_Pin_5 , GPIO_ModeOut_PP_5mA );

  49.     while(1)
  50.     {
  51.         GPIOA_ResetBits(GPIO_Pin_0);
  52.         GPIOA_SetBits(GPIO_Pin_1);
  53.         DelayMs(100);
  54.         GPIOA_SetBits(GPIO_Pin_0);
  55.         GPIOA_ResetBits(GPIO_Pin_1);
  56.         DelayMs(100);
  57.         GPIOA_ResetBits(GPIO_Pin_0);
  58.         GPIOA_SetBits(GPIO_Pin_1);
  59.         DelayMs(100);
  60.         GPIOA_SetBits(GPIO_Pin_0);
  61.         GPIOA_SetBits(GPIO_Pin_1);

  62.         RGB_Led_Contol(0);
  63.         DelayMs(300);
  64.         RGB_Led_Contol(1);
  65.         DelayMs(300);
  66.         RGB_Led_Contol(2);
  67.         DelayMs(300);
  68.         RGB_Led_Contol(3);
  69.         DelayMs(300);
  70.     }
  71. }
复制代码
编译ok,即在LED工程文件夹下的“obj”文件夹下生成编译后的“LED.hex”文件。



六、硬件连接

      
        硬件接口实物连线如下图所示:


      板上的LED0、LED1是悬空在板上的,需要自行使用杜邦线将P2排针上的LED0与PA0、LED1与PA1相连接。再者需要采用ISP下载hex文件,因此需要将PB22管脚与GND短接(在没有上电前短接后,再上电,此时ISP功能才能正常识别到下载接口)。


     按照《CH585评估板说明书.pdf》操作,自动搜索到下载接口,加载编译后生成的hex文件,点击“下载”即可完成程序更新。


七、点灯效果

      
      程序更新完后,板子自动断开ISP下载工具,更新后的闪灯效果正如程序中所设定的。






分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

软件工程师
40453 积分
34 主题
+ 关注
热门推荐
关闭

站长推荐上一条 /3 下一条