我对微控制器越来越熟悉,现在想将它连接到互联网。微控制器能够做到这一点的最低要求是什么,特别是如果可能的话,一个 AVR。其次,还需要什么?我阅读了有关以太网控制器的信息,但并不确定它们的功能以及它们如何与微控制器接口。
使微控制器在线(没有 Arduino 屏蔽)需要哪些组件?
我对微控制器越来越熟悉,现在想将它连接到互联网。微控制器能够做到这一点的最低要求是什么,特别是如果可能的话,一个 AVR。其次,还需要什么?我阅读了有关以太网控制器的信息,但并不确定它们的功能以及它们如何与微控制器接口。
使微控制器在线(没有 Arduino 屏蔽)需要哪些组件?
开源Nanode项目几乎实现了将 Arduino 连接到互联网所需的最低硬件——ATMega328 微控制器、ENC28J60 以太网控制器、74HC125 电平转换器(这样 Mega328 仍然可以在 5v 下运行并与 ENC28J60 通信从 3.3V 运行)和以太网插孔(带有内部磁性),以及相关的电源和无源电路。您可以在网上阅读更多关于它的信息,包括它的焊盘页面。它还被评为2011 年最佳物联网开源项目,因为它物有所值。
全面披露 - 我在Wicked Device销售此产品。
我相信,要获得或多或少的高效路径,您应该从向以太网 IC(例如 ENC28J60)添加一个单独的 spi 开始,然后从那里改进。这种芯片将抽象OSI第 1 层和第 2 层。
一旦你有了硬件,我相信编程肯定是最具挑战性的部分,因为你必须了解 IP、TCP 以及你将使用的任何协议的细节。
在深入研究所有理论细节之前,您可能更愿意通过示例学习,所以我相信看看tuxgraphics(关于 avr web-server 的文章,带有代码- 开源)、embeddedmarket等网站的内容(查看他们的用户手册的原理图)。另请查看此博客文章。
当然,您将需要尽可能多的 RAM 和 EEPROM,您可以使用 8 位系列的设备来做到这一点。
也不要忘记你可以从一些非常简单的东西开始(没有网络服务器,只是一个类似 telnet 的连接,或者原始的(简单地将你当前的串行接口转换成一个基于套接字的接口),并使用诸如putty之类的软件进行连接进去)。
最后一点,如果您需要快速解决方案,您还可以为您的串行/ttl 通信端口使用插入式转换器。有供消费者使用的版本(digi one SP、moxa Nport5150 等)和其他版本可以集成到您的项目中(来自moxa、hw-group等)。这些完全抽象了 osi 层 1、2、3、4。好吧,它们抽象了一切。
希望这有助于您走上正轨。