目录

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. [atAGC045F]Division into Multiples

    令$d=\gcd(a,b)$,可以发现$c|(ax+by)$等价于$lcm(c,d)|(ax+by)$,因此不妨令$c'=lcm(c,d)$,然后将$a$.$b$和$c$同时除以$d$ 接下来设$(a ...

  2. lilypond和弦及其转位的表示

    在lilypond,如果要打和弦的话,有所谓的chordmode,命令就是\chordmode {} 要使用chordmode需要一些基本的和弦命名的知识,最好先补一下乐理 实际上lilypond的官 ...

  3. HCNP Routing&Switching之组播技术-组播基础

    组播技术背景 随着internet网络的不断发展,网络中交互的各种数据.语音.视频信息数量突增:新型的在线直播.网络电视.视频会议等应用也在逐渐兴起:这些业务大多符合点到多点的模式,对信息安全性.传播 ...

  4. 多线程01.newThread的方式创建线程

    1.java应用程序的main函数是一个线程,是被jvm启动的时候调用,线程的名字叫main 2.实现一个线程,必须创建一个thread实例,override run方法,并且调用start方法. 3 ...

  5. FFT/NTT复习笔记&多项式&生成函数学习笔记Ⅰ

    众所周知,tzc 在 2019 年(12 月 31 日)就第一次开始接触多项式相关算法,可到 2021 年(1 月 1 日)才开始写这篇 blog. 感觉自己开了个大坑( 多项式 多项式乘法 好吧这个 ...

  6. canvas 基本介绍

    # canvas 基本功能介绍 - canvas 能做什么 1. 绘制简单图形线条 2. 裁剪图片 - 开始绘制画布 新建html文档添加 canvas标签 ```html <div style ...

  7. 学习资源 Docker从入门到实践 pdf ,docker基础总结导图

    学习资源 Docker从入门到实践 pdf ,docker基础总结导图 Docker从入门到实践 pdf 云盘地址:https://pan.baidu.com/s/1vYyxlW8SSFSsMuKaI ...

  8. lsof之列出已打开的文件

    lsof命令常用解析 Linux中常用 lsof 来查看文件调用进程等相关信息,也可用来查看活跃的进程信息和端口监听进程信息等 1. lsof 命令介绍 NAME lsof - list open f ...

  9. Oracle基础入门

    说明:钓鱼君昨天在网上找到一份oracle项目实战的文档,粗略看了一下大致内容,感觉自己很多知识不够扎实,便跟着文档敲了一遍,目前除了机械性代码没有实现外,主要涉及知识:创建表空间.创建用户.给用户赋 ...

  10. URLDNS分析

    学习了很久的Java基础,也看了很多的Java反序列化分析,现在也来分析学习哈最基础的URLDNS反序列化吧. Java反序列化基础 为了方便数据的存储,于是乎有了现在的Java序列化于反序列化.序列 ...