ly461693690的博客

控制/MCU

1862人已加入

描述

我早前就接触过Atmel的AVR单片机,我相信很多朋友也是这样。我记得在08年左右的时候atmel非常牛逼的AVR单片出现很不利于市场的供货问题, 让很多对他亲昵的朋友都向别人投怀送抱。好,那我们接下来说说为什么我又开始atmel单片机了,总有理由吧。那就让我说下我了解的几个理由。 我认为的ST的缺点:(并没故意黑) 1:在我工作上总由于硬件设计的缺陷导致我对常用的也是先行最流行的contex M单片机(STM32)有点失望,在工控上它总时不时给我带点惊喜, 在工控方面它就像个娇儿一不小心就轻则受伤重则直接挂掉。---抗干扰还是差了点 2:就是它很带理由的芯片硬件设计缺陷比如IIC等,自己的库demo都跑不起来。---芯片设计缺陷 3:固件库升级---学习,项目维护比较混乱(标准固件库,HAL固件库) 4:最近竟然st也开始玩起了供货问题---供货排期到了88周之后 atmel优点: 1:atmel单片机是业界先进芯片设计公司,技术力量强,设计经验丰富---芯片本身bug少 2:atmel同内核芯片系列全,Contex M0+,M3,M4,A5还有ARM7,ARM9在工业,消费电子都比较常用 3:在digkey查了下单价,atmel新内核的arm竟跟ST号称性价比最高的单片机差不多(差不多配置下) 4:全系列统一固件库ASF,不管你是开发AVR还是现在的SAM都是统一,编程方便不会有不同内核不同版本的固件库,更没有新旧架构固件库之分

不吐槽了,我们开始一个单片机开发首先从软硬件平台开始,那下面我们介绍下atmel最新开发工具Atmel Studio 7.0的使用:

1:点击图标


2:全新界面


3:点击New Project,在弹框内闲着C/C++再选 GCC C ASF Board Project,选好自己的工程路径和项目名后点确定


4:选择Select By Dvice,选好芯片型号点确定


5:mian文件界面


6:点击ASF Wizard,选择刚建立的Project名,ASF固件库模块添加界面


7:选中你需要添加的模块,再点下方Add按键


8:添加模块后点Apply按键,弹框点确定就可以了


9:再回到mian文件界面,添加一下代码

#include /** Configure LED0, turn it off*/ static void config_led(void) { struct port_config pin_conf; port_get_config_defaults(&pin_conf); pin_conf.direction = PORT_PIN_DIR_OUTPUT; port_pin_set_config(PIN_PA00, &pin_conf); port_pin_set_output_level(PIN_PA00, false); } int main (void) { system_init(); //SysTick_Config(system_gclk_gen_get_hz(GCLK_GENERATOR_0)); delay_init(); config_led(); /* Insert application code here, after the board has been initialized. */ while (true) { port_pin_toggle_output_level(PIN_PA00); delay_ms(500); } }

10:添加下载,调试工具我的是atmel-ICE也可以是万能的jlink

11:编译项目


12:下载并进入仿真

本次文章到此结束,有任何异议或者疑问欢迎留言讨论!!!

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 相关推荐

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分