改成了两个字节两个字节的读取,并且实现了单向满页控制显示
Signed-off-by: 无闻风 <53944749+wuwenfengmi1998@users.noreply.github.com>
This commit is contained in:
+31
-26
@@ -18,6 +18,9 @@ FATFS SD;
|
||||
|
||||
#define fuck 256
|
||||
|
||||
#define text_size 16
|
||||
#define max_page_y 14
|
||||
#define max_page_x 20
|
||||
int my_main()
|
||||
{
|
||||
uint8_t res;
|
||||
@@ -27,6 +30,14 @@ int my_main()
|
||||
char fuck_buff;
|
||||
uint16_t br=0;
|
||||
char str[fuck+1]={0};
|
||||
|
||||
char dis_text_buff[600];
|
||||
uint16_t page_num=0;
|
||||
char text_buff[2];
|
||||
uint16_t data_num=0;
|
||||
uint16_t page_y=0;
|
||||
uint16_t page_x=0;
|
||||
|
||||
LCD_BL(0);
|
||||
LCDx_Init();
|
||||
LCD_Clear(GRAY);
|
||||
@@ -53,37 +64,31 @@ int my_main()
|
||||
HAL_Delay(10);
|
||||
while(KEY_UP==0);
|
||||
LCD_Clear(WHITE);
|
||||
for(int a=0;a<fuck+1;a++)
|
||||
page_num++;
|
||||
data_num=0;;
|
||||
for(page_y=0;page_y<max_page_y;page_y++)
|
||||
{
|
||||
fil_buff[a]=0;
|
||||
str[a]=0;
|
||||
}
|
||||
|
||||
if(fuck_flag==1)
|
||||
{
|
||||
fuck_flag=0;
|
||||
res=f_read(&fil,fil_buff,fuck-1,(UINT*)&br);
|
||||
for(int a=fuck-2;a>0;a--)
|
||||
for(page_x=0;page_x<max_page_x;page_x++)
|
||||
{
|
||||
fil_buff[a+1]=fil_buff[a];
|
||||
f_read(&fil,text_buff,2,(UINT*)&br);
|
||||
dis_text_buff[data_num]=text_buff[0];
|
||||
dis_text_buff[data_num+1]=text_buff[1];
|
||||
data_num+=2;
|
||||
|
||||
if((text_buff[0]=='\n')||(text_buff[1]=='\n'))
|
||||
{
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
fil_buff[0]=fuck_buff;
|
||||
|
||||
}else
|
||||
{
|
||||
res=f_read(&fil,fil_buff,fuck,(UINT*)&br);
|
||||
}
|
||||
dis_text_buff[data_num]='\0';
|
||||
dis_text_buff[data_num+1]='\0';
|
||||
dis_text_buff[data_num+2]='\0';
|
||||
LCD_ShowString(0,0,dis_text_buff,16,WHITE,BLACK,data_num);
|
||||
|
||||
if((fil_buff[fuck-1]>127)&&(fil_buff[fuck-2]<128))
|
||||
{
|
||||
fuck_buff=fil_buff[fuck-1];
|
||||
fil_buff[fuck-1]='\0';
|
||||
fuck_flag=1;
|
||||
|
||||
}
|
||||
|
||||
sprintf(str,"%s\0",fil_buff);
|
||||
LCD_ShowString(0,0,str,16,WHITE,BLACK,fuck);
|
||||
sprintf(str,"µÚ%dÒ³",page_num);
|
||||
LCD_ShowString(0,14*16,str,16,RED,BLACK,fuck);
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user