自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 资源 (4)
  • 问答 (6)
  • 收藏
  • 关注

原创 Android Serial Tools

如果在android应用层想要使用serial, 有两种方式:app调用jni接口, 访问对应的设备节点. (java->jni->Serial)app访问系统服务, 通过服务调用jni接口访问串口设备.(java->service->jni->hal->serial驱动)下面我们就针对两种方式进行实现:JNI方式访问系统服务方式1, 系统修改...

2019-07-01 19:27:30 814

原创 RK3399 I2C 外设接入

I2C 探测参考rk3399 自带了i2c的探测功能. 需要我们将其打开. 当i2c外设接入后可以先用i2c_detect来探测设备是否成功被识别.打开I2C_detect修改configrk3399/source/kernel/arch/arm64/configs添加:修改kconfig文件rk3399/source/kernel/drivers/i2c/busses/Kco...

2019-06-14 18:35:39 2370

原创 Android Usb源码分析

android上usb设备接入,拔出, 读写操作过程分析a. usb设备插入,如何组成usbdevice. 存放在UsbManager.devicesList.usb设备插入后host端如何获取该设备信息呢?分析:当usb设备接入时, 会有硬件产生中断. 收到中断后host端会由总线驱动程序根据usb协议, 对端口0地址发送一个请求包给usb设备.设备收到请求后会将自己的设备描述符信...

2019-04-16 18:23:23 1955

原创 linux wreshark usb 抓包

过滤制定设备数据将usb设备插入主机,可以看到在当前bus上有很多设备的数据,我们需要将指定usb设备过滤出来。每一个usb设备插入时,host端都会先发一个获取设备描述的指令。usb设备收到该指令后会返回一个自身信息的包给到host。我们可以根据收到返回数据信息中找到指定设备,然后根据编号设置过滤条件。usb.src == “1.16.0” || usb.dst==“1.16.0...

2019-04-03 16:46:45 451

翻译 STM32-ISP烧写步骤

1 将usb连接到开发板和pc的usb端口, 如果需要装驱动则安装指定驱动.2 安装完后会在设备管理器中显示对应的串口. 打开FlyMcu刷机工具按如下配置.3 设置选项字节等4 杨桃1号开发板刷机设置说明介绍一下核心板上的ASP功能。在核心板上的一个“MODE”按键和一个“ASP”指示灯,如图9所示。单击MODE键可以开关开发板的电源,电源开启时ASP指示灯点亮,...

2019-03-27 09:58:19 10831

翻译 STM32-接口定义

STM32 开发板一个开发板的设计 , 就像一个城市的规划.

2019-03-19 12:00:59 3028

翻译 STM32-命名规范

2019-03-19 12:00:26 178

原创 ADPCM音频编解码

前言参考所谓ADPCM编码是一种自适应差分脉码调制技术。它可以对音频数据在毫无损失的前提下,将数据量压缩为原来的1/4,这对于音频来说,意义是重大的.ADPCM源于微软的Windows,一般的WAV文件就是使用它来编码的,WAV是Windows上的标准音频格式。ADPCM算法已经被标准化了,现行使用的是IMA-ADPCM,即IMA组织制订的ADPCM算法。这种算法比较简单,但却有较高的压缩比...

2019-03-08 16:45:36 1729

原创 image-identify

1, 安装mysqlsudo apt-get install mysql-server查看版本:mysql -V登录  mysql -u root -p创建用户  mysql> CREATE USER ‘test’@‘localhost’ IDENTIFIED BY ‘1234’;这样就创建了一个名为:test 密码为:1234 的用户。注...

2019-03-08 16:44:24 281

原创 lua

ubuntu安装lua下载安装lua下载curl -R -O http://www.lua.org/ftp/lua-5.3.4.tar.gztar zxf lua-5.3.4.tar.gzcd lua-5.3.4make linux testmake install在执行make时可能会报readline什么的错误sudo apt-get install libreadl...

2019-03-08 16:42:12 119

原创 bat

5,定时执行:@echo off:startecho jajajachoice /t 5 /d y /n >nulgoto start1, 变量延长生命周期SETLOCAL ENABLEDELAYEDEXPANSION使用变量时,使用 !value! 包裹2, 获取外界输入值set tag1=%1 ->第一个值3,常用指令rem 表示此命令后的字符...

2019-03-08 16:41:52 148

