目录

CDK开发环境介绍

CDK全称C-SKY Development Kit, 是平头哥推出的, 支持平头哥自研指令集C-SKY架构和RISC-V架构的芯片的集成开发环境, 为开发者提供统一的图形开发界面, 帮助开发者进行应用开发. 这篇说明是为了让CDK用户能快速上手使用SDK运行示例代码.

下载, 安装和运行

  • CDK最新版本下载地址 https://occ.t-head.cn/community/download 点击工具->集成开发环境CDK
  • 当前版本为 V2.10.5, 大小 959.91MB, 安装需要 3.64 GB 空间
  • 直接解压缩后运行setup.exe安装, 建议使用默认路径D:\C-Sky\CDK, 如果C盘空间充足, 也可以使用C:\C-Sky\CDK. 注意路径中不能包含中文
  • 安装结束后可以在Windows程序菜单中找到CDK, 直接点击可以启动CDK

打开项目

因为CDK本身不带版本管理工具, 所以需要自行检出wm-sdk-w806项目(Github地址, Gitee地址), 命令如下

# github
git clone https://github.com/IOsetting/wm-sdk-w806.git
# 或者使用 gitee
git clone https://gitee.com/iosetting/wm-sdk-w806.git

在CDK中,

  • 点击菜单Project->Open Multi-Project Workspace,
  • 打开项目文件, 项目文件的路径tools\W806\projects\SDK_Project\project\CDK_WS\W806_SDK\W806_SDK.cdkws

此时在CDK中就可以看到一个名为W806_SDK的项目

第一次编译

项目已经预置了流水灯示例代码, 可以直接使用菜单Project->Build Active Project进行编译(也可以使用对应的快捷键F7). 如果一切正常, 下方Output View会显示以下输出

Build target ' W806_SDK BuildSet '
"----------Building project:[ W806_SDK - BuildSet ]----------"
csky-elfabiv2-gcc -c ../../../../../../..
...
csky-elfabiv2-gcc -o Obj/W806.elf -Wl,-zmax-page-size=1024 ... -lm
csky-elfabiv2-objdump -S .//Obj/W806.elf > .//Lst/W806.asm
size of target:
text data bss dec hex filename
14608 108 6048 20764 511c ./Obj/W806.elf
checksum value of target:0x31862AA0 (1,187,340)
Obj/W806.elf is modified at: 2021-12-18 21:37:33
Executing Post Build commands ...
W806
1
generate normal image completed.
generate normal image completed.
compress binary completed.
generate compressed image completed.
Done
====0 error(s), 0 warning(s), total time : 12s461ms====

第一次烧录

对于大多数没有CKLink的用户, 需要使用单独的烧录工具将生成的固件写入W806开发板. 联盛德提供的烧录工具是 Upgrade_Tools.exe

  • 运行 Upgrade_Tools.exe

  1. 选择COM口. 如果连接了多个USB2TTL设备, 需要选择对应开发板的COM口, 如果只连接了一个, 这里使用默认显示的即可
  2. 点击打开串口
  3. 点击...选择固件, 路径为bin\W806\W806.fls
  4. 点击下载,
  5. 在出现Waiting for restarting device...后, 按开发板上的RESET按钮开始下载
  6. 当显示Download "wm-sdk-w806-cdk/bin/W806/W806.fls" file success!后, 再次按开发板上的RESET按钮开始运行

如果一切正常, 你会看到W806开发板上的3个LED显示流水灯效果

运行DEMO中的示例代码

DEMO里有W806各个外设功能的演示代码, 下面以PWM功能为例, 演示如何使用示例代码

1.从项目中移除 app/src 目录

在 app/src 目录上右键, 点击Remove Virtual Folder, 这一步是将预置的项目代码从项目中移除, 这一步并不会真的删除文件

2.添加示例代码到项目中

在 app 目录上右键, 点击Add Source Folder, 这一步是将示例代码添加到项目中, 这一步并不会在文件系统中拷贝代码

在弹出的对话框中选择目录demo\pwm\2_led_fade_complementary, 这个是PB0, PB1, PB2, PB3 4个PWM通道组成两对互补输出的示例展示.

项目树会更新为下面的结构, 这时候就可以进行编译了

3.编译和烧录

