当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 8 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 三星S3C2410裸机触控汽车,准备弄成Linux系统的,那才是爷们!
帖子发表于 : 2010-01-29 16:52 

注册: 2010-01-29 16:02
帖子: 6
地址: 南京
送出感谢: 0 次
接收感谢: 0 次
我以前买的优龙的ARM9开发板,感觉学习起来有点难度,放着没有用,后来感觉为了以后换个好工作还是要学的,就硬着头皮学了。光看书,写程序感觉没劲,所以就想做个有趣的玩意,至少可以动起来,所以就改装了一辆遥控汽车,把开发板塞在里面,有用的接口全部引到汽车外壳上,在做一块转接控制板放里面,现在正在写裸机程序,来控制汽车,改装汽车花了不少时间,没有好工具啊,先发点图片,开发板电源芯片烧了拿去修理了,等修好后一起安装好。
附件:
SP_A0167.jpg
SP_A0167.jpg [ 201.78 KiB | 被浏览 1399 次 ]


完整的外型,还没有装好,外壳还可以。
优龙公司办事真慢,我的开发板坏了,等了两个月才拿回来,明明是电源芯片烧了,维修回来说主芯片坏了要交钱100块,深圳就是出山寨货的地方,质量真不咋样,像这块开发板尺寸就很大,勉强能塞进汽车里,而且设计不怎么合理,外接引脚没有一个脉宽调制引脚,要外接的话还要在板子上飞线,我是第一次买开发板,提醒要买开发板的朋友货比三家,不要急着买。
这就是修好的开发板,以后大家使用开发板的时候,一定要小心电源线,不要贪图方便,万一将12V电源搭到板子上,很可能立马玩完!切记!切记!我就是犯过这种不可原谅的错误。
基本加工完的汽车外壳,顶上那个孔本打算安装一个舵机的,上面在安装一个摄像头或者超声波探头什么的,只因为只有一个舵机留给前轮转向机构了才没有安装,车尾是触摸屏和一些接口。
侧面:有JTAG调试接口,USB接口和网络接口(因为开发板是在太大,汽车空间不够,网络延长线不好连接,弄不好又要飞线了)
内部连线很多,基本上都是接到开发板上的,安顺序接好就行了,没什么技术含量。就是要注意绝缘啊,短路就危险了
里面的线全部接上就是这个样子的,很乱的,等把底盘装好就看不到什么线了,现在只是试试尺寸,看可以放进去把。基本上可以放进去,挤也没有办法了。
现在准备调试软件和自己制作的转接控制板,程序用ADS写的,通过串口下载到开发板炙行,先调试了前轮的转向舵机,正常可以受程序控制,改变角度位置,这样就行了,下面还有四个转向灯,以及后轮的驱动电机的速度及转向控制调试,这些外设都是自己改装的,硬件都要自己弄,开发板上的设备以前就是好的,暂时不要测试。
硬件连接好以后,我感觉难的就是写软件了,我打算写一个图形用户界面的裸机程序,不要操作系统的支持,把ARM9当单片机使用(可能有点浪费),但这样可以加深对ARM9硬件机构的认识,学会直接和寄存器打交道,现在板上的串行接口,脉宽调制接口,LCD接口,触摸屏和A/D接口,数字输入输出端口,看门狗模块,实时时钟模块的初始化程序基本写好了,可以访问使用了,还有一些外设还没弄好,比如USB接口,数字音频接口,SD卡接口,FLASH访问接口,DMA模块等的结构还没有弄明白,还是有点难度的。
程序编写方面的困难:引导加载程序的编写,因为板子上有现成的,要搞清楚原理,自己写一个,系统启动的整个过程要弄清楚。如何将自己写的裸机程序固化到FLASH中,如何将FLASH中的程序拷贝到RAM中,从哪里开始执行等等一些问题。
还有就是中断程序的编写(现在程序没有使用中断),中断程序如何拷贝到RAM中,中断时如何跳转进去等等。
经过几个月的摸索,基本上完工了,程序写好了,主要用分散装载的技术,带图形用户界面,实际上还是裸机程序,软件没有操作系统的支持,现在使用触摸屏可以触控汽车了,我把软件挂上来,大家可以看看。我是尽量用简单的结构和数据来写程序的。

以下是我上传的视频,比我敲键盘有用多了,大家可以先看看
http://player.youku.com/player.php/sid/XMTQ0ODk1NzYw/v.swf

程序压缩后2M左右,传上来大家看看。



硬件基本上定下来了,以后打算在车顶装一个超声波测距模块,就可以探测障碍物了,不过要从开发板上找两个数字引脚。优龙开发板真搓,搞了一大堆按钮在开发板上,一点用没有,还占了好多外部中断IO口。
控制前轮的舵机是用定时器0实现的,工作在自动重装模式,产生50HZ PWM波形,占空比可调,对应舵机转轴的位置。改变占空比就改变前轮转向位置,后轮的PWM信号由定时器1产生,频率20000HZ,
后轮的转动方向由一个普通IO引脚控制,四个车灯也是。
实际上开发板上还有好多资源没有使用,像USB设备和主机接口,网络接口等,SD卡接口等,暂时还没有使用到,图形和声音是有了。
程序方面,我现在的程序是烧在NAND-FLASH中的,NOR-FLASH 中是原来优龙的BIOS没有动,从NAND FLASH 启动就进入我自己写的程序,从NOR FLASH 启动就进入WIN CE了。我的程序和WIN CE都是存在NAND FLASH中。
控制程序分两个运行域和装载域,一个运行域是2410芯片内部SRAM的0X00000000开始,还有一个运行域是SDRAM开始地址,在这块开发板中为0X30000000; 一个装载域从NAND FLASH 的0X00000000开始,另一个是从NAND FLASH 的256K处开始。因为我烧写程序是使用NOR FLASH 中的BIOS,它能从这几个地址开始烧程序。程序中已经包含了基本的引导装载功能,所有不用借助其他软件就可以自己启动了。
下部准备移植LINUX操作系统上去,启动能直接进入应用程序。


