智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 3635|回复: 11
打印 上一主题 下一主题

K60的ccd读取数据问题

[复制链接]

3

主题

35

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
442
威望
218
贡献
154
兑换币
142
注册时间
2014-10-1
在线时间
35 小时
毕业学校
武汉大学
跳转到指定楼层
1#
发表于 2014-10-17 20:00:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
为什么我用k60的ccd读数据,用UART传回的数据与我用程序直接显示在液晶上的不一样?UART传回的数据基本是满值,而液晶的值一直在跳。我都不知道怎么处理了,求大神告诉我怎么直接用bdm看程序运行时的数据啊。
回复

使用道具 举报

2

主题

321

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3737
威望
1811
贡献
1188
兑换币
1144
注册时间
2014-2-17
在线时间
369 小时
毕业学校
非常小学
2#
发表于 2014-10-17 21:42:22 | 只看该作者
不是很方便   建议你检查下变量是否有错误  如果使用测试历程那么也只剩下接线问题了 一般来说他只有3根线不容易出问题  
回复 支持 反对

使用道具 举报

1

主题

293

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3329
威望
1699
贡献
954
兑换币
920
注册时间
2012-3-5
在线时间
339 小时
3#
发表于 2014-10-17 22:35:02 | 只看该作者
先看看你没发之前的数据对不对
回复 支持 反对

使用道具 举报

1

主题

29

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2844
威望
1338
贡献
826
兑换币
881
注册时间
2013-11-10
在线时间
340 小时
毕业学校
bupt
4#
发表于 2014-10-18 11:53:14 | 只看该作者
会不会是串口传的时候把曝光时间延长了
回复 支持 反对

使用道具 举报

14

主题

876

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
5811
威望
3006
贡献
1961
兑换币
1991
注册时间
2013-2-28
在线时间
422 小时
5#
发表于 2014-10-18 19:02:57 | 只看该作者
楼上+1,注意看一下CCD的时序,曝光时间不会被串口延长了吧?以前我也吃过这个亏
回复 支持 反对

使用道具 举报

3

主题

35

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
442
威望
218
贡献
154
兑换币
142
注册时间
2014-10-1
在线时间
35 小时
毕业学校
武汉大学
6#
 楼主| 发表于 2014-10-20 17:31:50 | 只看该作者
纯洁@麻花 发表于 2014-10-17 22:35
先看看你没发之前的数据对不对

如何看呢?k60最大的问题就是我现在不能通过bdm直接看程序运行时的各个数据了,求教啊啊啊QAQ
回复 支持 反对

使用道具 举报

3

主题

35

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
442
威望
218
贡献
154
兑换币
142
注册时间
2014-10-1
在线时间
35 小时
毕业学校
武汉大学
7#
 楼主| 发表于 2014-10-20 17:39:23 | 只看该作者
黑色枫夜 发表于 2014-10-18 19:02
楼上+1,注意看一下CCD的时序,曝光时间不会被串口延长了吧?以前我也吃过这个亏

我想过这个问题。。。。但是我不知道曝光时间是哪个。。。大神能帮我看看么
void RD_TSL(void)
{
    uint8 i = 0, tslp = 0;
    TSL_CLK = 1;                      //起始电平高

    TSL_SI = 0;        //起始电平低

    DelayUs(1);        //合理的延时      
    TSL_SI = 1;       //上升沿

    TSL_CLK = 0;      //下降沿

    DelayUs(1);        //合理的延时     
    TSL_CLK = 1;     //上升沿

    TSL_SI = 0;        //下降沿

    DelayUs(1); //合理的延时      
    for (i = 0; i<128; i++)
    {
        TSL_CLK = 0;        //下降沿   
        DelayUs(1);          //合理的延时
        
        //ADV[tslp] = LPLD_ADC_Get(ADC0, AD8);
        //ADV[tslp] = LPLD_ADC_Get(ADC0, AD9);

        ADV = LPLD_ADC_Get(ADC0, AD13);          //读取ccd的数据并赋值到ADV数组里面
        //ADV[tslp] = LPLD_ADC_Get(ADC0, AD12);
            temp=ADV;
        ++tslp;
        TSL_CLK = 1;        //上升沿
        DelayUs(1);       //合理的延时  
    }
    TSL_CLK = 0;

    DelayUs(1);
    TSL_CLK = 1;

    DelayUs(1);
    TSL_CLK = 0;

    DelayUs(1);
}

回复 支持 反对

使用道具 举报

1

主题

293

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3329
威望
1699
贡献
954
兑换币
920
注册时间
2012-3-5
在线时间
339 小时
8#
发表于 2014-10-20 17:44:54 | 只看该作者
本帖最后由 纯洁@麻花 于 2014-10-20 17:46 编辑
柳帅 发表于 2014-10-20 17:31
如何看呢?k60最大的问题就是我现在不能通过bdm直接看程序运行时的各个数据了,求教啊啊啊QAQ

IAR有在线调试啊。。。LIVE WATCH。。。CW也有啊。。。
回复 支持 反对

使用道具 举报

1

主题

293

帖子

0

精华

常驻嘉宾

Rank: 8Rank: 8

积分
3329
威望
1699
贡献
954
兑换币
920
注册时间
2012-3-5
在线时间
339 小时
9#
发表于 2014-10-20 17:46:02 | 只看该作者
柳帅 发表于 2014-10-20 17:39
我想过这个问题。。。。但是我不知道曝光时间是哪个。。。大神能帮我看看么
void RD_TSL(void)
{

曝光时间是你本次SI开始到下一次SI开始啊。。。简单说就是你执行两次这段代码的间隔时间
回复 支持 反对

使用道具 举报

3

主题

35

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
442
威望
218
贡献
154
兑换币
142
注册时间
2014-10-1
在线时间
35 小时
毕业学校
武汉大学
10#
 楼主| 发表于 2014-10-20 17:48:48 | 只看该作者
纯洁@麻花 发表于 2014-10-20 17:46
曝光时间是你本次SI开始到下一次SI开始啊。。。简单说就是你执行两次这段代码的间隔时间

哦哦!我去看看!谢谢!QAQ
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2025-1-8 00:58 , Processed in 0.138649 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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