国产爱久久久精品_看**视频一一级毛片_91啪国自产中文字幕在线_国内精品伊人久久久久妇

網絡消費網 >  5G > > 正文
stm32驅動SST25VF程序
時間:2021-12-13 18:22:03
SST25VF.h:#include "stm32f10x_lib.h"#ifndef __SST25V_H#define __SST25V_H#define BufferSize (countof(Tx_Buffer)-1)#define countof(a) (sizeof(a) / sizeof(*(a)))#define SST25V_PageSize 256#define Dummy_Byte 0xA5#define SST25V_CS_LOW() GPIO_ResetBits(GPIOA, GPIO_Pin_4)#define SST25V_CS_HIGH() GPIO_SetBits(GPIOA, GPIO_Pin_4)#define SST25V_WP_LOW() GPIO_ResetBits(GPIOC, GPIO_Pin_0)#define SST25V_WP_HIGH() GPIO_SetBits(GPIOC, GPIO_Pin_0)#define SST25V_HOLD_LOW() GPIO_ResetBits(GPIOC, GPIO_Pin_1)#define SST25V_HOLD_HIGH() GPIO_SetBits(GPIOC, GPIO_Pin_1)#define Read_Data 0x03 //讀取存儲器數據#define HighSpeedReadData 0x0B //快速讀取存儲器數據#define SectorErace_4KB 0x20 //扇區擦除#define BlockErace_32KB 0x52 //32KB塊擦除#define BlockErace_64KB 0xD8 //64KB塊擦除#define ChipErace 0xC7 //片擦除#define Byte_Program 0x02 //頁面編程--寫數據#define AAI_WordProgram 0xAD#define ReadStatusRegister 0x05 //讀狀態寄存器#define EnableWriteStatusRegister 0x50#define WriteStatusRegister 0x01 //寫狀態寄存器#define WriteEnable 0x06 //寫使能,設置狀態寄存器#define WriteDisable 0x04 //寫禁止#define ReadDeviceID 0xAB //獲取設備ID信息#define ReadJedec_ID 0x9F //JEDEC的ID信息#define EBSY 0X70 //允許AAI模式期間,SO腳輸出忙狀態命令#define DBSY 0X80 //禁止AAI模式期間,SO腳輸出忙狀態命令void SST25V_Init(void); //Flash芯片初始化u8 SST25V_ByteRead(u32 ReadAddr); //從ReadAddr地址讀取一個字節數據void SST25V_BufferRead(u8* pBuffer, u32 ReadAddr, u16 NumByteToRead); //從ReadAddr地址開始讀取NumByteToRead個字節數據u8 SST25V_HighSpeedByteRead(u32 ReadAddr); //從ReadAddr高速讀取一個字節數據void SST25V_HighSpeedBufferRead(u8* pBuffer, u32 ReadAddr, u16 NumByteToRead);//從ReadAddr開始高速讀取NumByteToRead個字節數據,并存儲于pBuffer中u8 SPI_Flash_SendByte(u8 byte); //SPI發送數據u8 SPI_Flash_ReceiveByte(void); //SPI接收數據void SST25V_ByteWrite(u8 Byte, u32 WriteAddr); //寫入一個數據字節void SST25V_BufferWrite(u8 *pBuffer,u32 Addr,u16 BufferLength);//將pBuffer中的BufferLength個字節數據寫入到以Addr為起始地址的區域void SST25V_WriteBytes(u8 Byte, u32 WriteAddr,u32 ByteLength); //以WriteAddr為起始地址,寫入ByteLength個數據Byte(寫入的是同一個數據Byte)void SST25V_AAI_WriteBytes(u8 Byte, u32 Addr,u32 ByteLength); //以Addr為起始地址,用AAI模式,寫入ByteLength個數據Byte(寫入的是同一個數據Byte)ByteLength必須為偶數void SST25V_AAI_BufferProgram(u8 *pBuffer,u32 Addr,u16 BufferLength); //用AAI模式將pBuffer中的BufferLength個字節數據寫入到以Addr為起始地址的區域,ByteLength必須為偶數void SST25V_AAI_WordProgram(u8 Byte1, u8 Byte2, u32 Addr); //在AAI模式下,以Addr為起始地址,分別寫入Byte1和Byte2,必須和SST25V_AAI_WordsProgram()函數配套使用void SST25V_AAI_WordsProgram(u8 state,u8 Byte1, u8 Byte2); //在AAI模式下,繼續寫入Byte1和Byte2,必須和SST25V_AAI_WordProgram()函數配套使用,state==1退出AAI模式void SST25V_SectorErase_4KByte(u32 Addr); //擦除4KB數據空間,Addr是擦除起始地址void SST25V_BlockErase_32KByte(u32 Addr); //擦除32KB數據空間,Addr是擦除起始地址void SST25V_BlockErase_64KByte(u32 Addr); //擦除64KB數據空間,Addr是擦除起始地址void SST25V_ChipErase(void); //擦除整個芯片數據空間u8 SST25V_ReadStatusRegister(void); //讀取狀態寄存器void SST25V_WriteEnable(void); //允許對芯片寫入操作void SST25V_WriteDisable(void); //禁止對芯片寫入操作void SST25V_EnableWriteStatusRegister(void); //允許改寫狀態寄存器void SST25V_WriteStatusRegister(u8 Byte); //改寫狀態寄存器,向狀態寄存器寫入數據Bytevoid SST25V_WaitForWriteEnd(void); //等待寫入操作完成u32 SST25V_ReadJedecID(void); //讀取JEDEC IDu16 SST25V_ReadManuID_DeviceID(u32 ReadManu_DeviceID_Addr); //讀取ManufacturerID和DeviceID,ReadManu_DeviceID_Addr的狀態決定第一個字節是DeviceID還是ManufacturerIDvoid SST25V_EBSY(); //允許AAI模式期間,SO腳輸出忙狀態void SST25V_DBSY(); //禁止AAI模式期間,SO腳輸出忙狀態#endifhw_conf.c:#include"stm32f10x_lib.h"#include "hw_conf.h"ErrorStatus HSEStartUpStatus;void RCC_Configuration(void){RCC_DeInit();RCC_HSEConfig(RCC_HSE_ON);HSEStartUpStatus = RCC_WaitForHSEStartUp();if(HSEStartUpStatus == SUCCESS){FLASH_PrefetchBufferCmd(FLASH_PrefetchBuffer_Enable);FLASH_SetLatency(FLASH_Latency_2);RCC_HCLKConfig(RCC_SYSCLK_Div1);RCC_PCLK2Config(RCC_HCLK_Div1);RCC_PCLK1Config(RCC_HCLK_Div2);RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_9);RCC_PLLCmd(ENABLE);while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET){}RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);while(RCC_GetSYSCLKSource() != 0x08){}}RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOC | RCC_APB2Periph_AFIO, ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);}void GPIO_Configuration(void){//PC4567分別接LED4,3,2,1,以便調試觀察GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 |GPIO_Pin_5 |GPIO_Pin_6 | GPIO_Pin_7;GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_Init(GPIOC, &GPIO_InitStructure);//PA5--SPI1_SCK PA6--SPI1--MISO PA7--SPI1--MOSIGPIO_InitStructure.GPIO_Pin = GPIO_Pin_5 | GPIO_Pin_6 | GPIO_Pin_7; //Configure SPI1 pins: NSS, SCK, MISO and MOSIGPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;GPIO_Init(GPIOA, &GPIO_InitStructure);//PA4--SPI1_NSSGPIO_InitStructure.GPIO_Pin = GPIO_Pin_4; //Configure PA.4 as Output push-pull, used as Flash Chip selectGPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_Init(GPIOA, &GPIO_InitStructure);}void SPI_configuration() //SPI1 configuration{SPI_InitTypeDef SPI_InitStructure;SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; //SPI設置為雙線雙向全雙工SPI_InitStructure.SPI_Mode = SPI_Mode_Master; //設置為主 SPI SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b; //SPI發送接收 8 位幀結構SPI_InitStructure.SPI_CPOL = SPI_CPOL_High; //時鐘懸空高SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge; //數據捕獲于第二個時鐘沿SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; //內部 NSS 信號有 SSI位控制SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_4; //波特率預分頻值為 4SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; //數據傳輸從 MSB 位開始SPI_InitStructure.SPI_CRCPolynomial = 7; //定義了用于 CRC值計算的多項式 7SPI_Init(SPI1, &SPI_InitStructure);SPI_Cmd(SPI1, ENABLE); //Enable SPI1}void NVIC_Configuration(void){#ifdef VECT_TAB_RAM NVIC_SetVectorTable(NVIC_VectTab_RAM, 0x0);#elseNVIC_SetVectorTable(NVIC_VectTab_FLASH, 0x0); #endif}void Setup_System(void){RCC_Configuration();GPIO_Configuration();SPI_configuration();NVIC_Configuration();}hw_conf.h:#ifndef _hw_conf_H_#define _hw_conf_H_extern void Setup_System(void);#endif

