自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (52)
  • 收藏
  • 关注

原创 USB驱动程序移植

USB驱动程序分为两类:USB主机控制器驱动程序(Host Controller Drivers)、USB设备驱动程序(USB device drivers)。它们在内核中的层次为:    USB主机控制器驱动程序  提供访问USB设备的接口,它只是一个“数据通道”,至于这些数据有什么作用,这要靠上层的USB设备驱动程序来解释。    USB设备驱动程序  使用下层驱动提供

2016-06-10 22:36:48 735

原创 韦东山 文件系统映像,mount挂接文件系统

cd /work/nfs_rootmkdir tmpcp fs_mini_mdev.tar.bz2 tmp/cd tmp/tar xjf fs_mini_mdev.tar.bz2 把光盘上linux/tools里的mkyaffs2image工具拷到服务器的/work/tools目录里。cd /work/toolscp mkyaffs2image /bin/chmod

2016-06-10 18:53:49 1264

原创 LCD驱动程序移植

对LCD的操作可以像串口一样,通过终端设备层的封装(/dev/tty*设备)来输出内容,也可以通过frame buffer(/dev/fb*设备)直接在显存上“绘制”图像。tty(终端设备)和frame buffer驱动程序的框架:下面根据每层的文件讲解一下上图:1)显示驱动程序2)键盘驱动程序2.操作实例1)对/dev/tty*调用

2016-06-10 14:38:04 1755

原创 SD卡驱动程序移植

1.内核MMC/SD驱动程序框架内核drivers/mmc目录下有3个子目录:card/、core/和host/,这刚好表示了MMC/SD驱动程序的3个层次,如下:1)区块层    向文件系统层、用户空间提供文件操作的接口,主要文件是card/目录下的block.c,queue.c向它提供了几个函数来操作队列。    区块层调用core/目录下的core.c、sysfs.c提供

2016-06-10 08:56:30 849

原创 IDE接口驱动程序移植

