由以上几节的学习,我们从这一节开始真正的以实例讲解uTenux\AT91SAM3S4C开发套件的应用。如其他的软件程序开发一样,uTenux\AT91SAM3S的学习我们也要从第一个程序代码-HelloWord开始。

在上一节中我们已经建立好了底层驱动和工程模板,这一节我们将要用到。首先以_Folder文件夹为模板,建立新的文件夹,命名为HelloWord。接着打开Keil-MDK,新建工程。

1、 新建工程,在先到中选择处理器为atmel公司的的AT91SAM3S4C,当提示是否添加启动文件startup时选择否,因为我们在后面要手动添加已经写好的启动文件。

2、 打开工具栏中Target Option旁边的File Extension···选项,在其中的Progect Component中设置工程中涉及到的文件和工程组织结构,具体如下图所示:

接下来进行详细的讲述,project Target中通常是工程名称;groups栏目中是工程中的文件组织结构,上面是我的习惯设置,startup文件夹用于添加启动文件,Library文件夹用于添加C处理器的驱动文件*.c;HardWare用于添加开发板的底层驱动文件*.c;Interrupt文件夹中是中断处理函数*.c,*.h;Configure文件夹下放置chip.h和board.h;APP中添加用户驱动程序;main中添加工程主函数;Note中添加设计者对工程的描述及版本等。

3、 添加我们需要的底层驱动,包括处理器驱动和板级驱动。

对于本实验,我们要添加的文件如上图所示,至于为什么,就请您详细看一下每个文件的介绍咯。

4、 做好上面这些就要对工程进行配置了。打开工具栏project Option进行设置,具体设置步骤请参考上一节的第四部分关于工程配置的介绍。

5、 编写本次实验用到的程序代码:

//--------Include Head------------

#include "board.h"

#include <stdio.h>

//-------Port Defined------

//-------Data Defined-------

//--------Sub Function-------

/*---------------------------------

Description : None

Input : None

Output : None

Others : None

---------------------------------*/

//--------ISR Function----------

//---------Main Function--------

int  main (void)

  {

    /* Disable watchdog*/

    WDT_Disable( WDT ) ;

printf("\n\tHello Word!\r\n"); 

printf("\n\tHello uTenux!\r\n"); 

printf("\n\t   -- ^_^ Bruce Lone\r\n"); 

  while(1)

    {

    }

  }

6、 做好上面这些,您就可以编译了,编译后如果没错误那就下载验证吧,如果有错那就查错吧,总会编译通过的。

7、 连接开发板上的UART口至电脑串口,如果您用的是笔记本请用USB转串口线连接。连接好仿真器,下载程序。在PC机上打开超级终端或者其他的串口软件,复位开发板,上位机将收到数据,如下图所示:

OK,这一节的讲解到此结束了,谢谢您的阅读,希望您能留下一些建议意见,谢谢。

最新文章

  1. 常用API——日期型函数Date
  2. 【bzoj1601】[Usaco2008 Oct]灌水(MST)
  3. 为什么说外卖O2O行业的未来在于尖端技术?
  4. Eclipse中如何修改SVN的地址
  5. 水题 ZOJ 3880 Demacia of the Ancients
  6. 使用oss批量上传图片
  7. Styling FX Buttons with CSS
  8. C语言之广度优先算法
  9. org.apache.hadoop.hbase.TableNotDisabledException 解决方法
  10. ios 码云的使用总结
  11. RTP, RTCP, RTSP 协议介绍
  12. JVM结构、GC工作机制详解
  13. c:set 存值
  14. Win10专业版下图片拖到PS无法打开的解决技巧
  15. Java数据类型及运算
  16. Work 1(导游类)(2017.06.27)
  17. js 常用数组和字符串方法
  18. svn(subversion)代码版本管理在linux下的一些常见使用命令
  19. Spring Security(十三):5.2 HttpSecurity
  20. 初次使用git上传代码到github远程仓库

热门文章

  1. css3实现条纹背景
  2. [待解决] sudo unable to resolve host
  3. IE和FF区别关于css和js
  4. SQL Server安装完成后3个需要立即修改的配置选项(转载)
  5. simpleBLEPeripheral.c 文件分析
  6. JavaEE基础(十)
  7. dirname和basename命令
  8. sass初步认识1
  9. 简单选择排序(Java)
  10. 集合(Collection)使用笔记