附件:
文件注释: 俺的工具箱,乱七八糟的,现在硬件基本上好了,下部就开始写软件了,S3C2410功能强大,可以写比较
复杂的程序,还可以外接USB摄像头,也有语音输入,硬件具有图像处理,和语音识别的能力,就看软件了
慢慢弄吧,请大家多发表意见。

SP_A0179.jpg
SP_A0179.jpg [ 260.39 KiB | 被浏览 1399 次 ]

文件注释: 车尾内部接线,很多吧,手工就能这样了。
SP_A0175.jpg
SP_A0175.jpg [ 257.74 KiB | 被浏览 1399 次 ]

文件注释: 刚弄好的控制转接板,上面的L298用来驱动后轮电机,电机两根线插到板子上,前轮舵机也接在上面,还有霍尔传感器,
,四个车灯也通过ULN2003这快芯片控制开关,开发板的扩展接口也接过来,开发板的控制信号就可以传过来了,因为开发板
的接口是3.3V,转接板基本上是5V的芯片,所以串了几个限流电阻,以防万一。

SP_A0173.jpg
SP_A0173.jpg [ 220.78 KiB | 被浏览 1399 次 ]

文件注释: 车尾部接口,后车窗上安装了一块320*240的触摸屏,谢天谢地刚好可以装进去,还有网络接口,调试接口,USB接口,串口,声音输入接口都引
到外壳上了。中间的旋钮是声音大小调节(里面加装了一块声音放大电路板,还装了两个喇叭),黄色的是复位按钮(要连接到开发板才行),
白色的是电源开关。

SP_A0166.jpg
SP_A0166.jpg [ 209.19 KiB | 被浏览 1399 次 ]

文件注释: 后轮驱动机构,右边轮子旁边的白色圆盘上,等间距安装了八个小磁铁,霍尔传感器固定在圆盘旁边的壳上,距离调好就行了。
SP_A0172.jpg
SP_A0172.jpg [ 222.3 KiB | 被浏览 1399 次 ]

文件注释: 底盘结构,前面装了一个舵机控制转向,后面原来就有直流电机加减速器,我在后轮上加装了一个霍尔传感器,用来测速,测距离。
SP_A0171.jpg
SP_A0171.jpg [ 214.05 KiB | 被浏览 1399 次 ]

文件注释: 汽车内部的接线
SP_A0168.jpg
SP_A0168.jpg [ 235.21 KiB | 被浏览 1399 次 ]



最后由 wxgydcg 编辑于 2010-01-30 10:48,总共编辑了 2 次
页首
 用户资料  
 
2 楼 
 文章标题 : Re: 三星S3C2410裸机触控汽车,准备弄成Linux系统的,那才是爷们!
帖子发表于 : 2010-01-29 17:06 

注册: 2008-11-01 21:42
帖子: 1028
地址: 树下板凳
送出感谢: 0 次
接收感谢: 1
不错不错,应该花了不少时间吧 ,支持lz动手
lz有空把制作过程写成文档,代码整理一下发上来 瞧瞧哈


_________________
民族的脊梁,是踏实做事的人,非只知道骂街的泼妇。


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 三星S3C2410裸机触控汽车,准备弄成Linux系统的,那才是爷们!
帖子发表于 : 2010-01-29 19:04 

注册: 2008-01-09 22:41
帖子: 18311
送出感谢: 0 次
接收感谢: 6
niubitily


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 三星S3C2410裸机触控汽车,准备弄成Linux系统的,那才是爷们!
帖子发表于 : 2010-01-29 19:44 
头像

注册: 2008-03-27 17:21
帖子: 206
送出感谢: 0 次
接收感谢: 0 次
:em05 顶就一个字,我只说一次。 :em09


页首
 用户资料  
 
5 楼 
 文章标题 : Re: 三星S3C2410裸机触控汽车,准备弄成Linux系统的,那才是爷们!
帖子发表于 : 2010-02-03 10:56 
头像

注册: 2006-08-25 10:37
帖子: 736
送出感谢: 0 次
接收感谢: 0 次
问一句,使的什么CPU 啊?


页首
 用户资料  
 
6 楼 
 文章标题 : Re: 三星S3C2410裸机触控汽车,准备弄成Linux系统的,那才是爷们!
帖子发表于 : 2010-03-02 19:10 
头像

注册: 2006-08-11 0:44
帖子: 89
送出感谢: 0 次
接收感谢: 0 次
s3c2410.....arm 9 。。。。三星的


_________________
Linux fans,
Research and development


页首
 用户资料  
 
7 楼 
 文章标题 : Re: 三星S3C2410裸机触控汽车,准备弄成Linux系统的,那才是爷们!
帖子发表于 : 2010-03-02 19:16 
头像

注册: 2008-11-21 20:26
帖子: 36913
送出感谢: 1
接收感谢: 36
走召弓虽口阿!


_________________
讨厌我的人可以试着点一下
浏览全部ubuntu技巧


页首
 用户资料  
 
8 楼 
 文章标题 : Re: 三星S3C2410裸机触控汽车,准备弄成Linux系统的,那才是爷们!
帖子发表于 : 2010-04-23 1:24 
头像

注册: 2008-11-01 20:43
帖子: 17328
系统: 自动检测比较好
送出感谢: 44
接收感谢: 11
走召弓虽口阿!


_________________
谁是我?KL.Uiq8 YinMeng


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 8 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译