使用带Arduino IDE & WIZ820io的ATmega1284P
使用带Arduino IDE & WIZ820io的ATmega1284P
2013/07/04 | Filed under: IO模块 and tagged with: arduino, Arduino IDE, atmega1284p, RAM问题, W5200, WIZ820io 1 Views

当你在标准的Arduino上使用ATmega328时发现,如果你的项目资源用尽了,或许是IO,RAM再或者是flash,你可能会想升级到足够好的ATmega2560P。但是maniacbug中指出,有另一个选择:在很多情况下,使用ATmega1284P会更好!
与329P相比,1284P多了9个数字IO引脚,多了2个模拟引脚,一个额外的中断,一个额外的UART,还多了3K的EPROM,但真正的闪光点是128K的flash(328P是32Kflash),巨大的16K RAM,328P仅有可怜的2K,甚至击败了2560P的8K。而且它并不比328P贵很多,还比2560P便宜一点。
自从maniacbug发布之后,我就得知了这些。特别是建立基于网页的Nanode进行红外线远程控制时,我遇到了RAM的问题,尽管我考虑使用另一个W5100以太网插板但还没有时间做。然而最近WIZnet WIZ820io SPI以太网模块(基于W5200)突然出现,看到 @andrewdlindsay and @stuartpoulton提到他们在1284P上使用了WIZ820io,我就想试一下。在英国买到她们并不容易,但我足够幸运,发现有人在eBay上以19.95英镑的价格在出售,果断抢购了一个。
让它运行非常容易。
首先,弄到Arduino的 maniacbug’s mighty-1284p core ,解压到名为~/sketchbook/hardware/mighty-1284p/位置中。
启动Arduino IDE,你会发现在Tools>Board菜单下有一些新的条目。我们关心的是 “Mighty 1284p 16MHz using Optiboot”
Bootloader(引导装载程序)
接下来我们需要在1284P上得到一个bootloader,我用一个Arduino 作为ISP编译器,就像用ATtiny,连接如下:
| Arduino | ATmega1284P |
|---|---|
| 5V | Pin 10 |
| GND | Pin 11 |
| D10 | Pin 9 |
| D11 | Pin 6 |
| D12 | Pin 7 |
| D13 | Pin 8 |
你也需要在引脚12&13之间放一个16MHz的晶振,并且通过一个22pF的陶瓷电容将其接地。
下载ArduinoISP样码(Arduino1.0.1提供的例子好像就可以工作)到你的Arduino上,然后进入Tools>Board菜单,设置板子为“Mighty 1284p 16MHz using Optiboot”,然后使用Tools > Burn Bootloader将bootloader稍写到1284P上。
你可以断开连接Arduino,但保持水晶头连接。
下载样码
现在我们需要一个FTDI连接器来将样码下载到芯片,连接一个6引脚的接头,如下:
| FTDI | ATmega1284P |
|---|---|
| DTR | Pin 9 via 0.1uF capacitor & a 10K pull up between the capacitor and pin 9 |
| RXI | Pin 15 |
| TXO | Pin 14 |
| VCC | Pin 10 & Pin 30 |
| CTS | Not used |
| GND | Pin 11 & Pin 31 |
同时在VCC和GND之间接一个0.1pF的电容。如果你有什么不清楚的地方,可以参考maniacbug’s schematic.我注意到FTDI CTS引脚也接地了,但是我没发现任何FTDI的连接是必要的,所以我让它断开了。
连接一个FTDI的引线/适配器,你可以用正常的方式上传样码。注意用于IO引脚的绘图已经在 maniacbugs blog post上有了。
你可能会发现在我的图片中,在FTDI连接上有一些不同,实际上我用了一个小板子,那是我为之前的项目做的,它有一个3V3的调节器,滤波电容,用于复位线的上拉电阻。我只用了它因为它就在手边,且无论怎样我都需要一个3V3的用在WIZ820io上。如果你想做一个,就是this stripboard layout中左面的那个小板子(注意输出的引脚更改顺序),很多时候用于快速圆形开发都很有用~
WIZ820io SPI 以太网模块
这就是我们需要3V3的地方,WIZ820io模块的IO可以承受5V电压,但是需要3.3V供电,所以你还需要一个3V3的FTDI引线,某种调节器的设置像我用的一样,用一个调节器给820io模块供电。
除此之外,都很容易,连接如下:
| WIZ820io | ATmega1284P |
|---|---|
| GND | GND |
| VIN 3.3 | 3V3 |
| nSS | Pin 5 |
| MOSI | Pin 6 |
| MISO | Pin 7 |
| SCKJ | Pin 8 |

