- 博客(12)
- 资源 (1)
- 收藏
- 关注
原创 移植QT5.7到tiny4412开发板
移植前的准备 虚拟机:ubuntu16.04,硬盘空间尽量大一些,20G略微有点小,开发板根文件系统已经做好。 交叉编译环境:arm-linux-gcc使用4.8版本以上,否则对c++11支持度不好,这里使用arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2 QT5.7源码包:针对嵌入式平台编译,编译...
2018-08-28 08:44:42 4291 4
原创 基于JZ2440编写触摸屏驱动
简介 JZ2440开发板配套的是一款4.3英寸电阻触控屏,电阻触控屏原理很简单,就是尖锐物体在某一个点按下,上面触控薄膜导电,由于这个点举例起始点暂且规定00点,距离不同,电阻薄膜导电电阻不同,电压压降也就不同,原理就是通过判断XY两个方向轴与零点之间的电压差确定触控位置。内核触控驱动 内核自带触摸屏驱动,在s3c2440_ts.c这个文件,实现这个文件的主体框架就是...
2018-08-26 16:36:06 980
原创 基于JZ2440自己编写4.3寸LCD驱动
简介 linux内核自带LCD驱动,这里我们自己从头写一个LCD驱动程序,编写APP的人只知道使用open、read、write······,并不清楚原理图或者寄存器,这接口函数最终调用的是我们自己在驱动中实现的驱动层open、read、write,这些代码与硬件息息相关。一般写驱动基本步骤就是: 定义主设备号 写一个文件操作集合 register_chidev进行...
2018-08-26 09:48:24 842
原创 基于JZ2440的LED平台驱动写法
驱动分层分离 在前面介绍的输入子系统中,核心层input.c,设备层button.c包含硬件相关代码,软件层cdev.c纯软件处理部分。 linux驱动中有很多类似的驱动形式,例如总线驱动platform平台设备模型 platform.c属于核心层级别,设备层device包含硬件相关代码,driver层包含驱动层相关代码属于比较固化稳定的软件代码,设备发生改变只要改变设备层代码...
2018-08-23 22:53:23 297
原创 基于linux的socket实现简易QQ代码
网络编程示例,写一个简单的QQ程序服务器端#include<arpa/inet.h>#include<string.h>#include<stdlib.h>#include<sys/types.h>#include<sys/socket.h>#include<unistd.h>#include<s...
2018-08-23 08:50:35 1603 3
原创 linux基于socket网络编程
socket简介 Socket接口是TCP/IP网络的API,Socket接口定义了许多函数或例程,程序员可以用它们来开发TCP/IP网络上的应用程序。要学Internet上的TCP/IP网络编程,必须理解Socket接口。Socket接口设计者最先是将接口放在Unix操作系统里面的。如果了解Unix系统的输入和输出的话,就很容易了解Socket了。网络的 Socket数据传输是一种特殊的...
2018-08-23 08:35:25 7340
原创 ubuntu16网络命令、缺少一些库的应对方法
设置静态ip的方法打开网络配置文件/etc/network/interfacesvi /etc/network/interfaces默认内容# Configure Loopbackauto loiface lo inet loopbackauto eth0iface eth0 inet dhcp修改内容为:# Configure Loopb...
2018-08-23 08:26:09 745
原创 基于JZ2440实现linux驱动异步通信
按键驱动前期按键驱动无论是查询、中断、poll都是采用应用程序主动查询的方式,能不能有一种按键按下,驱动告诉应用程序该查询的机制呢?那是肯定的,类似于系统编程的信号机制。这里需要解决核心问题: 信号发出者 信号接收者 信号怎么发建立一个异步通信结构体该结构体存储相关信息static struct fasync_struct *button_fasync;建立系...
2018-08-23 08:19:45 217
原创 基于JZ2440实现驱动互斥操作以及阻塞非阻塞操作
实现同一驱动不能被同时打开思路很简单,设置一个变量,打开时减一,如果另外程序再将其打开,数值变化,就并不能打开。下面看伪代码static int canopen=1;int xxx_open(){ if(--canopen!=0) { return -1; }else { 正常打开; }}void xx...
2018-08-23 08:18:21 140
原创 JZ2440开发板之LED支持lseek
驱动#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h>#include <linux/device.h>#include <linux/delay.h>#include ...
2018-08-23 08:15:20 188
原创 基于JZ2440按键输入子系统代码实现
简介 自己写驱动流程 APP:open、read、write 驱动层: 实现相应的open、read、write函数 使用file_operation结构挂接自己的相关函数 使用chrdev_register注册 初始化 退出等等 现在有了子系统结构,核心层已经有人写好,我们只需要实现两层即可:设备层、操作层 设备层实现步骤...
2018-08-23 08:13:40 360
原创 Linux输入子系统框架
输入子系统自己写的驱动程序,自己可以调用,我们自己写驱动的流程一般是,建立fops结构,使用register_chrdev在初始化函数中进行注册,在应用中使用open函数打开该设备。这种驱动不标准只能在公司内部,别人知道驱动用法的情况下才能使用,当我们使用QT等标准程序时,这类标准程序不能打开像我们这样的野驱动,我们应该让我们的驱动程序融入“标准”中去,linux提供的输入子系统输...
2018-08-23 08:11:54 304
STM32基于RT-thread3.1.3移植STemWin工程代码
2021-01-01
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人