自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Harric

android系统开发、嵌入式软件开发

  • 博客(38)
  • 资源 (26)
  • 收藏
  • 关注

转载 PID控制算法

简要解析参考资料,来自这里通过误差信号控制被控量,而控制器本身就是比例、积分、微分三个环节的加和。这里我们规定(在t时刻):输入量为rin(t);输出量为rout(t);偏差量为err(t)=rin(t)-rout(t);如果偏差为0,则比例环节不起作用,只有存在偏差时,比例环节才起作用。而微分信号则反应了偏差信号的变化规律,或者说是变化趋势,根据偏差信号的变化趋势来进行超前调节,从而增加了系统的快速性。。位置型PID的C语言实现第一步:定义PID变量结构体,代码如下:struct

2021-05-10 16:32:47 831

转载 Linux多线程pthread使用

From:http://blog.csdn.net/jiajun2001/article/details/12624923原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责我并不假定你会使用Linux的线程,所以在这里就简单的介绍一下。如果你之前有过多线程方面的编程经验,完全可以忽略本文的内容,因为它非常的初级。首先说明一下,在Linux编写多线程程序需要包含头文件pthread.h。也就是说你在任何采用多线程设计的程序中都会看到类似这样的代..

2021-02-23 16:54:09 567

原创 OpenMax实现框架及流程

基于http://blog.csdn.net/tx3344/article/details/8109185修改

2014-05-21 18:05:19 1627

原创 Overlay机制

