自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (17)
  • 收藏
  • 关注

原创 ubuntu18.04 x64源和arm64源

arm64:X64:

2023-06-08 15:32:03 1154

原创 中科大可用的源 ubuntu20.04

ubuntu 20.04

2023-03-13 20:33:13 887

原创 stm32更换晶振更改

stm32更换晶振需要修改的地方

2022-06-23 16:25:18 624

原创 基于树梅派4B的建立个人网站

1、安装必要的一些工具,参考:https://blog.csdn.net/weixin_44543463/article/details/1125351722、安装php7.0-fpm失败,参考:https://www.jianshu.com/p/f3831f2bfa01###第一步sudo apt-add-repository ppa:ondrej/php###第二步sudo apt-get update###第三步sudo apt-get install php7.2 php7.2-f

2022-05-15 13:27:51 277

原创 CMAKE基础使用

1、目录结构:2、顶层cmake内容:cmake_minimum_required(VERSION 3.0) //开头,指定cmake的最低版本要求set(LIB_DIR ./libs) //设置生成的库的路径 set(OUTPUT_DIR ${CMAKE_CURRENT_SOURCE_DIR}/install) //创建install文件夹//LIBRARY_OUTPUT_PATH cmake的环境变量,自动把生成的库拷贝到 ${OUTPUT_DIR}/lib文件夹下面set(LIBRAR

2022-03-25 17:37:10 503 1

原创 TM1637数码管显示

