自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 资源 (1)
  • 收藏
  • 关注

原创 nodejs关于十六进制转化为UTF8字符串与GBK字符串方法

variconv=require('iconv-lite');/**十六进制转UTF8字符串**/letdata01='48656c6c6f20576f726c64'//十六进制letnewdata=Buffer.from(data01,'hex');//先把数据存在buf里面console.log("newdata",newdata);console.log(newdata.toString("utf-8"));//使用toString函数就能转换成字符串...

2020-10-14 10:38:04 2663

转载 requireJS加载模块,define定义模块

转自:http://www.ruanyifeng.com/blog/2012/11/require_js.html一、为什么要用require.js?最早的时候,所有Javascript代码都写在一个文件里面,只要加载这一个文件就够了。后来,代码越来越多,一个文件不够了,必须分成多个文件,依次加载。下面的网页代码,相信很多人都见过。          

2017-12-16 20:12:35 658

转载 CommonJs和AMD(requireJS)模块化

转自: http://www.ruanyifeng.com/blog/2012/10/asynchronous_module_definition.html七、模块的规范先想一想,为什么模块很重要?因为有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块。但是,这样做有一个前提,那就是大家必须以同样的方式编写模块,否则你有你的写法,我有我的写

2017-12-16 20:02:53 331

转载 【requireJS源码学习02】data-main加载的实现

转自:https://www.cnblogs.com/yexiaochai/p/3633855.html前言经过昨天的学习,我们大概了解到了requireJS的主要结构,这里先大概的回顾一下首先从总体结构来说,require这里分为三块:① newContext之前变量声明或者一些工具函数② newContext大家伙③ 解析scri

2017-12-16 19:44:45 779

转载 在node中使用 ES6

在node中使用 ES6ES6+ 太棒了,但是很多高级功能node是不支持的,就需要使用babel转换成ES5,1.安装babel依赖npm install babel-core --save-dev2.安装babel-registernpm install babel-register --save-dev3.babel转换配置,项目根

2017-11-30 20:17:42 3842

转载 v412的ioctl命令

