[学习资料]

Atmel Studio 7使用小技巧(一)

[复制链接]
5270|7
手机看帖
扫描二维码
随时随地手机跟帖
麦小播|  楼主 | 2019-1-21 11:03 | 显示全部楼层 |阅读模式
share 一个我司工程师自己总结的Tips和大家探讨一下,欢迎补充。


1. 新建项目建议用Start图形化工具来完成驱动配置。目前提供网页版在线方式,听说很快会有脱机版,我比较喜欢在AS7环境内新建,感觉步骤更少、更方便、更流畅。

640?wx_fmt=jpeg.jpg

2. 配置完可以直接生成完整项目代码,如果中途想再次更改驱动或配置,可以随时按右侧的重新配置按钮。


640?wx_fmt=jpeg.jpg

3. 生成的MCU的各外设驱动不会引用咋办?不用怕,可以打开项目中的Examples,里面有具体的实例,把它们弄到你的应用程序中就行,如果这个也不会,还是趁年轻多自己琢磨一会儿吧。


640?wx_fmt=jpeg.jpg


4. 在代码调试初期,建议部分功能选择 Simulator 功能跑一下,特别是与时序相关的。打开Processor Status对话窗口,设定好频率,配合断点,通过Stop Watch可以精确算出时间。


640?wx_fmt=jpeg.jpg

5. 在调试过程中有时会发现,有些语句的断点设不进去,咋回事?


640?wx_fmt=jpeg.jpg

这一般是被C编译器给优化掉了,也就是说打不进断点的语句可能不会被执行了。这是不被希望的!咋办?有些办法是可以来改善的。   

6. 冲在最前面的笨方法是去掉C编译器的优化等级。断点基本都可以随处打了。


640?wx_fmt=jpeg.jpg

但其他的问题也随之而来,首先代码的空间“壮大”了。


640?wx_fmt=jpeg.jpg


其次运行速度也“龟速”了。作为一个产品来说成本也就会无形被提高了。



640?wx_fmt=jpeg.jpg


有没有办法来改进呢?肯定有、必须有!可以把需要严格时序的函数,单独把优化等级降低,生成库函数被项目调用(有兴趣可以自己先研究研究);也可以用下面一些简单的方法来改进。

7. 在函数前增加static关键字。


640?wx_fmt=jpeg.jpg


8. 对于一些打不了断点的 inline 定义的内嵌函数,可以通过GO按钮找到原始的语句,把它弄出来,编译试一试。


640?wx_fmt=jpeg.jpg

可以啦。代码空间又小,运行速度也快,各个语句也没被“**”掉。完美!

640?wx_fmt=jpeg.jpg



dongnanxibei| | 2019-1-21 23:52 | 显示全部楼层
非常好用。希望PIC整合到一起。让所有开发一个软件。

使用特权

评论回复
麦小播|  楼主 | 2019-1-22 10:52 | 显示全部楼层
dongnanxibei 发表于 2019-1-21 23:52
非常好用。希望PIC整合到一起。让所有开发一个软件。

好建议。 我们的IDE现在支持原Atmel的产品了。亲要统一的话,不妨可以试试我们的X IDE哦! Studio后续有啥新功能,小播会及时告知哦!

使用特权

评论回复
dongnanxibei| | 2019-1-22 15:28 | 显示全部楼层
麦小播 发表于 2019-1-22 10:52
好建议。 我们的IDE现在支持原Atmel的产品了。亲要统一的话,不妨可以试试我们的X IDE哦! Studio后续有 ...

多谢。以前都是用的MPLAB .
开发AVR用的WINAVR。
不过都挺好用的。试试x 如何。

使用特权

评论回复
评论
知你不知wo 2020-7-24 17:18 回复TA
我用WinAVR只能编译,没有硬件仿真。是不是软件版本太低了? 
xzxsxdxc| | 2019-1-22 19:25 | 显示全部楼层
不错,确实方便了很多。

使用特权

评论回复
flion| | 2020-3-26 12:43 | 显示全部楼层
在线的驱动配置还是不错的,不过两个串口的时候貌似会有一些bug

使用特权

评论回复
blust5| | 2020-5-12 10:26 | 显示全部楼层
有没有一些常用快捷键的说明文档之类的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:Microchip
简介:让我们来为您提供帮助。我们可提供各种资源来帮助您解决一切问题。是否需要与我们的客户支持团队联系?您可以通过电话、在线聊天功能或电子邮件与他们联系。

593

主题

943

帖子

42

粉丝