資源簡介
STM32F103 讀取SD卡中的圖片TFT彩屏顯示C程序,程序包含編譯全部內容,可直接使用

代碼片段和文件信息
/*
*************************************************
*?Filename?????:24C02存儲
*?Writer???????:張紀寬
*?Date?????????:2011/10/20
*?Description??:
************************************************
*/
/*
**********************************************??
*?????????????INCLUDE
**********************************************
*/
#include?“24cxx.h“?
#include?“delay.h“?
//初始化IIC接口
void?AT24CXX_Init(void)
{
IIC_Init();
}
//在AT24CXX指定地址讀出一個數據
//ReadAddr:開始讀數的地址??
//返回值??:讀到的數據
//該函數用于讀出8bit的數據
u8?AT24CXX_ReadOneByte(u16?ReadAddr)
{ ??
u8?temp=0; ?? ???? ?
????IIC_Start();//開始信號?必須有??
if(EE_TYPE>AT24C16)
{
IIC_Send_Byte(0XA0); ???//發送寫命令
IIC_Wait_Ack();
IIC_Send_Byte(ReadAddr>>8);//發送高地址 ????
}else?IIC_Send_Byte(0XA0+((ReadAddr/256)<<1));???//發送器件地址0XA0寫數據? ???
IIC_Wait_Ack();?
????IIC_Send_Byte(ReadAddr%256);???//發送低地址
IIC_Wait_Ack(); ????
IIC_Start();?? ? ???
IIC_Send_Byte(0XA1);???????????//進入接收模式 ???
IIC_Wait_Ack(); ?
????temp=IIC_Read_Byte(0); ???
????IIC_Stop();//產生一個停止條件 ????
return?temp;
}
//在AT24CXX指定地址寫入一個數據
//WriteAddr??:寫入數據的目的地址????
//DataToWrite:要寫入的數據
//該函數用于寫入常速為8bit的數據
void?AT24CXX_WriteOneByte(u16?WriteAddru8?DataToWrite)
{ ??? ?? ???? ?
????IIC_Start();??
if(EE_TYPE>AT24C16)
{
IIC_Send_Byte(0XA0); ????//發送寫命令
IIC_Wait_Ack();
IIC_Send_Byte(WriteAddr>>8);//發送高地址 ??
}else?IIC_Send_Byte(0XA0+((WriteAddr/256)<<1));???//發送器件地址0XA0寫數據? ?
IIC_Wait_Ack(); ???
????IIC_Send_Byte(WriteAddr%256);???//發送低地址
IIC_Wait_Ack();? ? ?? ???
IIC_Send_Byte(DataToWrite);?????//發送字節 ???
IIC_Wait_Ack();?? ???? ???
????IIC_Stop();//產生一個停止條件?
delay_ms(10); ?
}
//在AT24CXX里面的指定地址開始寫入長度為Len的數據
//該函數用于寫入16bit或者32bit的數據.
//WriteAddr??:開始寫入的地址??
//DataToWrite:數據數組首地址
//Len????????:要寫入數據的長度24
void?AT24CXX_WriteLenByte(u16?WriteAddru32?DataToWriteu8?Len)
{??
u8?t;
for(t=0;t {
AT24CXX_WriteOneByte(WriteAddr+t(DataToWrite>>(8*t))&0xff);
} ????
}
//在AT24CXX里面的指定地址開始讀出長度為Len的數據
//該函數用于讀出16bit或者32bit的數據.
//ReadAddr???:開始讀出的地址?
//返回值?????:數據
//Len????????:要讀出數據的長度24
u32?AT24CXX_ReadLenByte(u16?ReadAddru8?Len)
{??
u8?t;
u32?temp=0;
for(t=0;t {
temp<<=8;
temp+=AT24CXX_ReadOneByte(ReadAddr+Len-t-1);? ? ???
}
return?temp; ????
}
//檢查AT24CXX是否正常
//這里用了24XX的最后一個地址(255)來存儲標志字.
//如果用其他24C系列這個地址要修改
//返回1:檢測失敗
//返回0:檢測成功
u8?AT24CXX_Check(void)
{
u8?temp;
temp=AT24CXX_ReadOneByte(255);//避免每次開機都寫AT24CXX ???
if(temp==0X55)return?0; ???
else//排除第一次初始化的情況
{
AT24CXX_WriteOneByte(2550X55);
????temp=AT24CXX_ReadOneByte(255); ??
if(temp==0X55)return?0;
}
return?1; ??
}
//在AT24CXX里面的指定地址開始讀出指定個數的數據
//ReadAddr?:開始讀出的地址?對24c02為0~255
//pBuffer??:數據數組首地址?也就是讀出數據存放的地址
//NumToRead:要讀出數據的個數
void?AT24CXX_Read(u16?ReadAddru8?*pBufferu16?NumToRead)
{
while(NumToRead)
{
*pBuffer++=AT24CXX_ReadOneByte(ReadAddr+
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????19214??2011-12-03?19:41??20?圖片顯示&SD\SD卡中的圖片顯示\FAT\FAT.C
?????文件??????11942??2011-12-03?19:41??20?圖片顯示&SD\SD卡中的圖片顯示\FAT\FAT.H
?????文件???????3800??2011-11-26?14:51??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\24CXX\24cxx.c
?????文件???????1121??2011-11-25?21:56??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\24CXX\24cxx.h
?????文件???????2690??2011-11-26?14:05??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\24CXX\myiic.c
?????文件????????992??2011-11-26?14:26??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\24CXX\myiic.h
?????文件???????2939??2011-11-22?17:48??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\ADC\adc.c
?????文件????????291??2011-11-22?17:26??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\ADC\adc.h
?????文件???????1814??2011-11-24?22:03??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\DMA\dma.c
?????文件????????285??2011-11-24?19:41??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\DMA\dma.h
?????文件???????2614??2011-09-21?18:31??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\EXTI\exti.c
?????文件?????????98??2011-09-20?18:02??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\EXTI\exti.h
?????文件???????8734??2011-11-27?20:41??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\FLASH\flash.c
?????文件???????1524??2011-11-27?20:36??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\FLASH\flash.h
?????文件????????309??2011-11-24?20:08??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\KEY\key.c
?????文件????????184??2011-11-24?20:08??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\KEY\key.h
?????文件??????16155??2010-06-21?11:18??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LCD\ASCII.H
?????文件???????9751??2011-12-04?14:12??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LCD\HZ.h
?????文件???????1431??2010-12-08?15:26??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LCD\hz16.c
?????文件????????795??2011-10-23?15:02??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LCD\hz16.h
?????文件??????31896??2011-12-04?14:47??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LCD\ILI93xx.c
?????文件???????9417??2011-11-20?13:50??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LCD\ILI93xx.h
?????文件???????8088??2011-01-26?20:55??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LCD\LCD.h
?????文件????????795??2011-11-08?21:41??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LED\led.c
?????文件????????158??2011-10-18?21:40??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\LED\led.h
?????文件???????2987??2011-12-02?18:06??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\PS2\mouse.c
?????文件???????1641??2011-12-02?18:06??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\PS2\mouse.h
?????文件???????6063??2011-12-02?18:06??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\PS2\ps2.c
?????文件???????1283??2011-12-02?20:25??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\PS2\ps2.h
?????文件???????8323??2011-11-09?22:04??20?圖片顯示&SD\SD卡中的圖片顯示\HARDWARE\RTC\rtc.c
............此處省略408個文件信息
- 上一篇:ionic手機框架模板
- 下一篇:Rust 程序設計語言第二版 簡體中文版
評論
共有 條評論