你可以使用标准的Arduino以太网库来交换一些文件,但对于我来说有点乱,最好使用修改版本。就这样!很简单吧!
原文翻译自:
http://nathan.chantrell.net/20120811/using-the-atmega1284p-with-the-arduino-ide-wiz820io/
——————————————————————————————————————————————–
WIZ820io可以说是WIZnet推出的一款革新产品,通过高速SPI接口连接WIZ820io和主板上的MCU,结合MAG-JACK (RJ45 with X’FMR)-即内含变压器的RJ-45,采用了 “胶连逻辑”单元构成了高集成度的设计方案。
直插的小巧网络模块设计,W5200位于MAG-JACK下面,采用隐藏式设计,了解W5200的都知道,采用全硬件TCP/IP协议栈,减轻IP层,网络层负担,易移植、高集成、高效率、低功耗、高质量的特点能够让W5200得到更多的工程师及企业认识、进而认可。
by Katrina
感谢您的阅读!欢迎与我更多交流:katrina@wiznet.co.kr
使用带Arduino IDE & WIZ820io的ATmega1284P的更多相关文章
- 使用Notepad++代替笨拙的Arduino IDE
Arduino自带的IDE 太不好用了,下面是用强大,轻量级,免费,开源,丰富插件的的Notepad++编辑器来打造Arduino开发环境 . 配置过程对新生来说可能有些繁琐,但是我尽力写的很详细了, ...
- Arduino IDE 添加DHT11传感器第三方库的方法
由于Arduino本身没有DHT 11温湿度传感器的的头文件,单有第三方的库可以给我门使用.方法如下: Step 1:如果你已经下载了最新版的Arduino IDE就可以使用其自带的库管理器和版型管理 ...
- 进阶之路(基础篇) - 012 Arduino IDE 添加DHT11传感器第三方库的方法
由于Arduino本身没有DHT 11温湿度传感器的的头文件,单有第三方的库可以给我门使用.方法如下: Step 1:下载地址:https://pan.baidu.com/s/1qYfdBJ2#lis ...
- Arduino IDE搭建ESP8266开发环境,文件下载过慢解决方法 | ESP-01制作WiFi开关教程,改造宿舍灯
1. Arduino IDE配置ESP8266环境 参考:https://www.jianshu.com/p/cb0274d612b5 首先从 Arduino 官网 下载最新版本的 Arduino I ...
- Ros使用Arduino 1安装Arduino IDE
安装Arsuino IDE sudo apt-get install arduino 设置库文件路径 在使用ROS的库文件时,必须在代码的开头包括: #include <ros.h> 接下 ...
- Arduino IDE for ESP8266教程(0)配置IDE
淘宝链接 https://detail.tmall.com/item.htm?id=540067174120&spm=a1z09.2.0.0.6f7c6509ujAvQs&_u=71q ...
- 进阶之路(基础篇) - 020 放弃Arduino IDE,拥抱Sublime Text 3
本帖转载:Arduino讨论区相信大家对Arduino IDE的不能输入中文,排版不方便,没有行号,界面难看......深恶痛绝.我也是.经过vs2012,eclipse等IDE的试用,配置麻烦,ID ...
- How arduino IDE works?
test.ino void setup() { pinMode(,OUTPUT); } void loop() { digitalWrite(,HIGH); delay(); digitalWrite ...
- Arduino IDE 安装esp8266 2.4.rc2的编译环境
2.4. 版本, 有一个我需要的功能, 串口缓存, 可以修改. Serial.setRxBufferSize(1024); //修改为1024个字节. 安装步骤: 1. 需要FQ. 推荐用" ...
随机推荐
- ajax与Servlet
1.后台返回text类型的数据 <%@ page language="java" import="java.util.*" pageEncoding=&q ...
- await, anync
public Form1() { InitializeComponent(); } // The following method runs asynchronously. The UI thread ...
- Jquery插件-Html5图片上传并裁剪
/** * 图片裁剪 * @author yanglizhe * 2015/11/16 */ (function($){ /** * Drag */ var Drag={obj:null,init:f ...
- mongodb的副本集总结
主节点A.备份节点B.仲裁者C.是否真的需求仲裁者? 需要. 怎样才算大多数表格如下: 怎样才算大多数表格 副本集中的成员总数 副本集中的大多数 1 1 2 2 3 2 4 3 5 3 6 4 7 4 ...
- 仿写Windows7桌面和任务栏 HTML5+CSS3+Jquery实现
过去一段时间零零散散的自学了一点点jquery的相关用法,基本上属于用到哪个了,就去查然后就学一点,没有系统的学过,深入的用法也不是特别了解,毕竟javascript基础就比较薄弱.经过一段时间的零敲 ...
- Repeater的ItemDataBound 事件中e.Item.DataItem 的数据类型
1.使用DataSet和DataTable绑定数据源时 DataRowView view = (DataRowView)e.Item.DataItem; 2.DataReader绑定数据源时 Syst ...
- C# 连接SQL数据库
感觉很有必要总结一下 一:C# 连接SQL数据库 Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;P ...
- react相关
react 简单入门 ant 蚂蚁金服react组件 redux 阮一峰入门react material-ui组件库 webpack入门 http://www.jianshu.com/p/42e115 ...
- 单点登录CAS使用记(一):前期准备以及为CAS-Server配置SSL协议
知识点: SSO:单点登录(Single Sign On),是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统. CAS:耶 ...
- 关于C++中的虚拟继承的一些总结
1.为什么要引入虚拟继承 虚拟继承是多重继承中特有的概念.虚拟基类是为解决多重继承而出现的.如:类D继承自类B1.B2,而类B1.B2都继承自类A,因此在类D中两次出现类A中的变量和函数.为了节省内存 ...