- 博客(30)
- 收藏
- 关注
原创 Ubuntu系统中的apt命令
apt:高级包装工具(Advanced Packaging Tools)是Debian及其衍生发行版(如:ubuntu)的软件包管理器。APT可以自动下载,配置,安装二进制或者源代码格式的软件包。apt-get命令一般需要root权限执行,所以一般跟着sudo命令,与/etc/apt/sources.list中匹配。工作原理:APT是一个客户/服务器系统。在服务器上先复制所有D
2017-03-29 14:22:50
573
原创 Ubuntu搭建TFTP服务器
之前在centos_x86下有在搭建TFTP服务器,最近在使用Ubuntu,所以打算在上面搭建TFTP,为了防止以后忘记就打算记下来!!!1. 安装sudo apt-get install tftpd-hpa (服务端)sudo apt-get install tftp-hpa(客户端)2.配置sudo vim /etc/default/tftpd-hpa
2017-03-17 14:25:40
445
原创 Linux SQLite3 C 编程
这三个函数基本能完成是sqlite 的基本操作: 需要头文件 sqlite3_open(const char *filename, sqlite3 **ppDb); sqlite3_close(sqlite3 *db); sqlite3_exec(sqlite3*, const char *sql, int (*callback)(void*,int,char**,char**
2016-08-27 23:05:39
927
原创 Linux SQLite3基本使用
工作原理:不像常见的客户-服务器范例,SQLite引擎不是个程序与之通信的独立进程,而是连接到程序中成为它的一个主要部分。所以主要的通信协议是在编程语言内的直接API调用。SQLite是一个轻量级的数据库。和常用的MySQL大同小异。和MySQL相比,数据类型基本一样,只是sqlite的指令都是以"."开头(如:mysql中查看当前有哪些数据库是“show databases"
2016-08-27 18:01:58
2463
原创 Linux socket 获取温度上报服务器
-----------------------------------------------------------------------Cross compiler:arm-linux-gcc-4.5.4Linux kernel version:linux-3.0Development board:fl2440MySQL:sqlite3Author: Yuzhongha
2016-08-23 20:54:26
1309
原创 Linux connect error 的 一些说明
在刚刚开始接触socket 编程,在其运行的过程中,会遇到的常见的connect error 的问题,将其记录下来101:网络不可达,比如不能ping通解决办法:想尽办法ping 通网络 ,这是最基本的知识111:链接被拒绝,比如目标关闭链接等22:参数错误,比如ip地址不合法,没有目标端口等解决办法: 检查ip地址 ,以及socket程序的端口是否被占用11
2016-08-23 14:51:27
10530
原创 Linux关于socket编程
一 , socket 的定义:网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket。建立网络通信连接至少要一对端口号(socket)。socket本质是编程接口(API),对TCP/IP的封装,TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口;HTTP是轿车,提供了封装或者显示数据的具体形式;Socket是发动机
2016-08-17 21:30:19
626
转载 DS18B20
DS18B20驱动 [ 2012-5-14 12:01:00 | By: 吴师傅 ] 14推荐一.概述DS18B20是一种单总线数字温度传感器。测试温度范围-55℃-125℃,温度数据位可配置为9、10、11、12位,对应的刻度值分别为0.5℃、0.25℃、0.125℃、0.0625℃,对应
2016-08-12 16:44:05
1384
原创 Linux下使用SVN
SVN简介:SVN 全名 Subversion,即版本控制系统,它是一个自由/开源的同时支持多种操作系统的版本控制系统。在 Subversion 管理下,文件和目录可以回到任意时刻的版本,以及比较任意两个时刻的版本变动,这点不止在协同开发中,即使在个人开发过程中,这种特性都是非常非常有用的。大多数程序员都会有过这种经历,对代码进行很多的修改,发现修改的想法根本是错误的,而这时我已经修改了多个文
2016-08-06 19:35:55
425
原创 sim900芯片—GPRS模块接收短信应用程序
-----------------------------------------------------------------------Cross compiler:arm-linux-gcc-4.5.4Linux kernel version:linux-3.0Development board:fl2440Author: Yuzhonghan -------
2016-08-05 14:44:36
1340
原创 sim900芯片—GPRS模块接电话应用程序
-----------------------------------------------------------------------Cross compiler:arm-linux-gcc-4.5.4Linux kernel version:linux-3.0Development board:fl2440Author: Yuzhonghan -------
2016-08-04 15:57:23
811
原创 sim900芯片—GPRS打电话和发短信应用程序
-----------------------------------------------------------------------Cross compiler:arm-linux-gcc-4.5.4Linux kernel version:linux-3.0Development board:fl2440Author: Yuzhonghan -------
2016-08-02 20:45:58
4111
原创 sim900芯片—GPRS模块ppp拨号上网
-----------------------------------------------------------------------Cross compiler:arm-linux-gcc-4.5.4Linux kernel version:linux-3.0Development board:fl2440Author: Yuzhonghan -----------
2016-07-28 17:35:33
3770
转载 Linux串口通信编程
串口是计算机上一种非常通用设备通信的协议,常用PC机上包含的是RS232规格的串口,具有连接线少,通讯简单,得到广泛的使用。 Linux对所有设备的访问是通过设备文件来进行的,串口也是这样,为了访问串口,只需打开其设备文件即可操作串口设备。在linux系统下面,每一个串口设备都有设备文件与其关联,设备文件位于系统的/dev目录下面。如linux下的/ttyS0,/ttyS1分别表示的是串
2016-07-24 21:25:40
654
原创 fl2440开发板 rt3070芯片——AP模式
-------------------------------------------------------------------------Cross compiler:arm-linux-gcc-4.5.4Linux kernel version:linux-3.0Development board:fl2440Author: Yuzhonghan ---------
2016-07-23 20:39:33
998
转载 udhcpc命令
由于要使用网络通讯,所以不可避免的要用到dhcp。理想的网络通讯方式是下面3种都要支持: 1,接入已有网络。这便要求可以作为dhcp客户端。 2,作为DHCP服务器,动态分配IP。 3,指定固定IP 第3种情况没有什么好说的,简单说下前2种情况。 使用步骤: (1)在内核的网络项里面把DHCP配置上; (2)在busybox里面
2016-07-22 12:36:14
742
原创 rt3070芯片动态获取IP地址———station模式
上一篇介绍到rt3070芯片station模式手动设置IP地址ping外网,这样显得有些麻烦,如果我们能自动获取IP地址去ping外网不是会更加智能化么?1.要支持动态获取ip的话,你需要在linux内核中和制作文件系统的busybox的menuconfig选中必要的选项一: 内核部分Networking ---> Networking support Net
2016-07-22 12:13:09
945
原创 fl2400开发板rt3070芯片—station模式
-------------------------------------------------------------------------Cross compiler:arm-linux-gcc-4.5.4Linux kernel version:linux-3.0Development board:fl2440Author: Yuzhonghan -------
2016-07-21 16:31:34
1282
原创 ubifs文件系统的问题
make menuconfig 进行修改Device Drivers ---> Memory Technology Device (MTD) support ---> Enable UBI - Unsorted block images ---> --- Enable UBI - Unsorted
2016-07-21 11:25:09
847
原创 关于fl2440开发板Linux内核添加USB驱动的问题
添加USB支持:FL2440添加u盘的挂载比较简单,大部分的内容都是在内核里面做make menuconfig,配置内核Device Drivers ---> Generic Driver Options ---> (/sbin/hotplug) path to uevent helper
2016-07-18 15:14:44
761
原创 fl2440开发板platform_button驱动
驱动程序如下:此处省略了头文件。/* Driver version*/#define DRV_MAJOR_VER 1#define DRV_MINOR_VER 0#define DRV_REVER_VER 0#define DEV_NAME DEV_BUTTON
2016-07-16 15:44:01
391
原创 关于platform_led驱动的问题
1.mod_timer(&(led_device.blink_timer), jiffies + TIMER_TIMEOUT其中解释jiffies:jiffies为Linux核心变数,每发生一次timer interrupt,jiffies变数就会被加一。值得注意的是,jiffies在系统开机时,并非初始化成零,而是被—300*HZ,代表着系统在开机五分钟后,jiffies会溢位。全局
2016-07-15 16:32:08
441
原创 FL2440开发板 platform_led驱动及应用程序
这是我们的驱动程序#include "s3c_driver.h"#define DRV_AUTHOR "Guo Wenxue "//作者信息#define DRV_DESC "S3C24XX LED driver"//驱动信息/* Driver version*/#define DRV_MA
2016-07-15 10:35:21
505
原创 FL2440开发板LEd驱动及其应用程序
LED驱动:#include /* Every Linux kernel module must include this head */#include /* Every Linux kernel module must include this head */#include /* printk() */#include /* struct f
2016-07-13 11:33:01
514
原创 Linux内核移植
我们在这里选用的是linux-3.0.tar.bz2 压缩包。 下载在Linux官网下载压缩包,然后解压,.tar.bz2 格式解压为 tar -jxvf xx.tar.bz2现在开始我们的内核移植。1. Makefile的修改ARCH ?=armCROSS_COMPILE ?=/opt/buildroot-2012.08/arm
2016-07-11 23:46:45
533
原创 基于fl2440开发板Hello World 模块
许多编程书籍都会以一个 “hello world” 示例程序来说明最简单的程序。“hello world” 模块:这个模块定义了两个函数,其中一个在模块被装载打到内核是调用(hello——init),而另一个则是在模块被移除时调用(hello_exit)。特殊宏(MODULE_LICENSE)用来告诉内核,该模块采取自由许可证,如果没有这样的声明,内核在装载该模块时会产生抱怨
2016-07-11 10:46:18
415
原创 Linux改用户名
在Linux系统下进入rootvim etc/passwdEsc i 进入编辑状态在最后一行修改新的用户名退出编辑状态:wq! 保存并退出vim /etc/shadowEsc i进入编辑状态在最后一行修改新的用户名退出编辑状态:wq! 保存并退出如若修改登录界面的用户名:在Linux系统下进入root在Linux系统下进入root
2016-05-23 16:44:52
683
原创 关于动态库与静态库的学习
本质上来说库是一种可执行代码的二进制形式,可以被操作系统载入内存执行。由于windows和linux的本质不同,因此二者库的二进制是不兼容的。Linux操作系统支持的函数库分为静态库和动态库,动态库又称共享库。Linux系统有几个重要的目录存放相应的函数库,如/lib, /usr/lib; 头文件放在/usr/include。 ⒈ 静态库: 这类库的名字一般是libxxx.a;利用静态
2016-05-22 22:16:27
524
原创 关于Makefile的学习
首先,让我们先来简单的了解一下什么是Makefile? 一个工程中的源文件不计其数,其按类型、功能、模块分别放在若干个目录中,makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。Linux 环境下的程序员如果不会使用GNU m
2016-05-21 21:41:43
495
原创 开发板烧录
开发板型号:FL2440 烧录工具: J-Link串口工具:340调试终端:secureCRT下载工具:tftpd32烧录前:串口连接开发板,在secureCRT上快速链接:1)协议:Serial ; 2)在设备管理器选择端口进行选择3)波特率:115200,数据位:8 ,奇偶校验: none ,停止位:0 4) 不选择流控烧录要使用的文件:
2016-03-27 14:57:37
1330
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人