完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本人小白一枚...春节前购入奋斗的STM32开发板一枚...还有一块4.3寸的TFT屏幕...兴奋之余做点小东西玩.....
芯片是stm32f103ve系列的... 以下是问题描述 我想在tft液晶上显示多行字... 于是写了一个小的demo int main(void) { unsigned short a; RCC_Configuration(); //系统时钟初始化及端口外设时钟使能 GPIO_Configuration(); //状态LED1的初始化 tp_Config(); //SPI1 触摸电路初始化 FSMC_LCD_Init(); //FSMC TFT接口初始化 LCD_Init(); //LCD初始化代码 TFT_CLEAR(0,0,480,272); //清屏 if (SysTick_Config(720)) //时钟节拍中断时10us一次 用于定时 { /* Capture error */ while (1); } for(i=0;i13:30这个字符串显示19行的时候,就发生了这种情况 但是我把iBIGMAX_CHAR_POSX){x=0;y+=24;}//每个高24 if(y>BIGMAX_CHAR_POSY){y=x=0;TFT_CLEAR(0,0,480,272);} TFT_ShowBigChar(262-x,y,*p,color); x+=14; //每个宽14 p++; } } void TFT_ShowBigChar(u16 x,u16 y,u8 num,u16 color) { #define BIGMAX_CHAR_POSX 466 #define BIGMAX_CHAR_POSY 266 u8 temp; u8 pos,t,hang,pos3,flag; if(x>BIGMAX_CHAR_POSX||y>BIGMAX_CHAR_POSY)return; //设定一个字符所占的窗口大小 flag=0; hang=0; pos3=0; num=num-' '; //得到偏移后的值 for(pos=0;pos>8); //起始地址Y LCD_WR_Data(y); LCD_WR_Data(y>>8); //结束地址Y LCD_WR_Data(y); LCD_WR_REG(0x2c); LCD_WR_Data(color); } 是不是内存不足?该怎么解决呢?用什么方法? 我百度了下是不是用dma模块来解决呢?做个乒乓双缓冲什么的?不过显示屏的双缓冲怎么做啊?我是小白....恳求赐教.... ps:怎么在论坛发帖插入代码啊.....这样没有高亮的看起来不方便呢... |
|
相关推荐
5个回答
|
|
图片没显示出来。
|
|
|
|
图片看不到。你最好理解了例程里的源代码后,然后再改写比较好。
|
|
|
|
如果发生的是乱码,可能是因为你操作的Y的坐标超出了屏的实际坐标。
|
|
|
|
|
|
|
|
回复第 4 楼 于2013-02-18 08:52:11发表:
如果发生的是乱码,可能是因为你操作的Y的坐标超出了屏的实际坐标。 不是乱码...是只显示第一行...然后就不显示下面的东西了... |
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
1049 浏览 0 评论
AD7686芯片不传输数据给STM32,但是手按住就会有数据。
1017 浏览 2 评论
2123 浏览 0 评论
如何解决MPU-9250与STM32通讯时,出现HAL_ERROR = 0x01U
1219 浏览 1 评论
hal库中i2c卡死在HAL_I2C_Master_Transmit
1639 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-24 09:12 , Processed in 0.760208 second(s), Total 84, Slave 67 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号