OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 10706|回复: 13

继续提问,关于TF卡的,问题在楼下

[复制链接]

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
发表于 2012-8-17 17:39:30 | 显示全部楼层 |阅读模式
问题是这样的。我自己画了一张板子。把16个数据口分到两组IO口上。跟这份帖子上一样http://www.openedv.com/posts/list/4469.htm,也把对应的IO改了。可是就是白屏。不过串口打印出来的ID是1515。但是在mimi板子上打印出来是1505.然后我把数据口全部输出为0,测试电压均为0。请问有没有人解决过。http://www.openedv.com/posts/list/4469.htm帖子的楼主在吗?+
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-8-17 19:11:50 | 显示全部楼层
拿杜邦线,一个个IO短接,测试一下IO口.
你同时输出GND,这种方法,不能完全测试IO的好坏.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-8-17 20:27:24 | 显示全部楼层
回复【2楼】正点原子:
---------------------------------
发现D4口存在断线。焊好之后读出来的ID是1505。这是对的。可为什么还是白屏呢?可以读出ID,液晶的IO口应该都没有问题了吧
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-8-17 21:11:27 | 显示全部楼层
解决了。#define DATAOUT(x)这里没改好。会出现1515的原因应该也是因为D4口断线。而拔掉液晶。ID为ffff。D4就一直为1.ID不对。自然找不到初始化入口。这样分析对吧
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-8-17 21:14:38 | 显示全部楼层
看看是不是其他IO还有问题,统统测试一下.
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-8-17 21:53:18 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
好的
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-8-17 21:54:09 | 显示全部楼层
怎么论坛上基本只有原子兄在回复问题啊。论坛的互动性不够啊
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-8-19 21:32:49 | 显示全部楼层
回复【5楼】正点原子:

---------------------------------
新问题来了,触摸屏移植的还是比较顺利。不过,每次下载程序后,触摸屏都不能正常工作。在最左上角有点点红色(笔是红色),之后就不能感应到触摸。断电过一会之后在上电就正常了。真搞不懂是什么回事
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-8-20 08:55:45 | 显示全部楼层
回复【8楼】寒寒:
---------------------------------
有没有仿真器可以跟踪一下?
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-8-20 10:13:18 | 显示全部楼层
回复【9楼】正点原子:

---------------------------------
仿真器有的,没想到手工做板怎么麻烦
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-8-22 19:47:30 | 显示全部楼层

回复【9楼】 正点原子 :

---------------------------------
触摸屏弄好了,还是焊接问题。现在有个问题想问原子兄。我把TF卡,VS1003,触摸屏AD接到同一个SPI接口,如果我先控制这三个东西,我应该如何控制呢?
原理图是这样的

                           

  

我简单的把TF卡和触摸屏AD的初始函数发出MAIN里面。TF先初始化则TF卡并可以读出正确的容量。但是触摸屏没法写字。
TF先初始在初始触摸屏。触摸屏中断是正常的。
请问如何解决呢

PS:使用新版的SD卡例程完全可以驱动TF卡。我的512M,显示486M。使用TF卡的同学有福了,不用满街跑

回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165377
金钱
165377
注册时间
2010-12-1
在线时间
2111 小时
发表于 2012-8-22 22:18:06 | 显示全部楼层
回复【11楼】寒寒:
---------------------------------
你这个接法就很不好.
别想什么解决办法了.冲画板才是解决办法.
触摸屏一定要单独占用IO口,不要和别的共用!!!
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-8-23 07:39:18 | 显示全部楼层
 血淋淋的教训啊。画之前没把论坛贴看遍
回复 支持 反对

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
 楼主| 发表于 2012-9-7 21:26:34 | 显示全部楼层
回复【12楼】正点原子:

---------------------------------
最近搞老师给的任务,有个问题很头疼。TF卡来的,他的板子TF卡数据线部分是没有上拉电阻的,驱动是板子例程上的。只是改了CS而已。我之前也在另一张板那里移植过这个驱动,也是TF卡,而且是没问题的。现在在这板上面就有问题了,卡还是同一张卡来的。程序到这个地方就出问题了

u8 SD_WaitReady(void)
{
u32 t=0;
do
{
             if(SD_SPI_ReadWriteByte(0XFF)==0XFF)return 0;//OK
t++;   
}while(t<0XFFFFFF);//等待 
return 1;
}
我用仿真器跟踪了,返回值是0XFF;可是就不是不通过。后来我就把程序改了一下;变成这个样子
u8 SD_WaitReady(void)
{
u32 t=0;
u8 temp;
do
{
temp = SD_SPI_ReadWriteByte(0XFF);
if(temp==0X00)return 0;//OK
t++;   
}while(t<0XFFFFFF);//等待 
return 1;
}
发现一个很怪哉的现象。当我写temp==0X00,仿真器仿真看到temp的值是0xff;
当我temp==0XFF是,仿真器看到的值是0x00。这是怎么一回事呢
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-27 16:45

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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