TFT液晶屏实验,用的是MINI板的程序,去掉了串口部分烧录后一直黑屏,其他的没改

qq_42987030 2019-02-01 05:24:36


#include "stm32f10x.h"
#include "./lcd/bsp_ili9341_lcd.h"
#include <stdio.h>

static void LCD_Test(void);
static void Delay ( __IO uint32_t nCount );
void Printf_Charater(void) ;
int main ( void )
{

ILI9341_Init (); //LCD 初始化

USART_Config();
while ( 1 )
{
LCD_Test();
}


}

/*用于测试各种液晶的函数*/
void LCD_Test(void)
{
/*演示显示变量*/
static uint8_t testCNT = 0;
char dispBuff[100];

testCNT++;

LCD_SetFont(&Font8x16);
LCD_SetColors(RED,BLACK);

ILI9341_Clear(0,0,LCD_X_LENGTH,LCD_Y_LENGTH); /* 清屏,显示全黑 */
/********显示字符串示例*******/
ILI9341_DispStringLine_EN(LINE(0),"BH 3.2_2.8 inch LCD para:");
ILI9341_DispStringLine_EN(LINE(1),"Image resolution:240x320 px");
ILI9341_DispStringLine_EN(LINE(2),"ILI9341 LCD driver");
ILI9341_DispStringLine_EN(LINE(3),"XPT2046 Touch Pad driver");

/********显示变量示例*******/
LCD_SetFont(&Font16x24);
LCD_SetTextColor(GREEN);

/*使用c标准库把变量转化成字符串*/
sprintf(dispBuff,"Count : %d ",testCNT);
LCD_ClearLine(LINE(4)); /* 清除单行文字 */

/*然后显示该字符串即可,其它变量也是这样处理*/
ILI9341_DispStringLine_EN(LINE(4),dispBuff);

/*******显示图形示例******/
LCD_SetFont(&Font24x32);
/* 画直线 */

LCD_ClearLine(LINE(4));/* 清除单行文字 */
LCD_SetTextColor(BLUE);

ILI9341_DispStringLine_EN(LINE(4),"Draw line:");

LCD_SetTextColor(RED);
ILI9341_DrawLine(50,170,210,230);
ILI9341_DrawLine(50,200,210,240);

LCD_SetTextColor(GREEN);
ILI9341_DrawLine(100,170,200,230);
ILI9341_DrawLine(200,200,220,240);

LCD_SetTextColor(BLUE);
ILI9341_DrawLine(110,170,110,230);
ILI9341_DrawLine(130,200,220,240);

Delay(0xFFFFFF);

ILI9341_Clear(0,16*8,LCD_X_LENGTH,LCD_Y_LENGTH-16*8); /* 清屏,显示全黑 */

/*画矩形*/
LCD_ClearLine(LINE(4)); /* 清除单行文字 */
LCD_SetTextColor(BLUE);

ILI9341_DispStringLine_EN(LINE(4),"Draw Rect:");

LCD_SetTextColor(RED);
ILI9341_DrawRectangle(50,200,100,30,1);

LCD_SetTextColor(GREEN);
ILI9341_DrawRectangle(160,200,20,40,0);

LCD_SetTextColor(BLUE);
ILI9341_DrawRectangle(170,200,50,20,1);


Delay(0xFFFFFF);

ILI9341_Clear(0,16*8,LCD_X_LENGTH,LCD_Y_LENGTH-16*8); /* 清屏,显示全黑 */

/* 画圆 */
LCD_ClearLine(LINE(4)); /* 清除单行文字 */
LCD_SetTextColor(BLUE);

ILI9341_DispStringLine_EN(LINE(4),"Draw Cir:");

LCD_SetTextColor(RED);
ILI9341_DrawCircle(100,200,20,0);

LCD_SetTextColor(GREEN);
ILI9341_DrawCircle(100,200,10,1);

LCD_SetTextColor(BLUE);
ILI9341_DrawCircle(140,200,20,0);

Delay(0xFFFFFF);

ILI9341_Clear(0,16*8,LCD_X_LENGTH,LCD_Y_LENGTH-16*8); /* 清屏,显示全黑 */

}
static void Delay ( __IO uint32_t nCount )
{
for ( ; nCount != 0; nCount -- );

}
...全文
11629 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
你好小怪兽 2020-12-15
  • 打赏
  • 举报
回复
小白,想问下这个是哪个方针软件
夜雪化寒 2020-11-20
  • 打赏
  • 举报
回复
因为LCD_Init()里有pinft串口输出ID,如果main里不初始化Uart的话,或者先LCD_Init()后Uart_Init(),都会出现下载后无反应;

且初始化串口必须设置系统中断优先级;
yfpc2006 2019-02-15
  • 打赏
  • 举报
回复
原子的程序 串口1,必须要初始化,且正确。不然就是白屏!希望不要和我当初犯的错误一样!!!

5,337

社区成员

发帖
与我相关
我的任务
社区描述
硬件使用专区,欢迎大家讨论硬件相关内容 宝藏!数字IC精品文章收录(CSDN近500篇) http://t.csdn.cn/QbivO
社区管理员
  • 硬件使用社区
  • 张江打工人
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