atmel studio7使用记录

#2019.1.11

由于项目的需要,我初次接触atmel 芯片,以及其专用编译器atmel studio7。刚开始,由于各种不习惯,我是抗拒的。尤其是AVR studio移植过来时,编译出了好多错误。以下为遇到的问题及解决方法。
1、添加头文件
由于编译器的不同,头文件有了很大改变。通过上网搜资料以及自己摸索,还是比较容易解决的。需要说明的是,AS7的头文件添加很方便,只要是工程中有的头文件,在代码中添加时,只需打出前几个字母,就能索引出准确的头文件名称。
2、变量被优化
在函数中定义的变量,经常会被优化掉,导致参数传递不过去,此时只需在定义时添加volatile即可。
3、program memory和data memory
这个需要特别注意。如果程序中定义有大量的常量,一定要在定义时,头部写上PROGMEM,还要添加头文件#include <avr/pgmspace.h>,这样,定义的常量就保存在program memory中了。否则,由于data memory仅有4k而会出现内存溢出的现象。
当data memory区的变量去读取program memory区的数据时,需要添加pgm_read_byte(),具体用法可参看其定义中的说明,应用实例如下:
volatile unsigned char k;
k=pgm_read_byte(&CusorLib[0][1]);
4、atmel | start
file->new->atmel | start studio,可视化编程,类似于STM32的CubeMX,具体待后续研究。
由于此次我只是简单实现点亮LED灯和在LCD上显示一串字符,因此没有涉及到定时器,中断等外设,待完成项目后,再更新心得。2019.1.11。

atmel studio7使用记录相关推荐

  1. 关于atmel芯片security bit的取消

    用atmel studio7 调试samd20系列单片机时,如果之前设置了security bit,进到device programming页面时,jlink会弹个对话框出来问是否清security  ...

  2. ATMEL SAMC20J多通道ADC问题

    ## ATMEL SAMC20J多通道ADC问题##最近,在学习使用ATMEL单片机,用到的是SAMC20J18A,当调试多通道ADC时,遇到了一些问题,其中有关多通道ADC采样问题整了比较久.记录一 ...

  3. Atmel Studio 6使用

    https://www.jb51.net/softs/556230.html Atmel Studio6也叫Avr Studio 6,是一款由Atmel公司开发的免费.集成化开发环境(IDE),可用来 ...

  4. 【Buildroot】学习记录(2)配置注释

    文章目录 一.前言 二.Buildroot目录结构 三.Buildroot配置选项 四.Target options(目标选项) 五.Build options(编译选项) 六.Toolchain(工 ...

  5. 可信计算系列之一——ATMEL的TPM芯片AT97SC3204T及TSS栈

    最近有项目需要,需要开发移动终端的安全.首先想到的是可信计算,可信计算在PC机比较流行,但是目前对可信计算的褒贬不一,这里不作评论.本文的目的是记录一下我的开发过程. 我使用的芯片是ATMEL公司的A ...

  6. mysql建立联合索引,mysql建立唯一键,mysql如何解决重复记录联合索引

    在项目中,常常要用到联合唯一   在一些配置表中,一些列的组合成为一条记录.   比如,在游戏中,游戏的分区和用户id会形成一条记录.(比如,一个qq用户可以在艾欧尼亚.德玛西亚创建两个账号) 添加联 ...

  7. 实现 连续15签到记录_MySQL和Redis实现用户签到,你喜欢怎么实现?

    现在的网站和app开发中,签到是一个很常见的功能 如微博签到送积分,签到排行榜 微博签到 如移动app ,签到送流量等活动, 移动app签到 用户签到是提高用户粘性的有效手段,用的好能事半功倍! 下面 ...

  8. 记录一次http请求失败的问题分析

    问题背景 当前我有一个基于Flask编写的Restful服务,由于业务的需求,我需要将该服务打包成docker 镜像进行离线部署,原始服务的端口是在6661端口进行开启,为了区分,在docker中启动 ...

  9. Pytorch学习记录-torchtext和Pytorch的实例( 使用神经网络训练Seq2Seq代码)

    Pytorch学习记录-torchtext和Pytorch的实例1 0. PyTorch Seq2Seq项目介绍 1. 使用神经网络训练Seq2Seq 1.1 简介,对论文中公式的解读 1.2 数据预 ...

最新文章

  1. oracle判断侦听状态,oracle 监听状态为BLOCKED
  2. jmeter之关联操作
  3. org.springframework.amqp.AmqpConnectException java.net.ConnectException的解决办法
  4. 安装mlxtend_python机器学习包mlxtend的安装和配置详解
  5. phonegap安装 环境搭建与配置详解(3.4 完整版 提供下载地址)
  6. 使用inetaddress测试目标可达性_纯java手写打造方法级白盒测试框架
  7. 蓝桥杯 BASIC-11 基础练习 十六进制转十进制
  8. 2.2. MongoDB 管理
  9. 粒子群PSO算法实验及其代码解释
  10. python安装sqlalchemy-Python流行ORM框架sqlalchemy安装与使用教程
  11. 统计分析软件_专业统计分析软件 SPSS 25 来了!手把手教你安装
  12. SMT工艺培训一日谈
  13. 使用vue中遇到的一些问题以及解决方案
  14. Jackson 生成xml格式文件
  15. 原理图编译出现Has no driving source 啥意思?
  16. FreeRTOS学习笔记(10)——中断管理
  17. android 仿微信聊天界面 以及语音录制功能,Android仿微信录制语音功能
  18. 使用微信小程序怎么用wx.storage来实现收藏功能?
  19. MBR和GUID区别
  20. Nginx返回411错误

热门文章

  1. Python的起源和发展
  2. 详解分布式系统核心概念——CAP、CP和AP
  3. 中国联通刘韵洁:5G面临三大挑战
  4. 人工智能之高等数学1
  5. 这几款免费的思维导图软件你或许没用过,快来试试吧
  6. tms320vc5416c语言编程,TMS320VC5416中文资料
  7. 如何用解压缩工具破解PPT文档保护
  8. 人民日报:在集成电路基础研究中奋力攀登
  9. 【华为/华三】PPP
  10. 基于萤石云实现的九宫格监控