原创 Python

python下载下载安装a. 下载python包 *.tar.bz2用tar –xjf 解压b. 一次执行./configure make make installubuntu 切换python版本sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100sudo updat...

2019-03-08 16:41:34 131

原创 Java

JAVA各种类型各占多少字节*,*多少位1个字节是8位只有8种基本类型可以算.其他引用类型都是由java虚拟机决定的自己不能操作byte 1字节short 2字节int 4字节long 8字节float 4字节double 8字节char 2字节boolean 1字节错误: 编码GBK的不可映射字符javac -encoding UTF-8 HelloWorle.j...

2019-03-08 16:41:03 278

原创 Cpp

重载运算符:operator//修改之前的point add()point operator+(point &p1,point &p2){ point n; n.x = p1.x + p2.x; n.y = p1.y + p2.y; return n;}//调用point a;point b;point c = a+b;友元函数将一...

2019-03-08 16:40:40 191

原创 Git

git tag使用 -------------------------------git tag  //查看taggit tag test_tag c809ddbf83939 //在某个commit 上打taggit taggit push origin test_tag    //!!!本地tag推送到线上git tag -d test_tag        //本地删除tagg...

2019-03-08 16:39:30 205

原创 Vim

27, 常用操作参考26, 查找查找很长的词,如果一个词很长,键入麻烦,可以将光标移动到该词上,按*或#键即可以该单词进行搜索,相当于/搜索。而#命令相当于?搜索。:set hlsearch  高亮搜索结果,所有结果都高亮显示,而不是只显示一个匹配。25, vim跳转之前位置Ctrl + OCtrl + I装了Ctag的插件可以跳转 Ctrl+】。查看函数调用。24, vim 查...

2019-03-08 16:38:48 171

原创 音频知识

参考简介PDM代表脉冲密度调制。然而,更好的简称是“1比特过采样音频”,因为它只不过是一个高采样率、单比特的数字系统。如果要找一个优点的话,那就是采样率是音频CD的好几倍,且用一个适当的方式将字长从16bit减小到1bit,这将作为一个PDM系统的基础。 大多数现代的数字音频系统使用多比特PCM(脉冲编码调制)以表征信号。PCM有利于简化处理。这使得信号处理的操作可以在音频流上完成...

2019-03-08 16:37:30 1761

原创 静态库和动态库

我们通常把一些公用函数制作成函数库,供其它程序使用。函数库分为静态库和动态库两种。静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库。动态库在程序编译时并不会被连接到目标代码中,而是在程序运行是才被载入,因此在程序运行时还需要动态库存在。本文主要通过举例来说明在Linux中如何创建静态库和动态库,以及使用它们。在创建函数库前,我们先来准备举例用的源程序,并将函数库的源程...

2019-03-06 10:56:58 123

原创 .config、Kconfig、Makefile

参考-menuconfig过程参考-区别关系描述Kconfig —> (每个源码目录下)提供选项.config —> (源码顶层目录下)保存选择结果Makefile —> (每个源码目录下)根据.config中的内容来告知编译系统如何编译在Linux内核源码的各层目录下。都存在一个Kconfig文件和一个Makefile文件,.config文件存在顶层目录...

2019-03-06 10:56:32 276

原创 Input sub system

