AT32 EMAC http server,如何控制流水灯以及ADC取样

cathy的头像
cathy 发布于:周五, 08/19/2022 - 09:26 ,关键词:

概述

HTTP server作为最为普遍的网络应用,我们每日开启浏览器访问的都是HTTP server,因此本使用指南,将展示如何控制流水灯以及ADC取样。

硬件资源

1) DM9162以太网模块
2) AT-START-F407 V1.0实验板
3) 以太网线

软件资源

http_server: HTTP server源程序,运行HTTP服务端程序

AT32 HTTP server程序设置

管脚配置

“表1.
表1. 管脚配置

LwIP设置

硬件资源只提供从PHY到MAC的信号处理,若要进行开发,则需要实作TCP/IP协议栈,在本应用中使用LwIP协议栈,该协议栈主要关注的是怎样减少减少内存的使用和程序代码的大小,这样就可以让LwIP适用于资源有限的小型平台例如嵌入式系统,更详细的内容可以访问官方网站。

由于整个协议栈已经整合到代码中,大部分的内容都无须修改,使用者只要根据自己的网段去设定IP地址及闸口地址即可,这两个全局变量宣告在netconf.c的上头。

“图1.
图1. 配置芯片的IP地址

HTTP server project设置

在本应用中,会透过网页控制开发板上的周边,故在启动HTTP server之前,我们必须先配置好被控制的周边,LED的部份由于在AT的例程中已经写好,用户可以直接调用at32_board_init();ADC的部份则需要用户自行撰写,在代码中有提供一个参考代码使用,用户也可以直接调用adc_configuration()来始能ADC的采集,或者根据应用去修改代码以符合需求。

“图2.
图2. 配置ADC

在配置完待控制的周边后,就可以始能HTTP server了,本应用中用户可以直接调用httpd_init()这个函式,深入地追踪这个函式,可以发现到是透过注册http_recv()到TCPlayer后,解析来自用户端的请求,有兴趣的用户可以研究这支函式来了解本应用的设计方式,在此不加赘述。

通过浏览器控制开发板周边

1) 设定上位机的IP地址、网路屏蔽及闸口,IP地址与闸口需要跟芯片设置在同一个网段下。

2) 打开PC端的浏览器,输入HTTP server的IP,网页加载后会显示开发板拥有的通讯接口。

3) 点击LED Control,跳转进入LED控制页面,勾选欲控制的LED后,点选Send Command去点亮LED,或者是取消勾选使之熄灭。

4) 点击ADC sampling,跳转后会显示当前ADC取样的电压值

“图3.
图3. 设置PC端的IP、网路屏蔽与闸口

“图4.
图4. HTTP server页面

“图5.
图5. LED控制页面

“图6.
图6. ADC采样页面

来源:AT32 MCU 雅特力科技
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 49