Android overlay 机制允许在不修改packages中apk的情况下,来自定义 framework和package中的资源文件,实现资源的定制。来达到显示不同的UI得目的(如MIUI)。     以下几类能够通过该机制定义:Configurations (string, bool, bool-array)Localization (string, string-ar

2014-05-21 17:58:34 3461

转载 Android权限及chown失败原因查找

原文: http://blog.csdn.net/plato_f/article/details/18793049 文章将描述在Android2.3.7中移植wifi所碰到的一个chown失败问题,并记录问题分析的过程。注意文章中引用了《UNIX环境高级编程》。1:发现问题启动Android 的wifi硬件的时候,system_server进程将调用hardware层所提供的w

2014-03-20 15:04:06 2777

原创 TCP/IP结构对应OSI与TCP、UDP协议及两者的区别

TCP/IP结构对应OSI  OSI中的层  功能  TCP/IP协议族  应用层  文件传输,电子邮件,文件服务,虚拟终端  TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet 等等  表示层  翻译、加密、压缩  没有协议  会话层  对话控制、建立同步点(续传)  没有协议  传输层  端口寻址、分段重组、流量、差错控制  T

2014-01-13 14:40:00 1374

原创 递归求整型数组前N个数的和

int sum(int arr[], int n){int i=0;if(arr[0] != arr[n-1]){i = sum(&arr[1],n-1);}return (i+arr[0]);}

2014-01-08 14:15:48 1629

原创 Eclipse javah 配置

${project_loc}\src-classpath .;./classes -d ${project_loc}\jni -jni ${java_type_name}

2013-12-09 09:33:50 611

原创 《TCPIP详解卷一》第五章(RARP逆地址解析协议)学习笔记

5.1引言具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取IP地址。但是无盘机,如X终端或无盘工作站,则需要采用其他方法来获得I P地址。网络上的每个系统都具有唯一的硬件地址,它是由网络接口生产厂家配置的。无盘系统的R A R P实现过程是从接口卡上读取唯一的硬件地址,然后发送一份RA R P请求(一帧在网络上广播的数据),请求某个主机响应该无盘系统的I P地址(在R A

2013-09-10 15:17:59 690

原创 《TCPIP详解卷一》第四章(ARP地址解析协议)学习笔记

4.1引言当一台主机把以太网数据帧发送到位于同一局域网上的另一台主机时,是根据48 bit的以太网地址来确定目的接口的。设备驱动程序从不检查IP数据报中的目的I P地址。所以就有了ARP协议,为这两种不同的地址形式提供映射。本章及下一章我们要讨论的两种协议:A RP(地址解析协议)和R A R P(逆地址解析协议)A R P为I P地址到对应的硬件地址之间提供动态映射。我们之所以用

2013-09-10 14:59:06 836

原创 《LINUX设备驱动程序》第4章(调试技术)学习笔记

第  4 章  调试技术内核中的调试支持开发的内核应当激活的配置选项. 除特别指出外, 所有的这些选项都在menu config的 "kernel hacking"菜单. 注意有些选项不是所有体系架构都支持其中的选项.CONFIG_DEBUG_KERNEL这个选项只是使其他调试选项可用; CONFIG_DEBUG_SLAB这个重要的选项打开了内核内存分配函数的几类检查;

2013-09-10 14:13:28 1241

原创 《LINUX设备驱动程序》第3章(字符驱动)学习笔记

第  3 章  字符驱动主次编号:使用命令ls –l /dev,下面的列表显示了一个典型系统上出现的几个设备. 它们的主编号是 1, 4, 7, 和 10, 而次编号是 1, 3, 5, 64, 65, 和 129.   crw-rw-rw- 1 root  root 1,  3 Apr 11  2002 null  crw------- 1 root  root 10, 1

2013-09-10 12:32:35 1221

原创 《LINUX设备驱动程序》第2章(建立和运行模块)学习笔记

第  2 章 建立和运行模块Hello World 模块:#include #include MODULE_LICENSE("DualBSD/GPL");  static int hello_init(void) {        printk(KERN_ALERT "Hello, world\n");        return 0; } static

2013-09-10 12:31:40 1180

原创 《TCPIP详解卷一》第三章(IP网际协议)学习笔记

3.1引言I P提供不可靠、无连接的数据报传送服务:不可靠(u n r e l i a b le)的意思是它不能保证I P数据报能成功地到达目的地。I P仅提供最好的传输服务。如果发生某种错误时,如某个路由器暂时用完了缓冲区,I P有一个简单的错误处理算法:丢弃该数据报,然后发送I C M P消息报给信源端。任何要求的可靠性必须由上层来提供(如T C P)。无连接(c o n n e

2013-09-06 15:17:21 1052

原创 《TCPIP详解卷一》第二章(链路层)学习笔记

2.1引言链路层主要有三个目的:(1)为I P模块发送和接收I P数据报;(2)为A R P模块发送A R P请求和接收A R P应答;(3)为R A R P发送R A R P请求和接收R A R P应答。T C P / I P支持多种不同的链路层协议,这取决于网络所使用的硬件,如以太网、令牌环网、F D D I(光纤分布式数据接口)及R S-2 3 2串行线路等。 2.2

2013-09-04 15:01:25 1081

转载 IEEE(电子电气工程师协会)802局域网标准

IEEE(电子电气工程师协会)802局域网标准● IEEE 802标准概述IEEE 802标准的大部分是在80年代由委员会制订的,当时个人计算机联网刚刚兴趣。随着网络技术的不断进步,扩充和制订了不少新的标准,因此,IEEE 802家族也越来越庞大,成员也越来越多。● IEEE801.1 网间互连定义802.1是关于LAN/MAN桥接、LAN体系结构、

2013-09-04 10:40:44 2547

原创 《TCPIP详解卷一》第一章学习笔记

1.2协议分层应用层和运输层使用端到端协议(end-to-end)网络层提供的是逐跳协议(hop-by-hop)网络层(I P)提供点到点的服务路由器:它是一种特殊的用于网络互连的硬件盒。路由器的好处是为不同类型的物理网络提供连接(以太网、令牌环网、点对点的链接和F D D I(光纤分布式数据接口)等等)。 1.3TCPIP协议簇分层网络层I P提供的是一种

2013-09-04 10:08:13 1202

原创 深入学习TCPIP协议

下决心深入学习TCPIP协议认真理解阅读《TCP-IP详解卷1 协议》加油!

2013-09-03 17:14:01 4182 2

原创 Android 系统级开发学习(更改android 默认语言)

1.  进入android 源代码build/target/product目录,在languages_full.mk或languages_small.mk文件中,     修改PRODUCT_LOCALES的值如下:     假如当前PRODUCT_LOCALES := en_US zh_CN ... ... (English 简体中文)     可以修改为:PRODUCT_LOC

2013-08-29 16:46:09 935

原创 real6410移植linux2.6.39.4内核(2)-添加nand flash驱动及启动cramfs文件系统

real6410移植linux2.6.39.4内核(2)-添加nand flash驱动及启动cramfs文件系统又经过了一天的奋战,搜索了无数资料,今天终于VFS: Mounted root (cramfs filesystem) 了 ,这句话的意思就是说内核已近发现了cramfs文件系统,之前一直有的问题就是当我修改内核启动参数使其从cramfs启动后,总是出现这种提示VFS:

2012-03-23 18:50:03 1659

原创 real6410移植linux2.6.39.4内核(1)-内核移植环境的搭建及测试

经过几天的失败经历,以及逐渐对内核移植步骤的了解,现在我想实现的内容很简单,就是仅仅把一个新的内核(我这里是官网下载的2.6.39.4内核)在开发板上面跑起来,也可以叫他裸跑,意思就是说什么驱动都不带只要内核能启动就行了,说是很简单的但是我却重重遇到困难,刚开始我对移植内核点都不了解。虽然编译每次都能成功。但是下载内核后,总是运行在Uncompressing Linux... done

2012-03-22 12:07:37 1256

转载 S3c6410 linux内核移植(11)---用SD卡下载uboot、linux内核和文件系统

1、 移植mtd-utils:a) 下载utd-utils 下载地址为ftp://ftp.infradead.org/pub/mtd-utils/b) 交叉编译mtd-utilsi   修改Makefile   CROSS=arm-linux-ii  makeiii 查看下mtd-utils-1.0.0目录下是否生成了咱们所需要大工具    (flashcp

2012-03-16 16:01:26 986

转载 S3c6410 linux内核移植(10)---添加充电控制脚驱动(LED驱动)

1、原理分析无线数码相框的GPQ3脚用于充电控制,当GPQ3为高电平是为充电状态,当为低电平时不充电。led的控制原理和充电脚的控制原理是一模一样的都是对某个io口置1或清零,所以在这里可以用led驱动实现对充电控制脚的控制。Linux内核下drivers/leds/ledsgpio.c实现了一个和体系结构无关的led驱动,使用此led驱动我们只需要在BSP的板文件(arch/ar

2012-03-16 16:00:39 900

转载 S3c6410 linux内核移植(9)---添加adc驱动、电池电量检测之文件修改

修改arch/arm/plat-s3c64xx/adc.c首先在文件开头部分引掉mutex结构体用semaphore结构体代替://static DEFINE_MUTEX(adc_mutex);DECLARE_MUTEX(ADC_LOCK);然后在read函数中修改互斥的实现s3c_adc_read(struct file *file, char __use

2012-03-16 16:00:06 938

转载 S3c6410 linux内核移植(8)---添加adc驱动、电池电量检测之原理

1、 原理分析S3c6410的内部adc结构图:ADC模块总共有8个通道可以进行模拟信号的输入,分别是AIN0、AIN1、AIN2、AIN3、YM、YP、XM、XP。首先模拟信号从任一通道输入,然后设定寄存器中预分频器的值来确定AD转换器频率,最后ADC将模拟信号转换为数字信号保存到ADC数据寄存器0中(ADCDAT0),然后ADCDAT0中的数据可以通过中断或查询的方式来

2012-03-16 15:59:22 1050

转载 S3c6410 linux内核移植(8)---添加pwm驱动,控制lcd背光亮度

一般LCD的背光LED是通过PWM控制,调节PWM的占空比即可调整背光亮度。比如S3C6410的GPF15,即PWM1,可连接LCD的背光控制接口,进行背光控制。内核中pmw配置函数位于”arch/arm/plat-s3c64xx/pwm-s3c6410.c”中的:int s3c6410_timer_setup (int channel, int usec, unsigned long g_tcn

2012-03-16 15:58:41 2249

转载 S3c6410 linux内核移植(7)---添加8.9寸lcd支持

新版lcd相比于旧版lcd显示效果更好, 但是在ut-6410开发板上用新版lcd驱动是会使触摸屏严重抖动,在无线数码相框上则不会有此现象,可以再配置时进行选择。新版lcd配置旧版lcd配置1、 旧版本lcd驱动a) 创建s3cfb_lcd9a.c文件复制s3cfb_lte480wv.c为s3cfb_lcd9a.c,替换34到41行的

2012-03-16 15:57:54 877

转载 S3c6410 linux内核移植(6)---添加按键驱动

以下为ut-s3c6410开发板的键盘驱动,如果是其他板要做相应的改动。包括arch/arm/machs-3c6410/mach-smdk6410.c的static struct gpio_keys_button smdk6410_buttons[]结构体和drivers/input/keyboard/gpio_keys.c文件下的int s3c_gpio_keys[]结构体。1、 添加添

2012-03-16 15:56:59 647

转载 S3c6410 linux内核移植(5)---改进触摸屏驱动

由于我们使用的电阻式触摸屏,控制器根据检测到的电阻变化来计算接触点的坐标,当触摸力度较小时会出现抖动情况,通过多次取点求平均值发现效果并不好,我们在取值时应该去掉无效的点,网上查了一下说可以通过计算触摸压力的方法不过比较麻烦。 我采用的方法是去除抖动较大的不稳定点、即取四个点,分别比较这四个点的x轴和y轴的大小,取出最大值Xmax、Ymax和最小值Xmin、Ymin,然后计算a =(Xmax-Xm

2012-03-16 15:56:09 752

转载 S3c6410 linux内核移植(4)---修改flash分区

对于Nandflash 驱动还有一个重要的方面是Nandflash 的分区,这个分区表位于内核源码目录的arch/arm/plat-s3c/include/plat/partition.h 文件中。一下为一种分区方式,可根据需要自行对分区进行修改。struct mtd_partition s3c_partition_info[] = {     {            .

2012-03-16 15:55:02 734

转载 S3c6410 linux内核移植(3)--- usb驱动出错解决

系统启动时及插入u盘时会打印如下错误:hub 1-0:1.0: Cannot enable port 1.  Maybe the USB cable is bad? 此为平台输入时钟设置错误,修改如下:把arch/arm/mach-s3c6410/mach-smdk6410.c文件中的:#ifdef USB_HOST_PORT2_EN#define OTGH_PHY_CLK

2012-03-16 15:54:16 6815

转载 S3c6410 linux内核移植(2)--- 添加dm9000网卡驱动

Linux 内核下的 drivers/net/dm9000.c 实现了与体系结构无关的 DM9000 网卡驱动,只需要在 BSP 的板文件(arch/arm/mach-s3c6410/smdk-6410.c)中定义相关的 platform 设备和数据:1、 添加引脚宏定义在arch/arm/mach-s3c6400/include/mach/map.h文件中添加宏定义#define

2012-03-16 15:53:21 820

转载 S3c6410 linux内核移植(1)---下载与配置

一、 下载内核及交叉编译工具(1)http://git.kernel.org/?p=linux/kernel/git/kki_ap/linux-2.6-samsung.git;a=summary到以上地址下载linux内核的三星分支,这里选取“2.6.28-samsung”版本。(2) 安装4.3.1-eabi-armv6编译器.http://cs.sch.ac.kr/~c

2012-03-16 15:51:34 854

原创 2410从WinCE4.2到WinCE6.0移植过程(前言)

最近打算走前人的路,从WinCE4.2到WinCE6.0移植过程,据说还是有一定难度的,不过试着学习下吧! 刚拿到一块real2410 的开发板,想搞一下wince的移植,但是官网提供的是wince4.2的wince,好明显下载已近跟不上时代了  所以我觉得花点时间来将其升级为wince6.0的系统,预祝我成功吧!!

2012-03-13 19:23:37 653

转载 如何做支持中文显示的CE6系统

转载至:http://blog.csdn.net/pony_maggie/article/details/5964030网上很多方法实践过发现是不行的,大部分是转来转去. 下面是自己实践过的一个可用方法: 1 备好一个可编译的CE6系统工程, 环境为vs2005 2 打开project-XXX properties, 显示属性配置页面 3 点出l

2012-02-28 11:47:31 521

转载 Wince BSP从5.0移植到6.0(三)

转载至:http://blog.csdn.net/pony_maggie/article/details/5382094作者:小马第三部分是关于触摸屏驱动的移植 1在platform.bib里把原来注释掉的下面两行置为有效.k.touch.dll         $(_FLATRELEASEDIR)/DeviceEmulator_touch.dll

2012-02-28 11:37:42 436

转载 Wince 6.0 BSP的移植(二)

转载至:http://blog.csdn.net/pony_maggie/article/details/5321631作者:小马移植外设驱动时, 可以再platform.bib里注释掉其它的外设驱动dll,并修改drivers目录下的dir文件, 移植好一个,就添加一个.这篇文章是关于LCD显示驱动移植的.移植LCD驱动时要注意一点, 因为在OAL层有关于LCD的

2012-02-28 11:34:40 367

转载 Wince 6.0 BSP的移植(一)

转载至:http://blog.csdn.net/pony_maggie/article/details/5321631作者:小马公司的一个项目,要做一个基于CE6.0的应用,无奈手上的板子是5.0的, 本来想节省时间,直接向厂家要一个该板子的6.0的BSP,联系他们的客服说没有这个板子的6.0的BSP,让我自力更生.  截至到写这篇文章时, OAL

2012-02-28 11:33:16 970

sd4.0协议标准完整版汉语翻译

Part1 Physical Layer Simplified Specification, sd4.0协议标准完整版[汉语翻译],是完整版,适合SDIO开发者参考。

2024-03-27

用TCPIP进行网际互联(第三卷:客户-服务器编程与应用)(Linux POSIX套接字版)-高清书签版

用TCPIP进行网际互联(第三卷:客户-服务器编程与应用)(Linux POSIX套接字版)-高清书签版 高清书签版 高清书签版

2016-07-05

Linux网络编程smallsh 源码 (可直接运行)

本书中smallsh 代码值得学习的,但是书中代码有很多错误无法理解,无法直接运行,本人自己修改后可以直接运行,真心可以参考。。。 其他的 也可以参考下代码的写法,很有技巧的。 防止误下载,书目录如下: 第一章 概论 第三章 进程控制 第四章 进程间通信 第五章 通信协议简介 第六章 Berkeley 套接字 第七章 网络安全性 第八章 Ping 例程 第九章 tftp 例程 第十章 远程命令执行 第十一章 远程注册 第十二章 远程过程调用 第十三章 远程磁带的访问 第十四章 WWW 上 HTTP 协议

2013-10-23

ADB网络调试助手

自己编写的一个ADB网络调试助手,可以很方便的连接网络设备(android),并能一键重启ADB 非常方便

2013-10-09

跟我一起写Makefile书签版PDF清晰版

跟我一起写Makefile书签版PDF清晰版:有书签的 ,网上其他版本都没有书签,不方便阅读及查阅。

2013-09-06

Andriod垂直Gallery(重叠效果)

Andriod垂直Gallery(重叠效果),和其他的绝对不一样,一定是你想要的!

2013-08-13

3个android gallery实例

三个gallery实例,很好的学习资源,一个是实现Gallery 垂直滑动,事件监听。一个是android 中Gallery控件相当于一个图片浏览器,将图片资源加载进去便可以显示其效果。一个是具有拖曳效果的gallery.

2013-08-13

Android 多点触控缩放图片

Android 多点触控缩放图片 效果不错

2013-06-21

Android 滑动切换图片

Android 滑动切换图片

2013-06-21

AVR单片机的捕获中断来实现红外编码

基于AVR单片机的捕获中断来实现红外编码的软件程序流程如图4所示。下面是其 C语言程序代码

2013-06-19

ATtiny2313_中文说明书

ATtiny2313_中文说明书

2013-06-19

官方的滑动菜单 SlidingMenu-master 效果非常好

官方的滑动菜单 SlidingMenu-master 效果非常好

2013-06-19

MP3ID3解析源码

MP3ID3解析源码

2013-04-26

左右滑动网络加载图片可放大

左右滑动网络加载图片可放大

2013-04-26

wma Tag 解析 源码

wma Tag 解析 源码

2013-04-26

仿Path侧滑导航栏demo

仿Path侧滑导航栏demo

2013-04-26

Android手机任务管理器源码

Android手机任务管理器源码

2013-04-26

3D相册图片滑动 倾斜 放大 倒影处理源码

3D相册图片滑动 倾斜 放大 倒影处理源码

2013-04-26

Jink V8的PCB原理图

Jink V8的PCB原理图 大众期待的 自己开版吧 不用自己花钱买JINK 咯 不过没有测试哈 仅供参考哦……

2011-09-28

简单JAVA语言编写的万年历系统源码(图形界面)

简单JAVA语言编写的万年历系统源码 直接就是Eclipse 工程 直接用 完美中文注释 适合刚入门JAVA程序员

2011-09-28

简单JAVA语言编写的万年历系统源码

简单JAVA语言编写的万年历系统源码 直接就是Eclipse 工程 直接用 完美中文注释 适合刚入门JAVA程序员

2011-09-28

飞凌OK6410串口驱动程序

飞凌OK6410串口驱动程序 包含详细的中文注释 代码不值钱 注释能然你一下看懂哦……

2011-09-28

单片机ucos操作系统SCH51OS源码

51单片机上运行的ucos操作系统SCH51OS源码.zip

2011-08-10

51单片机串口通信源码

一步一步教你51_PC串口通信 源码,句句包含中文注释!一定让你看懂!

2011-08-10

LM3S6911利用外设驱动库I2C驱动TMP75

LM3S6911利用外设驱动库I2C驱动TMP75 基本每句含中文解释

2011-08-10

TIMER模拟PWM蜂鸣器奏乐(看月亮爬上来)

利用外设驱动库控制LM3S6911 系列Cortex-M3 芯片的timer定时器模拟PWM输出控制蜂鸣器奏乐,循环奏张杰的看月亮爬上来 和化蝶。内包含整个IAR工程,但是没有驱动库,只需把驱动库加上即可使用。

2011-08-10

LM3S外设驱动库I2C驱动GY-26电子罗盘

LM3S系列芯片(Cortex-M3)外设驱动库I2C驱动GY-26电子罗盘

2011-08-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除