亲测五款大气压,主芯片是GD32E230C8T6,有需要的可以下载或私信我
2022-11-16 22:40:04 3.87MB 大气压 BMP280 DPS310 IIC
1
陀螺仪L3G4200D的cc2430读写程序,与HMC5883L电子罗盘和ADXL345加速计的读取程序基本相同
2022-05-13 15:13:24 45KB cc2430 L3G4200D IIC
1
使用STM32H743VIT6的模拟I2C驱动AT24C02的例程代码,已验证可行,欢迎广大朋友下载使用,提高开发效率。
2022-05-10 15:54:19 1.57MB stm32H743 模拟I2C AT24C02
1
stm32f103硬件IIC读写24c02的代码,直接加入工程使用。
2022-02-11 14:10:28 1KB stm32f103 24c02 硬件 硬件IIC读写
1
经过验证的,IIC程序是通过AXI_IIC IP来访问EEPROM,自己开发的AXI_SPI_SD IP是通过SPI总线读写SD卡
2022-02-08 09:06:04 95.89MB xilinx vivado AXI_IIC EEPROM
1
stm32f405的IIC读写程序,包括各个文件函数,是一个完整的压缩包,自己试过是好使的,可以改改参数直接用
2021-12-22 12:00:44 3.29MB stm32F4 IIC读写
1
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
本文主要谈了STM32作为主机I2C,读写24C02 EEPROM,内附有源程序。
2021-11-08 22:41:50 65KB STM32 IIC 读写 EEPROM
1
经过验证的,IIC程序是通过AXI_IIC IP来访问EEPROM,自己开发的AXI_SPI_SD IP是通过SPI总线读写SD卡
2021-10-09 08:47:02 109.79MB 嵌入式 xilinx vivado
1