使用菜单Project->Build Active Project编译(也可以使用对应的快捷键F7), 编译完成后, 和上面介绍的方式一样, 用Upgrade_Tools.exe进行烧录

如果一切正常, 你会看到W806开发板上LED显示的变化, 如果PB3外接LED(记得加1K以上的电阻限流), 可以观察到互补的亮度变化

其他的示例代码, 都可以参照上面的方式运行.

如果有问题请留言.

联盛德 HLK-W806 (十): 在 CDK IDE开发环境中使用WM-SDK-W806的更多相关文章

  1. 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  2. 联盛德 HLK-W806 (十二): Makefile组织结构和编译流程说明

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  3. 联盛德 HLK-W806 (十三): 运行FatFs读写FAT和exFat格式的SD卡/TF卡

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  4. 联盛德 HLK-W806 (十一): 软件SPI和硬件SPI驱动ST7567液晶LCD

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  5. 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  6. 联盛德 HLK-W806 (五): W801开发板上手报告

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  7. 联盛德 HLK-W806 (三): 免按键自动下载和复位

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  8. 联盛德 HLK-W806 (四): 软件SPI和硬件SPI驱动ST7735液晶LCD

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

  9. 联盛德 HLK-W806 (六): I2C驱动SSD1306 128x64 OLED液晶屏

    目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...

随机推荐

  1. [gym102770L]List of Products

    有一个很重要的性质:若$a\le b$且$c\le d$,则$ac\le bd$ 根据这一性质,就可以利用单调性$o(n)$求出小于$a_{x}\cdot b_{y}$的数的个数(先要对$a$和$b$ ...

  2. [cf1421E]Swedish Heroes

    令$p_{i}$为最终$a_{i}$之前的系数($p_{i}\in \{-1,1\}$),则有$n+\sum_{i=1}^{n}[p_{i}=-1]\equiv 1(mod\ 3)$ 证明:对于两个满 ...

  3. 异常处理截止和UML图

    0.异常处理机制 0.1.java中异常的作用是:增强程序健壮性. 0.2.java中异常以类和对象的形式存在. 1.java的异常处理机制 1.1.异常在java中以类和对象的形式存在.那么异常的继 ...

  4. Go语言程序结构之变量

    初识Go语言之变量 var声明创建一个具体类型的变量,然后给它附加一个名字,设置他的初始值,这种声明都是一个通用的形式: var name type = expression 在实际的开发中,为了方便 ...

  5. 【虚树学习笔记([SDOI2011]消耗战)】

    题意 [SDOI2011]消耗战 想法 首先我们可以很自然的想到怎么在整棵树上进行求解\(DP\) 很简单 每个点有两个选择 要么对其子树的关键点递归求解 要么自己断开 当然断开的\(cost\)为其 ...

  6. Codeforces 718E - Matvey's Birthday(思维题)

    Codeforces 题面传送门 & 洛谷题面传送门 首先注意到这个图的特殊性:我们对于所有 \(s_i=s_j\)​ 的 \((i,j)\)​ 之间都连了条边,而字符集大小顶多只有 \(8\ ...

  7. 洛谷 P5406 - [THUPC2019]找树(FWT+矩阵树定理)

    题面传送门 首先看到这道题你必须要有一个很清楚的认识:这题新定义的 \(\oplus\) 符号非常奇怪,也没有什么性质而言,因此无法通过解决最优化问题的思路来解决这个问题,只好按照计数题的思路来解决, ...

  8. 使用bioawk对基因组fasta序列ID(染色体/scaffold名称)排序?

    目录 需求 实现 需求 已知某基因组序列,染色体或scaffold ID顺序不定,想要对其按数字排序. 原顺序: 想要的排序结果: 实现 使用bioawk,没有的话conda直接安装. bioawk ...

  9. 【R读取报错】解决: Can't bind data because some arguments have the same name

    最近读取一个数据时,报如标题的错误. args[1] <- "RT_10-VS-RT_0" all <- read.delim(paste0(args[1]," ...

  10. python爬虫采集

    python爬虫采集 最近有个项目需要采集一些网站网页,以前都是用php来做,但现在十分流行用python做采集,研究了一些做一下记录. 采集数据的根本是要获取一个网页的内容,再根据内容筛选出需要的数 ...