从上图可知:中断引脚为EINT6,上升沿有效;使用nWAIT信号;数据位宽为16。如前所述,移植驱动,只需要把上面的地址、中断号告诉内核就可以了。只需要修改两个文件,drivers/ide/arm/ide_arm.c、drivers/ide/Kconfig。在drivers/ide/arm/ide_arm.c文件中增加ide_s3c24xx_init函数,修改后文件如下(使用编译开关C

2016-06-09 14:10:35 752

原创 CS8900A网络驱动程序移植

上图为开发板上的网卡原理图,可得到:1.CS8900A的访问基址为0x19000000

2016-06-09 11:12:44 504

原创 如何判断外设使用的地址空间

S3C2410/S3C2440的存储控制器有如下特性:1.每个BANK的地址空间为128MB,总共1GB(8 BANKs);2.可编程控制总线位宽(8/16/32-bit),不过BANK0只能选择两种位宽(16/32-bit);3.总共8个BANK,BANK0~BANK5可以支持外接ROM、SRAM等,BANK6~BANK7除可以支持ROM、SRAM外,还支持SDRAM等。4.BA

2016-06-09 10:38:46 2067

原创 建立网络文件系统

在openJTAG下执行:set bootargs noinitrd root=/dev/nfs nfsroot=192.168.1.19:/work/nfs_root/tmp/fs_mini_mdev ip=192.168.1.17:192.168.1.19:192.168.1.1:255.255.255.0::eth0:off init=/linuxrc console=ttySAC0

2016-06-09 00:49:14 270

原创 tftp下载内核和文件系统

按q进入openJTAG模式,执行menu命令回到原目录。tftp下载内核:1.打开tftp软件,把当前目录设置为要下载文件所在的目录;服务器ip设好,为Windows的ip。2.在openJTAG命令行里执行print命令看参数。    执行set ipaddr 192.168.1.17,把开发板的ip设为192.168.1.17    执行set serverip 192.

2016-06-09 00:47:45 2660

原创 韦东山u-boot、kernel打补丁操作

u-boot操作:内核操作:1.编译内核

2016-06-08 09:32:36 3405

原创 移植Busybox

1.由前面内核启动流程可知,内核启动的最后一步就是启动init进程,代码在init/main.c中,如下: (1)打开标准输入、标准输出、标准错误设备。第756行尝试打开/dev/console设备文件,如果成功,它就是init进程标准输入设备。第759、760将文件描述符0复制给文件描述符1、2,所以标准输入、标准输出、标准错误都对应一个文件。Busybox

2016-06-07 17:23:37 453

原创 Linux内核移植

以下内容大部分来自《嵌入式Linux应用开发完全手册》1.1内核启动过程概述    如图是Linux内核的vmlinux启动过程。之所以强调是vmlinux,是因为其他格式的内核在进行与vmlinux相同的流程之前会有一些独特的操作。比如压缩格式的内核zImage,它首先进行自解压得到vmlinux,然后执行vmlinux,开始“正常的”启动流程。    第一阶段:引导

2016-06-06 20:02:10 531

原创 U-Boot常用命令

图片内容来自《嵌入式Linux应用开发完全手册》1.帮助命令help2.下载命令使用方法举例:0x30000000表示文件下载后存放的内存地址;3.内存操作命令4.NOR Flash操作命令5.NAND Flash操作命令eg:nand erase 0xA00000 0x

2016-06-05 15:37:16 526

原创 Linux内核Makefile

顶层Makefile根据不同的平台,对各类target分类并调用相应的规则Makefile生成目标.config内核配置文件arch/$(ARCH)/Makefile具体平台相关的Makefilescripts/Makefile.*通用规则文件,面向所有的Kbuild Makefiles,所

2016-06-05 10:52:55 2457

转载 Linux内核源码结构

引用点击打开链接Linux内核文件数目将近2万,除去其他架构CPU的相关文件,支持S3C2410、S3C2440这两款芯片的完整内核文件有1万多个。这些文件的组织结构并不复杂,它们分别位于顶层目录下的17个子目录,各个目录功能独立。arch:包含和硬件体系结构相关的代码,每种平台占一个相应的目录,如i386、arm、arm64、powerpc、mips等。Linux内核目前已经支持

2016-06-04 19:29:56 512

原创 SecureCRT的使用

1.如何在同一个窗口开多个标签?新建连接时,把红圈里的选项勾上就行了。2.SecureCRT的快捷键Alt + Enter -- 全屏  Alt + B --打开新的连接  Alt + 1/2/3/4/5.../9 -- 切换到第1/2/3/4/5.../9个标签    Ctrl + A -- 光标移至行首。  Ctrl + B -- 光标前移1个字符  

2016-06-02 21:04:12 564

转载 关于main函数的(int argc,char *argv[])

main(int argc,char *argv[ ])argv为指针的指针argc为整数char **argv or: char *argv[] or: char argv[][]main()括号内是固定的写法。下面给出一个例子来理解这两个参数的用法:假设程序的名称为prog,当只输入prog,则由操作系统传来的参数为:argc=1,表示只有一程序名称。arg

2016-06-02 17:23:42 618

原创 嵌入式驱动之阻塞操作、非阻塞操作

阻塞阻塞操作    是指在执行设备操作时若不能获得资源则挂起进程,直到满足可操作的条件后再进行操作。被挂起的进程进入休眠状态,被从调度器的运行队列移走,直到等待的条件被满足。非阻塞操作  进程在不能进行设备操作时并不挂起,它或者放弃,或者不停地查询,直至可以进行操作为止。fd = open("...", O_RDWR | O_NONBLOCK); 比

2016-06-02 16:55:28 1600

原创 嵌入式驱动程序之信号量

如果要实现驱动程序,在同一时间只能被一个应用程序打开。也可以用信号量。信号量信号量(semaphore)是用于保护临界区的一种常用方法,只有得到信号量的进程才能执行临界区代码。当获取不到信号量时,进程进入休眠等待状态。定义信号量struct semaphore sem;初始化信号量void sema_init (struct semaphore *sem,

2016-06-02 16:03:17 738

转载 ps命令

原文地址为:Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有

2016-06-02 15:09:40 313

原创 驱动程序之原子操作

如果要实现驱动程序,在同一时间只能被一个应用程序打开。方法之一,可以用原子操作。原子操作原子操作指的是在执行过程中不会被别的代码路径所中断的操作。常用原子操作函数举例:atomic_t v = ATOMIC_INIT(0);     //定义原子变量v并初始化为0atomic_read(atomic_t *v);        //返回原子变量的值void atom

2016-06-02 14:40:29 820

原创 字符设备驱动程序之异步通知

如果要实现:平时应用程序处于休眠状态,当按下按键时,驱动告诉应用程序由状态改变,需要读取按键状态了。那么就需要建立驱动和应用程序之间的通信。应用函数中的某个函数怎么使用,需要包含哪些头文件,可以在服务器端查询,如:man signal;man getpid;man fcntl;驱动程序代码:#include #include #include #include #inc

2016-06-02 13:51:01 403

原创 字符设备驱动程序之poll机制

poll机制分析韦东山 2009.12.10所有的系统调用,基于都可以在它的名字前加上“sys_”前缀,这就是它在内核中对应的函数。比如系统调用open、read、write、poll,与之对应的内核函数为:sys_open、sys_read、sys_write、sys_poll。 一、内核框架:对于系统调用poll或select,它们对应的内核函数都是sys_poll。分析s

2016-06-02 01:18:08 1061

原创 中断按键驱动程序

#include #include #include #include #include #include #include #include #include #include #include static struct class *thirddrv_class;static struct class_device *thirddrv_class_dev;volatile unsigne

2016-06-01 22:17:49 580

原创 查询方式的按键驱动程序

#include #include #include #include #include #include #include #include #include #include static struct class *seconddrv_class;static struct class_device *seconddrv_class_dev;volatile un

2016-06-01 09:08:36 527

原创 嵌入式LED驱动程序(韦东山板子)

#include #include #include #include #include #include #include #include #include #include static struct class *firstdrv_class;static struct class_device *firstdrv_class_dev;volatile unsi

2016-06-01 00:03:34 2002

SourceInsight4.0.xml

Source Insight4.0 主题。下载后菜单栏“Options”-"Load Configration"选中文件即可使用。

2020-08-17

6mm透明亚克力.dwg

自己DIY Prusa i3 3D打印机所使用的亚克力切割件,厚度6mm,透明。详情看这儿:https://blog.csdn.net/qlexcel/article/details/103285380

2019-12-09

DRV8711控制程序

步进电机驱动芯片DRV8711的控制程序,包含SPI的初始化配置,DRV8711的寄存器配置。

2018-11-16

120A FVT电调的使用说明书

Shenzhen FVT Electronics Co., Ltd. 120A 150A FVT电调 特斯拉电机

2018-07-09

电阻值倍率生成

电阻值倍率生成,C语言。。。。。。。。。。。。。。

2018-02-26

电阻值倍率 倍数

精度为5%的电阻值间的倍率 倍数,从小到大排列。用于DC-DC反馈电阻计算,电阻分压电路。

2018-02-26

jlink-v8.bin

jlink固件

2017-01-05

Install_AT91-ISP_v1.13.exe

jlink刷固件软件

2017-01-05

mpu6050的IMU

平台是stm32f1,根据mpu6050读出的数据计算出IMU,使用压缩文件内的匿名上位机用户模式,可以显示飞机姿态。

2016-07-26

stm32的IMU

stm32使用MPU6050计算出欧拉角,使用zip内上位机的用户模式,即可显示姿态。 IMU

2016-07-26

ProcessMonitor_3.10汉化

ProcessMonitor_3.10汉化

2016-07-20

SourceInsight带破解机

SourceInsight带破解机

2016-07-11

cuteftp免费破解版

cuteftp免费破解版

2016-06-02

securecrt破解版

securecrt免费破解版

2016-06-02

ov7670摄像头 stm32F4 TFT显示

ov7670摄像头 stm32F4 TFT显示实时的拍摄图像

2016-05-02

stm32 输出PWM波占空比可由串口控制

stm32 输出PWM波占空比可由串口控制

2016-04-28

FTV电调使用说明

FVT电调的使用说明,摘抄自淘宝说明,使用说明很详细。

2016-04-28

串联谐振电路分析

灯在电路谐振时最亮,谐振频率计算

2016-04-28

2个TCS230同时工作

2个TCS230同时工作

2016-04-19

EEPROM 24C64读写程序

EEPROM 24C64读写程序

2016-04-18

XRUSB1_ver2250_installer.EXE

XR21B1411驱动

2021-11-20

LT6911UXC_HDMI2.0_TO_MIPI_V1_1.pdf

LT6911UXC_HDMI2.0_TO_MIPI_V1_1.pdf

2021-09-09

LQ055T3SX02Z_Spec).pdf

LQ055T3SX02Z_Spec).pdf

