微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 硬件工程师文库 > “为AVR生,为 AVR死”一文了解ATMEL SKT600开发板测评

“为AVR生,为 AVR死”一文了解ATMEL SKT600开发板测评

时间:08-19 来源:Atmel中文社区 点击:

STK600开发套件有相当大的辅助开发价值,这是笔者见过评估AVR MCU的最全方位的工具了,估计曾经有那么一段时间把多少单纯的小朋友带到AVR的世界,从此一发不可收拾,半身蹉跎于AVR,应证了"为AVR生,为 AVR死",这真是罪魁祸首。但是,这世界同样不缺少那啥来着"牡丹花下死,做鬼也风流",笔者同样愿意当一个"被虐的黄盖",去尝试下STK600开发套件更多的功能。

 

串口

 

说到串口,在电子行业摸爬滚打的小伙伴基本都不陌生,笔者也大有"这也太小儿科的思想",没想到一上来就碰钉子了,首先,STK600开发套件中并 没有为你准备5星级服务,在你使用各个功能的时候你会发现缺斤少两的现象,就说这RS232串口,需要自己额外准备一根9-pin的D-SUB接口线(一 头公头、一头母头)。

串口的例程可以在Atmel Studio6.1中找到,这里笔者编译、下载了一个UART interrupt example for the ATmega2560例程。问题又来,波特率没有明说该设置多少,笔者是在代码中找到的,可能是Atmel公司想教我们一个道理"自己动手,方能丰衣足 食。"可惜笔者未能好好参透,还是喜欢一条龙服务,是不是有点不上进啊。

打开超级终端,设置参数,无论如何操作,超级终端都无信息打印,急得团团转的时候看到串口原理框图顿时泪奔,这不是坑爹嘛,这RX、TX信号线都没连上MCU,跟MCU半点关系都没。

但这下至少有方向了,首先需要让RX、TX建立跟MCU Atmega2560之间的联系。

RS232的备用接口好找,问题是不知道怎么跟MCU的信号线相连,还需要查找ATMEGA2560的datasheet,很麻烦,但是木有别的办法。

其实操作还是很简单方便,只需知道方法。按照SPEC指示,将RX、TX信号线正确连接

这下万事俱备了,默数3、2、1上电

Bingo!

原本代码中设置输出打印的是"Hello,World!"太腻味了,笔者在代码中查看波特率设置的时候顺手改成了"Hello,eeboard",看起来舒服多了...

 

CAN控制器局域网络

 

CAN相比串口来说,没能达到耳熟能详的地步,但是就其地位,也是一方诸侯,究其原因,它掌控着汽车上的通讯系统,你能想象现在没有汽车的样子吗? 这下我们不得不带着虔诚的态度去了解下它的背景。CAN总线由德国BOSCH公司开发出,一开始主要应用于汽车工业,但是因为其突出的特点,高性能、高可 靠性,现在广泛应用在机械工业,数控机床,医疗器械等更多的领域。有点类似"无心插柳柳成荫"的样子。

 

CAN主要的三层结构为:物理层、数据链路层、应用层。

现在再回头来看STK600,其也搭载了一个CAN模块电路。

CAN收发器是Atmel公司自家的产品 ATA6660,支持差分串行总线标准

在STK600开发板中实际应用

通过Atmel 自家设计的 ATA6660 CAN收发器,电路变得再为简单不过了,只需搭载几个电阻电路,一切就顺理成章的完成了。怪不得现在都说软件工程师吃香,硬件电路设计工程师都快没饭吃 了。。。当然,这个是只是玩笑,我们来看看CAN模块电路中的几个特殊接口TERM、SPLIT、SLOPE CTRL是不是另有玄机。

 

  • TERM:在CAN波特率大于100 Kb/s,需要连接跳帽,这相当于在CAN-H和CAN-L信号线间加了一个124欧姆的电阻

  • SPLIT:此跳帽主要是将CAN-H、CAN-L信号上拉

  • SLOPE CTRL:此跳帽无论连接哪个位置都是将RS信号下拉,以调整CAN信号斜率以及防止信号瞬变

有些遗憾,Atmel Studio6.1没有提供针对ATMEGA2560的CAN例程,无法实现CAN功能的演示,颇为失望。

 

LIN总线

 

汽车的"廉价"导致了家用汽车的普及,可能在某些城市,上班出行用到的交通工具又回到了绿色环保的自行车,方便快捷。而专门针对汽车的CAN总线通 讯系统在一些廉价的汽车上似乎有些大材小用,于是,应运而生了LIN总线,这是CAN总线的辅助扩展。你也可以理解为LIN总线是CAN总线的小跟班,基 本不需要硬件基础,LIN总线硬件的实现可以是基于普通的串行通信接口(SCI),甚至在子节点中可以用普通I/O口加上定时器进行模拟。它的存在,无疑 是在廉价汽车上性价比高,比CAN总线更加适用。

STK600开发套件使用的LIN收发器为Atmel的ATA6661,支持LIN 2.0规范,紧挨着RS232串口,其待遇可见一般,十足是个跟班的命。

ATA6661外部接口很少,同样,在STK600开发板中的电路也相对要简单

在搭载设备板的STK600开发板上,其应用在LIN总线既可以作为主设备,又可作为从设备,而在总线上运行的应用作为主设备时必须

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top