|
米尔瑞萨RZ/G2L开发板接口资源丰富、性能也比较强,所以特别适合作为网关终端使用。网关终端一般需要给用户提供配置平台用于参数配置,一般的实现方式通过串口或者网口和上位机通讯,需要专门的上位机提供GUI工具配置或者命令行配置,此外还有一种方式就是通过开发板提供HTTP服务,通过网页配置,后者更方便,因为不需要开发上位机GUI工具,直接网页登录即可配置。
源码直接从官网(http://acme.com/software/thttpd/)下载,并解压:
- tar -xvf thttpd-2.29.tar.gz
复制代码 修改源码,在httpd.c源码中将 int namelen = sizeof(name);改为 socklen_t namelen = sizeof(name);将 int client_name_len = sizeof(client_name); 改为 socklen_t client_name_len = sizeof(client_name);
注释掉如下代码
//pthread_t newthread;
//if (pthread_create(&newthread , NULL, accept_request, client_sock) != 0)
// perror("pthread_create"); 取消注释 accept_request(client_sock);
交叉编译,首先执行 - <font size="4">./configure
- </font>
复制代码 添加www组,否则权限有问题:
- <font size="4">sudo addgroup www</font>
复制代码 将3个makefile中的CC=gcc改成CC=aarch64-linux-gnu-gcc 。
之后执行make 和make install。
之后将编译出来的可执行文件thttpd直接拷贝到米尔瑞萨RZ/G2L开发板上。
配置http,按照如下内容配置即可,存放在/etc目录下。
配置index页面,内容如下,存放在上述conf文件标明的/home/httpd/html目录中。
- <html>
- <head>
- </head>
- <body>
- <title> 米尔瑞萨RZ/G2L开发板-创新应用 </title>
- <marquee>
- <font color=red>
- 米尔瑞萨RZ/G2L开发板-创新应用!!!
- </body>
- </html>
- </font>
- </marquee>
复制代码
启动服务,通过如下命令。
- <font size="4">thttpd -C /etc/thttpd.conf</font>
复制代码 然后查看进程:
- <font size="4">root 2450 1.9 8.2 178604 165200 ? Ss 07:16 0:00 thttpd -C /etc/thttpd.conf
- root 2452 0.0 0.0 12956 664 pts/0 S+ 07:16 0:00 grep --color=auto thttpd
- </font>
复制代码
PC打开浏览器,输入米尔瑞萨RZ/G2L开发板IP地址。
到此为止,一个简单的嵌入式网关搭建完成,后续可以根据需要,基于CGI极术,从web端控制尔瑞萨RZ/G2L开发板的各种资源,如GPIO、LED、CAN等。
|
|