浅谈操作系统与内存 对于计算机的发明,相信大家都有耳闻那个占地面积按平米算的第一台计算机。在那个时候,CPU的资源是极其珍贵的,随着这些年突飞猛进的发展,一片指甲盖大小的民用级CPU一秒钟能执行的指令数可以达到上亿级别。 随着计算能力的增长,芯片外围的硬件和配套的软件也是一路高歌,发生了天翻地覆的变 ...
分类:
其他好文 时间:
2019-03-06 13:31:51
阅读次数:
139
以用i2c通信的实时时钟为例 框架入口源文件:i2c_m41t11.c (可根据入口源文件,再按着框架到内核走一遍) 内核版本:linux_2.6.22.6 硬件平台:JZ2440 以下是驱动框架: 以下是驱动代码 i2c_m41t11.c : 以下是编译驱动的Makefile: KER_DIR=/ ...
分类:
其他好文 时间:
2019-02-17 22:16:36
阅读次数:
261
I2C是一种总线式结构,它只需要SCL时钟信号线与SDA数据线,两根线就能将连接与总线上的设备实现数据通信,由于它的简便的构造设计,于是成为一种较为常用的通信方式。 由于I2C采用的是主从式通信方式,所以,通信的过程完全由主设备仲裁。在通信之前,必须由主设备发送一个起始信号,决定数据是否可以开始传送 ...
分类:
其他好文 时间:
2019-02-16 15:21:04
阅读次数:
217
execute typical instruction 1/1,000,000,000 sec = 1 nanosec fetch from L1 cache memory 0.5 nanosec branch misprediction 5 nanosec fetch from L2 cache ...
分类:
移动开发 时间:
2019-02-11 21:29:02
阅读次数:
174
1:登录github网站搜BMP280,找到 BoschSensortec/BMP280_driver 2:gitclone或者download zip都可以,把驱动下载到本地,记得fork哦! 3:阅读驱动的readme文件 4:readme前面分别是目录、概要、和版本介绍,略过 5:我们关注的焦 ...
分类:
其他好文 时间:
2019-02-09 10:39:00
阅读次数:
190
title: I2C(一)框架 date: 2019/1/28 17:58:42 toc: true I2C(一)框架 [TOC] 引入 我们首先从硬件连接的角度来抽象一下 整体框架 整体分为以下几个部分: core描述总线,提供统一管理 ,`I2c_linet i2c_driver i2c_tra ...
分类:
其他好文 时间:
2019-01-28 21:06:39
阅读次数:
148
前言:Wire.h是Arduino的IIC库。 一、Wire库函数 二、库函数详细介绍 1、Wire.begin() 和 Wire.begin(address) 描述 初始化wire库 ,并且加入到I2C网络,前者作为Master 或 Slaver,并且只能调用一次。 参数 address :7位的 ...
分类:
其他好文 时间:
2019-01-26 19:34:20
阅读次数:
199
转自:https://www.cnblogs.com/zhangpengshou/p/3643546.html GPIO的功能,简单说就是可以根据自己的需要去配置为输入或输出。(General Purpose Input Output,简称为GPIO或总线扩展器,利用工业标准I2C、SMBus?或S ...
分类:
其他好文 时间:
2019-01-25 16:03:38
阅读次数:
287
HAL库驱动中,由于某些外设的驱动需要使用超时判断(比如I2C、SPI、SDIO等),需要精确延时(精度为1ms),使用的是SysTick,但是在操作系统里面,我们需要使用SysTick来提供系统时基,那么就冲突了,怎么办?答案是利用DWT重新编写HAL库的相关延时和超时函数HAL_InitTick ...
分类:
其他好文 时间:
2019-01-22 17:37:40
阅读次数:
245
一、I2C总线原理 I2C是一种常用的串行总线,由串行数据线SDA 和串行时钟线SCL组成。I2C是一种多主机控制总线,它和USB总线不同,USB是基于master-slave机制,任何设备的通信必须由主机发起才可以,而 I2C 是基于multi master机制,一条总线上可允许多个master。 ...
分类:
其他好文 时间:
2019-01-19 18:56:10
阅读次数:
154