自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

跑不了的你的博客

让我们一起走进软件开发的光辉殿堂,创造未来的技术在我们手中,加油!

  • 博客(20)
  • 资源 (9)
  • 收藏
  • 关注

原创 win10下使用VS2019调用sqlite3环境搭建

文章目录下载sqlite3制作使用的动态库sqlie3.lib在VS 2019环境中添加下载sqlite3从sqlite3.org网站下载https://www.sqlite.org/index.html用到的sqlite3库及dll库。sqlite-amalgamation-3300100.zipsqlite-dll-win64-x64-3300100.zip制作使用的动态库sq...

2020-01-21 09:52:11 13457 10

原创 linux3.10使用PCIE-USB警告处理:needs XHCI_TRUST_TX_LENGTH quirk?

文章目录问题描述修改方式修改内容问题描述在龙芯2K1000上使用linux3.10内核时候,使用PCIE转USB上使用USB3.0,即XHCI协议时总是会报这样的警告:xhci_hcd 0000:14:00.0: WARN Successful completion on short TX: needs XHCI_TRUST_TX_LENGTH quirk?xhci_hcd 0000:1...

2020-01-16 17:36:10 903

原创 C语言基础——字符串操作

文章目录字符串操作字符串操作函数strlen 函数strcat 函数strncat 函数strcmp 函数strncmp 函数strcpy 函数strncpy 函数memset 函数strstr 函数sprintf 函数sscanf 函数字符串操作在C程序中使用字符串,不可以使用操作符来操作字符串,应该使用一组标准函数,C标准库中有对于使用字符串操作的一组函数(需要包含头文件string.h...

2020-01-14 21:06:01 977

原创 Linux嵌入式开发——uboot添加logo显示功能

文章目录uboot添加logo显示概述u-boot中添加logo操作步骤获取bmp格式图片制作logo图片数组文件在u-boot中添加logo显示函数调用修改common目录下的Makefile编译u-boot烧写测试uboot添加logo显示概述uboot添加logo显示的原则:越早显示越好。logo本质就是一张图片,图片越小越好。LCD显示屏显示logo的硬件原理:内存控制...

2020-01-12 08:53:18 3568

原创 linux和Windows平台下获取时间戳方式

文章目录获取时间间隔方式:API说明Windows平台下使用 GetLocalTimelinux平台下使用 gettimeofday代码示例获取时间间隔方式:API说明Windows平台下使用 GetLocalTimeVOID GetLocalTime( LPSYSTEMTIME lpSystemTime //address of system times structure);...

2020-01-10 11:30:36 1661

原创 ARM编程——ARM架构及汇编

文章目录ARM体系结构与编程ARM7(ARMV4)和ARM9之后的指令操作流程ARM7(ARMV4)三级指令流水线三级流水线**PC**ARM7三级流水线特例——ldr指令ARM体系结构与编程当前ARM核的版本划分,ARMV4:这其中包含的小版本有:ARM720TARM920TARMV5:XscaleARM10ARMV6:ARM11ARMV7:ARM...

2020-01-08 21:51:59 5808

原创 龙芯2K驱动开发——使用中断触发读取GPIO电平值上传给读取进程

文章目录龙芯2K1000平台下编写GPIO驱动满足应用使用代码具体如下:龙芯2K1000平台下编写GPIO驱动满足应用使用需求在指定GPIO0上升沿触发中断后读取当前指定的六个GPIO电平值,经过短暂编码转换后,将枚举变量值返还给用户空间应用程序使用。在触发中断后需要经过10ms的电平稳定时间。经过电平稳定时间后读取指定的六个GPIO管脚电平值,转换成预先设定的枚举变量。读取结果成...

2020-01-08 17:43:51 2960 2

原创 Linux嵌入式基础——链接脚本

文章目录链接脚本链接脚本的特点链接脚本的语法链接脚本的使用链接脚本可执行程序基本包含的三大部分:text段内容data段内容bss段内容链接脚本的特点链接脚本文件以 .lds 后缀结尾,例如:shell.lds链接脚本文件用来指示可执行程序各个段包含的内容以及各个段的起始地址。链接脚本文件给链接器(arm…ld)使用,链接器根据链接脚本的规则进行连接。链接脚本的语法...

2020-01-07 22:16:17 412

原创 ARM裸板开发——简单编写实现“shell”功能

文章目录简单编写实现一个裸板环境下使用的“shell”功能程序,可以控制LED、beep等。main主程序设计主要函数:strcmp实现LED初始化及控制功能实现简单编写实现一个裸板环境下使用的“shell”功能程序,可以控制LED、beep等。main主程序设计#include "uart.h"#include "strcmp.h"#include "led.h"//保存从上位机...

2020-01-07 21:53:02 870 3

原创 Linux源码阅读工具:ctags

文章目录Linux源码阅读工具:ctagsUbuntu下安装ctags使用ctags创建源码阅读工程如果是在Windows下,使用sourceinsight即可。利用sourceinsight创建源码阅读工程sourceinsight解决中文乱码问题:Linux源码阅读工具:ctagsUbuntu下安装ctagssudo apt-get install ctags使用ctags创建源码...

2020-01-07 07:30:07 563

原创 ARM裸板开发——UART通信方式及使用

文章目录UART相关描述及概念计算机中常见的几种硬件通信方式UART串口的定义UART相关描述及概念计算机中常见的几种硬件通信方式计算机中CPU和外设进行硬件通信的方式有以下几种:GPIO通信方式,如:LED等、蜂鸣器等。UART串口通信方式,如:GPS、GPRS等等。I2C总线通信方式,如:重力传感器、加速度传感器、触摸屏等。SPI总线通信方式,如:norflash闪存、触摸屏...

2020-01-06 22:13:26 3242

原创 Linux常用功能——U盘自动挂载和卸载

文章目录配置系统使U盘能够自动实现挂载和卸载mdev.confusb_insert.shusb_remove.sh使用dd命令更新内核配置系统使U盘能够自动实现挂载和卸载/dev/sda1设备文件自动创建是由于热拔插事件产生,导致mdev程序被执行,由mdev来创建的设备文件其实可以通过设置使得mdev在去创建/dev/sda1设备文件的同事,完成U盘的自动挂载。mdev.conf在/e...

2020-01-06 07:37:21 680

原创 ARM嵌入式开发——基础概念

文章目录嵌入式Linux系统组成嵌入式Linux系统的启动流程uboot制作uboot特点uboot三大功能硬件初始化功能引导加载内核为内核传递启动参数uboot源码操作嵌入式Linux系统组成嵌入式Linux系统软件由三部分组成:BootLoader(uboot)裸板软件,初始化硬件+从闪存加载内核到内存并且启动内核+给内核传递启动参数,告诉内核根文件系统rootfs在什么地方。(上电...

2020-01-05 21:21:01 583

原创 Linux驱动开发——内核I2C驱动

文章目录Linux内核i2c驱动编程i2c总线特性I2C总线特点可以概括如下:字节格式应答响应时钟同步Linux内核i2c驱动i2c总线驱动i2c设备驱动Linux内核i2c驱动框架编写i2c设备驱动程序实现原理i2c_clienti2c_driverSMBUS接口函数的使用步骤示例(MMA8653三轴加速度传感器使用)具体代码如下:Linux内核i2c驱动编程i2c总线特性I2C总线是由...

2020-01-05 20:19:23 3222 2

原创 Linux驱动开发——物理地址映射(②)

文章目录用户空间下的物理地址映射mmap系统调用函数mmap系统调用的实现过程对应的底层驱动的mmap接口用户空间下的物理地址映射前一篇讲述了利用imremap函数完成Linux内核空间下的物理地址映射到内核虚拟地址空间上。那么如何能够将外设的物理地址映射到用户空间下的虚拟地址呢,如果一旦完成将外设的物理地址映射到用户空间下的虚拟地址,那么用户就可以直接通过这种映射访问外设的物理地址。利...

2020-01-03 23:32:25 1041

原创 Linux驱动开发——物理地址映射(①)

文章目录Linux驱动开发之物理地址映射ioremap函数使用方式方式一方式二不使用GPIO库函数方式来修改之前操作LED灯代码示例总结Linux驱动开发之物理地址映射如果不采用GPIO库函数,那么我们如何能在底层驱动中访问外设对应的硬件寄存器呢?是像类似单片机编程一样直接对硬件寄存器访问么?在Linux系统中,不管是在用户空间还是内核空间一律不允许直接访问硬件外设的基地址(包括寄存器...

2020-01-02 21:53:15 3138 5

原创 Linux驱动开发——去除按键抖动问题

文章目录Linux内核按键去抖动问题按键抖动按键驱动的方法Linux内核去除抖动的原理代码示例总结Linux内核按键去抖动问题按键抖动按键抖动表现出来的现象其实就是明明只是按下去一次按键,但是却总是触发多次中断,本质其实是因为按键属于机械结构,所以不可避免会在按下和松开时产生意外的中断触发。按键驱动的方法按键去抖动的方法有两种:硬件去抖动:硬件工程师只需要添加一个滤波电路等方式即...

2020-01-02 20:49:43 2257

原创 Linux驱动开发——内核延时操作和内核等待队列

文章目录Linux内核延时概念应用场景Linux内核相关延时函数Linux内核等待队列机制概述等待队列的功能驱动编程实施步骤示例代码(一)示例代码(二)总结Linux内核延时概念延时又称为等待,延时分为两类:忙延时和休眠延时。忙延时: 当任务进行忙延时时,任务将会导致所占用的CPU资源进行白白消耗,类似原地空转。休眠延时: 进程进入休眠状态,进程会释放所占用的CPU资源给其他进程使用。...

2020-01-01 22:21:05 1824

原创 Linux驱动开发——并发和竞态(原子操作方式的使用⑤)

文章目录解决竞态引起异常方法之原子操作原子操作特点位原子操作使用方式比较:整形原子操作使用方式比较:示例代码解决竞态引起异常方法之原子操作原子操作特点原子操作能够解决所有的竞态问题。Linux内核原子操作分为两类:位原子操作和整形原子操作 。位原子操作位原子操作 = 位操作的过程具有原子性 = 对共享资源进行位操作的过程中不允许发生CPU资源的切换。应用场景:如果在代码中发现需要对...

2020-01-01 08:49:43 585

原创 Linux驱动开发——并发和竞态(信号量方式的使用④)

文章目录解决竞态引起异常的方法之信号量解决竞态引起异常的方法之信号量其实信号量不同于其他方式能够解决临界区内有休眠操作的问题,最主要的原因是信号量的获取和释放只会影响到需要访问临界区的进程任务,并且在获取访问临界区条件不成立时会进入休眠并释放CPU资源(也就是不会占用消耗CPU资源)。而屏蔽中断、自旋锁、衍生自旋锁则不一样。最主要的是几种方式在访问临界区条件不成立的时候的影响不一样(当前有任务在访问临界区,所以其他任务不能访问)

2020-01-01 08:14:08 469

RK3568 制作kernel层logo分区镜像工具,用于制作kernel层logo动画

该工具用于制作kernel层logo分区镜像,具体使用方式参考同类博客《RK3568 kernel阶段播放开机动画方案实现》,使用工具参考博客中的方式去使用可以实现基于 RK3568或者类似的嵌入式方案芯片,在kernel层实现开机 logo 动画的显示效果。

2022-11-22

readelf.zip

使用C语言代码实现 readelf 工具的基本功能。程序使用 cmake 进行构建和编译。环境使用linux环境。使用方式如下: $ cd readelf/ $ mkdir build $ cd build $ cmake .. $ cmake build . 编译完成后,就可以使用: gwreadelf -h gwreadelf -l gwreadelf -S

2021-05-13

SAP服务器安装最强教程.zip

SAP服务器安装最强教程 虚拟机下Windows+oracle+SAP ECC 5.0+MSCS双机安装配置文档,操作步骤详细,按照步骤操作,必能成功! 注意:不是安装文件,只是安装教程

2021-05-12

python生成数据可视化.zip

数据可视化指的是通过可视化表示来探索数据,它与数据挖掘紧密相关,而数据挖掘指的是使用代码来探索数据集的规律和关联。数据集可以是用一行代码来表示的小型数字列表,也可以是海量字节的数据。 鉴于 Python 的高效性,使用它在笔记本电脑上就能快速地探索由数百万个数据点组成的数据集。数据点并非必须是数字,也可以对非数字数据进行分析。

2020-08-02

UDP聊天室.zip

使用 Qt 基于 UDP 协议构建网络聊天室实例,包含 UdpServerDemo 和 UdpClientDemo 两部分程序,由于 UDP 方式不会建立连接,所以在服务端采用QList容器管理客户端状态。

2020-07-16

TetrisDemo.zip

使用 Qt 实现了一个简单的 俄罗斯方块 小游戏,功能简单,可用来熟悉 Qt 对图元自定义创建和操作的相关步骤练习

2020-07-12

项目(飞机大战).zip

Python 实现 《飞机大战》游戏。使用 pygame 进行简单的游戏开发,通过这个小项目能够对 Python 游戏开发有一定的了解。

2020-07-12

基于ARM和OpenCV的增强现实平台研究.pdf

二维码检测与定位 二维码的图像扫码解析已经成为很多 APP 的标准配置与使用方式,但是检测与定位二维码 位置一直是技术难点,本案例通过直播课程所学知识,带领大家一步一步剖析知识点、整理 思路、实现代码、实现图像中二维码位置检测与定位 车牌提取与预处理 细分析如何利用所学知识,综合分析解决车牌识别中最难技术问题之一,车牌定位与提取、 以及前期预处理 DNN 模块介绍 介绍如何使用深度学习相关知识实现图像分类、对象检测,学习使用 OpenCV 深度学习模 块 DNN 相关 API 的使用

2019-11-03

TCP/IP网络编程

TCP/IP网络编程基础,很实用简单的网络编程入门书籍,适合C语言初级想要学习服务器运维或者网络编程的小伙伴们

2018-11-20

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

TA关注的人

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