IIC读写24C02存储verilog实验Quartus9.1工程源码,可以做为你的学习设计参考。 module iic_top( clk,rst_n, sw1,sw2, scl,sda, sm_cs1_n,sm_cs2_n,sm_db ); input clk; // 50MHz input rst_n; //复位信号,低有效 input sw1,sw2; //按键1、2,(1按下执行写入操作,2按下执行读操作) output scl; // 24C02的时钟端口 inout sda; // 24C02的数据端口 output sm_cs1_n,sm_cs2_n; //数码管片选信号,低有效 output[6:0] sm_db; //7段数码管(不包括小数点) wire[7:0] dis_data; //在数码管上显示的16进制数 iic_com iic_com( .clk(clk), .rst_n(rst_n), .sw1(sw1), .sw2(sw2), .scl(scl), .sda(sda), .dis_data(dis_data) ); led_seg7 led_seg7( .clk(clk), .rst_n(rst_n), .dis_data(dis_data), .sm_cs1_n(sm_cs1_n), .sm_cs2_n(sm_cs2_n), .sm_db(sm_db) ); endmodule module iic_com( clk,rst_n, sw1,sw2, scl,sda, dis_data ); input clk; // 50MHz input rst_n; //复位信号,低有效 input sw1,sw2; //按键1、2,(1按下执行写入操作,2按下执行读操作) output scl; // 24C02的时钟端口 inout sda; // 24C02的数据端口 output[7:0] dis_data; //数码管显示的数据 //-------------------------------------------- //按键检测 reg sw1_r,sw2_r; //键值锁存寄存器,每20ms检测一次键值 reg[19:0] cnt_20ms; //20ms计数寄存器 always @ (posedge clk or negedge rst_n) if(!rst_n) cnt_20ms <= 20'd0; else cnt_20ms <= cnt_20ms+1'b1; //不断计数 always @ (posedge clk or negedge rst_n) if(!rst_n) begin sw1_r <= 1'b1; //键值寄存器复位,没有键盘按下时键值都为1 sw2_r <= 1'b1; end else if(cnt_20ms == 20'hfffff) begin sw1_r <= sw1; //按键1值锁存 sw2_r <= sw2; //按键2值锁存 end //--------------------------------------------- //分频部分 reg[2:0] cnt; // cnt=0:scl上升沿,cnt=1:scl高电平中间,cnt=2:scl下降沿,cnt=3:scl低电平中间 reg[8:0] cnt_delay; //500循环计数,产生iic所需要的时钟 reg scl_r; //时钟脉冲寄存器 always @ (posedge clk or negedge rst_n) if(!rst_n) cnt_delay <= 9'd0; else if(cnt_delay == 9'd499) cnt_delay <= 9'd0; //计数到10us为scl的周期,即100KHz else cnt_delay <= cnt_delay+1'b1; //时钟计数 always @ (posedge clk or neged
IIC(EEPROM芯片AT24C02)总线通信 51单片机内部无IIC总线接口,通过模拟IIC总线工作时序, 仿真出IIC芯片工作结果,AT24CO2具有掉电保存功能, 保存程序运行时产生的数据,CPU掉电数据不丢失 。 本例仿真演示程序
2021-11-30 16:44:28 51KB IIC总线、24c02、仿真、单片机
1
Microchip Technology生产的24XXX系列串行EEPROM 兼容I2C™ 通信标准,最大时钟频率范围从100 kHz 到 1 MHz。许多PICmicro®单片机内置MSSP模块,这提供 了与24XXX 串行器件通信的易用接口。使用MSSP 的 最大好处在于信号时序是通过硬件而不是软件来产生 的。这意味着固件可持续执行,同时由硬件在后台对通 信进行控制。因而在设计中使用24XXX 系列器件时,不 再需要了解与I2C 相关的时序规范。
2021-11-29 15:05:02 433KB PIC18 I2C 24C02
1
i2c的操作,已经调试成功,在数码管上从0到9显示
2021-11-27 14:52:54 25KB i2c 24c02
1
只适用华谊MS8236万用表,主控芯片DTM0660-DTA0660都可以用,里面有修改万用表显示、背光时间等等参数的说明,文件大小256字节,EEPROM型号24C02
2021-11-26 23:13:41 24KB 华谊MS8236 BIOS
1
* 描述 : 该文件实现对24C02的操作。 这个代码会记录开机的次数,大家可以开关机。每次开机后,数码管上的值会进行加1.
2021-11-09 12:22:47 24KB 24C02
1
本文主要谈了STM32作为主机I2C,读写24C02 EEPROM,内附有源程序。
2021-11-08 22:41:50 65KB STM32 IIC 读写 EEPROM
1
用CubeMX的HAL库,用2个IO来模拟IIC,读写控制DS1307时钟芯片以及24C32芯片(淘宝上有模组卖)。 附带DS1307和24C02,24C32的datasheet资料,附带word文档详细的关于24C32和DS1307的注意要点,时序等说明。包括透过CUBEMX构建IIC的应用(STM32F0系列貌似没老芯片的IIC卡死等bug了,可以直接用,很方便很强大)。外接晶振时钟都不太准,因为偏差及温飘。要准还是DS3231,年误差2分钟左右,内置温补晶振。
2021-10-28 20:50:21 14.14MB STM32F IO模拟II DS1307 24C02
1
先写入24c02,再读出来,并通过串口打印出来
2021-10-26 16:02:56 4.35MB ATSAMD21 D21 I2C EEPROM
1
FM24W256、24C01、24C02、24C04、24C08、24C16存储器内部自己理解
2021-10-25 20:00:53 11KB FM24W256、24C01、2
1