一款批量SPI烧录器的原理图以及控制程序,方便批量烧写字库。语音,等文件记录。可做系统初始化使用。包含原理图以及控制程序
2021-08-10 16:54:37 12.07MB spi烧录器 spiflash烧录 批量spi
1
华邦w25x16 SPIFlash Read ID FPGA(EP4CE6)实验Verilog逻辑源码Quartus工程文件+文档说明资料,FPGA为CYCLONE4系列中的EP4CE6E22C8. 完整的工程文件,可以做为你的学习设计参考。 **------------------------------------------------------------------------------------------------------ ** Modified by: ** Modified date: ** Version: ** Descriptions: Read the Device ID of the W25X16 Flash ** **------------------------------------------------------------------------------------------------------ ********************************************************************************************************/ module W25X16 ( //input signal input sys_clk , input sys_rst_n , input W25X16_DO , //output signal output reg W25X16_CS , output reg W25X16_CLK , output reg W25X16_DIO , output reg [7:0] LED ); //reg define reg [5:0] counter ; reg [5:0] clk_cnt ; reg [15:0] shift_buf ; //wire define wire div_clk1 ; wire div_clk2 ; /******************************************************************************************************* ** Main Program ** ********************************************************************************************************/ //creat a clock about 1MHz always @(posedge sys_clk or negedge sys_rst_n) begin if ( sys_rst_n ==1'b0 ) clk_cnt <= 6'b0; else clk_cnt <= clk_cnt + 1'b1; end assign div_clk1 = clk_cnt[5]; assign div_clk2 = ~clk_cnt[5]; //get a counter that width is 6 bits always @(posedge div_clk1 or negedge sys_rst_n) begin if ( sys_rst_n ==1'b0 ) counter <= 6'b0; else counter = 8 && counter <= 58 ) W25X16_CS <= 1'b0;
STM32读写 W25X20 W25X10 ,硬件SPI;stm32;电子开发
2021-08-09 13:08:15 5KB stm32 spiflash 华邦
1
华邦W25系列SPI FLASH读写C语语言动源码(单片机),已在STM32单片机调试测试,可以做为你的学习设计参考。 ain.c文件: #include "stm32f10x_it.h" #include"hw_conf.h" #include "spi_flash.h" void delay(int d); u8 DataByte=0; u8 Tx_Buffer[] = {0x72,0x62,0x02,0x78,0x60,0x96,0x86,0x79,0x85,0x24,0x36,0x48}; u8 Rx_Buffer[BufferSize]; vu32 FLASH_ID = 0; int main(void) { #ifdef DEBUG debug(); #endif Setup_System(); SPI_FLASH_Init(); //SPI_FLASH_ByteWrite(0x72, 0x01F01F); //DataByte = SPI_FLASH_ByteRead(0x01F01F); //DataByte = SPI_Flash_ReadStatusRegister(); //SPI_FLASH_SectorErase(0x01F01F); //SPI_FLASH_BulkErase(0x01F01F); //SPI_FLASH_ChipErase(); //DataByte = SPI_FLASH_FasttRead(0x01F01F); //DataByte = SPI_Flash_ReadStatusRegister(); //DataByte = SPI_FLASH_ReadDeviceID(); //SPI_FLASH_ReadManuID_DeviceID(0x000000); //SPI_FLASH_ReadJedecID(); SPI_FLASH_PageWrite(Tx_Buffer, 0x01F01F, 10); SPI_FLASH_BufferRead(Rx_Buffer, 0x01F01F, 4); while (1) { if(Rx_Buffer[0]==0x72) { GPIO_WriteBit(GPIOC,GPIO_Pin_6,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOC,GPIO_Pin_6))); delay(100); } if(Rx_Buffer[1]==0x62) { GPIO_WriteBit(GPIOC,GPIO_Pin_7,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOC,GPIO_Pin_7))); delay(100); } if(Rx_Buffer[2]==0x02) { GPIO_WriteBit(GPIOC,GPIO_Pin_4,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOC,GPIO_Pin_4))); delay(100); } if(Rx_Buffer[3]==0x78) { GPIO_WriteBit(GPIOC,GPIO_Pin_5,(BitAction)(1-GPIO_ReadOutputDataBit(GPIOC,GPIO_Pin_5))); delay(100); } } }
IIC接口E2PROM(AT24C64) 读写VERILOG 驱动源码+仿真激励文件: module i2c_dri #( parameter SLAVE_ADDR = 7'b1010000 , //EEPROM从机地址 parameter CLK_FREQ = 26'd50_000_000, //模块输入的时钟频率 parameter I2C_FREQ = 18'd250_000 //IIC_SCL的时钟频率 ) ( input clk , input rst_n , //i2c interface input i2c_exec , //I2C触发执行信号 input bit_ctrl , //字地址位控制(16b/8b) input i2c_rh_wl , //I2C读写控制信号 input [15:0] i2c_addr , //I2C器件内地址 input [ 7:0] i2c_data_w , //I2C要写的数据 output reg [ 7:0] i2c_data_r , //I2C读出的数据 output reg i2c_done , //I2C一次操作完成 output reg i2c_ack , //I2C应答标志 0:应答 1:未应答 output reg scl , //I2C的SCL时钟信号 inout sda , //I2C的SDA信号 //user interface output reg dri_clk //驱动I2C操作的驱动时钟 ); //localparam define localparam st_idle = 8'b0000_0001; //空闲状态 localparam st_sladdr = 8'b0000_0010; //发送器件地址(slave address) localparam st_addr16 = 8'b0000_0100; //发送16位字地址 localparam st_addr8 = 8'b0000_1000; //发送8位字地址 localparam st_data_wr = 8'b0001_0000; //写数据(8 bit) localparam st_addr_rd = 8'b0010_0000; //发送器件地址读 localparam st_data_rd = 8'b0100_0000; //读数据(8 bit) localparam st_stop = 8'b1000_0000; //结束I2C操作 //reg define reg sda_dir ; //I2C数据(SDA)方向控制 reg sda_out ; //SDA输出信号 reg st_done ; //状态结束 reg wr_flag ; //写标志 reg [ 6:0] cnt ; //计数 reg [ 7:0] cur_state ; //状态机当前状态 reg [ 7:0] next_state; //状态机下一状态 reg [15:0] addr_t ; //地址 reg [ 7:0] data_r ; //读取的数据 reg [ 7:0] data_wr_t ; //I2C需写的数据的临时寄存 reg [ 9:0] clk_cnt ; //分频时
699大洋买的SK-LINK I350-T4 intel英特尔I350AM4芯片服务器网卡PCI-E X4转四电口网卡,通过读卡器读出的(e2prom+spiflash)配置BIN文件, 可以直接用于的I350AM4 PCIE千兆网卡设计: st-25p40vp-spiflash.bin st-m95256wp-eeprom.bin
本资源为w25qxx系列flash的spi驱动代码 包含spi.h和spi.c和w25qxx.h和w25qxx.c四个驱动文件和头文件
2021-06-04 10:26:54 7KB spi flash w25qxx驱动 嵌入式
1
PCIE X4转4路千兆网intel_i350 e2prom+spiflash 4光口4电口配置文件,用于I350网卡硬件开发: i350_at25256_NET.bin i350_at25256_SFP.bin i350_m25p40_NET.bin i350_m25p40_SFP.bin
spiflash w25q128驱动函数 包含block擦数,sector擦数 页写 多页写 页读 多页读函数 已调试通过
2021-04-29 15:58:53 4KB spiflash w25q128
1
SPIFlash W25Q64 新唐单片机程序 可读,可写, 基本的操作
2021-04-21 16:23:49 2.39MB SPI Flash W25Q64 新唐单片机
1