嵌入式驱动学习
iudio_cool
市井长巷,幸会幸会
展开
-
树莓派和阿里云ESC数据交互
毕设项目是一个小车,一直想把树莓派的数据和阿里云挂钩了,感觉为了实现这个要准备学其他知识。那么先开一个坑,会慢慢更新的,记录一下期间学习的东西吧:socket编程接触过一些socket编程的知识,期间我找到一个有关的博客我们去参考一下:socket PHP:详细简单的socket TCP通信PHP实现网络各协议概述1.物理层:顾名思义就是位于osi底层的物理实体的存在,所有的层都基于他的...原创 2020-05-03 23:27:58 · 899 阅读 · 0 评论 -
嵌入式错题本
做嵌入式题时候的错题本:1.在c语言中,一个函数不写返回值类型,默认的返回类型是int2.在C语言中的sizeof既是运算符也是关键字(strlen是函数,顺便复习一下他两个的区别:https://blog.csdn.net/ice_masters/article/details/104928460中第一题)3.void main (void) { char a[] = “SF-T...原创 2020-04-24 23:37:38 · 750 阅读 · 0 评论 -
HP6心率血压、SHT20温湿度、MPU6050传感器使用
多个传感器使用HP6心率血压IIC复习IIC简介:IIC数据接口IIC通讯速度器件地址软件模拟起始信号结束信号应答信号读字节/写字节SHT20温湿度MPU6050传感器在项目中使用了HP6心率血压、SHT20温湿度、MPU6050传感器,今天分别复习一下HP6心率血压使用的是IIC接口,那么顺便复习一下IIC的知识IIC复习IIC简介:IIC(Inter-Integrated Circ...原创 2020-04-21 23:40:50 · 5007 阅读 · 4 评论 -
复习stm32中关于RTC时钟知识
在做智能手环时候使用到了关于RTC时钟的,今天我们来复习一下关于他的知识点。文章中我是参考的有STM32f411的中文参考手册,需要的话我会上传这个pdf版。实时时钟(RTC)养成查资料的好习惯:STM32之RTC实时时钟这个里面比较详细,还添加了例程。STM32 RTC实时时钟这个链接里面详细讲述RTC中的主要的几个寄存器。下面记录一些关于rtc的知识点:RTC 时钟源 (R...原创 2020-04-21 19:03:24 · 327 阅读 · 0 评论 -
stm32中库函数和hal库的区别
今天在b站看一个关于嵌入式的视频,讲述使用stm32cube软件的。了解这些的小伙伴们应该知道STM32CubeMX是意法半导体推出的图形化配置工具,通过傻瓜化的操作便能实现相关配置,最终能够生成C语言代码,支持多种工具链,比如MDK、IAR For ARM、TrueStudio等。尤其值得一提的是,TrueStudio已经被ST收购,提供完全免费的版本,并且,通过插件式安装,可以将STM32Cu...原创 2020-04-20 21:18:58 · 19890 阅读 · 1 评论 -
嵌入式中的DMA
DMA(Direct Memory Access),即直接存储器存取,是一种快速传送数据的机制。数据传递可以从适配卡到内存,从内存到适配卡或从一段内存到另一段内存。利用它进行数据传送时不需要CPU的参与。每台电脑主机板上都有DMA控制器,通常计算机对其编程,并用一个适配器上的ROM(如软盘驱动控制器上的ROM)来储存程序,这些程序控制DMA传送数据。一旦控制器初始化完成,数据开始传送,DMA就可...转载 2020-04-20 18:19:52 · 2282 阅读 · 0 评论 -
c语言中字节对齐
给连接C语言中的字节对齐转载 2020-04-01 09:13:22 · 136 阅读 · 0 评论 -
Linux内核中用到do while(0)的用途
linux内核和其他一些开源的代码中,经常会遇到这样的代码:do{…}while(0)这样的代码一看就不是一个循环,do…while表面上在这里一点意义都没有,那么为什么要这么用呢?实际上,do{…}while(0)的作用远大于美化你的代码。查了些资料,总结起来这样写主要有以下几点好处:1、辅助定义复杂的宏,避免引用的时候出错:举例来说,假设你需要定义这样一个宏:#define D...转载 2020-03-27 00:20:37 · 242 阅读 · 0 评论 -
linux内核中等待队列和poll轮训
linux内核中等待队列和poll轮训等待队列阻塞与非阻塞的概念与区别总结异步和同步概念与区别 (五大io模型)休眠机制:使用过程1.创建等待队列头2.在需要休眠的地方调用休眠操作3.在满足条件的地方唤醒等待队列4.提前知识等待队列阻塞与非阻塞的概念与区别阻塞:非阻塞:总结异步和同步概念与区别 (五大io模型)五大io模型休眠机制:使用过程1.创建等待队列头2.在需要休眠的地...原创 2020-03-26 22:43:48 · 568 阅读 · 0 评论 -
LINUX内核中断编程及等待队列
今天学习关于内核的中断抛砖引玉:提出问题:1.请简述中断的处理过程贴上一个百科知识中断还找了一个关于异常和中断的关系的中断与异常的区别 CPU对中断处理的流程我们首先必须了解CPU在接收到中断信号时会做什么。没办法,操作系统必须了解硬件的机制,不配合硬件就寸步难行。现在我们假定内核已被初始化,CPU在保护模式下运行。 CPU执行完一条指令后,下一条指令的逻辑地址存放在cs...原创 2020-03-25 21:57:42 · 407 阅读 · 0 评论 -
linux高级内核函数接口使用(二)
前一篇文章介绍了 open read write 的基本使用方法今天学习lseek和release的使用:同昨天一样是系统应用层与内核层相互配合使用的lseek函数系统层:所需要头文件:#include <sys/types.h>#include <unistd.h>参数:fd 表示要操作的文件描述符offset是相对于whence(基准)的偏移量wh...原创 2020-03-24 17:21:06 · 320 阅读 · 0 评论 -
3.23linux内核中函数接口的使用
以之前学习的杂项设备,早期经典字符设备,和标准字符设备来看,其中有一个很重要的,也被称为设备核心数据结构中的file_operations。 这个结构体中提供了多个函数接口我们去把他分析分析看:/** * author:hasen * 参考:《linux设备驱动开发详解》和sunsea1026的CSDN博客 * 作用:方便自己参考查阅 */struct file_operations...原创 2020-03-23 16:29:39 · 328 阅读 · 0 评论 -
嵌入式LINUX和stm32下的嵌入式差异
想到这个问题,毕竟是选择入行的岔路口,然后就查找一下资料下面附上 查看过后有用的链接:从四个方向介绍了差异还找到一个帖子讨论讨论stm32与linux驱动当然难度越大,待遇越丰厚吧,需要好好学习linux了,...原创 2020-03-20 00:29:23 · 1473 阅读 · 0 评论 -
为何说在LINUX中一切皆文件?
关于linux下一切皆文件的思考linux和windows的区别了解一切皆文件的内容文件解析图虚拟文件系统VFS文件系统linux和windows的区别今天突然想到 在linux中 我们所熟知的一句话叫做,“linux下一切皆文件”于是乎就查找在windows中 是什么样子的通过链接:Linux一切皆文件(包含好处和弊端)里明白了 linux和window的区别以及各自的优缺点了解一切皆...原创 2020-03-20 00:11:16 · 2422 阅读 · 0 评论 -
linux面试题解答_NOTE
C语言部分:1、C语言中sizeof和strlen的区别答:sizeof:计算所占内存空间的大小,不受存储内容的影响。strlen:计算字符串的长度,以”\0“不计入字符串长度。sizeof是运算符,在编译时计算,参数是数组、指针、类型、对象、函数等;strlen是函数,在调用时计算,参数只能是字符型指针。2、C语言中的malloc和free与c++中的new及delete有什么区别答:...原创 2020-03-17 20:48:06 · 912 阅读 · 0 评论 -
02-开发板有线连接PC机时与虚拟机三者ping通的问题
开发板有线连接PC机时与虚拟机三者ping通的问题转载 2020-03-16 22:44:49 · 194 阅读 · 0 评论 -
引入模块化编程的原因
有一个帖子讨论了模块化编程的优缺点:模块化编程优缺点是什么?l来自百科搜索:下面内容摘自模块化编程思想为什么?看到一个在刚开始学习编程时候的知识点:程序遵循的标准是“低内聚高耦合”降低耦合度的方法1、 多使用模块化编程的思想,在编写之初,模块需要做什么功能、以后需要做哪些扩展,需要长时间的考虑。2、模块的功能化分尽可能的明确。也可以参考生成动态库的原则,删除一个模块(在不调...原创 2020-03-16 21:28:07 · 351 阅读 · 0 评论 -
mount和umount指令学习
下面是man mount和 man umount后的 linux系统说明1、mount命令在Linux系统下,mount命令用于加载文件系统到指定的加载点。加载指定的文件系 统;mount可将指定设备中指定的文件系统加载到 Linux目录下(也就是装载点)。可将经常使用的设备写入文件/etc/fastab,以使系 统在每次启动时自动加载。mount加载设备的信息记录在/etc/mtab文件中...转载 2020-03-16 21:07:24 · 560 阅读 · 0 评论 -
根文件系统和内核的关系
明儿要开始学习根文件系统的制作,先了解一下内核和根文件系统的关系:过于复杂直接贴 大佬总结的把。详细生动具体》,《Linux内核与根文件系统的关系详解此外还要大致了解一个linux系统的内核组成及其结构也来一个链接吧linux系统组成及结构至于制作过程,明儿更新...原创 2020-03-15 22:46:05 · 706 阅读 · 0 评论 -
概述U-BOOT启动流程
在看过一系列的文档后:据我所知u_boot原本是bootloader的一种:BootLoader分类有所以他的启动流程与大体的相似但又会因为他的发展(即越来越多的人完善使他的代码量超过了 本来预定的,其启动流程也随着改变)我学习的板子是tiny4412用的是armv7架构 所以今儿说这个其大体分为两个阶段arch级的初始化关闭中断,设置svc模式禁用MMU、TLB关键寄存器的设...原创 2020-03-13 00:24:43 · 432 阅读 · 0 评论 -
内存的分类以及各自特征
先说内存的含义:内存是计算机中重要的部件之一,它是与CPU进行沟通的桥梁。计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大。 内存(Memory)也被称为内存储器,其作用是用于暂时存放CPU中的运算数据,以及与硬盘等外部存储器交换的数据。只要计算机在运行中,CPU就会把需要运算的数据调到内存中进行运算,当运算完成后CPU再将结果传送出来,内存的运行也决定了计算机的稳定...原创 2020-03-11 21:04:05 · 11721 阅读 · 0 评论 -
查找arm的相关资料
ARM在1990年成立,当初的名字是“Advanced RISC Machines Ltd.,”(进阶精简指令集机器)查找ARM架构的分类有哪些先明白架构和内核的关系,有一个大佬形象的总结了给贴 ARM内核和架构的关系(超形象)查一下采用Exynos4412处理器生产的手机...原创 2020-03-09 16:30:49 · 341 阅读 · 0 评论 -
嵌入式驱动组成概论3.9
嵌入式系统的组成:嵌入式设备的组成:硬件CPUi/o内存软件系统软件:应用软件:未来工作方向:硬件软件:1.嵌入式系统工程师:设计、开发嵌入式系统;构造嵌入式系统的框架结构、内核原理; 负责编写整体系统设计方案;分配嵌入式硬件工程师和嵌入式软件工程师工作,并对其进行技术指导;对客户进行系统技术支持。2.嵌入式驱动工程师:编写和意志各种处理器芯片...原创 2020-03-09 16:04:27 · 167 阅读 · 0 评论