发 帖  
[讨论]

【创龙AM4379 Cortex-A9试用体验】之移植boa到TL-4379+WEB远程操作开发板

2016-7-31 23:25:42  3341 ARM
      
   
      
      
           
           
      
   
5.1 编写LED灯的CGI代码leg.cgi.c
#include
#include
#include
#include
#include "cgic.h"
#include
#include
#include
#include
#include
char mode[64];
void get_mode()
{
       cgiFormStringNoNewlines("mode",mode, 64);
}
int cgiMain()
{      
    int rnt = 0;
   get_mode();
    if(strncmp(mode,"led_off",7) == 0)
    {
       rnt = 1;
       system("echo 0 > /sys/class/leds/user-led0/brightness");
    }
   else if(strncmp(mode,"led_on",6) == 0)
    {
       rnt = 2;
       system("echo 1 > /sys/class/leds/user-led0/brightness");
    }
   else
    {
      
    }
   
   cgiHeaderContentType("text/html

");
   fprintf(cgiOut,"
");
   fprintf(cgiOut,"
");
   
   if(rnt == 0)
    {
       fprintf(cgiOut," OPEN LED FAILED!
");
    }
   else if(rnt == 1)
    {
       fprintf(cgiOut,"close led successed!
");
    }
   else if(rnt == 2)
    {
       fprintf(cgiOut,"open led successed
");
    }
   else
    {
      
    }
   fprintf(cgiOut,"
");
   fprintf(cgiOut,"
");
   close(fd);
       return 0;
}
5.1 下载CGI源码并编译CGI程序
    我们首先下载cgi库,网址如下:https://boutell.com/cgic/#obtain
将下载到的文件cgic207.tar拷贝到Ubuntu系统,执行解压命令:
tar -zxvf cgic207.tar
将加压后的所有文件拷贝到我们存放led.cgi.c的文件夹中,如命令所示:
cp cgic207/* test_cgi
执行命令:
交叉编译led.cgi的结果如图所示:
将index.html和led.cgi分别拷贝到开发板的/var/www和/var/www/cgi-bin目录下,并设置led.cgi的权限:
chmod 777 led.cgi
5.2 测试
关闭lighthttpd:
执行命令启动boa:
cd /usr/local
./bao
在PC的浏览器输入TL-4379开发板的IP地址,如图所示:
TL-4379开发板上电时,默认4个LED全亮,我们这里只控制LED0,其初始状态如图所示:
我们在网页上选择close,并点击submit按钮,如图所示:
命令执行结果如图所示:
TL-4379的LED0熄灭,如图所示:
从上图中可以看到,从原来的4盏灯全亮变为只有剩下的3盏灯亮。
我们再次在网页上选择open,点击submit按钮,执行结果如图所示:
在TL-4379开发板上,我发现LED0再次点亮,出现4盏灯全亮,如图所示:
6. 小结
我们通过从零开始是移植boa,配置boa到TL-4379开发板,再到测试静态网页,最后测试动态网页,达到了通过PC机的浏览器动态操作开发板板载资源的目的,又进一步的完善了把TL-4379作为车间数据采集服务器的功能,使通过TL-4379查询车间现场数据的方式多样化,为将来客户的不同需求做了较好的技术储备。

`
0
LED1:open
       close
      
2016-7-31 23:25:42   评论 分享淘帖 举报

撰写讨论

你正在撰写讨论

如果你是对讨论或其他讨论精选点评或询问,请使用“评论”功能。

您需要登录后才可以回帖 登录/注册

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题,请联系本站作侵删。 侵权投诉
快速回复 返回顶部 返回列表
关注微信公众号

电子发烧友网

电子发烧友论坛

社区合作
刘勇
联系电话:15994832713
邮箱地址:liuyong@huaqiu.com
社区管理
elecfans短短
微信:elecfans_666
邮箱:users@huaqiu.com
关闭

站长推荐 上一条 /6 下一条

快速回复 返回顶部 返回列表