2021-09-08

rgb888_2_rgb565.exe

https://blog.csdn.net/qlexcel/article/details/118790657

2021-07-16

GNSS坐标转换小工具和代码.zip

提供小工具和源代码完成WGS84转GCJ02、GCJ02转WGS84、GCJ02转百度坐标系(BD-09)、百度坐标系(BD-09)转火星坐标系(GCJ-02)、WGS坐标转百度坐标系(BD-09)、百度坐标系(BD-09)转WGS84坐标

2021-06-05

红外热成像测温论文资料

红外热成像测温论文,包含红外测温原理,数据处理算法,实际应用案例等18篇。IRTI检测AURI患者体温的临床研究,测量距离对生猪红外热成像测温的影响及校正.pdf 非制冷红外热成像测温系统关键技术和算法研究.pdf 红外技术及其在发热测温中的应用.pdf 红外热成像技术对急性咽喉部炎症的检测.pdf 红外热成像技术与应用.pdf 红外热成像快速体温排查设备的原理及选型.pdf 红外热成像体温监测系统使用效果分析.pdf 基于ARM9红外热像仪的设计与实现.pdf 基于FPGA的红外热成像温度检测算法研究.pdf 基于红外热成像的白羽肉鸡体温检测方法.pdf 基于红外热成像技术的发热患儿体表

