自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 设备树简介

节点 soc 定义的 ranges 属性,值为 <0x0 0xe0000000 0x00100000>,此属性值指定了一个 1024KB(0x00100000) 的地址范围,子地址空间的物理起始地址为 0x0,父地址空间的物理起始地址为 0xe0000000。name 属性值为字符串, name 属性用于记录节点名字, name 属性已经被弃用,不推荐使用name 属性,一些老的设备树文件可能会使用此属性。子地址空间的长度,由父节点的 #size-cells 确定此地址长度所占用的字长。

2024-07-19 16:24:29 971

原创 spi通信

spi通信

2024-07-19 13:36:00 608

原创 BSP工程师

一个嵌入式系统光有电路板是不够的,还要有对应的软件支持,软件开发的前提是首先使板子正常稳定的工作,然后再在其上编写对应的应用软件以实现其特有的功能。通俗的讲,嵌入式系统就是一种具有专一功能的计算机系统。上个阶段中,板子的CPU和基本的器件已经能正常工作,这个阶段中将使能所有的外设,并为后面要开发的应用程序提供对应的软件控制接口。BSP工程师需要结合硬件原理图修改从芯片厂商拿到的参考代码,调试板子,使板子上的操作系统能够正常稳定工作,从而提供一个稳定的开发调试环境,这个过程叫做点亮板子,行话叫做。

2024-05-27 09:28:15 287

原创 获取并判断代码段执行时间getTickCountMs()

【代码】获取并判断代码段执行时间。

2024-05-27 09:12:16 116

原创 Linux线程

LWP是轻量级进程,在Linux下进程是资源分配的基本单位,线程是cpu调度的基本单位,而线程使用进程pcb描述实现,操作系统在创建线程时给每个线程都创建一个pcb结构体,并且同一个进程中的所有pcb共用同一个虚拟地址空间,因此相较于传统进程更加的轻量化有了更多执行流之后。

2024-05-27 09:09:10 565

原创 open()\fork()和flock()

open()函数、flock()函数、fork()函数

2024-05-16 09:02:24 516

转载 嵌入式系统中常用文件系统包括cramfs、jffs2、NFS、initrd、ext4、squashfs、ubifs等。它们的特点如下:

由此可以看出虽然这样能有效地提高系统的可靠性,但是在一定程度上降低了系统的速度。尤其对于较大的闪存芯片,加载过程会更慢。**

2024-05-06 09:28:36 304

原创 freopen()实现标准输入流标准输出流重定向

stdin - "标准输入" stdout - "标准输出" stderr - "标准错误"r -"只读访问" w - "只写访问" a - "追加写入"实现重定向,把与定义的标准流文件定向到由path指定的文件中。标准流文件具体是指 stdin/stdout和stderr。* mode 文件打开的模式。*stream 一个文件,通常使用标准流文件。stdout标准输出流,默认是屏幕。stderr标准错误流,默认是屏幕。stdin标准输入流,默认是键盘。stdio.h或者cstdio。

2024-04-29 14:56:33 150

原创 linux进程间通信----消息队列

消息队列是linux的一种通信机制,这种通信机制传递的数据具有某种结构,而不是简单的字节流。

2024-04-08 10:19:59 646 1

原创 智能节能风扇项目回顾

STM32F103C8T6是一款基于ARM Cortex-M3内核(ARM公司在ARM11以后改用Cortex命名,并分成A、R和M三类,M系列有M0、M0+、M3、M4、M7)的32位的微控制器,采用LQFP48封装,由意法半导体公司(ST)推出,属于STM32系列(ST公司还有SPC5X系列微控制器)。直流无刷电机调速的原理就是在驱动电机转动的基础上,将驱动电流由PWM信号来控制,改变PWM信号的脉冲宽度,即通过调节MOSFET通断的时间来调节提供给电机三相的电流大小,从而对电机进行调速控制。

2023-04-03 14:36:13 360 1

原创 智慧农业系统项目回顾

数字农业管理系统是提供给农业大棚管理员的,通过传感器获取到的大棚环境状态可视化展示,从而对大棚作物的生长状态进行监控和管理的平台。此系统主要分为两大部分,第一部分是获取大棚中与作物生长环境有关的一系列数据,以及对相应数据进行管理和可视化的监控平台,第二部分是给不同管理员之间提供的相互留言的留言板,以及高级管理者对所有管理员之间留言的查看与删除。使用到的知识BS即Browser/Server(浏览器/服务器)结构,就是只安装维护一个服务器(Server),而客户端选用浏览器(Browse)运行软件。

2023-04-03 10:18:18 594

原创 水云天气APP项目回顾

大学期间一个简单的Android开发,以此来对整个Android开发过程知识点回顾

2023-04-02 11:31:55 186

原创 HASH函数

Hash中文翻译为散列,是一类函数的统称,特点是定义域无限,值域有限。把任意长度的输入(又叫做预映射, pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。若关键字为k,则其值存放在f(k)的存储位置上。由此,不需比较便可直接取得所查记录。称这个对应关系f为散列函数,按这个思想建立的表为散列表。对不同的关键字可能得到同一散列地址,即k1≠k2,而f(k1)=f(k2),这种现象称为碰撞,这时候,就产生了hash冲突。

2023-03-25 15:48:17 119

原创 什么是token

1、Token的引入:Token是在客户端频繁向服务端请求数据,服务端频繁的去数据库查询用户名和密码并进行对比,判断用户名和密码正确与否,并作出相应提示,在这样的背景下,Token便应运而生。三、使用过程中出现的问题以及解决方案?

2023-03-21 20:20:58 59

原创 MyBatis基于Java的持久层框架

MyBatis本是apache的一个iBatis,2010年这个项目由apache software foundation迁移到了,并且改名为MyBatis。2013年11月迁移到。iBATIS一词来源于“internet”和“abatis”的组合,是一个基于的框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)。MyBatis 是一款优秀的框架,它支持定制化以及高级映射。将接口和 Java 的。

2023-03-17 10:35:25 262

原创 C++的复习(1,2)

在C语言中,动态分配内存用 malloc()函数,释放内存用 free() 函数。在C++中,这两个函数仍然可以使用,但是C++又新增了两个关键字,new 和 delete:new 用来动态分配内存,delete 用来释放内存。new 操作符会根据后面的数据类型来推断所需空间的大小。类是创建对象的模板,一个类可以创建多个对象,每个对象都是类类型的一个变量;创建对象的过程也叫类的实例化。

2023-03-15 20:34:23 119

原创 C语言指针

数据在内存中的地址也称为指针,如果一个变量存储了一份数据的指针,我们就称它为指针变量。在C语言中,允许用一个变量来存放指针,这种变量称为指针变量。

2023-03-15 18:45:12 678

原创 数据库的快速复习(二)

MySQL约束函数和运算符,MySQL操作表中的数据

2023-03-09 21:45:53 428

转载 C和C++

C 和C++

2023-03-01 13:51:29 156

原创 Arduino uno循迹小车总结

arduino循迹小车

2023-02-28 22:58:29 9138

原创 数据库的快速复习

数据库的基本语法格式

2023-02-27 21:29:58 293 1

空空如也

空空如也

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

TA关注的人

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