關鍵詞: stm32SST25V

版權聲明:
    凡注明來網絡消費網的作品,版權均屬網絡消費網所有,未經授權不得轉載、摘編或利用其它方式使用上述作品。已經本網授權使用作品的,應在授權范圍內使用,并注明"來源:網絡消費網"。違反上述聲明者,本網將追究其相關法律責任。
    除來源署名為網絡消費網稿件外,其他所轉載內容之原創性、真實性、完整性、及時性本站不作任何保證或承諾,請讀者僅作參考并自行核實。
熱文

網站首頁 |網站簡介 | 關于我們 | 廣告業務 | 投稿信箱
 

Copyright © 2000-2020 www.fnsyft.com All Rights Reserved.
 

中國網絡消費網 版權所有 未經書面授權 不得復制或建立鏡像
 

聯系郵箱:920 891 263@qq.com

備案號:京ICP備2022016840號-15

營業執照公示信息

国产爱久久久精品_看**视频一一级毛片_91啪国自产中文字幕在线_国内精品伊人久久久久妇

        国产精品人人做人人爽人人添| 欧美精品乱码久久久久久按摩| 777午夜精品视频在线播放| 国产亚洲欧美色| 婷婷综合久久一区二区三区| 粉嫩高潮美女一区二区三区| 国产精品久久免费看| 欧美三级中文字幕在线观看| 中文字幕巨乱亚洲| 日本伊人精品一区二区三区观看方式| 成人免费毛片aaaaa**| 亚洲欧美二区三区| 日韩一区二区免费高清| 亚洲国产精品久久一线不卡| 成人a区在线观看| 亚洲综合激情网| 久久免费精品国产久精品久久久久 | 偷拍日韩校园综合在线| 91蝌蚪国产九色| 一本久久a久久免费精品不卡| 国产亚洲欧美激情| 精品一区二区三区在线观看国产| 国产欧美日韩精品a在线观看| 欧美日韩一区国产| 亚洲视频网在线直播| 国产成人夜色高潮福利影视| 亚洲综合在线免费观看| 26uuu成人网一区二区三区| 肉丝袜脚交视频一区二区| 久久久噜噜噜久久中文字幕色伊伊 | 国产成人精品免费在线| 夜色激情一区二区| 久久久国产精品午夜一区ai换脸| 人人精品人人爱| 国产精品乱码一区二区三区软件| 91超碰这里只有精品国产| 亚洲第一综合色| 日本一区二区三区dvd视频在线| 欧美日韩成人在线一区| 午夜av区久久| 国产精品嫩草影院com| 国产精品一区二区x88av| 亚洲午夜三级在线| 国产精品初高中害羞小美女文| 国产精品一区免费在线观看| 亚洲一区中文日韩| 亚洲欧洲日产国产综合网| 成人黄色综合网站| 欧洲一区二区三区免费视频| 一区二区三区日本| 久久久久久久国产精品影院| 欧美一区二区三区免费在线看| 天天综合日日夜夜精品| 成人免费在线播放视频| 久久精品一级爱片| 高清国产一区二区三区| 欧美性色黄大片| 亚洲国产精品尤物yw在线观看| 国产欧美日韩在线| 精品国产免费人成在线观看| 国产专区欧美精品| 色av成人天堂桃色av| 亚洲午夜久久久久久久久久久| 日本一区二区免费在线观看视频| 精品理论电影在线| 国产成人在线视频免费播放| 欧美亚洲综合网| 日本人妖一区二区| 亚洲国产综合人成综合网站| 自拍av一区二区三区| 久久精品夜夜夜夜久久| 久久综合久久综合久久| 成人理论电影网| 欧美电影影音先锋| 国产专区综合网| 欧美日韩精品久久久| 免费观看一级特黄欧美大片| 亚洲国产综合91精品麻豆| 一片黄亚洲嫩模| 亚洲欧美日韩中文播放| 亚洲欧美日韩在线不卡| 日本一区二区动态图| 国产视频一区二区在线| 久久综合狠狠综合久久综合88| 2023国产精华国产精品| 99在线精品观看| 精品国产露脸精彩对白| eeuss鲁一区二区三区| 日韩一区二区三区免费观看 | 91成人网在线| 日本成人在线看| 无码av中文一区二区三区桃花岛| 亚洲国产综合在线| 亚洲综合视频在线观看| 亚洲国产乱码最新视频| 亚洲免费av高清| 亚洲图片欧美一区| 午夜精品久久久久久久| 日本中文一区二区三区| 在线欧美日韩精品| 激情综合色综合久久综合| 欧美日韩国产在线观看| 国产资源在线一区| 日韩一区二区三区在线| caoporn国产精品| 久久人人爽人人爽| 国产视频视频一区| 中文字幕日韩一区| 亚洲丝袜另类动漫二区| 亚洲影视在线播放| 亚洲国产精品久久艾草纯爱| 日韩国产欧美三级| 欧美日韩你懂得| 高清在线不卡av| 国产亚洲一区二区三区| 国产欧美1区2区3区| 一区二区在线观看免费| 亚洲国产婷婷综合在线精品| 奇米精品一区二区三区在线观看一| 欧美午夜电影在线播放| 国产不卡高清在线观看视频| 精品国内二区三区| 欧美韩国日本一区| 一区二区三区日韩欧美精品| 午夜av一区二区| 国产精品白丝jk黑袜喷水| 精品国产乱子伦一区| 日本一区二区三区在线观看| 亚洲欧美乱综合| 性感美女久久精品| 国产美女视频91| 久久先锋影音av鲁色资源网| 国产精品私人影院| 五月天欧美精品| 欧美日韩国产影片| 91丨porny丨户外露出| 亚洲视频在线观看一区| 五月开心婷婷久久| 国产盗摄一区二区三区| 国产女人18毛片水真多成人如厕| 亚洲男人天堂av网| 精品亚洲国产成人av制服丝袜| 日韩亚洲欧美高清| 欧美国产精品久久| 午夜电影一区二区| 91精品国产免费久久综合| 国产清纯白嫩初高生在线观看91| 夜夜揉揉日日人人青青一国产精品 | 99久久er热在这里只有精品15| 中文字幕中文在线不卡住| 午夜影视日本亚洲欧洲精品| 国产精一区二区三区| 中文字幕乱码亚洲精品一区| 亚洲电影中文字幕在线观看| 国产精品夜夜嗨| 国产精品视频麻豆| 色综合中文字幕国产| 国产91精品一区二区麻豆网站| 欧美激情艳妇裸体舞| 天天操天天色综合| 北条麻妃国产九九精品视频| 亚洲人成在线观看一区二区| 欧美午夜精品一区二区蜜桃 | 极品美女销魂一区二区三区免费| 久久人人超碰精品| 亚洲国产视频直播| 9i在线看片成人免费| 亚洲一级二级在线| 日韩一区二区中文字幕| 亚洲欧美电影一区二区| 国产激情偷乱视频一区二区三区| 国产精品久久久久久户外露出| 五月婷婷久久综合| 91原创在线视频| 五月激情综合网| 亚洲精品在线电影| 午夜精品在线看| 久久久午夜精品理论片中文字幕| 日韩黄色在线观看| 久久色成人在线| 香港成人在线视频| 久久久www成人免费毛片麻豆 | 亚洲精品国产第一综合99久久| 91精品国产综合久久久蜜臀图片| 亚洲天堂精品在线观看| 床上的激情91.| 亚洲无人区一区| www激情久久| 色美美综合视频| 国产精品视频在线看| 国产福利一区二区三区视频在线 | 午夜久久电影网| 国产日韩欧美电影| 国产精品一区三区| 亚洲国产精品天堂| 久久精品人人做人人爽人人| 在线免费一区三区| 中文字幕永久在线不卡| 国产成人精品免费| 午夜视频一区在线观看|