打印
[活动]

智能倒车镜(一)

[复制链接]
900|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yangaichimantou|  楼主 | 2016-9-14 16:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 yangaichimantou 于 2016-9-14 16:18 编辑

LPC54102没有sdio接口,只能用spi方式,fatfs的移植基本上修改ffconf.h中的配置,改写一些接口函数,就可以。比较偷懒的都是用其他人写好的一些初始化函数,基本上都可以使用了。网上的教程也比较多。涉及到fatfs,分享一下,我自己写的关于如何自动收集图片,并自动分开分开路径的一个状态机写法。
考虑到lpc54102的性能,我打算收集显示,摄像头的图像时,间隔性的保存一些图片。
主要代码
char Pathdir[10]="0:/MPU";
char PathS[20]="data";
char PathE[5]=".dat";
char Path[20];

void Data_Collect_Exe()
{
         switch(state_flag)
        {
                case 1:        //预处理状态
                {

                        res=f_open(file,Path,FA_READ|FA_WRITE|FA_OPEN_ALWAYS);//设置文件
                        
                        numOfPage=0;//
                        capture_num=0;//
                        state_flag=2;//进入状态2
                        break;
                }
                case 2:        //
                {
                        Data_collect();

                                                /*
                                       
                                                */
                                pointer=numOfGroup*numOfPage*4;//设置指针位置
                                f_lseek(file,pointer);//
                                f_write(file,Data_collect,numOfGroup*4,&Number);

                                numOfPage++;
                    if(numOfPage>495)
                                {
                                        f_close(file);
               
          File_number++;
                sprintf(FIlE_NUMBER,"%d",File_number);//设置路径号,这里关键是转化为字符串格式
                sprintf((char *)Path,"%s/%s%s%s",Pathdir,PathS,FIlE_NUMBER,PathE);//自动定义出新的路径
                                        state_flag=1;
                                }
                        break;
                }
                case 3://
                {

                        f_close(file);//保存文件,3的进入口在其他中断函数中

                        numOfPage=0;
                        state_flag=4;//实际上跳出状态机。
                        break;
                }
               
                default: break;        
        }
        

}
完整的文件,等这个项目,做完了,分享给大家。
当然,最大的困难还是摄像头图像显示的实时性和保存视频上。

相关帖子

沙发
yangaichimantou|  楼主 | 2016-9-14 16:19 | 只看该作者
Lpc54102开发板到了一个多星期,之前不熟悉这款芯片,查了些资料,发现这款产品做些多任务的控制任务,还是挺好的,毕竟双核嘛。
可是老实说,做一个智能后视镜,这个让我在选型的时候,很是有点愁。
M4内核对于图像传输,不是很擅长。但是,时间够,多试试吧。摄像头模块先采用OV7670,非常经典,之前用过,但是直接显示,刷液晶屏,应该是很吃力,打算在算法上动动脑筋,实在不行,只能改一个型号,或者借助一些图像处理芯片。
采用sd卡,存储,选择用spi模式的micro sd卡。
手边有一个正点原则的tftlcd,先用他这款并口lcd作为液晶显示。
今天,第一次发帖,先搞一个lpc54102+fatfs+sd卡操作吧。
FATFS,在需要做图像存储的时候,必须的。
先简单介绍下。
FatFs是一个通用的文件系统模块,用于在小型嵌入式系统中实现FAT文件系统。 FatFs 的编写遵循ANSI C,因此不依赖于硬件平台。它可以嵌入到便宜的微控制器中,如 8051, PIC, AVR, SH, Z80, H8, ARM 等等,不需要做任何修改。
这个是百度上的说法,个人觉得移植完成之后,对于fread,fopen这些函数,熟悉用法和注意点,就可以非常方便的使用了。
其中funlink的用法,要注意的一点是,文件可以直接删除,但是如果是,目录文件夹,必须删除文件夹,才可以清空,新手容易犯的错误。

使用特权

评论回复
板凳
yangaichimantou|  楼主 | 2016-9-14 16:20 | 只看该作者
还有一个图片没上传,下次一起发吧。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

22

帖子

1

粉丝