极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 28175|回复: 15

2.2" TFT SPI显示屏无法读SD卡中图片

[复制链接]
发表于 2013-12-17 10:05:58 | 显示全部楼层 |阅读模式
各位大神:
我有一个ili9341驱动的2.2" TFT SPI显示屏,淘宝http://item.taobao.com/item.htm?id=35667273494
用这个library自带的例子也基本能实现,https://github.com/gmtii/ili9341-arduino

但是最后一个也是很关键的,tftbmp的例子实现不了,把例子烧到板子上后,TFT屏幕不亮,且串口输出乱码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

 楼主| 发表于 2013-12-17 10:08:23 | 显示全部楼层
求有相关使用经验的大哥大姐给点指导或意见吧~~
@弘毅。。。@不了啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-17 10:12:59 | 显示全部楼层
以下代码测试TFT显示正常,sd卡中的txt文件也能正常读取。
只是有个函数readID返回值有误,可能是控制芯片的原因?
  1. #include <TFTv2.h>
  2. #include <SPI.h>
  3. #include <SD.h>

  4. const int chipSelect = 8;

  5. void setup()
  6. {
  7. // Open serial communications and wait for port to open:
  8.   Serial.begin(9600);

  9.   Serial.print("Initializing SD card...");
  10.   // make sure that the default chip select pin is set to
  11.   // output, even if you don't use it:
  12.   pinMode(10, OUTPUT);
  13.   
  14.   // see if the card is present and can be initialized:
  15.   if (!SD.begin(chipSelect)) {
  16.     Serial.println("Card failed, or not present");
  17.     // don't do anything more:
  18.     return;
  19.   }
  20.   Serial.println("card initialized.");
  21.   
  22.   // open the file. note that only one file can be open at a time,
  23.   // so you have to close this one before opening another.
  24.   File dataFile = SD.open("Textfile.txt");

  25.   // if the file is available, write to it:
  26.   if (dataFile)
  27.   {
  28.     while (dataFile.available()) {
  29.       Serial.write(dataFile.read());
  30.     }
  31.   }  
  32.   // if the file isn't open, pop up an error:
  33.   else {
  34.     Serial.println("error opening datalog.txt");
  35.   }

  36.     TFT_BL_ON;      // turn on the background light
  37.     Tft.TFTinit();  // init TFT library
  38.    
  39.     Tft.drawChar('S',0,0,1,RED);                // draw char: 'S', (0, 0), size: 1, color: RED
  40.    
  41.     Tft.drawChar('E',10,10,2,BLUE);             // draw char: 'E', (10, 10), size: 2, color: BLUE
  42.    
  43.     Tft.drawChar('E',20,40,3,GREEN);            // draw char: 'E', (20, 40), size: 3, color: GREEN
  44.    
  45.     Tft.drawChar('E',30,80,4,YELLOW);           // draw char: 'E', (30, 80), size: 4, color: YELLOW
  46.    
  47.     Tft.drawChar('D',40,120,4,YELLOW);          // draw char: 'D', (40, 120), size: 4, color: YELLOW
  48.    

  49.     Tft.drawString("Hello",0,180,3,CYAN);       // draw string: "hello", (0, 180), size: 3, color: CYAN
  50.    
  51.     Tft.drawString("World!!",60,220,4,WHITE);    // draw string: "world!!", (80, 230), size: 4, color: WHITE
  52.    

  53.     dataFile.close();
  54.   
  55. }

  56. void loop()
  57. {
  58. }
复制代码
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-17 20:23:52 | 显示全部楼层
这里真的没有人有过类似研究么?求助啊
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-18 22:02:07 | 显示全部楼层
真的没人啊。。。算了
回复 支持 反对

使用道具 举报

发表于 2013-12-19 13:33:04 | 显示全部楼层
{:soso_e103:}bmp的没弄过,难道是内存爆了?
回复 支持 反对

使用道具 举报

发表于 2014-2-11 18:48:03 来自手机 | 显示全部楼层
楼主,这个屏和MEGA2560怎么接线,我怎么弄也不行啊,只有白屏,没有任何反应。
回复 支持 反对

使用道具 举报

发表于 2014-2-15 23:32:33 | 显示全部楼层
library页面下面有接线说明
回复 支持 反对

使用道具 举报

发表于 2014-2-16 18:13:56 | 显示全部楼层
既然TFT及SD均運行正常,硬件看來應是正常的,軟件也是標準參考,應也不會有多大的問題,串口的怪符號應是一個線索,能令串口出現此等怪符號,其中一個可能是波特率不對,但圖上明顯顯示是在9600,另一可能是選錯板,造成編譯後的真正運行波特率不對,這點要先確認排除。另一可能就是電壓過低,也應檢查。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-3-2 11:36:27 | 显示全部楼层
eddiewwm 发表于 2014-2-16 18:13
既然TFT及SD均運行正常,硬件看來應是正常的,軟件也是標準參考,應也不會有多大的問題,串口的怪符號應是一 ...

什么叫选错板?另外电压过低倒是有可能
回复 支持 反对

使用道具 举报

发表于 2014-3-2 13:14:30 | 显示全部楼层
jayhe 发表于 2014-3-2 11:36
什么叫选错板?另外电压过低倒是有可能

意思就是:先確認所用的Arduino板和 IDE所選的不一致。這個可先用一純串口測試程序(即不涉及任何TFT及SD碼)單獨運行來確認。
回复 支持 反对

使用道具 举报

发表于 2014-3-25 16:20:51 | 显示全部楼层
请问,我用的UNO。4RESET,5CS,6D/C,7LED,11MOSI,12MISO,13SCK,加上VCC和GND,下了库,使用示例里的程序,要么白屏,要么黑屏。求解
回复 支持 反对

使用道具 举报

发表于 2014-11-14 15:27:27 | 显示全部楼层
双月临空 发表于 2014-3-25 16:20
请问,我用的UNO。4RESET,5CS,6D/C,7LED,11MOSI,12MISO,13SCK,加上VCC和GND,下了库,使用示例里的程序 ...

我用的nano 也是这样的情况,不知道你解决了吗?求指导
回复 支持 反对

使用道具 举报

发表于 2014-12-4 14:09:32 | 显示全部楼层
CN-P5 发表于 2014-11-14 15:27
我用的nano 也是这样的情况,不知道你解决了吗?求指导

要加电平转换芯片(CD4050)
回复 支持 反对

使用道具 举报

发表于 2014-12-5 00:20:58 | 显示全部楼层
本帖最后由 -Echo 于 2014-12-5 15:17 编辑

问下楼主,SD卡的SPI会不会与液晶冲突?不知道我理解的对不
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-9 01:06 , Processed in 0.049078 second(s), 26 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表