2

我需要使用 AVR 微控制器为简单的数据收集设备构建原型。

该设备将主要收集传感器数据并通过 SNMP 和 HTTP 响应提供这些数据。

对于已经内置 HTTP 服务器和 SNMP 代理的 AVR 软件,我有哪些选择?

4

7 回答 7

3

如果您使用的是 AVR32,Atmel 有一个您可以使用的buildroot 发行版。这将包括许多网络守护进程。

恐怕还没有对较小的芯片做太多事情。

于 2009-06-04T15:42:32.003 回答
3

Arduino Ethernet Shield具有执行此类操作的硬件和软件,并且可以在 ATMEGA168 上运行。如果您不喜欢 Arduino 格式或软件,应该很容易对代码和硬件进行逆向工程,以便与您自己的设计一起使用。

看起来可用的软件库像串行连接一样面向字节。 这个 wifi shield看起来可能对软件更复杂。

祝你好运!

于 2009-06-04T20:06:46.430 回答
2

Pascal Stang 的 avrlib提供了用于基本网络(ARP、IP、ICMP、DHCP 等)的库,如果您找不到任何预编码的内容,可以在这些库的基础上提供 HTTP 和 SNMP。

于 2009-06-04T16:59:18.710 回答
2

我找到了这个德语网页,它展示了如何在连接了 NIC 的 AtMega32 上运行网络服务器。

我曾经从事过一个类似的项目,我们在 AtMega128 上使用(内存映射)RTL 网络 PHY(称为 8BitAmEth)将 TCP/IP 堆栈重新实现到 Web 服务器,但我找不到任何在线 atm 跟​​踪。我正在努力让它恢复。否则,如果适合你,我可以把我拥有的东西发给你。

编辑:这里有原始数据、pcb、模式和源代码。

于 2009-06-04T17:07:58.013 回答
2

uIP是一个非常小的 TCP/IP 实现,可以满足您的需求。它不会比这小很多。

如果您有更多的 RAM 可用(例如 100 kB),您可以尝试lwIP TCP/IP 堆栈。

这两个项目都是免费的,不是特定于 AVR 的。

你的底层连接层是什么?以太网,还是某种调制解调器?如果您正在使用调制解调器,也许您需要 PPP。我们选择在一个特定的项目上使用 lwIP,因为它支持 PPP。我上次检查的 uIP 不做 PPP。

于 2009-06-07T08:47:12.327 回答
0

microchip 为他们的 8 位微控制器提供了一个 tcp/ip 堆栈,包括一个简单的 snmp 和 http 服务器,源代码可以在他们的网站上找到,并且是非常通用的 C,如果你找不到其他东西,你应该能够适应它。

如果您在生产中实际使用它,请确保您检查许可证,我想它会将其使用限制为 PIC。

于 2009-06-04T16:54:47.950 回答
0

AVR 板有一个完整的环境,带有 TCP/IP 和所有类似的支持,称为 ethersex(不要责怪我的名字......我与这个项目无关)。有一个维基http://www.ethersex.de/index.php/Main_Page。虽然是.de地址,但好像大部分内容都是英文的。

该环境附带了一个出色的构建配置脚本,类似于 Linux 内核之一,下载直接包含整个工具链。

我用它来做一些小东西,效果很好。

于 2012-08-31T11:21:58.597 回答