(赤焰剑C-SKY)2-HelloWorld

作者:cp
时间:2019-05-13
申明:本文一些素材取自网络,归原作者所有

写在前面

开发环境配置完成后进入开发步骤,以经典HelloWorld入门,学习包含OS和无OS的工程应用

1.新建工作空间

  • 打开CDK,点击New Multi-Project Workspace
    workspace-new
  • 填写工作空间名称及路径
    workspace-set
    完成后可得:
    workspace-down

2.工程应用1

2.1 新建IOT工程(with AliOS)

  • 工作空间右击,选择Create New IOT Project...
    project-new
  • 选择HelloWorld演示方案
    project-HelloWorld
  • 设置工程名并选中下面helloworld
    project-set
    完成后可得:
    project-down

2.2 编译

  • 编译工程(快捷键:F7)
    project-build

2.3 烧写

2.3.1 CDK

目前在CDK环境下IOT工程烧写会报如下错误,未解决,如有正确方法请告知,谢谢
flash-error
经验证,工程路径中不要有空格即可

2.3.2 CSKYFlashProgrammer.exe

  • 选择$(ProjectPath)generated/total_image.hex烧写
    flash

2.4 运行

  • 按下复位按键&串口输出
boot1.1
Tee v2.0.1 Initliaze done, Dec 19 2018 11:44:54
Welcome to CLI...
> [     0.307815][I][app     ]hello world!

2.5 调试

  • 设置断点,调试(快捷键:Ctrl+F5)
    debug

3.工程应用2

3.1 新建普通工程(without RTOS)

  • 工作空间右击,选择Create New Project...
    project2-new
  • 设置工程名并选中下面CSKY SOC -> CB2201 BareMetal
    project2-set
    完成后可得:
    project2-down

3.2 激活工程

  • 工程右击,选择Set As Active (double click)
    project2-active

3.3 编译

  • 编译工程(快捷键:F7)
    project2-build

3.4 烧写

3.4.1 CDK

CDK环境下普通工程直接烧写成功

3.4.2 CSKYFlashProgrammer.exe

  • 选择elf烧写
    flash2

3.5 运行

  • 按下复位按键&串口输出
hello world!

3.6 调试

同上

4 说明

  • 在IOT工程中,在app_main函数中有显示调用board_yoc_init,所以开发板资源得到初始化后续可以使用
  • 在普通工程中,在main函数中直接printf,似乎没有初始化串口,但是也输出了信息,经查找是工程目录下csi_driver/ch2201/startup.S中在jbsr main之前有jbsr board_init,而board_init(board/cb2201/board_init.c)中初始化了串口,所以main函数中能直接printf

PS:

若发现烧录IOT工程后复位程序未执行,可能是使用NO_RTOS工程时破坏了执行环境,需要重新烧录测试许可证,再烧程序,参见https://cop.c-sky.com/doc/zh-cn/tutorial/board_test.html

boardtest-kp-reset

参考

[1]https://cop.c-sky.com/doc/zh-cn/tutorial/quick_start_of_YoC.html
[2]https://cop.c-sky.com/doc/zh-cn/tutorial/helloworld.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值