資源簡介
詳細(xì)看博客——有修改的地方指出
http://blog.csdn.net/qq_34658324/article/details/79322291

代碼片段和文件信息
#include?“24cxx.h“?
#include?“delay.h“? ?
////////////////////////////////////////////////////////////////////////////////// ?
//本程序只供學(xué)習(xí)使用,未經(jīng)作者許可,不得用于其它任何用途
//ALIENTEK戰(zhàn)艦STM32開發(fā)板V3
//24CXX驅(qū)動?代碼(適合24C01~24C256) ???
//正點(diǎn)原子@ALIENTEK
//技術(shù)論壇:www.openedv.com
//創(chuàng)建日期:2015/1/15
//版本:V1.0
//版權(quán)所有,盜版必究。
//Copyright(C)?廣州市星翼電子科技有限公司?2009-2019
//All?rights?reserved ??
//////////////////////////////////////////////////////////////////////////////////
//初始化IIC接口
void?AT24CXX_Init(void)
{
IIC_Init();
}
//在AT24CXX指定地址讀出一個(gè)數(shù)據(jù)
//ReadAddr:開始讀數(shù)的地址??
//返回值??:讀到的數(shù)據(jù)
u8?AT24CXX_ReadOneByte(u16?ReadAddr)
{ ??
u8?temp=0; ?? ???? ?
????IIC_Start();??
if(EE_TYPE>AT24C16)
{
IIC_Send_Byte(0XA0); ???//發(fā)送寫命令
IIC_Wait_Ack();
IIC_Send_Byte(ReadAddr>>8);//發(fā)送高地址 ????
}else?IIC_Send_Byte(0XA0+((ReadAddr/256)<<1));???//發(fā)送器件地址0XA0寫數(shù)據(jù)? ???
IIC_Wait_Ack();?
????IIC_Send_Byte(ReadAddr%256);???//發(fā)送低地址
IIC_Wait_Ack(); ????
IIC_Start();?? ? ???
IIC_Send_Byte(0XA1);???????????//進(jìn)入接收模式 ???
IIC_Wait_Ack(); ?
????temp=IIC_Read_Byte(0); ???
????IIC_Stop();//產(chǎn)生一個(gè)停止條件 ????
return?temp;
}
//在AT24CXX指定地址寫入一個(gè)數(shù)據(jù)
//WriteAddr??:寫入數(shù)據(jù)的目的地址????
//DataToWrite:要寫入的數(shù)據(jù)
void?AT24CXX_WriteOneByte(u16?WriteAddru8?DataToWrite)
{ ??? ?? ???? ?
????IIC_Start();??
if(EE_TYPE>AT24C16)
{
IIC_Send_Byte(0XA0); ????//發(fā)送寫命令
IIC_Wait_Ack();
IIC_Send_Byte(WriteAddr>>8);//發(fā)送高地址 ??
}else?IIC_Send_Byte(0XA0+((WriteAddr/256)<<1));???//發(fā)送器件地址0XA0寫數(shù)據(jù)? ?
IIC_Wait_Ack(); ???
????IIC_Send_Byte(WriteAddr%256);???//發(fā)送低地址
IIC_Wait_Ack();? ? ?? ???
IIC_Send_Byte(DataToWrite);?????//發(fā)送字節(jié) ???
IIC_Wait_Ack();?? ???? ???
????IIC_Stop(); //產(chǎn)生一個(gè)停止條件?
delay_ms(10); ? //EEPROM的寫入速度比較慢,加入延遲
}?
//檢查AT24CXX是否正常
//這里用了24XX的最后一個(gè)地址(255)來存儲標(biāo)志字.
//如果用其他24C系列這個(gè)地址要修改
//返回1:檢測失敗
//返回0:檢測成功
u8?AT24CXX_Check(void)
{
u8?temp;
temp=AT24CXX_ReadOneByte(255);//避免每次開機(jī)都寫AT24CXX ???
if(temp==0X55)return?0; ???
else//排除第一次初始化的情況
{
AT24CXX_WriteOneByte(2550X55);
????temp=AT24CXX_ReadOneByte(255); ??
if(temp==0X55)return?0;
}
return?1; ??
}
//在AT24CXX里面的指定地址開始讀出指定個(gè)數(shù)的數(shù)據(jù)
//ReadAddr?:開始讀出的地址?對24c02為0~255
//pBuffer??:數(shù)據(jù)數(shù)組首地址
//NumToRead:要讀出數(shù)據(jù)的個(gè)數(shù)
void?AT24CXX_Read(u16?ReadAddru8?*pBufferu16?NumToRead)
{
while(NumToRead)
{
*pBuffer++=AT24CXX_ReadOneByte(ReadAddr++);
NumToRead--;
}
}??
//在AT24CXX里面的指定地址開始寫入指定個(gè)數(shù)的數(shù)據(jù)
//WriteAddr?:開始寫入的地址?對24c02為0~255
//pBuffer???:數(shù)據(jù)數(shù)組首地址
//NumToWrite:要寫入數(shù)據(jù)的個(gè)數(shù)
void?AT24CXX_Write(u16?WriteAddru8?*pBufferu16?NumToWrite)
{
while(NumToWrite--)
{
AT24CXX_WriteOneByte(WriteAddr*pBuffer);
WriteAddr++;
pBuffer++;
}
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-02-08?19:12??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\24CXX\
?????文件????????3117??2015-02-27?19:11??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\24CXX\24cxx.c
?????文件????????1326??2015-02-27?19:06??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\24CXX\24cxx.h
?????文件????????2794??2015-01-15?14:13??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\24CXX\myiic.c
?????文件????????1373??2015-01-15?14:18??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\24CXX\myiic.h
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\ADC\
?????文件????????5086??2015-02-27?15:32??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\ADC\adc.c
?????文件????????1303??2015-02-27?15:13??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\ADC\adc.h
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\BEEP\
?????文件?????????756??2015-01-10?22:24??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\BEEP\beep.c
?????文件?????????696??2015-01-10?22:24??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\BEEP\beep.h
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\DAC\
?????文件????????1303??2015-01-15?12:54??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\DAC\dac.c
?????文件?????????683??2015-01-15?12:54??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\DAC\dac.h
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\DMA\
?????文件????????1803??2015-01-15?12:56??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\DMA\dma.c
?????文件?????????780??2015-01-15?12:56??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\DMA\dma.h
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\EXTI\
?????文件????????1878??2015-01-10?22:24??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\EXTI\exti.c
?????文件?????????651??2015-01-10?22:24??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\EXTI\exti.h
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\KEY\
?????文件????????1507??2015-01-10?22:23??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\KEY\key.c
?????文件?????????904??2015-01-10?22:23??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\KEY\key.h
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\LCD\
?????文件???????35016??2014-11-30?20:05??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\LCD\FONT.H
?????文件???????83123??2015-04-25?16:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\LCD\ILI93xx.c
?????文件????????7524??2015-04-25?16:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\LCD\lcd.h
?????目錄???????????0??2015-07-31?13:08??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\LED\
?????文件?????????932??2015-01-10?22:23??實(shí)驗(yàn)24?SPI實(shí)驗(yàn)\HARDWARE\LED\led.c
............此處省略113個(gè)文件信息
- 上一篇:諾瓦泰oem-6系列軟件協(xié)議配置文檔
- 下一篇:勒索軟件樣本.zip
評論
共有 條評論