SPI总线协议及SPI时序图详解  : http://blog.163.com/sunshine_linting/blog/static/44893323201181482335951/ 浅谈SPI总线 http://www.51hei.com/mcu/4011.html [SPI基础知识简介] 1. 接线: SPI总线是Motorola公司推出的三线同步接口,用于 CPU与各种外围器件进行全双工.同步串行通讯.SPI中分Master主设备和Slave从设备,数据发送都是由Master控制.一个…
    CAN网络图示     CAN的特点      CAN协议具有以下特点.      (1) 多主控制  在总线空闲时,所有的单元都可开始发送消息(多主控制). 最先访问总线的单元可获得发送权(CSMA/CA方式*1).  多个单元同时开始发送时,发送高优先级ID消息的单元可获得发送权.      (2) 消息的发送  在CAN协议中,所有的消息都以固定的格式发送.总线空闲时,所有与总线相连的单元都可以开始发送新消息.两个以上的单元同时开始发送消息时,根据标识符(Identifier 以下…
1.  I2C总线的基本概念    1)发送器(Transmitter):发送数据到总线的器件    2)接收器(Receiver):从总线接收数据的器件    3)主机(Master):初始化发送.产生时钟信号和终止发送的器件    4)从机(Slave):被主机寻址的器件 2. I2C总线的信号传输 1) 3种速率可选择     标准模式100kbps.快速模式400kbps.最高速率3.4Mbps2) 具有特定的传输起始.停止条件     a) 起始条件:当SCL 处于高电平期间时,SDA…
串口简介 1. 什么是串口? 串口是计算机上一种非常通用的设备通信的协议.串口通信的概念非常简单,串口按位(bit) 发送和接收字节.尽管比按字节(byte)的并行通信慢,但是串口可以在使用一根线发送数 据的同时用另一根线接收数据.串口能够轻松实现远距离通信. spi,iic属于同步串口. uart属于异步串口(Universal Asynchronous Receiver and Transmitter通用异步收发器).UART是一种通用串行数据总线,用于异步通信.该总线双向通信,可以实现全双…
USB简介   USB是英文Universal Serial BUS(通用串行总线)的缩写,是一个外部总线标准,用于规范电脑与外部设备的连接和通讯,是应用在PC领域的接口技术.USB接口支持设备的即插即用和热插拔功能. USB的电气特性 USB连接器包含四条线:2条用于电源供电(VBUS和GND),2条用于USB数据传输(D+和D-).VBUS提供5V电源,电流可达500mA.D+和D-为双向信号线,信号传输速率为12Mbps(每位83ns).D+和D-信号电平为3.3V  USB的特点  1)…
利用FPGA实现PCI总线接口及Windows驱动实现 关于PCI总线协议,资料网上.书本都是.这里我们仅仅对重点对利用FPGA实现PCI总线接口问题进行简单分析.下图是PCI总线接口信号: 配置空间寄存器操作时序如下图: 配置寄存器空间写时序如下图: 依照状态机的编程思路. 部分Verilog代码如下: ST_CFGREAD: begin enable <= EN_RD; if (~irdy || trdy) begin case (address) 0: data <= { DEVICE_…
CAN总线学习系列之二——CAN总线与RS485的比较 上 一节介绍了一下CAN总线的基本知识,那么有人会问,现在的总线格式很多,CAN相对于其他的总线有什么特点啊?这个问题问的好,所以我想与其它总线做一 下比较,首先呢,就比较一下大家耳熟能详的485总线,其实485总线只是一种电平标准,并不是什么新的协议,与232差不多,当然这么说不是很恰当,但 是有助于大家理解.       下面开始比较了: CAN(Controller Area Network)属于现场总线的范畴,它是一种有效支持分布式…
CAN总线系列讲座第五讲--CAN总线硬件电路设计一  实战学习背景 CAN总线节点的硬件构成方案有两种,其中的方案:(1).MCU控制器+独立CAN控制器+CAN收发器.独立CAN控制器如SJA10000.MCP2515,其中MCP2515通过SPI总线和MCU连接,SJA1000通过数据总线和MCU连接.该方案编写的CAN程序是针对独立CAN控制器的,程序可移植性好,编写好的程序可以方便的移植到任意的MCU.但是,由于采用了独立的CAN控制器,占用了MCU的I/O资源,并且电路变得复杂.为了…
1:登录github网站搜BMP280,找到 BoschSensortec/BMP280_driver 2:gitclone或者download zip都可以,把驱动下载到本地,记得fork哦! 3:阅读驱动的readme文件 4:readme前面分别是目录.概要.和版本介绍,略过 5:我们关注的焦点也是重点是:传感器初始化即:Initializing the sensor,以I2C为例讲解如下: 咱们按照要求先定义一个结构体 struct bmp280_dev bmp; 这个结构体最重要的是实…
问题一:程序直接在iRAM内部可正常执行,而程序搬移(Nand ->SDRAM)之后,就不能正常运行了 #define NAND_SECTOR_SIZE 2048 /* 读函数 */ void nand_read(unsigned char *buf, unsigned long start_addr, int size) { int i, j; //if ((start_addr & NAND_BLOCK_MASK) || (size & NAND_BLOCK_MASK)) if…
在C#中,我们可以在一个类中定义自己的事件,而其他的类可以订阅该事件,当某些事情发生时,可以通知到该类.这对于桌面应用或者独立的windows服务来说是非常有用的.但对于一个web应用来说是有点问题的,因为对象都是在web请求中创建的,而且这些对象生命周期都很短,因而注册某些类的事件是很困难的.此外,注册其他类的事件会使得类紧耦合.事件总线便可以用来解耦并重复利用应用中的逻辑. 事件总线带来的好处和引入的问题 好处比较明显,就是独立出一个发布订阅模块,调用者可以通过使用这个模块,屏蔽一些线程切换…
简介 当今社会在测试领域,接口测试已经越来越多的被提及,被重视,而且现在好多招聘信息要对接口测试提出要求.区别于传统意义上的系统级别测试,很多测试人员在接触到接口测试的时候,也许对测试执行还可以比较顺利的上手,但一 提到相关的文档,比如测试用例和报告,就有些不知所措了.这类问题在我加入的几个测试的群里,经常看到一些人在不断提问. 今天就用这篇文章来说说接口测试用例和报告. 接口功能测试用例模板 提到功能测试用例,我们知道,其中最重要的两个要素就是: 测试步骤 预期结果 其实对于接口功能测试也同样…
有了前面几节的介绍,基本的接口测试是可以满足了.本节一些其它的高级技巧: 一.认证 1.基本认证: # -*- coding:utf-8 -*- import requests url = "http://httpbin.org/basic-auth/user/passwd" r1 = requests.get(url) print "未提供用户名密码:" + str(r1.status_code) #Basic Authentication r2 = reques…
解决问题:每次密码都是变化的,无法通过账号密码登录 (总不能每次去fiddler复制吧????) 解决思路: 1.先用selenium调用浏览器(不会selenium的自己想办法了), 2.登录后从浏览器里面抓取cookies 3.把cookies传给s 4.这样就成功成功了 如果登录有验证码怎么办?比如:博客园 参考这篇:http://www.cnblogs.com/yoyoketang/p/8610779.html 每次都会启动浏览器界面,不想看到浏览器启动怎么办? 解决办法1:用chrom…
这一部分实现比较简单,直接上代码: import logging class Logger(): def __init__(self,content,*raw): self.content = content def log(self): logging.basicConfig(level=logging.DEBUG, format='%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', datefmt='%a…
http://blog.csdn.net/ce123_zhouwei/article/details/6919954…
1.简介 上一篇讲解完如何安装Git后,今天宏哥趁热打铁讲解一下Git的使用,要想使用Git,我们还需要做一些准备工作,首先你的拥有一个Git账号,所以如果你没有的话,就快速注册一个吧. 2.Git注册 (1) Git主页:http://github.com (2)宏哥推荐使用Git命令行进行操作Git,可以装B,看起来比较炫酷:还有就是自己可以加深对命令的记忆,其实Git是有图形化界面操作工具的-SourceTree,有兴趣的可以了解一下SourceTree这款工具. 大家不要小看这个注册的过…
转载:原文  http://www.eefocus.com/antaur/blog/17-08/423751_6cc0d.html 0. 引言 通过之前的学习,可以在PL端创建从机模式的AXI接口IP核.但是从机模式是被动接收数据,而不能主动的去获取数据,因此计划研究一下AXI Master接口的IP核的构建方法. 1. 利用向导创建AXI Lite Master测试用例 在这一步,AXI类型为Lite型的,可选参数如下所示: 在这里,重点是Interface Mode,前面的实验中采用的是默认…
一.I2C总线原理 I2C是一种常用的串行总线,由串行数据线SDA 和串行时钟线SCL组成.I2C是一种多主机控制总线,它和USB总线不同,USB是基于master-slave机制,任何设备的通信必须由主机发起才可以,而 I2C 是基于multi master机制,一条总线上可允许多个master. 系统的I2C模块分为I2C总线控制器和I2C设备.I2C总线控制器是CPU提供的控制I2C总线接口,它控制I2C总线的协议.仲裁.时序.I2C设备是指通过I2C总线与CPU相连的设备,如EEPROM…
Linux I2C驱动分析(一)----I2C架构和总线驱动 一.I2C总线原理 I2C是一种常用的串行总线,由串行数据线SDA 和串线时钟线SCL组成.I2C是一种多主机控制总线,它和USB总线不同,USB是基于master-slave机制,任何设备的通信必须由主机发起才可以,而 I2C 是基于multi master机制,一条总线上可允许多个master. 系统的I2C模块分为I2C总线控制器和I2C设备.I2C 总线控制器是CPU提供的控制I2C总线接口,它控制I2C总线的协议.仲裁.时序…
I2C总线(Inter Integrated-Circuit)是由PHILIPS公司在上世纪80年代发明的一种电路板级串行总线标准,通过两根信号线——时钟线SCL和数据线SDA——即可完成主从机的单工通信.总线硬件连接极其简单,不同I2C设备挂接在总线上,只需在信号线安装上拉电阻即可完成硬件线路的搭建.另外,I2C总线采用器件地址的硬件设置方法,通过软件寻址方式完全避免了片选寻址的弊端,从而使硬件系统扩展更为灵活. 由于简单有效,I2C在业界得到广泛应用.基于I2C衍生出来的标准有SMBus.P…
对I2C总线的时钟同步和总线仲裁的深入理解 每一个IIC总线器件内部的SDA.SCL引脚电路结构都是一样的,引脚的输出驱动与输入缓冲连在一起.其中输出为漏极开路的场效应管.输入缓冲为一只高输入阻抗的同相器[1].这种电路具有两个特点: ①由于SDA.SCL为漏极开路结构,借助于外部的上拉电阻实现了信号的“线与”逻辑: ②引脚在输出信号的同时还将引脚上的电平进行检测,检测是否与刚才输出一致.为 “时钟同步”和“总线仲裁”提供硬件基础. I2C总线接口内部结构 IIC设备对总线的操作仅有“把线路接地…
在多主的通信系统中.总线上有多个节点,它们都有自己的寻址地址,可以作为从节点被别的节点访问,同时它们都可以作为主节点向其他的节点发送控制字节和传 送数据.但是如果有两个或两个以上的节点都向总线上发送启动信号并开始传送数据,这样就形成了冲突.要解决这种冲突,就要进行仲裁的判决,这就是I 2C总线上的仲裁. I2C总线上的仲裁分两部分:SCL线的同步和SDA线的仲裁. 1  SCL线的同步(时钟同步) SCL同步是由于总线具有线“与”的逻辑功能,即只要有一个节点发送低电平时,总线上就表现为低电平.当…
USB设备,分为3层:1.底层为传送和接受数据的总线接口:2.中间层处理总线和不同端点的数据传输:3.最高层由串行总线设备提供.主要研究中间层. USB设备状态,主要研究外部可见状态. 1,连接态-->USB设备可从Host上连接或者断开. 2,加电态-->设备对电源的支持能力是通过配置描述表来反映的. 3,缺省态-->加电后尚未复位之前不应对总线相应,在接收到复位信号后,设备在缺省地址处可寻址. 4,编址态-->设备由主机分配一个唯一的地址后,就保持这个地址. 5,配置态--&g…
[驱动]USB驱动·入门 Preface USB是目前最流行的系统总线之一.随着计算机周围硬件的不断扩展,各种设备使用不同的总线接口,导致计算机外部总线种类繁多,管理困难.USB总线正是因此而诞生的. USB总线提供了所有外部设备的统一连接方式,并且支持热插拔,方便了厂商开发设备和用户使用设备. USB遵循原则 USB的设计目标是对现有的PC机体系进行扩充,但是目前不仅是PC机,许多的嵌入式系统都开始支持USB总线和接口标准.USB设计主要遵循下面几个原则: 易于扩充外部设备:USB支持一个接口…
一.SD卡接口 SD 卡的接口可以支持两种操作模式:主机系统可以选择以上其中任一模式, SD 卡模式允许 4 线的高速数据传输. SPI 模式允许简单通用的 SPI 通道接口, 这种模式相对于 SD 模式的不足之处是丧失了速度. (1)SD 卡模式 SD 模式针脚定义 注:S:电源供电, I:输入 O:输出 I/O:双向 PP: I/O 使用推挽驱动 SD模式下允许有一个主机,多个从机(即多个卡),主机可以给从机分配地址.主机命令可以是发给指定从机,也可以以广播形式发送. (2)SPI 模式 S…
转自:http://www.cnblogs.com/lcw/p/3159371.html Preface USB是目前最流行的系统总线之一.随着计算机周围硬件的不断扩展,各种设备使用不同的总线接口,导致计算机外部总线种类繁多,管理困难.USB总线正是因此而诞生的. USB总线提供了所有外部设备的统一连接方式,并且支持热插拔,方便了厂商开发设备和用户使用设备. USB遵循原则 USB的设计目标是对现有的PC机体系进行扩充,但是目前不仅是PC机,许多的嵌入式系统都开始支持USB总线和接口标准.USB…
W5100与MCU的连接方式 W5100与MCU的连接方式主要有直接总线连接.间接总线连接.SPI总线连接这三种连接方法,不同的连接方法适应于不同的场合,应该按需选择最恰当的连接方式. 1)直接总线连接: 直接总线连接方式是最直观的一种连接方式,它採用15位地址线,8位数据线,另加/CS,/RD./WR及/INT等信号线.如图1所看到的: 图1:W5100与MCU直接总线接口方式 2)间接总线连接: 採用2位地址线.8位数据线,另加/CS,/RD,/WR及/INT等信号线. 2~14这十三根没用…
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手试试做实验,不管成功与否,都会记录下来---小小的进步或是搞不定的问题,希望能够抛砖引玉. [Arduino]108种传感器模块系列实验(资料+代码+图形+仿真) 实验三十九:DS18B20单总线数字温度传感器模块 DS18B20 是世界第一片支持"一线总线"接口的温度传感器,…
2020.10.10星期六 正式班D5 一.上节课复习 1.硬盘分类 ​ 1.机械磁盘 ​ io时间=平均寻道时间+平均延迟时间 ​ buffer:写缓冲区 ​ cache:都缓存 ​ 2.固态硬盘 2.内核态和用户态 ​ 内核态:操作系统正在控制硬件 ​ 用户态:正在运行应用程序 二.今日内容 1.硬盘接口 IDE并口 并口IDE,即早期的PATA接口. 在传输数据和信号时总线是复用的,传输速率会受到一定限制. 如果提高传输速率,传输的数据和信号会产生干扰导致错误. SCSI SCSI主要用于…