2010-04-24 12:58:00 注:如果要读24c128或264,地址位为16位的.现在的地址位为8位. protues仿真图 源程序如下: #include <iom16v.h> #include <macros.h> #include "delay.h" #define I2C_DDR     DDRB #define I2C_PORT    PORTB #define I2C_PIN     PINB #define SDA         PB1…
Ⅰ.写在前面 说到IIC,大家都应该不会陌生,我们初学单片机的时候或多或少都知道或了解过,甚至使用I2C控制过器件.但是,有多少人真正去深入理解,或者深入研究过I2C通信协议呢? 1.我们有必要学习I2C通信吗? I2C作为常见串行通信的其中一种,在嵌入式领域中占有很重要的地位.原因在于我们嵌入式开发的产品中有很多设备都是使用I2C进行通信的.我们开始学习单片机开发的时候最先接触的应该是使用I2C操作EEPROM(如AT24C08)通信,这也是典型的I2C通信例子.其实还有很多常见的I2C通信设…
板子上设置了EEPROM存储器,型号为AT24C02.板子的硬件连接为:SCL--->P2.4,SDA--->P2.5.直接了当,贴上程序! ========================24cxx.h文件========================= #ifndef _24CXX_H_ #define _24CXX_H_ #include <msp430x14x.h> #define WRITE_ADDR 0xA0 //A0 A1 A2均接地 #define READ_AD…
....妈的太难.    反正就是控制引脚的高低电平 实现数据的读取....参考 I2C的协议层和物理层的那个几个图,个个信号产生的电平 自己看源码去把. 头疼…
a - 什么是IIC总线 -什么是EEPROM -IIC总线的通信格式 模块化设计注解 整体代码 - 什么是IIC总线 IIC总线是同步通信的一种特殊形式,具有接线口少.控制简单.器件封装形式小.通信速率高等特点.在主从通信中,可以有多个IIC总线器件同时连接到IIC总线上,所有与IIC兼容的器件都具有标准的接口,通过地址来识别通信对象,使他们可以经由IIC总线互相直接通信. IIC总线由SDA数据线和SCL时钟线俩条线构成通信线路,既可发送数据也可以接收数据.在CPU和IC之间.IC与IC间都…
STM32F10x_模拟I2C读写EEPROM STM32F10x_硬件I2C读写EEPROM(标准外设库版本) STM32F10x_硬件I2C主从通信(轮询发送,中断接收)…
Ⅰ.写在前面 上一篇文章是“STM32F10x_模拟I2C读写EEPROM”,讲述使用IO口模拟I2C总线通信,对EEPROM(AT24Xxx)进行读写操作的过程. 上一篇文章主要内容:I2C协议.模拟I2C底层驱动.EEPROM(AT24Xxx)单字节读写操作. 本文主要内容:STM32硬件I2C详细配置.EEPROM(AT24Xxx)多字节读写操作.ST官方I2C存在问题. 实例实验效果: 1.多字节读写:任意地址(66), 写入任意长度(129).读取并打印出来 2.单字节读写:任意地址(…
案例采用明德扬设计思想完成.IIC协议是非常常用的接口协议,在电子类岗位招聘要求中经常出现它的身影.关于IIC协议这里只做简要介绍,详细信息请自行百度或查阅相关Datasheet,网上资料非常多.该篇博文主要讲如何使用verilog来描述IIC协议,以读写EEPROM为例带领大家了解下明德扬四段式状态机规范和优势,另外还有一些自己在设计过程中总结的经验技巧. IIC协议时序格式以Datasheet中时序图的形式供大家参考.IIC协议有一条时钟线SCL和一条双线数据总线SDA.SDA在SCL高电平…
十六.IIC协议详解+Uart串口读写EEPROM 本文由杭电网友曾凯峰根据小梅哥FPGA IIC协议基本概念公开课内容整理并最终编写Verilog代码实现使用串口读写EEPROM的功能. 以下为原文内容: 在看完小梅哥讲解IIC总线基本概念后,就有种想跃跃欲试的想法,下面先复习下梅哥讲解的IIC总线若干基本概念.以下基本概念均为小梅哥总结,我就直接拿过来供大家参考学习. IIC基本特性 总线信号 SDA:串行数据线 SCL:串行数据时钟 总线空闲状态 SDA:高电平 SCL:高电平 IIC协议…
这段时间在做全国光电设计大赛,用到了px4的px4flow光流传感器,用软件模拟iic读取数据不定期会导致px4flow死机,查了资料和光流的源码,发现这个光流用了stm32的硬件iic,所以对软件模拟iic的时序要求可能更高一点所以在原子哥的iic程序上做了修改,代码测验后已经不会死机,做个笔记,保存一下. #include "myiic.h" #include "delay.h" //初始化IIC void IIC_Init(void) { 19 GPIO_In…