bigbat 发表于 2020-3-30 09:42

STM32MP157A-DK1测评+GO语言web服务(5)

<div class='showpostmsg'><p>现在很多带网口的嵌入设备提供有web方式的配置工具。由于最近在了解GO语言,有资料说GO语言的跨平台特性非常的好,性能也十分的优秀。于是就想试着在开发板上看看不能否运行GO的程序。<br />
本测试使用的是golang 1.13.5版本,资料上说只有1.5版以上的GO才支持交叉编译。这一点需要注意</p>

<pre>
<code class="language-java">package main

import (
   "fmt"
   "net/http"
)

func handler(w http.ResponseWriter, r *http.Request){
    fmt.Fprintf(w, "Hi, This is an example of http service in golang!")
}

func main() {
   http.HandleFunc("/", handler)
   http.ListenAndServe(":8080", nil)
}


</code></pre>

<p>我的GO环境是已经测试好的就直接写代码了。<br />
编译过程<br />
<strong>设置环境:</strong><br />
set GOOS=linux&nbsp;<br />
set GOARCH=arm&nbsp;<br />
set GOARM=7&nbsp;<br />
环境参数GOOS=linux 是指定平台;GOARCH=arm 指定cpu架构;GOARM=7 指定ARM的指令集;<br />
<strong>编译程序</strong><br />
go build helloweb.go</p>

<p><strong>上传文件</strong><br />
scp helloweb root@192.168.0.103:/usr/local<br />
注意换成你机器的IP地址<br />
windows的机器scp传输的文件是没有执行权的!<br />
<strong>执行程序</strong></p>

<p>chmod +x helloweb</p>

<p><br />
可以看见正确的输出了页面。<br />
比较遗憾的是go编写的程序尺寸有点大,我的有6.15M的样子吧。不过用go语言编写的程序功能和性能要好的多。而且功能可以很丰富。开发效率也比较高。go也支持编写动态库,配合C语言可以编写一些比较复杂的程序了。</p>

<p></p>

<p><b><font color="#5e7384">此内容由EEWORLD论坛网友<font size="3">bigbat</font>原创,如需转载或用于商业用途需征得作者同意并注明出处</font></b></p>
</div><script>                                        var loginstr = '<div class="locked">查看本帖全部内容,请<a href="javascript:;"   style="color:#e60000" class="loginf">登录</a>或者<a href="https://bbs.eeworld.com.cn/member.php?mod=register_eeworld.php&action=wechat" style="color:#e60000" target="_blank">注册</a></div>';
                                       
                                        if(parseInt(discuz_uid)==0){
                                                                                                (function($){
                                                        var postHeight = getTextHeight(400);
                                                        $(".showpostmsg").html($(".showpostmsg").html());
                                                        $(".showpostmsg").after(loginstr);
                                                        $(".showpostmsg").css({height:postHeight,overflow:"hidden"});
                                                })(jQuery);
                                        }                </script><script type="text/javascript">(function(d,c){var a=d.createElement("script"),m=d.getElementsByTagName("script"),eewurl="//counter.eeworld.com.cn/pv/count/";a.src=eewurl+c;m.parentNode.insertBefore(a,m)})(document,523)</script>

兰博 发表于 2020-3-30 10:06

<p>弱弱的问一下,这个Go语言,看着跟C语言很像啊</p>

bigbat 发表于 2020-3-30 11:23

兰博 发表于 2020-3-30 10:06
弱弱的问一下,这个Go语言,看着跟C语言很像啊

<p>golang语言和C的语法甚至和C++都不像。是一种新的语言。具有函数式编程语言的特性,也可以支持接口和多态。</p>

damiaa 发表于 2020-4-8 10:56

<p>不错。这板子就是BGA的加上价格也不便宜。 所以难普及。后面看ST怎么推。玩起来好像还很不错。</p>

bigbat 发表于 2020-4-8 12:34

damiaa 发表于 2020-4-8 10:56
不错。这板子就是BGA的加上价格也不便宜。 所以难普及。后面看ST怎么推。玩起来好像还很不错。

<p>听说ST的百分七十的收入是来自于散户应该太贵不了。而且ST的芯片资料比较开放,我猜想应该是奔着卖芯片去的。板子贵不贵的无所谓了。</p>

人民币的幻想 发表于 2020-4-13 18:40

<p>嵌入式环境下gc会是个大问题</p>
页: [1]
查看完整版本: STM32MP157A-DK1测评+GO语言web服务(5)