1、stm32F405下的代码2、PB6 SCL PB7 SDAunsigned char tab[] ={ 0x3F,/*0*/ 0x06,/*1*/ 0x5B,/*2*/ 0x4F,/*3*/ 0x66,/*4*/ 0x6D,/*5*/ 0x7D,/*6*/ 0x07,/*7*/ 0x7F,/*8*/ 0x6F,/*9*/

2021-12-27 16:36:51 564

原创 glog 的常用函数介绍

0、安装glog sudo apt-get install libgoogle-glog-dev1、链接glog的库 cmake 使用 link_library(glog)2、glog常用的函数 google::InitGoogleLogging(argv[0]); //使用glog之前必须先初始化库,要生成日志文件只需在开始log之前调用一次: google::InstallFailureSignalHandler(); //默认捕捉 SIGSEGV

2021-12-23 11:50:04 405

原创 icm42688六轴数据读取

42688六轴传感器读取陀螺仪和加速度计的数据,使用的是iic的形式读取的,设备的地址是0xD0cpu:stm32f405 + 硬件iic读取数据,由于42688的寄存器分布在不同的bank,在进行寄存器操作之前,首先选择bank,默认的是bank042688初始化:write(ADDRESS,REG_BANK_SEL,0x00);write(ADDRESS,0x11,0x01);id = read(ADDRESS,WHOAMI);data = read(ADDRESS,PWR_MGMT0);

2021-07-26 15:30:53 7342 8

原创 bmi055六轴传感器获取数据

BMI055的加速度计和陀螺仪的地址是分开的,在读取的时候要分开读取,我是用的iic的方式读取的#define ACC_ADDRESS 0X18 //加速度计的地址#define GYRO_ADDRESS 0X68 //陀螺仪的地址cpu:stm32f407 ,硬件iic读取初始化函数:u8 buff[6];u8 addr = 0 ;bmi_read(ACC_ADDRESS,0X00,&buff[0],8);if(buff[0] != 0xFA){ printf("

2021-07-26 15:23:54 1298 2

原创 mini2440串口驱动

Linux主机:ubuntu16.04 开发板:mini2440 Linux内核:2.6.33.2

2020-12-25 14:44:17 276

原创 ESP32的DeepSleep模式唤醒

当ESP32处于DeepSleep模式时,通过外部按键将其唤醒。按键接入的IO口为34,ESP32模组规定IO口大于34的 只能配置为输入。我们使用的是外部EXT0来唤醒,还有EXT1,这两个的区别不大,只不过EXT1是通过组合按键来唤醒,EXT0是通过单一的按键来唤醒。代码如下:void app_main(){ switch(esp_speep_get_wakeup_cause()) ...

2020-04-01 14:51:06 4503

原创 基于ESP32的自动避障小车(二)

这个小车实现的功能还是比较简单的,使用freertos创建任务,不停的读取超声波返回的数据,进行一个简单的处理以后来控制小车的运动轨迹。原理图,PCB和小车的代码链接:https://download.csdn.net/my...

2020-03-25 09:49:19 1619

原创 基于ESP32的自动避障小车(一)

小车使用的主控芯片是ESP32-wroom-32关于这个芯片的数据手册可以在乐鑫的官网上面查到,请自行百度。在做这个小车之前需要做一些准备工作,在网上买一个智能小车的底盘,一个超声波模块,小车带有一个减速直流电机,可以外加一个L298N直接能驱动,超声波模块的原理是检测到前面有物体的时候返回高电平,通过定时器来计算高电平的时间,s=t*340/2得出距离单位是米,然后就进行判断,当距离小于多少米的...

2020-03-21 15:46:52 5012 1

原创 ESP32蓝牙组网之节点配网

在进行这篇文章之前,请确保你已经知道了一个蓝牙节点的组成。APP链接(这个APP是安卓的):https://github.com/EspressifApp/EspBLEMeshForAndroid/releases/tag/v1.0.0源码连接:https://github.com/espressif/espidf/tree/master/examples/bluetooth/esp_ble_...

2020-01-14 13:39:54 5263 3

原创 ESP32的BLE_SPP

最近在捣鼓这个ESP32的BLE的SPP功能,把自己的心得体会写下来,如果有什么不对的地方欢迎大家来留言讨论。首先是乐鑫官方的源码地址:https://github.com/espressif/espidf/tree/30372f5a4ff2c0dfdaad95f544dc36bcdda30b75/examples/bluetooth/bluedroid/ble/ble_spp_server...

2019-12-27 11:22:42 5187 3

原创 ESP32linux开发环境搭建错误处理方法

最近在折腾ESP32这个开发环境搭建花了我两周时间,我把我遇到的问题写出来,当大家遇到同样的问题时可以快速处理。(我用Ubuntu12没装成功,用的Ubuntu16,因为16的python的版本时2.7.12)我参考的开发环境搭建https://segmentfault.com/a/1190000012119486跟着大神一步一步的走,大神的时64位机器我的时32位机器,下面时32位机器的工...

2019-11-12 10:34:13 521 2

原创 Linux应用开发之TCP编程

在前面我们已经介绍了TCP通信的函数了,在这里我们来写一个简单的测试程序来使用前面介绍的那些函数。首先介绍一下TCP连接的步骤:服务器:socket ->bind->listen->accept->read/write客户端:socket->connect->read/write知道了这些我们来看一下服务器程序:#include<sys/so...

2019-10-11 13:03:06 156

原创 Linux应用开发之socket编程

关于网络的介绍方面的知识网上已经有很多的介绍的了,今天咱们就不对这个方面来进行说明了,咱们今天要说的是网络通讯的两种方式的实现方法–TCP和UDP。再学习方法之前先来了解tcp和udp实现都需要哪些函数。1、int socket(int domain, int type, int protocol);这个函数是用来创建一个连接具体连接是tcp还是udp取决于第二个参数我们来看一下具体每个参...

2019-10-11 10:29:45 89

原创 Linux应用开发之信号量

信号量跟前面说的锁机制差不多,都是对线程间同步机制的一种方法。信号量用到的函数有以下几种:int sem_init(sem_t *sem, int pshared, unsigned int value);//对信号量的初始化函数sem:定义的信号量pshared:定义信号是否被分享。0、分享,非0不分享value:value的值用来初始化定义的信号量int sem_destroy(se...

2019-09-04 21:50:00 287

原创 Linux应用开发之读写锁

在上一篇文章 中我们已经介绍了为什么要加锁。原文连接:https://blog.csdn.net/liumengyang1992/article/details/99715858在这里再介绍一种上锁的方式–读写锁。使用背景:当有不同的线程对共享空间进行读写的时候,如果全用互斥量,影响效率,所以就引进了读写锁,读时共享,写时互斥。读写锁用到的函数如下://销毁读写锁int pthread...

2019-08-19 17:10:55 125

原创 Linux应用开发之互斥量

在学习互斥量之前首先要明白为什么要用这个互斥量。互斥量时用在线程同步的,线程为什么要用互斥量量呢?有以下几点1、多个线程都可以对共享资源进行操作2、线程操作共享资源的先后顺序不确定3、处理器对存储器的操作不是原子操作明白了这些就知道为什么需要互斥量了。在学习互斥量之前先来了解互斥量的一些函数//定义一个互斥量并且初始化,这种方式是静态初始化pthread_mutex_t mutex...

2019-08-19 11:26:59 121

原创 Linux应用开发之线程

这一节我们来学习一下线程,首先来看一下线程创建函数int pthread_create(pthread_t *thread, const pthread_attr_t *attr,void (start_routine) (void ), void arg);第一个参数thread:这个参数保存的是创建了的线程的ID号第二个参数attr:这个参数是线程的属性,一般设为NULL,使用默认的属性...

2019-08-16 14:15:35 106 1

原创 Linux应用开发之守护进程

守护进程是Linux中的后台服务进程,生存期较长的进程,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。创建守护进程的步骤如下:1、在子进程中进行,父进程退出2、把当前进程设为进程组组长3、改变工作目录4、改变umask掩码5、关闭父进程的文件描述符通过一个例子来看一下如何把这个步骤变成代码的形式。//通过一直不停的向daemon.log文件里面不停的写数据...

2019-08-13 14:55:43 273

原创 Linux应用开发之sigaction函数

sigaction信号注册函数,把某个用户指定的信号注册到内核。int sigaction(int signum, const struct sigaction *act, struct sigaction *oldact);signum:信号的编号*act:指向struct sigaction结构体oldact:如果不为空就把先前的动作给保存到oldact里面struct sigact...

2019-08-13 13:37:48 180

原创 Linux应用开发之信号集函数实例

这一节我们用上面提到的函数来写一个简单的测试加深对这些函数的理解。#include<stdio.h>#include<signal.h>int main(){sigset_t s,p;sigemptyset(&s);//先清空定义的信号集sigaddset(&s,SIGQUIT);//把推出信号加入到信号集中sigprocmask(SIG_...

2019-08-10 16:17:10 98

原创 Linux应用开发之信号集函数

信号是进程间通讯的一种重要的方法,可以通过命令ls -l 来查看系统都有哪些信号。下面是一些信号处理函数int sigemptyset(sigset_t *set) //判断定义的信号是否为空int sigfillset(sigset_t *set)//set指向的信号集中将包含Linux支持的信号int sigaddset(sigset_t *set, int signo)//把信号添加...

2019-08-10 16:02:09 80

原创 Linux应用开发之进程间通讯-共享内存

共享内存函数原型:voidmmap(voidaddr,size_t length,int prot,int flags,int fd,off_t offset);第一个参数addr:一般为NULL第二个参数length:需要申请的空间长度第三个参数prot:PROT_READ , PROT_WRITE,PROT_EXEC,PROT_NONE,最常用的就是前面两个 PROT_READ|PRO...

2019-08-09 16:35:08 251

原创 Linux应用开发之进程间通信-管道

通过fork创建了两个进程以后要进行进程间通信,今天来说一下进程间通信的一种方式pipe()。这个函数调用一次返回两个文件描述符一个用于读另一个用于写,有一点需要注意:pipe是半双工通信方式。下面是具体的实现代码:#include<stdio.h>#include<unistd.h>#include<string.h>int main(){ ...

2019-08-09 16:18:24 114

原创 Linux应用之多进程拷贝

父进程和子进程同时读某一个文件然后把读到的数据写到同一个文件里面。用到的函数有:fork、read、write、lseek。首先使用echo命令再文件里面写入一些数据:echo {1…20}>test1创建一个要写入数据的文档 :touch test2准备工作做好以后就可以写程序了。以下是代码示例:#include<stdio.h>#include<unis...

2019-08-09 16:07:11 233

原创 Linux应用开发之fork函数

fork函数:用于创建子进程。父进程中返回子进程ID子进程中返回0读时共享,写时复制getpid():返回调用进程的PID号getppid():返回调用进程的父进程的PID号#include<stdio.h>#include<stdlib.h>#include<unistd.h>#include<sys/types.h>int m...

2019-08-09 15:21:21 87

原创 Linux应用开发之文件操作函数

open函数:打开一个文件并返回该文件的文件描述符。read函数:通过文件描述符来读取数据。write函数:向已经打开的文件描述符里面写数据。close函数:关闭已经打开的文件描述符。lseek函数:重定位文件的读写指针的位置。...

2019-08-09 14:44:34 167

42688、bmi055、lsm6dsr

六轴传感器更改一下宏定义就可以了

2021-07-26

OpenJTAG驱动,适合韦东山的open JTAG

该驱动支持win10的EasyOpenJTAG驱动直接下载到指定的文件夹下面,解压后插入JTAG,安装驱动就可以了,我是安装了三次,有三个。

2020-04-06

小车的代码car_code.rar

基于ESP32的自动避障小车的代码实现了超声波测距,根据测量的距离进行一些简单的处理,把小车当作是TCP服务器,让别的客户端能连接上小车

2020-03-25

基于ESP32的自动避障小车 PCB1.rar

基于ESP32的自动避障小车的PCB,这个ESP32的封装是自己画的,可以直接使用,使用的工具是AD19,可以下载一个AD19然后生成自己的PCB库,在进行自己的开发

2020-03-23

Sheet1.rar 原理图

基于ESP32的自动避障小车的原理图使用的工具是AD19,大家有需要的可以在这个基础上做修改来实现自己想要实现的功能,不建议直接使用这个原理图,可以把封装拿去自己设计一个

2020-03-23

红外解码教程.txt

51单片机的红外解码教程,里面有代码,可以方便的移植到其它平台上

2019-10-16

stm32F4.zip

stm32f4hal库,适合使用stm32进行固件库开发的开发者。

2019-10-16

stm32l4usb设备驱动代码

stm32l4XX的usb设备驱动程序,在网上找了好久没找到就自己生成了一个

2018-09-19

STM32L4_DFP

在网上找了好久最后在官网上找到的,版本是2.0.0的。有需要的可以下载

2018-09-05

stm32f0_DFP

针对keil5的芯片型号DFP文件找了好长时间,在官网下载的

2018-09-05

stm32l152库

使用stm32l152标准固件库开发的usb模拟u盘和fatfs文件管理系统

2018-08-08

stm32l152usb模拟u盘

移植的是usb官方库文件,CPU为stm32l152flash为w25q64,采用模拟spi的通讯方式,可移植强

2018-08-01

AD7790驱动

AD7790采用模拟SPI的方式进行通信,使用时修改引脚配置即可

2018-07-27

stm32f070固件库

stm32f0标准库开发模板,里面的代码亲测可用,有需要的可以下载来看看

2018-07-27

stm32F系列USB模拟鼠标

stm32f103USB模拟鼠标驱动代码开发,可用,使用时要改一下引脚

2018-07-27

FRAM25CL64spi驱动

FRAM25CL64spi驱动

2017-02-24

frame24驱动

frame24驱动

2017-02-24

空空如也

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

TA关注的人

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