查看: 2053|回复: 1

基于SAM4S XPLAINED开发板KEIL-MDK开发环境搭建及LED测试

[复制链接]
  • TA的每日心情
    开心
    2018-9-18 06:28
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2014-12-25 08:53:21 | 显示全部楼层 |阅读模式
    分享到:
    在搭建IAR开发环境过程中,发现缺少了像TI和ST那样的启动文件,这个文件自己编写的话,很耗费时间和精力。幸好,在用KEIL MDKV4.6调试其他板子的过程中,发现这个MDK版本支持SAM4S16C这个器件,最初也建立了一个小过程,里面有启动文件和系统时钟配置函数,这个配置还是比较趁手的,平时用惯了这个环境去开发TI和ST的器件,如果换用其它的开发环境,一方面不容易调试成功,另一方面耗费精力太多。看到论坛上有网友在KEIL下用寄存器的方式实现了LED流水灯,那么我再用库函数的方式来实现一个LED的闪灯程序,丰富一下开发方式,呵呵。从个人观点,对于配置比较复杂的ARM内核来讲,采用寄存器方式来写程序,上手比较慢。
                 第一步:安装 KEIL-MDK460.EXE

    这个程序网上搜起来也很多,注册机用以前的MDKV450注册机就可以,不像现在的IAR那样,最新的6501已经更换了破解方式,现在偶也没有找到一个合适的和谐文件。
    MDK460下载地址:
       https://www.mcuzone.com/down/Software.asp?ID=10000498
    MDK-KeyGen-450.rar下载地址:
       https://bbs.eeworld.com.cn/thread-323742-1-1.html


                  第二步:建立工程文件夹并配置工程文件
    在KEIL下编写程序,不同的人有不同的风格,像我就比较喜欢将所有的文件(库文件、顶层、中间层、上层,主函数)都放在一个工程文件里面,这样就算将工程文件转移到别的电脑上,也能正常编译。首先,建立一个如图的文件目录:
                

    其中:
    driver文件夹放置你要写的各种驱动文件
    driverlib 对照TI和ST风格设计的驱动库,里面放置官方提供的驱动库文件及编译好的SAM4S16.lib库。
    MDK 存储工程文件,里面可以自行设置目录,用于输出.list或可执行文件等。
    SAM4S16C 可以放置跟这个器件相关的一些宏定义文件,比如chip.H.
    Startup 文件夹放置的是启动文件
    User 文件夹放置的是用户的main.c和system_SAM4S.c
    MDK.bat 用于清零工程文件编译产生垃圾。
    其次,配置工程文件内容,并加载各种文件。

    在工程文件中,建立如下目录并加载文件,driverlib目录下,加载了SAM4S16.lib 这个库,以后直接调用库函数就可以了。

    再就是要设置好路径,采用相对路径方式,把各种文件路径都设置好,方便编译链接。J-LINK仿真器设置界面比较简单,用过KEIL的都知道怎么回事,我的设置如下:


    这样一个工程文件就建好了。下面进入关键的第三步。
    第三步:制作驱动库文件及驱动库文件目录
    采用驱动库文件来编写程序,驱动库.lib的制作是个比不可少的过程,不像TI那样,官方提供了一个drvierlib.lib文件,SAM4S-XPLD开发板,官网的库文件不是很系统,需要自己生成一个这样的文件。生成的过程如下:新建一个KEIL工程,将官网提供的.C文件和.H文件及CHIP.H文件加入,如图:


    然后在选项卡下面,做如下设置:


    进行编译链接,就可以生成想要的链接库了。当然,这个链接库也可以不用制作,当你用的那个库文件的时候,直接加载即可,只不过编译费些时间。ST现在就是这种开发方式。
    第四步:编写一个简单的LED闪灯测试程序
    建立一个main.c函数,在里面输入以下代码:

    然后,编译链接、运行,将程序下载就可以看到一个灯在不停地闪烁了。程序测试完毕!
    上图:

    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

    手机版|小黑屋|与非网

    GMT+8, 2024-11-19 02:42 , Processed in 0.136304 second(s), 20 queries , MemCache On.

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

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.