资料编号188
功能介绍
本系统采用STM32f103单片机通过SPI接口读取sd卡模块中的图片数据。并在单片机为sd卡模块生成fat文件系统。方便读取sd卡中的文件信息。将Bmp格式的图片存放到sd卡的picture文件夹中然后单片机进行Bmp解码将解码信息通过TFT1.8寸的液晶屏显示即可将picture中的图片文件显示出来。按键功能有浏览缩放反转既可以通过按键来切换图片显示并且可以调整图片的大小以及图片的显示方向。本系统采用的技术要点有fat文件系统SPI液晶屏驱动BMP图片解码Sd卡驱动。使用本系统时将Bmp格式的图片放到picture文件夹中即可。
程序源文件 用keil5软件打开
电路图源文件用Altiumdesigner软件打开
下面是部分程序展示
voidLCD_GPIO_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
GPIO_InitStructure.GPIO_PinGPIO_Pin_0|GPIO_Pin_10|GPIO_Pin_1;
GPIO_InitStructure.GPIO_SpeedGPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_ModeGPIO_Mode_Out_PP;
GPIO_Init(GPIOB,GPIO_InitStructure);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);
GPIO_InitStructure.GPIO_PinGPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_7;
GPIO_InitStructure.GPIO_SpeedGPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_ModeGPIO_Mode_Out_PP;
GPIO_Init(GPIOA,GPIO_InitStructure);
}
//向SPI总线传输一个8位数据
void SPI_WriteData(u8Data)
{
unsignedchari0;
for(i8;i0;i--)
{
if(Data0x80)
LCD_SDA_SET;//输出数据
elseLCD_SDA_CLR;
LCD_SCL_CLR;
LCD_SCL_SET;
Data1;
}
}
//向液晶屏写一个8位指令
voidLcd_WriteIndex(u8Index)
{
//SPI写命令时序开始
LCD_CS_CLR;
LCD_RS_CLR;
SPI_WriteData(Index);
LCD_CS_SET;
}
下面是该资料分享下载链接
https://pan.baidu.com/s/1xXhEdZzJc3p1MPWs3I-70w?pwda8kt