2021-01-03

Nuvoton_8051_Keil_uVision_Driver_v2.00.6561.zip

新塘单片机的keil支持包,安装这个之后才能在keil中找到新塘的单片机,才能找到仿真器,并进行仿真。

2020-09-26

GRBL_Control.rar

GRBL的STM32代码,可以直接使用,硬件端口的使用,readme文件中都有,可以参考来设计原理图。可以看这儿:https://mp.csdn.net/console/editor/html/106416501

2020-05-29

VL53L0X.rar

VL53L0X的简单测距代码,详情看这篇博客https://blog.csdn.net/qlexcel/article/details/106154743

2020-05-20

install.sh

安装NUC972的BSP的脚本,看这儿:https://blog.csdn.net/qlexcel/article/details/105871442

2020-05-01

Obsidian2.xml

自用Notepad++的主题,详情可以看这里:https://blog.csdn.net/qlexcel/article/details/104071074

2020-01-22

default.conf

CodeBooks的主题。效果在这儿:https://blog.csdn.net/qlexcel/article/details/95926334

2019-12-29

STM32H753xx_User_Manual.chm

STM32H7Hal库用户手册,包含每个外设的使用说明,所有的Hal库中函数的详细使用说明,数据结构说明,宏定义说明等。。。。。。

2019-12-03

Template.7z

工程模版,stm32f103单片机,自己在用。改自正点原子。

2019-09-02

SPWM_simulink.slx

SPWM的Simulink仿真,直接可用。来自《现代永磁同步电机控制原理及MATLAB仿真》袁雷编著。介绍文章在这儿https://blog.csdn.net/qlexcel/article/details/99065568

2019-08-13

svpwm_simulink.slx

SVPWM的Simulink仿真,直接可用。来自《现代永磁同步电机控制原理及MATLAB仿真》袁雷编著。介绍文章在这儿https://blog.csdn.net/qlexcel/article/details/98534608

2019-08-10

GT911、GT928、GT9147的驱动程序

触摸屏GT911、GT928、GT9147的驱动程序,stm32平台,使用的模拟IIC,共需要4个普通IO口:SCL、SDA、RST、INT。程序中带有1204*600和800*480的配置。

2019-07-01

CMSIS.rar,解决缺少core_cmFunc.h和core_cmInstr.h

Keil编译提示缺少core_cmFunc.h和core_cmInstr.h等文件,下载后解压,把CMSIS文件放在:D:\Program Files\Keil\ARM\CMSIS 即可

2019-06-27

qlexcel.xml

source insight的主题,暗色系,护眼。安装时用source insight一键引入即可。

2019-06-20

Keil护眼皮肤和主题

包含3个文件:arm.prop、global.prop、global.prop.def,直接复制粘贴到Keil的安装目录\UV4下即可。

2019-04-21

空空如也

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

TA关注的人

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