NUC980开发板Linux系统EC20模块 移植 串口 PPP拨号
NUC980开发板Linux系统EC20模块 移植 串口 PPP拨号
- 1. EC20模块连接
- 2. Linux内核配置
- 3. 交叉编译PPP
- 4. 拨号脚本
- 5. 进行拨号
1. EC20模块连接
在嵌入式Linux中,4G网络连接是一个较容易实现的功能,大多数的4G模块接口都是MiniPCIE接口,深入了解一下就会发现,4G模块的通信接口是USB,所以4G模块的驱动通常选择使用USB驱动,这种情况下,只要USB驱动正常,4G模块在硬件上就能正常通信。但是本文中不采用USB驱动,而是采用串口驱动,二者在传输速率上存在不同。
将NUC980主控板中芯片NUC980DK61Y的引脚和EC20 R2.1模块的RX TX 通过电平转换芯片进行连接,以及EC20的powerkey引脚。具体可参考EC20硬件设计手册。
2. Linux内核配置
源码目录,在linux终端输入命令make linux-menuconfig进行配置。
选中如下选项,进行串口复用。
配置路径如下:
Device Drivers —> Character devices —>
<*> GSM MUX line discipline support(EXPERIMENTAL)
选中如下选项,可支持PPP拨号。
配置路径如下:
Device Drivers —> Network device support —>
<> PPP (point-to-point protocol) support
<> PPP BSD-Compress compression
<> PPP Deflate compression
[] PPP filtering
<> PPP MPPE compression (encryption)
[] PPP multilink support
<> PPP over Ethernet
<> PPP support for async serial ports
<> PPP support for sync tty ports
<> SLIP(serial line) support
保存退出,执行make,得到uImage文件,烧写到开发板。
3. 交叉编译PPP
将ppp-2.4.7压缩包复制到ubuntu下,解压。
ppp-2.4.7压缩包下载链接:https://pan.baidu.com/s/1dhyhfghJspcT0mfn1bH6ww
提取码:y5bs
- 生成Makefile文件:./configure --prefix=/…(指定文件夹)
- 编译
必须使用与开发板一致的编译器,NUC980用的是arm-nuvoton-linux-uclibcgnueabi
- 安装:make install
- 将编译得到的部分可执行文件复制到ARM开发板上:
按照上面的make好之后,在目录中找到如下的四个可执行文件:chat,pppd,pppdump,pppstats
将四个文件复制到ARM开发板的/usr/sbin目录下。 - 按照如上步骤复制完成后可以使用pppd命令和chat命令。
4. 拨号脚本
在开发板中的/etc目录下新建一个ppp文件夹,此处采用Putty来进行交互。
- 从ppp-2.4.7相应目录中拷贝文件,建立如下目录结构:
/etc/ppp/chap-secrets
/etc/ppp/pap-secrets
/etc/ppp/ip-up
/etc/ppp/ip-down
/etc/ppp/peers/ - 拨号脚本: /etc/ppp/peers目录下放置如下三个脚本
a. 拨号上网脚本quectel-ppp(使用联通卡)
# /etc/ppp/peers/quectel-pppd
# Usage:root>pppd call quectel-pppd
#Modem path, like /dev/ttyS3,/dev/ttyACM0, depend on your module, default path is /dev/ttyS3
/dev/ttyS3 115200
#Insert the username and password for authentication, default user and password are test
user "test" password "test"
# The chat script, customize your APN in this file
connect 'chat -s -v -f /etc/ppp/peers/quectel-chat-connect'
# The close script
disconnect 'chat -s -v -f /etc/ppp/peers/quectel-chat-disconnect'
# Hide password in debug messages
hide-password
# The phone is not required to authenticate
noauth
# Debug info from pppd
debug
# If you want to use the HSDPA link as your gateway
defaultroute
# pppd must not propose any IP address to the peer
noipdefault
# No ppp compression
novj
novjccomp
noccp
ipcp-accept-local
ipcp-accept-remote
local
# For sanity, keep a lock on the serial line
lock
modem
dump
nodetach
# Hardware flow control
nocrtscts
remotename 3gppp
ipparam 3gppp
ipcp-max-failure 30
# Ask the peer for up to 2 DNS server addresses
usepeerdns
b. chat脚本(quectel-chat-connect)
# /etc/ppp/peers/quectel-chat-connect
ABORT "BUSY"
ABORT "NO CARRIER"
ABORT "NO DIALTONE"
ABORT "ERROR"
ABORT "NO ANSWER"
TIMEOUT 30
"" AT
OK ATE0
OK ATI;+CSUB;+CSQ;+CPIN?;+COPS?;+CGREG?;&D2
# Insert the APN provided by your network operator, default apn is 3gnet
OK AT+CGDCONT=1,"IP","3gnet",,0,0
OK ATD*99#
CONNECT
c. 断开连接(quectel-chat-disconnect)
# /etc/ppp/peers/quectel-chat-disconnect
ABORT "ERROR"
ABORT "NO DIALTONE"
SAY "\nSending break to the modem\n"
"" +++
"" +++
"" +++
SAY "\nGoodbay\n"
5. 进行拨号
- PUTTY终端输入命令pppd call quectel-ppp &,出现以下说明拨号成功(未全部列出)。
- 查看模块运行状态
PUTTY终端输入ifconfig查看网络,如下出现ppp0说明4G模块确定拨号成功。
- 拨号成功后可将ppp0设置为静态路由。
设置PPP0为默认路由:先删除原来路由,route del default ;再将ppp0设置为默认路由,route add default dev ppp0。
NUC980开发板Linux系统EC20模块 移植 串口 PPP拨号相关推荐
- 基于全志A33开发板linux系统移植学习记录(Boot0)
基于全志A33开发板linux系统移植学习记录 第一章 Boot0基于ARMGCC的编译与修改 文章目录 基于全志A33开发板linux系统移植学习记录 前言 一.全志A33简介以及上电引导流程 二. ...
- Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核)
Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4.1.15版本内核) 文章目录 Linux移植:正点原子阿尔法IMX6ULL开发板Linux内核源码移植详细步骤(4 ...
- 迅为iTOP3399开发板QT系统PCIE 4G移植-编译程序
配套资料在网盘资料"iTOP-3399 开发资料汇总(不含光盘资料)\10_iTOP-3399 开发板 Linux 系统开发 \PCIE 4G 模块测试.zip"目录下. 45.1 ...
- OK6410开发板linux系统下的SPI驱动和测试
OK6410下的SPI驱动是可以用的,但是飞凌把它作为其它用途了,我们修改一些代码才能在/dev目录下创建SPI的设备节点文件 Step1:打开arch/arm/mach_s3c64XX/mach_m ...
- 迅为RK3399开发板Linux系统TFTP传输文件服务器测试
本机测试:在/var/tftpboot 下面建立一个文件 test,在里面输入 hello world,然后保存该文件,如下图 再启动另一个终端,然后输入 tftp 127.0.0.1,如下图. 输入 ...
- linux imx6 书籍,迅为iMX6开发板-Linux系统-TFTP使用文档
TFTP(Trivial File Transfer Protocol,简单文件传输协议),是一个基于 UDP 协议实 现的用于在客户机和服务器之间进行简单文件传输的协议,适合于开销不大.不复杂的应用 ...
- linux开发板 wifi配置,iTOP-4412开发板Linux系统下使用wifi模块配置
精英版在 linux 下使用 wifi,需要进行下面的配置: 首先用户在拿到光盘资料以后查看下光盘里面的"linux"->"root_xxxxxxxx.tar.gz ...
- 编译linux系统到开发板,Linux系统有关交叉编译和移植到6410开发板上的简单过程...
在进行移植之前,要检查一下目标机(这里指6410开发板)与宿主机之间的接线问题,即串口线.网线是否正确连接,目标机的电源是否插好!在接线问题解决后,才能保证交叉编译正常进行! 个人理解,移植的主要思想 ...
- 玩转开发板--Linux系统移植至开发板fl2440实践过程
一.开发板介绍 CPU:S3C2440(SAMSUNG).ARM920T.400MHz Pone/mic:耳机和话筒 JTAG:可以通过外部插入直接控制CPU,因此在初始化内存时,起到 ...
最新文章
- python工程师面试题-朋友去面试Python工程师,又带回来几道基础题,Python面试题No10...
- 5、HTML块级元素及行内元素
- 正则表达式python实例_常见的python正则用法实例讲解
- 我的世界服务器显示英文,我的世界pixelmon服务器技能显示英文
- apache cxf java_Java-Apache CXF Web服务问题
- 在.NET 3.5 平台上使用LINQ to SQL创建三层/多层Web应用系统(源代码下载和PDF文档下载)...
- Notepad++集成nasm编译器
- 使用truffle 创建代币合约 使用ganache部署私有链 以及使用Atom 进行合约代码开发
- NSA的各种***工具
- 如何在云端装mysql_如何在阿里云服务器上部署Mysql数据库?
- 使用Visio 2003 + Oracle 11g创建ERD,反向工程师失败了吗?
- FbinstTool万能启动超级简单教程
- PowerGUI错误-Microsoft SharePoint is not supported with version 4 of the Microsoft .Net Runtime
- 从VMware的vCenter中读取事件
- JEESZ分布式框架简介---技术介绍文档
- transact-sql的语法规则
- [转载]学习整理英文单词收藏
- 企业降低包装成本的13种简单方法(下篇)
- 商人过河c语言实验报告,商人过河C语言程序编程
- 被字句15个_小学语文必考知识:15类句式转换解题方法与练习(附答案)
热门文章
- java samphore 连接池_ADOConnection数据库连接池
- Java-toString
- 已知前序中序求层序 c语言递归,二叉树的遍历:前序,中序,后序,层序--包括递归和非递归实现...
- Ubuntu18.04 测试Azure Kinect DK 安装Azure Kinect传感器SDK
- Redis 6.0 新特性概览
- 两分钟搞定阿里SQL面试题:亿级表合并
- 99+好友共同关注,公众号推荐
- 运维工程师要失业了?抛开噱头与调侃,闲聊我心中的运维!
- 云图说|初识云数据库GaussDB(for Redis)
- 物联网打工人必备:LiteOS Studio图形化调测能力