查看: 3061|回复: 0

使用Simplicity Studio v3 系列(2)

[复制链接]
  • TA的每日心情
    奋斗
    2019-12-1 10:07
  • 签到天数: 1617 天

    连续签到: 1 天

    [LV.Master]伴坛终老

    发表于 2015-6-11 13:27:54 | 显示全部楼层 |阅读模式
    分享到:
    这里再介绍一下使用Simplicity Studio v3开发51程序,下面以C8051F930的LED Blink为例。
    我们一般开发51时,最常用Keil C51。一个LED闪烁的程序是这样的:
    #include "C8051F9xx.H"sbit LED = P2^0;void init(){  // disable WDT  PCA0MD    &= ~0x40;  PCA0MD    = 0x00;    // P2.0  P2MDOUT   = 0x01;  XBR2      = 0x40;  }void delay(unsigned long n){  while(n > 0)  {    n--;  }}int main(){  init();    while(1)  {    LED = !LED;    delay(5000);  }    return 0;}使用Simplicity Studio后,可以象PSOC那样通过图形去配置参数,不用完全靠自己写代码了。这样更容易实现底层代码和用户层代码分离,移植性更好,也方便调试程序。

    创建新项目,然后在右边Port I/O中,设置CrossBar为Enabled。


    然后设置LED引脚(P2.0)为推挽输出。


    然后切换到Default Mode Peripherals面板,选中PCA0,然后在属性中禁用看门狗。


    然后打开src下的blink_main.c文件,加入delay函数,并在主循环中加入控制LED代码。再编译就可以了。底层驱动部分,基本不用自己写代码,只要设置好需要使用部分的属性,Simplicity Studio就会自动产生代码,类似CodeWarrior的PE那样,非常方便。在这个例子,底层驱动部分代码自动生成到文件InitDevice.c中,我们只要通过函数enter_DefaultMode_from_RESET();(这个函数也是系统自动生成并加入主程序)就可以完成前面设置的那些外设的初始化。不用在直接写寄存器,这样更符合现代化软件开发的思路,也方便项目管理。


    下一步就是仿真和下载程序了。我们先设置一下仿真时连接的仿真器,我使用了Silabs公司自己的USB Toolstick,这是以前一个C8051F700开发板上带的,使用其它型号的C8051仿真器也是可以的,Simplicity Studio在兼容性上做的不错。在项目文件属性中,进入Run/Debug Settings,编辑默认选项。


    切换到Connection,按下面的select按钮,选择仿真器。


    正常情况下,Simplicity Studio可以自动识别出仿真器和连接的芯片型号,选中后确认。


    设置完成后就可以按甲虫图标进入仿真状态了。后面就和其它软件差不多,设置断点、观察变量、修改变量....
      
    18.jpg (124.47 KB, 下载次数: 0)
    blink.zip
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

    手机版|小黑屋|与非网

    GMT+8, 2024-4-20 16:58 , Processed in 0.122660 second(s), 17 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2020, Tencent Cloud.