高通ar93414.0版本后不开源了吗

使用Ubuntu进行编译开发需要安装的依赖库如下:

以下为编译步骤,在make menuconfig中做的配置将在后面具体介绍在make V=s前需要做一些移植修改也将在后面具体介绍。

对开发板烧写程序可以通过多种方式实现:在Uboot中烧写Uboot与固件、编程器烧写、Web配置界面中程序升级

使用网线连接开发板与PC,然后连接上串口监控(-n-1这里使用SecureCRT),开发板上电在SecureCRT中看到Uboot打印信息,按任意键打断启动进入Uboot命令行使用printenv命令查看启动参数,记录下serverip例如为192.168.1.2,并将PC更改为该IPPC端开启Tftp Sever软件,在uboot命令行中输入命令如下:

重启开发板看到uboot正常打印。

同上面烧写uboot一样进入uboot命令行模式,输入如下命令:

上面两种方式前提是目标板不是板砖万一变砖或者开发板上未烧写过程序,则需要使用编程器来烧写目标代码这就是对普通的SPI flash烧录程序方法,只要知道芯片型號有固件就行了。

注意这种方式只能升级统一型号的路由固件如现在正在运行的是wr720的固件,你编译了一个wr740的固件是无法通过web升级的,只能通过上面在Uboot中烧写固件的方式进行升级

这里将介绍上面编译步骤中的make menuconfig中的具体配置。在这里配置时候使用MR3220-V2路由器为蓝本

开始配置,首先选择CPU与路由型号:

在这里我们只做了必须的配置更加丰富的功能可以再额外配置添加,如常见的USB storage、3G、Network Share(Samba)等等

在这里我们做嘚移植中有些可以通过直接修改开发板中的配置文件来实现,而不需要重新编译固件但是我们要的是一个编出来就是默认配置的固件,所以以下移植都将是在编译前实现的

手头上的AR9331核心板上使用的是8MB的dataflash,而标配的MR3220-V2路由是4MB为此我们需要修改:

如下是一个最终配置示例,這其实也就是生成的/etc/config/wireless配置文件

4.4. 设置默认登陆密码

注意Openwrt的登陆用户名为root,且当设置了密码后将不能在使用Telnet来登陆目标板需使用SSH。

Openwrt固件LAN口默认ip为192.168.1.1我们可以通过如下方法在编译中修改默认ip:

在trunk目录下新建files/etc/config/目录,然后将已经个性化定制好的network配置文件放在这个目录下这样再编譯出来的固件将执行这个network配置。在此我们只要修改lan口的ipaddr即可如下所示:

AR9331只有一个调试串口,如果想要释放调试串口用作他用比如通信等为此需要释放系统console打印,具体方法如下:

这里的18即是GPIO18GPIOF_OUT_INIT_LOW限定初始化输出低电平,后面的名字可以自定

系统启动后可以看到GPIO注册成功:

可鉯使用cat命令获取管脚当前输出值,使用echo命令设置管脚输出如下:

这里说明一下,在写C代码程序控制时候可以直接调用system()函数运行linux命令比如茬你的代码中你想控制GPIO18引脚的输出,那么你可以如下使用

4.8. 按键与指示灯

  • l GPIO12做复位按键,短按则实现路由复位长按大于5s则复位路由并恢复默认设置

注:这里hostname可以改成你想要的主机名字,将来在web页面中显示的也将是这个主机名

4.10. 语言及主题设置

编译中的默认设置为auto,即自动识別这将根据浏览器设置而定,例如我们使用ie、360浏览器登陆后得到的是英文界面,而使用火狐则是中文界面如果向默认设置问中文,則修改build_dir/feeds/luci/modules/base/root/etc/config/luci配置文件将默认auto修改问zh_cn,并将主题锁定为bootstrap

4.11. 自定义脚本的使用

Openwrt为用户预留的自定义启动脚本/package/base-files/files/etc/rc.local来实现一些扩展功能我们可以在这里添加一些命令,或者调用一个外部脚本来实现一些扩展功能  

传统的路由器固件是由官方提供嘚这些固件是不开源的,而且这些路由器的功能也比较单一很难满足日益变化的智能家居需求。因此在构建物联网核心时,需要考慮第三方固件平台

Openwrt、DD-Wrt以及Tomato是三个最为著名的第三方路由器固件平台。当然还有其他一些更加小众的版本,和很多从这三大固件衍生出来的修改版固件在此我就不赘述了。

我要回帖

更多关于 高通ar9341 的文章

 

随机推荐