在应用程序获取视频数据的流程中,都是通过 ioctl 命令与驱动程序进行交互,常见的 ioctl 命令有:[cpp]VIDIOC_QUERYCAP     /* 获取设备支持的操作 */ VIDIOC_G_FMT        /* 获取设置支持的视频格式 */ VIDIOC_S_FMT        /* 设置捕获视频的格式 */ VIDIOC_REQBUFS      /*

2015-04-12 09:44:10 649

原创 linux内核文件系统

要分析 Linux 内核源码,首先必须找到各个模块的位置,也即要弄懂源码的文件组织形式。虽然对于有经验的高手而言,这个不是很难;但对于很多初级的 Linux 爱好者,和那些对源码分析很有兴趣但接触不多的人来说,这还是很有必要的。   1、Linux 核心源程序通常都安装在/usr/src/linux 下,而且它有一个非常简单的编号约定:任何偶数的核心(的二个数为偶数,例如 2.

2014-12-09 17:16:13 430

原创 linux系统文件的配置

一:关于环境变量的配置问题:  配置环境变量有三个地方可以去配置   ① /etc/profile 文件 :它是一个全局的配置文件在系统中只有一个这样的文件;若想要把某个命令配置成全局的 则可以用此方法       PATH="$APTH:命令路径";    用source /etc/profile 激活;   ② /root/.bashrc 它是用户私有的配置文件  配置方法:

2014-12-09 17:13:05 410

原创 linux操作系统对所有用户的操作

一:Linux操作系统里查看所有用户命令/查看系统命令   1、Linux里查看所有用户      linux里,并没有像windows的net user,net localgroup这些方便的命令来治理用户.       Xwindows界面的就不说了.          (1)在终端里.其实只需要查看 /etc/passwd文件就行了.           (2)看第三个参

2014-12-09 17:10:32 544

原创 linux输入子系统驱动工作原理分析

本文主要从输入子系统的 输入设备注册和事件上报 来分析!  一: 输入设备注册          要分析注册就要从注册函数input_register_device(struct input_dev *dev)开始  主要工作有:        ① 对input_dev中的一些成员初始化       init_timer(&dev->timer);if (!dev->rep[R

2014-12-09 17:03:50 518

转载 Linux DM9000网卡驱动程序完全分析

本文转自说明1:本文分析基于内核源码版本为linux-2.6.31 说明2:本文在理解了linux中总线、设备和驱动模型的基础上加以分析代码 虽然Linux驱动程序应该是和具体的硬件平台分离的,但是为了更好的理解DM9000的驱动程序,这里还是结合一下Mini2440开发板,这样也可以更好的体会如何实现驱动和平台分离。本文分成以下几个部分: 一、Mini2440开发板上DM

2014-11-22 21:30:25 475

转载 dm9000网卡寄存器简介

DM9000网卡寄存器简介原文地址 http://blogold.chinaunix.net/u3/105531/showart_2164937.html网络控制器选用DAVICOM公司的DM9000快速以太网控制处理器,合成了MAC,PHY,MMU。该处理器配备有标准10M/100M自适应,16K大容量的FIFO,4路多功能GPIO,掉电,全双工工作等功能。物理层支持以太网接口协

2014-11-22 20:31:38 959

转载 用于互斥设备的自旋锁

对于互斥, 旗标是一个有用的工具, 但是它们不是内核提供的唯一这样的工具. 相反, 大部分加锁是由一种称为自旋锁的机制来实现. 不象旗标, 自旋锁可用在不能睡眠的代码中, 例如中断处理. 当正确地使用了, 通常自旋锁提供了比旗标更高的性能. 然而, 它们确实带来对它们用法的一套不同的限制.    自旋锁概念上简单. 一个自旋锁是一个互斥设备, 只能有 2 个值:"上锁"和"解锁". 它常常实现

2014-11-22 17:38:07 365

原创 关于平台驱动获取资源的函数platform_get_resourc的获取方法及参数介绍

在platform机制下,板级文件BSP一般定义了设备的资源,在系统初始化的过程便对platform_device进行注册,接着注册platform_driver,两者都注册完毕之后哦,platform_driver便去probe,在probe的过程中,会使用platform_get_resource函数来获取设备资源,那么它究竟是怎么获取资源的,platform_get_resource函数的每

2014-11-22 15:32:42 1182

转载 平台总线 设备 驱动相关调用与简介

1.1 platform总线、设备与驱动在Linux 2.6的设备驱动模型中,关心总线、设备和驱动这3个实体,总线将设备和驱动绑定。在系统每注册一个设备的时候,会寻找与之匹配的驱动;相反的,在系统每 注册一个驱动的时候,会寻找与之匹配的设备,而匹配由总线完成。一个现实的Linux设备和驱动通常都需要挂接在一种总线上,对于本身依附于PCI、USB、I2 C、SPI等的设备而言,这自然

2014-11-22 10:05:25 439

原创 关于struct msghdr结构体的介绍

我们从一个实际的数据包发送的例子入手,来看看其发送的具体流程,以及过程中涉及到的相关数据结构。在我们的虚拟机上发送icmp回显请求包,ping另一台主机172.16.48.1。我们使用系统调用sendto发送这个icmp包。     ssize_t sendto(int s, const void *buf, size_t len, int flags,              

2014-11-17 10:31:14 3455

原创 Linux系统所有用户命令操作

一:Linux操作系统里查看所有用户命令/查看系统命令   1、Linux里查看所有用户      linux里,并没有像windows的net user,net localgroup这些方便的命令来治理用户.       Xwindows界面的就不说了.          (1)在终端里.其实只需要查看 /etc/passwd文件就行了.           (2)看第三个参

2014-11-13 09:26:18 438

原创 执行shell程序方法

用户可以用任何编辑程序来编写Shell程序。因为Shell程序是解释执行的,所以不需要编译成目的程序。按照Shell编程的惯例,以 bash为例,程序的第一行一般为“#!/bin/bash”,其中 # 表示该行是注释,叹号 ! 告诉Shell运行叹号之后的命令并用文档的其余部分作为输入,也就是运行/bin/bash并让/bin/bash去执行Shell程序的内容。  执行Shell程序的方

2014-10-25 09:37:39 1838

原创 linux内核配置与编译即根文件制作

Linux内核配置与编译及根文件的制作   嵌入式系统文件的构成    一:  配置1 首先是配置原因:当我们拿到一个内核时由于硬件和软件的要求有很多的功能是我们不要的。所以要进行内核的配置  说白了就是选出需要的  去掉不要的!2 配制方法: 有两种配置方法 ① make config  是基于文本模式的交互式配置② make menuconfig  是基于文本模式的

2014-10-02 13:53:51 605

原创 学习内核驱动是出现的错误及其解决方式

一  在测试tftp下载文件时有两个问题困惑了我一下,   A  就是开发板一直ping不通虚拟机和宿主机 网络也打开了 防火墙也关闭了! 之后才发现是虚拟机的联网方式有问题  如果要能ping可能要在同一网段 ,但我的虚拟机与宿主机不在一个网段 ,由于之前虚拟机用的是 a.   a:默认的net 的联网方式 : 它是只要物理机能连通网络,虚拟机也就可以连通的 但它的ip地址是随机分配的 

2014-10-02 13:50:49 940

转载 有关wireshark抓包工具出现The NPF driver isn't running. You may have trouble capturing or listing interfaces

,可是今天打开去总是出现“The NPF driver isn't running.You may have troublecapturing or listing interfaces.”的错误提示窗口。谷歌了一下,找到了一位好心人分享在自己新浪博客上的一篇文章,因此借鉴过来,与大家分享。首先,你得确认自己安装了winpcap(最好下载一个最新版本:官方下载,这会官方好像打不开,也可

2014-07-30 09:30:54 1647

原创 ok6410学习之触摸屏篇

对于触摸屏首先说说他们的gongzuoyuang

2014-07-24 10:59:31 617

原创 ok6410之lcd驱动程序设计

代码如下,遇到的问题会在

2014-07-15 17:30:40 1034

转载 编写makefile文件规则

make机制的运行环境需要一个命令行程序make和一个文本文件Makefile。make命令执行后有3个退出码:表示成功执行。如果make运行时出现任何错误,则返回1.如果使用了make的“-q”选项,并且make使得一些目标不需要更新,那么返回2.make的使用格式是:make [

2014-05-30 17:18:16 1028

原创 个人对nandflash驱动的总结(ok6410版)

个人对nandflash驱动程序的设计及编写的总结(针对ok6410板)1,首先说明要用nandflash的原因,当你从nand启动时,6410中的硬件会自动将nand中的8k内容拷贝到开发板中内存空间的iRAM中,然后iRAM再将这8k内容拷贝到内从中进行运行,一旦nand中的内容大于8k则多余的那些将无法被拷贝机运行,因此需要一个驱动程序来将多余的代码移到内存中那就是nandflash驱动

2014-05-30 10:39:22 985

原创 nandflash驱动设计

一:Nandflash驱动设计写的流程1, 知道要读的东西  即:芯片选择为nandflash 方式:NFCOPNT-》对应位使有效;2  清除RnB 即:使其进入空闲状态 方式:NFCONF—》对应位是空闲(清除要写入1才能变0)3  发送页读指令周期0x00 方式: NFCMMD=0x004  发送列地址和行地址 方式:NFADDR=addr    注: 行地址是页号,

2014-05-07 22:03:02 489

转载 OK6410裸机简单的NANDFLASH读写及擦

OK6410裸机简单的NANDFLASH读写及擦文章转载请注明出处:http://blog.csdn.net/wf395962475/article/details/8221250今天完成了OK6410裸机简单的NANDFLASH读写及擦除,那么直接进入正题。我的操作环境是:主机:WIN7系统, VMware RHEL5  8.0 虚拟机。开发板:OK641

2014-05-04 21:22:23 812

转载 S3C6410中断控制,基于OK6410A裸机按键中断程序设计

近来为了学习Linux嵌入式系统的移植,买了块OK6410A的开发板,当然从裸机程序的开发开始了,然后不可避免遇到了按键中断这样的程序,下面按照思考的过程,写下总结吧! 首先,弄清楚硬件连接,通过查看原理图,得到了这样的硬件连接KEYINT1-GPN0-EINT_G0_0KEYINT2-GPN1-EINT_G0_1KEYINT3-GPN2-EINT_G0_2

2014-05-03 20:01:02 969 2

原创 C语言中容易忽略的问题

C语言中容易忽略的问题1;关于在函数中调用数组时,若出现下面的函数语句   Int  func(long array[const static 5])其意思是: 数组是一个指向long的不能被修改的指针,该数组至少与5个元素待续。。。。

2014-04-27 11:02:18 503

原创 关于内存分配的几个原则

关于结构体内存分配的几个原则:      1 结构体每个成员相对于结构体首地址的偏移量(offset)都是这个成员的大小的整数倍,如有需要编译器会在成员之前加上填充字。例如下面的结构体:struct ex{int i;char t;int n;}第一个成员偏移量为0,是int型成员大小的4的整数倍,第二个成员的大小为1,由于前面的偏移量为4,是1 的整数倍,所以

2014-04-27 11:00:05 762

转载 ARM指令中的STMFD和LDMFD简介

STMFDST - storeM - MultipleF - FULLD - DescendingLDMFDLD - LoadM - MultipleF - FULLD - Descending栈指针通常可以指向不同的位置。栈指针指向有数据的单元时称为FULL栈(满栈);栈指针指向有数据的下一个

2014-04-25 22:17:51 1153 1

原创 嵌入式学习中遇到的错误及其解决办法

嵌入式学习中遇到的错误及其解决办法                (redhat版)一:启动redhat时出现下面情况的解决办法、(转载网上,但可行性高)     gnome-session 装入或保存配置信息时发生错误 gnome-session 装入或保存配置信息时发生错误。您的某些配置设置可能不能正常工作。在为 gnome-terminal 装

2014-04-25 22:15:22 3608

原创 在架构bootloader是遇到的错误

1 在设置svc模式好之后调试时出现了一下的问题Make alArm-linux-gcc -g -c start.o -o strart.SArm-none-linux-gnueabi-gcc;start.o:no such file or directoryArm-none-linux-gnueabi-gcc;no input fileMake:*** [

2014-04-25 22:11:34 563

原创 交叉工具链的安装与使用

交叉工具链的安转与使用1 创建实验目录   【root@。。。。。。。。。root】#mkdir /home/corss_link    [[email protected]]cd /home/corss_link/2通过SMP服务器将交叉工具链拷贝到实验目录 【root@。。。。。。。。。。Corss_link】cp /opt/li

2014-04-25 22:09:57 732

转载 关于ok6410初始化内存方法

声明:本文转自http://blog.csdn.net/mcudoc/article/details/8758222   DDR初始化 一、DDR的容量       我们在DDR芯片资料上的开头都会标明DDR的容量:如我们的手上的OK6410A的DDR(K4X1G163PC),它的芯片资料上写的是32M x16 Mobile-DDR SDRAM。但是厂家跟说ok64

2014-04-25 22:06:39 1175

转载 ok6410初始化内存

1.      PHASE LOCKED LOOP(PLL)S3C6410里包含三个PLL(锁相环),APLL, MPLL, EPLL,通过设置它们将输入时钟同步输出达到操作CPU的工作频率的目的。如图1-1所示。 Voltage Controlled Oscillator (VCO)P[5:0]位来设置FIN进行分频。通过设置Main-Divider分频数,分频压

2014-04-25 22:03:56 595

转载 ok6410裸机开发启动程序模板

本文转自:http://www.verydemo.com/demo_c167_i72493.html一、 裸机程序的构成     1. 基本的裸机程序由启动代码和C函数文件构成。而启动代码包括:硬件设备初始化、调用C函数。本次分析中代码文件有:start.S              启动代码,都是汇编写的commom.h   一些通用的函数,比如设置某

2014-04-25 21:58:45 564

原创 ARM中mmu的映射原理与配置步骤

在mmu启动之前;    1.将ttb放置在cp15的c2的高18位    2.在虚拟地址映射表基地址位置构建一级页表:ttb的开始的16K字节空间,可分2^16=4096个映射描述符(我的理解是有四种不同的映射,可分4096个映射方式)    注:构建一级页表是对所选的映射进行设置,配置domain ap 等;有关mmu的转换过程:(我的理解)      

2014-04-25 21:54:12 2376

原创 关于main(int argc,char **argv)中参数的说明

c语言主函数int main(int argc; char *argv[])中参数的作用在以前的c语言学习中,主函数一般定义为 void main(){}没有参数。但是,随着学习的深入和课题中实际问题的需要(例如:在课题中,经常需要测试不同的点云文件,如果不给main()函数加参数,而是每次都依靠查找到并修改主函数中的点云文件名来达到目的,势必是很麻烦的。),我

2014-04-25 21:51:33 535

转载 C 语言中的字符屏幕函数

Turbo C2.0的字符屏幕函数主要包括文本窗口大小的设定、窗口颜色的设置、窗口文本的清除和输入输出等函数。    1.文本窗口的定义    Turbo C2.0默认定义的文本窗口为整个屏幕, 共有80列(或40列)25行的文本单元, 每个单元包括一个字符和一个属性, 字符即ASCII 码字符, 属性规定该字符的颜色和强度。    Turbo C2.0可以定义屏幕

2014-04-25 21:49:13 529

ok6410裸机串口程序

本代码是针对于ok6410串口驱动的裸机开发程序

2014-05-10

空空如也

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

TA关注的人

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