请注意: 由于早期 LPC2368 设备存在问题,MAM(内存加速器)模式必须设置为零, 演示才能正确执行。 本页描述了在 NXP LPC2368 ARM7 微控制器上运行的 FreeRTOS uIP 演示。 此演示创建了一个简单的 Web 服务器, 可以用于查看运行时间信息并将数据写入目标硬件上的 LED 和 LCD 显示器中。 此演示使用:
自此演示创建以来,FreeRTOS 已对 uIP 堆栈做了一些修改。 详情请参阅嵌入式以太网示例列表页面。 Hitex 提供了适用于 LPC2378 (使用 HiTOP 开发工具)的替代演示。
重要提示!LPC23xx Web 服务器演示的使用说明使用此 RTOS 移植之前,请阅读以下所有要点。另请参阅常见问题:我的应用程序未运行,问题可能出在哪里? 源代码组织FreeRTOS 下载包含所有 FreeRTOS 移植的源代码,因此包含的文件远多于此演示使用的文件。 请参阅源代码组织部分,获取 了解下载文件的说明和创建新项目的信息。LPC2368 演示的 CrossWorks 解决方案(工作区)位于 FreeRTOS/Demo/ARM7_LPC2368_ROWLEY 目录。
演示应用程序演示应用程序设置直接使用点对点(交叉)电缆或通过使用标准以太网电缆的集线器/路由器将 MCB2300 开发板连接到运行 Web 浏览器的计算机上。 点对点连接时,原型板也允许使用标准以太网电缆, 但我没有尝试过这种配置。演示使用的 IP 地址是通过 FreeRTOS/Demo/ARM7_LPC2368_Rowley/uIP_Task.c 文件中的 uipIP_ADDR0 到 uipIP_ADDR3 常量设置的。 运行 Web 浏览器的计算机使用的 IP 地址必须和原型板使用的 IP 地址相兼容。 为此,可以将二者 IP 地址中的前三个八位元组设置成相同的值。 例如,如果运行 Web 浏览器的计算机所用 IP 地址是 192.168.100.1,那么原型板的 IP 地址可以使用 192.168.100.2 到 192.168.100.254 范围内的任何地址 (任何网络上的现有地址除外)。 同一文件中的 uipMAC_ADDR0 到 uipMAC_ADDR5 常量定义了目标硬件使用的 MAC 地址。 请务必确保所配置的 MAC 地址在原型板所连接的网络上具有唯一性。 此演示应用程序使用了在原型板上构建的 LED 和 LCD,因此无需使用其他硬件设置。
构建演示应用程序目前提供三种项目配置。 "THUMB Flash Debug" 和 "ARM Flash Debug" 执行最少优化,可轻松与 CrossConnect JTAG 调试接口结合使用。 "ARM Flash Release" 执行更多优化,不便于调试器操作,还会在上电复位时直接启动。
运行演示应用程序
功能性此演示应用程序创建了 23 个持久性任务,并定期动态创建和销毁另外 4 个任务。 这些任务主要包含标准 演示应用程序任务(有关个别任务的详细信息,请参阅演示应用程序部分)。除了标准演示任务外,还创建了以下任务:
如果演示应用程序正确执行,将实现以下效果:
提供的网页每个提供的页面顶部包含一个菜单,其中含有指向其他每个页面的链接。
提供的 RTOS 统计页面 RTOS 统计页面提供了系统内每个任务状态的运行时信息,包括堆栈高水位线(任务开始执行后, 可随时在此处获取最小数量的堆栈)。 该页面大约每 2 秒重新加载一次,具体取决于网络负载。 此页面分三个部分传输:HTML 标头和菜单、动态生成的内容以及 HTML 页脚。 这样, 页面的加载速度相对较快。 可以通过一次性传输整个页面来进一步优化加载速度。 有时,连续重新加载 RTOS 统计页面会导致无法从该页面离开。
提供的 IO 页面 IO 页面提供了一个简单的接口,允许将数据发送到 MCB2300 开发板上的 LED 和 LCD。 三个复选框支持设置和查询 P2.5、P2.6 和 P2.7 输出口上的 LED 状态。 文本框可用于向 LCD 写入消息, 但不会查询当前显示的文本。 点击 "Update IO" 按钮可将变更发送到目标硬件。 请注意,'check' 任务每 5 秒更新一次显示内容,因此从 Web 客户端发送的任何文本会很快被覆盖。 TCP 统计和连接页面显示运行时网络信息。 请注意,这些页面单独传输每行数据,因此加载速度较慢。 这演示了如何通过牺牲已实现的数据吞吐量来利用小型传输缓冲区优化内存使用。
RTOS 配置和使用详情此演示使用了 FreeRTOS LPC2000 GCC 移植,重要使用信息详见标准 LPC2000 GCC 演示文档页面。Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|