查看: 5635|回复: 0

Atmel Studio 7.0 快速上手指南(基于ASF)

[复制链接]
  • TA的每日心情
    开心
    2015-3-18 14:53
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2015-9-29 14:56:07 | 显示全部楼层 |阅读模式
    分享到:
    本帖最后由 hejunpeng 于 2015-10-21 16:26 编辑

       Studio7_HP_Banner_980x352_zh.jpg

    就在最近,Atmel终于推出了新版本IDE——Atmel Studio 7.0,该版本采用了微软最新的 Visual Studio 2015 平台,经过一段时间使用,Atmel Studio 7.0在速度、性能和代码视觉风格上都体现的淋淋尽致,用起来非常顺手,下面将结合 Atmel SAML22 Xplained Pro  
    评估板GPIO实例,介绍Atmel Studio 7.0 的使用方法。
                 
    前面已经介绍了Atmel Studio 7.0 的安装方法:
    https://www.cirmall.com/bbs/thread-44304-1-1.html

      
      
    第1步:打开Atmel Studio 7.0
       
    1.png
      
    笔者这里使用的是 Atmel SAML22 评估板,将此板卡用USB连接PC,等待驱动安装完成,Atmel Studio 将会自动识别板卡,如下图:
      
    2.png
      
    第2步:新建工程项目
       
    3.png
      
    4.png
      
    第3步:选择芯片型号
      
    5.png
      
    6.png
      
    第4步:添加ASF 驱动库
      
    7.png
      
    8.png
      
    9.png
      
    第5步:查看ASF库使用说明
       
    10.png
      
    11.png
      
       
    打开Atmel SAML22 Xplained Pro 原理图,找到 LED和KEY(BUTTON)的所对应的IO口,LED对应PC27,KEY对应PC01,如下图:
      
    101.png
      
    100.png
      
    第6步:编写代码

    12.png
      
    源码:
    1. #include <asf.h> //包含Atmel MCU软件库头文件

    2. #define LED PIN_PC27 //定义LED所使用的IO口为 PC27
    3. #define KEY PIN_PC01 //定义KEY所使用的IO口为 PC01

    4. void port_init(void); //声明函数体


    5. /************************************************************************/
    6. //* IO 初始化
    7. /************************************************************************/
    8. void port_init(void)
    9. {
    10. struct port_config config_port_pin;
    11. port_get_config_defaults(&config_port_pin);

    12. config_port_pin.direction = PORT_PIN_DIR_OUTPUT; //配置IO口方向为输出
    13. port_pin_set_config(LED, &config_port_pin); //初始化LED对应IO口

    14. config_port_pin.direction = PORT_PIN_DIR_INPUT; //配置IO口方向为输入
    15. config_port_pin.input_pull = PORT_PIN_PULL_UP; //配置IO口上拉

    16. port_pin_set_config(KEY, &config_port_pin); //初始化KEY对应IO口

    17. }

    18. /************************************************************************/
    19. //* 主程序
    20. /************************************************************************/

    21. int main (void)
    22. {
    23. system_init(); //系统初始化

    24. /* Insert application code here, after the board has been initialized. */
    25. port_init(); //IO初始化

    26. while(1)
    27. {
    28. if (port_pin_get_input_level(KEY) == 0) //KEY按下,LED对应IO电平 = 0
    29. {
    30. port_pin_set_output_level(LED, 0);
    31. }
    32. else
    33. {
    34. port_pin_set_output_level(LED, 1);
    35. }
    36. }

    37. }
    复制代码
    13.png
      
    第7步:编译并生产烧录文件
      
    14.png

    第8步:烧录文件到开发板
      
    15.png

    效果如下:

    格式工厂20150928_180417 00_00_00-00_00_10.gif
      
    程序包: AS7_Test_1.rar (3.54 MB, 下载次数: 25)
    回复

    使用道具 举报

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

    本版积分规则

    关闭

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

    手机版|小黑屋|与非网

    GMT+8, 2024-11-29 16:39 , Processed in 0.123389 second(s), 16 queries , MemCache On.

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

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.