查看: 2222|回复: 5

【S08P闯关赛经验分享】+创建工程(PE模式)

[复制链接]
  • TA的每日心情

    12 小时前
  • 签到天数: 2115 天

    [LV.Master]伴坛终老

    56

    主题

    4780

    帖子

    73

    金牌会员

    Rank: 6Rank: 6

    积分
    24819
    最后登录
    2024-4-29
    发表于 2020-6-21 12:33:40 | 显示全部楼层 |阅读模式
    在大致分析了官方例程之后,开始动手创建自己的工程。由于之前有S08DZ60的开发经验,比较喜欢使用CodeWarrior中Processor Expert,这个工具可以使用图形的方式设置处理器的各种功能和外设。
    001.png
    首先打开CodeWarrior for S08,File->New->Bareboard Project。
    002.png
    在工程向导第二页中的Project name中添加自己工程的名称,点击Next。
    003.png
    在设备列表中找到MC9S08PT60,项目类型选择Application,点击Next。
    004.png
    在选择连接器时,这里只选择Open Source BDM即可,因为开发板自带的就是OSBDM调试器。
    005.png
    使用语言通常只选取C语言即可。
    006.png
    Processor Expert,处理器专家选择,这里我们需要使用,所以选中PE即可。
    007.png
    C/C++选项,这里采用默认即可。
    008.png
    工程向导完成后,进入PE硬件配置界面。
    009.png
    首先默认左侧选中的是CPU的属性,在右侧就会出现CPU属性相关配置页面。这里配置处理器时钟,使能外部时钟,外部时钟源选择晶体crystal,频率为8M,这个和原理图以及开发板上的配置是一致的。在High speed mode中时钟源选取外部时钟External Clock。内部总线时钟设置为16M即可。这里有一点需要注意,虽然S08PT60的最高频率支持到20M,但是这个20M需要特定的外部晶振或者使用内部晶振才能够达到,而且NXP官方给定的例程中也是使用的16M频率。
    010.png
    在处理器Methods中使能Delay100US函数,这样可以为以后写程序提供一个100us的延时函数。
    011.png
    接下来看原理图,我们看到开发板上的D9这个LED使用的PTE7管脚来控制,并且是低电平点亮LED。
    012.png
    在中间的Processor中找到PTE接口,右击选择Add Component,选择BitIO。
    013.png
    左侧组件列表中就会增加一个Bit1组件。
    014.png
    在右侧的组件属性中设置Pin为PTE7,Direction为Output,初始化值为1(LED熄灭)。
    015.png
    在Bit1组件的Methods中选择NegVal,使其能生成代码。这样就可以使用一个函数来实现IO口的反转了。
    016.png
    在CoteWarrior菜单中选择Project,Build All,开始编译。
    017.png
    提示保存组件属性的更改,点击OK即可。
    018.png
    此时开始生成相关代码。
    019.png
    在新建的工程中,找到Sources中的main.c,双击打开在main函数中增加for循环代码。在组件列表中找到bit1组件,鼠标拖动NegVal函数到for循环中的空行中,就自动添加量IO口反转函数。
    020.png
    在CPU组件中拖动Delay函数到for循环中,自动增加延时函数,这里延时设置为1000,即0.1秒。
    021.png
    在CodeWarrior的右上角选择C/C++,返回到编码界面。
    022.png
    在连接好开发板后,选择菜单中的Run,程序就会下载到开发板并且运行。
    023.gif
    此时看开发板上的D9开始快速闪烁,至此S08PT60的工程创建并测试完成。
    总结:
    作为8位MCU,S08PT60的性价比还是蛮高的,提供了免费的基于Eclipse的开发工具,而且提供了完整的PE功能在其中,可以图形化配置系统各种组件,非常方便。几乎不用编写一行代码,就可以实现很多功能,只需要使用鼠标拖动组件进行设置即可,极大地节省了开发者的时间,所以这里强烈推荐使用PE功能来进行片上外设的设置和使用。

    回复

    使用道具 举报

  • TA的每日心情
    奋斗
    2021-7-8 09:06
  • 签到天数: 27 天

    [LV.4]偶尔看看III

    18

    主题

    438

    帖子

    26

    金牌会员

    Rank: 6Rank: 6

    积分
    2209
    最后登录
    2024-3-5
    发表于 2020-6-22 11:39:32 | 显示全部楼层
    不错,简洁明了
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2021-5-28 10:51
  • 签到天数: 62 天

    [LV.6]常住居民II

    3

    主题

    233

    帖子

    0

    高级会员

    Rank: 4

    积分
    737
    最后登录
    2021-9-17
    发表于 2020-6-22 16:07:17 | 显示全部楼层
    图形化配置开发好方便,有空试试
    哎...今天够累的,签到来了~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2023-5-11 17:59
  • 签到天数: 33 天

    [LV.5]常住居民I

    16

    主题

    396

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1381
    最后登录
    2023-9-15
    发表于 2020-7-7 17:31:36 | 显示全部楼层
    群主好 试了一下这个方法。还能再说下其他PE 其他功能的使用方法吗
    今天好忙啊
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    12 小时前
  • 签到天数: 2115 天

    [LV.Master]伴坛终老

    56

    主题

    4780

    帖子

    73

    金牌会员

    Rank: 6Rank: 6

    积分
    24819
    最后登录
    2024-4-29
     楼主| 发表于 2020-7-7 22:11:09 | 显示全部楼层
    jacky1982512 发表于 2020-7-7 17:31
    群主好 试了一下这个方法。还能再说下其他PE 其他功能的使用方法吗

    需要哪些功能?如果确实需要,我看能否出个系列,讲讲每个组件的使用方法。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2023-5-11 17:59
  • 签到天数: 33 天

    [LV.5]常住居民I

    16

    主题

    396

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    1381
    最后登录
    2023-9-15
    发表于 2020-7-8 11:34:28 | 显示全部楼层
    Angel_YY 发表于 2020-7-7 22:11
    需要哪些功能?如果确实需要,我看能否出个系列,讲讲每个组件的使用方法。 ...

    比如定时器 AD使用 在PE里怎么使用和初始化的?当然我不了解CW的PE,不知道可有,或者可支持。
    今天好忙啊
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-29 22:16 , Processed in 0.149623 second(s), 25 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

    快速回复 返回顶部 返回列表