drivers/input/input.c: input_init > err = register_chrdev(INPUT_MAJOR, "input", &input_fops); static const struct file_operations input_fops = { .owner = THIS_MODULE, .open = input_open_fi...

2019-03-06 10:55:52 126

原创 I2C

i2c 简单原理1,主芯片发出start信号(scl高电平,sda从高电平拉低)后,用9个时钟来发送一八数据,第九个时钟用来等待从设备回应。2, 如果收到回应信号,则继续发送或接受,如果没有ack,则后续不再操作。3,结束信号(scl高电平,sda由低拉高)。4,传送数据中,scl低电平时,sda可变。在一个sda线上双向传输i2c控制器发生i2c终端时,scl被拉低...

2019-03-06 10:55:13 140

原创 ADC&TouchScreen

如何使用编程步骤

2019-03-06 10:54:47 215

原创 support div

裸版支持除法报错:: undefined reference to `__floatsidf'lcd/s3c2440_lcd_controller.o(.text+0xd0): In function `s3c2440_lcd_controller_init':: undefined reference to `__divdf3'lcd/s3c2440_lcd_controller.o(...

2019-03-06 10:54:25 280

原创 LCD

LCD 工作原理参考文章编程操作a. 取数据 : 把framebuffer的地址告诉LCD控制器, bpp, 分辨率b. 发数据 : 把时序告诉LCD控制器、设置引脚的极性

2019-03-06 10:53:51 139

原创 Nor Flash

通过uboot来体验一下nor 操作:读数据md.b 0读IDNOR手册上:往地址555H写AAH往地址2AAH写55H往地址555H写90H读0地址得到厂家ID: C2H读1地址得到设备ID: 22DAH或225BH退出读ID状态: 给任意地址写F0H2440的A1接到NOR的A0,所以2440发出(555h<<1), NOR才能收到555h这个地...

2019-03-06 10:53:27 400

原创 Nand Flash

第001节_NAND_FLASH操作原理NAND FLASH是一个存储芯片那么: 这样的操作很合理"读地址A的数据,把数据B写到地址A"问1. 原理图上NAND FLASH和S3C2440之间只有数据线,怎么传输地址?答1.在DATA0~DATA7上既传输数据,又传输地址当ALE为高电平时传输的是地址,问2. 从NAND FLASH芯片手册可知,要操作NAND FLASH需要先发出命...

2019-03-06 10:53:04 170

原创 异常和中断

1. 概念引入与处理流程2. CPU模式(Mode)_状态(State)与寄存器7种Mode: usr/sysundefined(und)Supervisor(svc)Abort(abt)IRQ(irq)FIQ(fiq)2种State: ARM stateThumb state寄存器: 通用寄存器备份寄存器(banked register)当前程序状态寄存器(Curren...

2019-03-06 10:51:38 210

原创 USB Driver

USB Driver基于linux的usb驱动及libusb的常用接口usb的硬件设计usb协议Linux usb驱动libusb的使用基于linux的usb驱动及libusb的常用接口基于linux的usb驱动分析和host端基于libusb的接口实现usb的读写.usb的硬件设计USB的硬件设计简单介绍usb协议USB的概念和协议等.问1. 既然还没有"驱动程序",为何能知道

2019-03-06 10:51:15 1725

原创 代码重定向

开发板上存储模块1, 4k片内存储SRAM,可读可写,如果是nor启动,启始地址是0x4000 0000,如果是nand启动,启始地址是0.2, SDRAM,可读可写,启始地址是0x3000 00003, 所以当我们把bin文件烧写到nor或者nand时,需要进行代码重定向.4, 一个程序包含一下内容: 代码段(text),数据段(全局变量data),只读数据段(const全局变量 ro...

2019-03-05 10:57:43 939

原创 sdram内存控制

cpu如何获取内存中数据通过地址线,数据现和偏选信号(chip select) 和存储器(网卡,sdram,nor…)件相连, 通过发出地址个内存控制器,由内存控制器将数据取出返回给cpu.如何控制不同存储之间不会项目干扰内存控制器会根据不同addr来发出偏选信号, 没有偏选信号的设备不会响应寻址操作.内存控制器寻址能力和地址线数量有关, A1~A27个地址先可以寻址128M空间.不同...

2019-03-05 10:57:11 366

原创 SRAM,SDRAM,NOR,NAND

发现自己先前对于SRAM、SDRAM、nor flash、nand flash的理解十分模糊,所以重新查阅资料学习,现分析如下:1、SRAM(Static Random Access Memory)静态随机存取存储器,它是一种具有静止存取功能的内存,不需要刷新电路即能保存它内部存储的数据,掉电消失。制作工艺复杂,成本较高,所以使用较少。一般容量较小,但是读写速度很快。2、SDRAM(Sync...

2019-03-05 10:56:44 1164

转载 终极内存技术指南

作为电脑中必不可少的三大件之一(其余的两个是主板与CPU),内存是决定系统性能的关键设备之一,它就像一个临时的仓库,负责数据的中转、暂存……不过,虽然内存对系统性能的至关重要,但长期以来,DIYer并不重视内存,只是将它看作是一种买主板和CPU时顺带买的“附件”,那时最多也就注意一下 内存的速度。这种现象截止于1998年440BX主板上市后,PC66/100的内存标准开始进入普通DIYer的视野...

2019-03-05 10:56:19 158

原创 uart串口

简单原理图RS-232可以支持更长距离传输如何使用:设置波特率和格式(数据位,停止位,校验位,流控)传输能力: 一秒能传多少数据(根据波特率和格式决定)其他:fatal error: sys/cdefs.h No such file or directory 解决方案在64位的ubuntu系统,使用gcc想编译出32位的应用程序,需要使用gcc -m32选项,但是使用...

2019-03-05 10:55:29 192

原创 clock时钟

时钟种类soc芯片上,时钟一般分为三种:1, fclk : 一般是cpu工作的时钟.2, hclk: AHB总线上适用(High), 如usb,内存,相机等.3, pclk: APB总线使用(peripheral), 入i2s,i2c,spi 等.如何得到不同频率的时钟.1, osc:表示晶振(2440上是16M).2, pll表示锁相环(Phase-Locked-Lo...

2019-03-05 10:54:54 2490

原创 jz2440 nfs 挂载

保证网络在统一端口,保证开发板和虚拟机可以ping通pc机通过ipconfig查看:例如192.168.3.223linux虚拟机通过ifconfig: 例如192.168.3.225开发板和虚拟机一样, 如果不在3网段则修改ifconfig eth0 192.168.3.43ifconfig虚拟机上安装nfs服务sudo apt-get inst...

2019-03-05 10:54:16 706

原创 Makefile

Makefile的语法通配符: %.o$@ 表示目标$< 表示第1个依赖文件$^ 表示所有依赖文件打印变量信息$(info/warning/error) 来打印@echo 打印但是需要在target后面,并且加上tab.pwd:=$(shell pwd)$(info "info")$(warning "warning")$(error "error: this ...

2019-03-05 10:53:44 72

原创 ARM汇编指令

问题:没有说清楚arm读取指令字对齐最低两位是零问题.参考:arm读取指令字对齐最低两位是零ldr和mov的区别参考: LDR 和MOV 指令区别LDR : 读内存,load例子: LDR r0,[r1]解释: 假设r1的值是0x123,读取0x123地址的数据(4字节),保存到r0中例子: LDR r0,#0x12345678解释: 错误指令,#0x12345...

2019-03-05 10:52:18 239

原创 Uboot

1, 解压uboottar xjf u-boot-1.1.6.tar.bz22, 打补丁, -p1 表示乎略掉patch中的第一个目录,因为当前已经进到该目录了.patch -p1 < u-boot-1.1.6_jz2440.patch在patch中–表示原始文件,++表示修改后文件.3, 配置make 100ask24x0_config4, 编译make如...

2019-03-05 10:50:38 123

原创 ALSA音频驱动概述

文章出处官网介绍概述ALSA(Advanced Linux Sound Architecture)是linux上主流的音频结构,在没有出现ALSA架构之前,一直使用的是OSS(Open Sound System)音频架构。关于OSS的退出以及ALSA的出现,可以看 Linux音频驱动-OSS和ALSA声音系统简介及其比较。关于OSS和ALSA音频架构之间的区别图如下:主要的区别就是在O...

2019-02-27 09:37:53 378

原创 Linux常用操作

查找问题中字符串出现次数cat file|grep -i 字符串 |wc -llubuntu 回复默认任务栏google 搜索 : lubuntu lxpanel default参考cp /usr/share/lxpanel/profile/Lubuntu/panels/panel ~/.config/lxpanel/Lubuntu/panelslxpanelctl restart...

2019-02-27 09:36:39 750

IMEI_check

使用方法: C:\Users\dell\Desktop>javac IMEICheck.java C:\Users\dell\Desktop>java IMEICheck input the imei you want check ! 123456789012345 imei :123456789012345 calCheckSum:7 checkSum:5result :fals C:\Users\dell\Desktop>java IMEICheck input the imei you want check ! 123456789012347 imei :123456789012347 calCheckSum:7 checkSum:7result :true

2017-09-15

wav音频增益调节

wav音频格式数据简单调幅, c实现

2017-06-29

用到的jar包和js文件

修改后的ajaxfileupload.js 和上传下载需要的commons 文件

2015-06-24

commons-fileupload-1.2.1.jar和commons-io-1.3.2.jar

上传服务器端常用的两个jar包 commons-fileupload-1.2.1.jar和commons-io-1.3.2.jar

2015-06-01

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

TA关注的人

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