自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 C语言-双向循环链表

先基本实现创建,增删改查之后实现#include <stdio.h>#include <stdlib.h>struct Text{ int data; struct Text *next,*prev;};struct Text* creatList(){ struct Text* h =(struct Text*) malloc(sizeof(struct Text)); h->prev = h; h->next = h; h->da

2021-10-15 11:04:58 189

原创 C语言自我实现函数atoi、itoa 、memcpy

strcpy,strcmp#include <stdio.h>#include <stdlib.h>#include <ctype.h>#include <assert.h>int myatoi(const char * str){ int i = 0; int tmp = 0; int flag = 1; assert(str != NULL); //如果是前面有空格先消去 while (isspace(*str)){ .

2021-10-13 14:58:11 231

原创 linux同步-生产者消费者-线程-互斥锁-条件变量-信号量

学习了C语言技术网,如下是用互斥锁和条件变量实现高速缓存#include <stdio.h>#include <pthread.h>#include <stdlib.h>#include <unistd.h>#include <signal.h>#include <string.h>#include <vector>using namespace std;int mesgid=1; // ...

2021-10-10 21:37:54 186

原创 IMX6ULL-QT项目之mplayer音乐播放器-交叉编译mplayer

在linux环境下安装mplayer后,打开ubuntu里的QT,QT安装的版本5.12.9,QT界面的图标基本都是正点原子收集的图片,实现方式参考B站里的教学简单介绍mplayer命令:按键操作: 音量减小:/、9 音量增大:*、0 上、下键: 前进、后退1分钟, 左键、右键:前进、后退10秒mplayer Music/* 这个就是播放Music目录下的所有音乐,是按顺序播放的命令:-shuffle 随机播放-playlis......

2021-09-30 18:48:07 2949

原创 IMX6ULL-交叉编译Mplayer

一、交叉编译 Libmad-0.15.1b 1.解压libmad-0.15.1b.tar.gztar -zxvf libmad-0.15.1b.tar.gz 2.进入解压好的目录cd libmad-0.15.1b/,并且配置./configure --prefix=/usr/local/mplayerlib --enable-fpm=arm --host=arm-linux --disable-deb...

2021-09-04 09:09:31 815

原创 IMX6ULL-QT项目之天气预报运行到开发板

布局:IP查询API:因为天气预报对定位的要求不是很高,我们就可以使用IP地址归属地来查询当前位置,而且位置信息我们在查询天气的时候也要用到。这里给大家提供一个IP地址归属地数据查询的API,使用方法非常简单。 API:http://whois.pconline.com.cn/ipJson.jsp?ip 使用说明:http://whois.pconline.com.cn/天气API:...

2021-08-27 13:08:01 725 2

原创 讯为IMX6ULL-把QT程序交叉编译到ARM开发板

步骤一: 因为使用的是讯为的屏幕,所以要给QT程序布局,然后在构造函数添加自动设置屏幕大小的代码把如下代码加入到widget.cpp里#include <QDesktopWidget>#include <QStyle>#include <QRect>QDesktopWidget *deskTopWidget = QApplication::desktop();QRect deskRect = deskTopWidget-...

2021-08-24 12:37:35 361

原创 讯为IMX6ULL-QT移植之在开发板上部署QT运行环境

一、开始部署1.我们在 Ubuntu 新创建一个文件夹qt_system,然后把我们用 busybox 做好的文件系统rootfs.tar.bz2拷贝到这个文件夹下 mkdir qt_system cd qt_system2.解压rootfs.tar.bz2,如下图tar -xvfrootfs.tar.bz2 3.我们在这个解压出来...

2021-08-24 11:37:47 1236

原创 讯为IMX6ULL-QT系统移植之交叉编译QT源码和触摸源码

一、源码下载QT 官网下载:https://download.qt.io/new_archive/qt/5.7/5.7.1/二、编译环境开发环境:Ubuntu18.04编译器:arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2这里的交叉编译器依旧是和上一节一样的:arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2配置过了就略过,解压完

2021-08-23 14:08:17 1512 1

原创 讯为IMX6ULL-QT系统移植之busybox构建根文件系统

一、BusyBox 工具下载BusyBox 工具我们可以在其官网下载到,官网地址为:https://busybox.net/然后点击官网左侧“Get BusyBox”栏中的“Download Source”进入下载页面即可。先介绍等下要使用的东西的版本:BusyBox :busybox-1.29.0.tar.bz2编译器:arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-g...

2021-08-23 11:36:28 1182

原创 讯为IMX6ULL-NFS-挂载到ubuntu笔记

首先要要保证ubuntu和开发板互相ping通1.在 ubuntu 安装 nfs 服务:sudo apt install nfs-kernel-server2.打开配置文件添加 nfs 共享目录 sudo vi/etc/exports 添加这句话在最底下: /home/jdr/NFS/ *(rw,sync,no_root_squash,no_subtree_check)rw:是可读写权限syn...

2021-08-22 17:16:40 362

原创 树莓派-字符设备驱动编写

学了基本的字符设备框架之后可以对树莓派的底层写个驱动,简单的写个驱动IO的控制。编写驱动可以根据上层的应用需求进行编写。示例:实现上层逻辑代码向底层写入想要的字符,再编写底层驱动接收到字符后实现IO口的高低电平转换一、查阅手册想控制IO口的高低电平转换,需要查阅芯片手册,这里树莓派3使用的是 BCM2835查阅芯片手册,我们要看的是IO口相关寄存器,按下面的目录去找可以看到这里有一堆寄存器,和寄存器的功能描述,直接看需要的寄存器,这里我们要知道一点,每个寄存器很多组,你想操控

2021-08-20 10:56:04 652

原创 树莓派Linux源码配置 内核开发 编译 替换内核

原文链接:http://nicekwell.net/blog/20171108/shu-mei-pai-nei-he-kai-fa-shuo-ming-xia-zai-dai-ma-bian-yi-ti-huan-nei-he.html#section-11. 树莓派Linux源码配置介绍驱动代码的编写驱动代码的编译需要一个提前编译好的内核编译内核就必须配置配置的最终目标会生成 .config文件,该文件指导Makefile去把有...

2021-08-19 20:51:23 301

原创 结构体计算大小与位域计算大小

原则一:结构体的元素按顺序存储,结构体成员的偏移量必须是成员大小的整数倍原则二:结构体大小是所有成员大小的整数倍(除了内部结构体和数组)看例子比较快理解,以下是自己的理解指针的占字节数要看是32还是64位,32占4字节,64位占8个字节以下是结构体的例子struct X { char a; //1 char b; //1 int c; //8};//这个结构体占8个字节,因为结构体成员中占最大字节数的是int类型,所以成员都要为4的整数倍/...

2021-08-16 19:30:54 2339 5

原创 linux字符设备驱动框架

字符设备:是指只能一个字节一个字节读写的设备,那些按字节流访问的设备,针对字符设备的驱动称为字符设备驱动。用户空间用open函数打开dev/pin4 下的设备后,可以用write向文件中写入数据,或者用read从里面读出数据,其中大致的流程是例如用户空间调用open会产生软中断,中断号是0x80,软中断为了响应快速用汇编实现了sys_call(系统调用),然后sys_call再调用相关的函数调用VFS(虚拟文件系统)里的sys_open,然后sys_open会去内核的驱动链表,...

2021-08-05 13:41:09 450 1

空空如也

空空如也

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

TA关注的人

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