s3c2440真是块硬骨头!
s3c2440学习了半年了。感觉这块骨头很硬,不大好学。大家是怎么学的。 今年大四,寒假不回家了,打算闭关学习,再学不好,就放弃了,搞单片机加模拟电路去了。 悲壮啊,2440别人啃的渣都不剩了{:dizzy:} cht-rtos 发表于 2014-1-1 15:28悲壮啊,2440别人啃的渣都不剩了
谁啃得,我都是自己学的, 草, 以后不从头到尾敲代码了,看看原理懂了,就行了,几千行代码,敲下来,不是这里错,就是那里错。 好好学,学生嘛,有的是时间。 rmdyj 发表于 2014-1-1 15:34
好好学,学生嘛,有的是时间。
看到那么多的代码,我都害怕。真心的害怕。。。。。。 不是吧,2440还是挺好玩的,刷个干净的linux系统进去,挂nfs到上位机,慢玩linux编程都不知道多爽。 我感觉我的牙都被绷断了!!!! 先试试裸奔,先当单片机跑,一上来跑linux,起点太高不好理解,容易打消积极性,等裸奔一段时间后慢慢的就逼自己上系统了跑了 hl1200 发表于 2014-1-1 15:42
不是吧,2440还是挺好玩的,刷个干净的linux系统进去,挂nfs到上位机,慢玩linux编程都不知道多爽。 ...
请教下,你是怎么学习的。我现在还在裸奔。 armfans 发表于 2014-1-1 15:42
先试试裸奔,先当单片机跑,一上来跑linux,起点太高不好理解,容易打消积极性,等裸奔一段时间后慢慢的就 ...
lcd还没跑起来呢,不亮了。我刚打算去实验室休息来,想了想,又坐下了。元旦啊,我刚从实验室回来,一个人也没有。 这种东西如果完全自学,确实会令人崩溃,搭建开发环境可能就会消耗掉一周时间,然后在学习过程中会遇到各种莫名其妙的问题,可能一个月都理不出头绪,而如果有过来人指点一下的话,可能一天就把基本学习环境搭建好了,少走很多很多很多很多很多很多弯路。 煮酒fu 发表于 2014-1-1 15:43
请教下,你是怎么学习的。我现在还在裸奔。
买板时里面应该有linux系统的,bootloader先不要动它,用ssh或者串口把它当台电脑玩,
其实linux很多东西都是通用的,程序也很丰富,基本都是下载修改编译就可以跑了。
等熟悉了以后再慢慢深入驱动,内核之类的底层。
如果当单片机玩,一个bootloader就可以把你搞崩溃。 当初就是按照单片机学习的。Bootloader uboot 这些真实搞死人呀,特别是不同厂家的启动引导方式还不一样。ATMEL的真够繁琐的。不但要知道Linux的启动方式,还要结合芯片厂家的特点进行分析。艹! 韦老师那个教程,我一直都觉得是个坑,专带你往墙上撞,打击你的自信心,最后交钱去培训。
能用2440做bt下载机,把苍老师下到u盘里,你就成功了一半! 搞单片机(51,stm32,m3,m0)工业电子+数电 慢慢啃,有空研究下别人的程序,玩多了,总会有懂的一天 hl1200 发表于 2014-1-1 17:07
韦老师那个教程,我一直都觉得是个坑,专带你往墙上撞,打击你的自信心,最后交钱去培训。
能用2440做bt下 ...
严重同意 裸奔可不是一般人能玩的
不过裸好了,确实学的深入。
2440本来就是要跑OS的,裸奔更繁琐,也发挥不了完全的性能。
先从现成OS环境玩起,从应用一步一步深入到内核模块、驱动,再到bootloader,最后才是裸奔或自己写RTOS,这时基本上就驾轻就熟了。 千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西你越学月糊涂。
不妨从应用搞起,先做做基础的多线程、网络编程,然后你会发现你的程序架构有点乱,好多函数都是在代码中来回调用没有规则,你就会去发现一些诸如模块化程序设计、多线程之间消息传递的一些东西。
再后来你会发现其实好多程序并不是一个while(1)循环的做一些事,而是好多个while(1)协同工作,各个while(1)之间通过消息或事件相互作用。
再后来你会发现不用像单片机那样把配置数据写到e方里或是外部spiflash里,而是可以open一个文件来读写数据,再后来你会发现文件管理很麻烦,你会找到一个叫做sqlite的嵌入式数据库来保存你的数据。
再后来你可能会觉得C程序还是有点乱,稍大的工程就会难以维护,你可能会尝试一下面向对象的C++,甚至你会尝试跑个JAVA虚拟机来弄几个JAVA程序,你又会发现,原来所谓的“框架”编程是这么的方便。
最后你会感叹,原来不会移植bootloader不会剪裁内核、不会构造文件系统也可以设计嵌入式程序。
lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
+1
lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
+10086 值得考虑 hl1200 发表于 2014-1-1 17:07
韦老师那个教程,我一直都觉得是个坑,专带你往墙上撞,打击你的自信心,最后交钱去培训。
能用2440做bt下 ...
买板子提供的linux装个transmission-daemon不就可以把苍老师下载到U盘里面了么。
除非指的是自己重头移植linux啥的。 lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
太赞了~~~ Ross_Geller 发表于 2014-1-1 16:20
这种东西如果完全自学,确实会令人崩溃,搭建开发环境可能就会消耗掉一周时间,然后在学习过程中会遇到各种 ...
是的。我看韦东山的uboot写了一个月,没写成功。哭死了。。。 gzhuli 发表于 2014-1-1 17:43
2440本来就是要跑OS的,裸奔更繁琐,也发挥不了完全的性能。
先从现成OS环境玩起,从应用一步一步深入到内 ...
谢谢。我看了大家的回复恍然大悟啊。 lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
我尝试下吧。按照您说的。 个人觉得uboot到内核搞起太累人了。搞得我一看到这玩意就害怕啊。真的。 gzhuli 发表于 2014-1-1 17:43
2440本来就是要跑OS的,裸奔更繁琐,也发挥不了完全的性能。
先从现成OS环境玩起,从应用一步一步深入到内 ...
早就改来问问大神们了。这样大致有方向了。。。。 我决定了,嵌入式水太深了。我还是搞下位机吧,寒假继续深入模拟电路与stm32. 手头上还有个飞控没调好。 再学s3c2440就是找罪受。 因为我觉得自己闷头学根本就学不会啊。有那时间我学别的早就学的很好了。 等工作了 再说吧。嵌入式,我想说,爱你真的好难。 楼上说的都很对
千万从应用入门, 当年我也是从CE的应用 最简单的IO 和串口做起,再做驱动, 后来到移植EBOOT和启动EBOOT UBOOT的代码一行一行看,
因为有了基础,然后又正向 从UBOOT到LINUX 内核驱动 到QT做。。。。。
一进门就搞引导 和UBOOT肯定头大, 特别楼主连STM32都还玩不转 boyiee 发表于 2014-1-1 21:53
楼上说的都很对
千万从应用入门, 当年我也是从CE的应用 最简单的IO 和串口做起,再做驱动, 后来到移植EB ...
谢谢指导。早点来请教大家就好了。寒假先玩stm32吧。
当然
本帖最后由 armfans 于 2014-1-1 22:31 编辑楼上各位说的也满有道理,可能ARM9上裸奔更麻烦,不如直接上系统来的直接,我也是刚用ARM9做项目,以前都是STM32,开始也打算上linux,看了几天相关的资料和教程,环境系统的搭建,驱动开发和图形界面,估计没个半年搞不定,决定按着STM32的开发方式做ARM9,论坛上也有2440裸奔的MDK项目,结合三星的demo程序也就是无系统的示例代码,现在除了usb主机部分和网络没有操作系统不好弄,其他都可以跑起来了,现在准备着手学习linux了,感觉比刚开始接触时思路清晰多了也有信心了。STM32开发现在简单多了,是因为ST提供了驱动库,三星啥也没有,所以裸奔起来难度要大些。当然,ARM9不是简单的高级单片机,最终还是要上系统的。 hl1200 发表于 2014-1-1 17:07
韦老师那个教程,我一直都觉得是个坑,专带你往墙上撞,打击你的自信心,最后交钱去培训。
能用2440做bt下 ...
说的是,开始也是看的那个视频,一上来就讲uboot,看的云里雾里的,其实有点用处是后面付费的那两个,讲驱动开发和项目。 armfans 发表于 2014-1-1 22:36
说的是,开始也是看的那个视频,一上来就讲uboot,看的云里雾里的,其实有点用处是后面付费的那两个,讲 ...
你直接看驱动能看得懂吗?我买了还没看呢.我想先看前面的。 直接看后面的能看懂吗? Ross_Geller 发表于 2014-1-1 16:20
这种东西如果完全自学,确实会令人崩溃,搭建开发环境可能就会消耗掉一周时间,然后在学习过程中会遇到各种 ...
我当时搭建环境就疯了。 lz是将来想做固件工程师?没目的的学习不可取啊,必须有针对性的取舍 nightseas 发表于 2014-1-1 22:40
lz是将来想做固件工程师?没目的的学习不可取啊,必须有针对性的取舍
{:smile:} 谢谢。我会好好考虑的。暂时打算先从底层做起吧。 说实话,我基本都是自学的。 单片机,模拟电路。stm32。 上位机,vc,labview,mutisium,android。都会点,都不精通。 lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
您说的真的是太对了!
看了XXX2440的资料,总觉得linux好难学啊
后来入手了树莓派,linux好简单! xukai871105 发表于 2014-1-2 08:46
您说的真的是太对了!
看了XXX2440的资料,总觉得linux好难学啊
树莓派资料多不多啊,层主在哪里买的啊,求推荐。 买个开发板吧,全套资料的那种,应该很快就上手了,先抓全局,再攻各个模块,最后系统 裸奔也是挺好玩的,看我发的那几个裸奔贴{:titter:} meirenai 发表于 2014-1-2 09:01
树莓派资料多不多啊,层主在哪里买的啊,求推荐。
我个人觉得树莓派的资料很多,但是多数是以英文资料为主!
在我的学习过程中,wiringPi是一个很好的选择,使用这个库(相当于STM32的库函数)可以非常方便的开发GPIO,SPI和I2C。
树莓派GPIO操作入门 我是觉得看你想往哪方面走,将来是做应用还是底层,例如android你是APP开发还是做系统平台,APP要人做,系统平台也要人做,做平台要从底层开始学了。 lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
说的好 armfans 发表于 2014-1-1 22:36
说的是,开始也是看的那个视频,一上来就讲uboot,看的云里雾里的,其实有点用处是后面付费的那两个,讲 ...
恩,不能说老师的视频是个坑,只是说是零基础,其实之前还是有好多要学的,特别是针对不是计算机专业出身的,一下子跨度这么大,的确太难,毕竟韦老师是走驱动,还是偏软件比较多呀 STM32这个级别是单片机,他就应该干单片机的事情,比如裸奔及跑RTT这样的系统。
ARM9这个级别肯定的上LINUX或者安卓这样的系统去用了,主要难点是系统的移植。
大家不要搞错了,把ARM9当单片机用或者STM32跑LINUX,那个是方向上的错误啊。 jiangchun9981 发表于 2014-1-4 21:22
STM32这个级别是单片机,他就应该干单片机的事情,比如裸奔及跑RTT这样的系统。
ARM9这个级别肯定的上LINUX ...
是的,暂时先不走linux了。先完好stm32。 没有实战项目自己空玩不行,最好是进公司后根据需要学 shuiluo2 发表于 2014-1-4 23:13
没有实战项目自己空玩不行,最好是进公司后根据需要学
嗯,好的,谢谢。 hl1200 发表于 2014-1-1 15:42
不是吧,2440还是挺好玩的,刷个干净的linux系统进去,挂nfs到上位机,慢玩linux编程都不知道多爽。 ...
朋友,求教程指点啊! lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
高手啊! 嵌入我心 发表于 2014-1-5 18:28
朋友,求教程指点啊!
到友善去找找Mini2440 Linux移植开发实战指南.pdf这个指南,做一遍很多东西都明白了 hl1200 发表于 2014-1-5 22:37
到友善去找找Mini2440 Linux移植开发实战指南.pdf这个指南,做一遍很多东西都明白了 ...
多谢指教,我去看看! 和lz一样大四,搞linux,要不要留个联系方式共同进步。 2440 网上资料是最丰富的, 先裸奔,再搞懂bootloader, 然后上操作系统 armfans 发表于 2014-1-1 22:36
说的是,开始也是看的那个视频,一上来就讲uboot,看的云里雾里的,其实有点用处是后面付费的那两个,讲 ...
说的有点道理,因为有单片机做项目基础,我按顺序看Uboot那里,思维就卡住了,云里雾里,还是从上到下,入门快点 坚持裸奔,你会拥有不一样的天空。坚持不住的话,就上OS,也可。
不同的路上,有不同的风景。 lanqilove 发表于 2014-1-1 17:29
严重同意
原来e方、Nand、文件系统 和 SQ 是这样关系啊,受教了,目前STM32平台只用到了文件系统,看来还有待深入挖掘啊 。 lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
从应用出发开始学习,大神能不能推荐点入门的书籍。适合新手的。 正在考虑裸奔中。。。。。 我想说一句大神你是怎么学的2240板子自己写代码吗 靠你这么学一辈子你也玩不转啊 这写到什么时候了 告诉你能看懂代码 知道根据功能怎么改改哪里 出错了能找到能解决你就ok了 有demo程序知道怎么用 太阳哥 发表于 2014-1-17 16:20
从应用出发开始学习,大神能不能推荐点入门的书籍。适合新手的。
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文件”让我受益匪浅,系统的驱动、socket、普通文件……都是文件,都可以对他进行 open、 close 、read 、write之类的操作。
1、先不管什么2440 还是6410,统统先不管,先装个虚拟机,红帽9或者是 ubuntu debian 都可以,装完后记得gcc -v看下打印出版本号,说明你可以进行hello world了。
2、装好vmware tools,建立linux xp之间文件共享的通道,下载一个xp下的source insight 在共享文件夹下写代码,PS:vi真的不好用,据说高手很喜欢,可惜我不是高手。
3、把网络想办法搞通了,xp和linux在同一个网段,可以相互ping同。
4、花一段时间熟悉熟悉linux的操作。
5、vi一个hello.c文件,加入sdio.h头文件,建一个main函数 打印个hello world。
6、用gcc编译一下,得到hello.bin文件,用chmod对bin文件添加执行权限,接着./hello 即可看到hello world了
7、同样建立一个.c文件,试试open close read write 对文件的操作。
8、再试试打开/dev 目录下的串口,短接收发线,试试用下设备文件。
9、ok再接下来可以试试自己写个简单的Makefile,尝试一下make一个程序。
10、试试创建多个线程,每个线程sleep一秒后打印一下自己的身份,看下多线程运行。
11、找个xp上运行的socket工具,《sockettool》。
12、编写一个网络通信的客户端,试下发一些字符串到xp的工具上。
13、编写一个网络服务端,用xp上的工具连接到服务上。
14、试着多线程去处理一些网络请求。
15、使用select来socket上有没有数据,还可以试试epoll。
16、接下来看看找个mp3的解码库,把mp3文件解码后往声卡里使劲扔,就能听到歌曲了。
17、还可以试试jepeg库,显示个图片什么的。
18、到此为止已经会使用linux编写基本程序了,遇到问题之前先找找有没有现成的东西,比如这些解码库,稍加改造即可利用。
19、接下来可以学习学习编程的技巧了,如果公司公司有做linux的前辈,有机会可以看看他们的代码架构,实在不行可以看看github上开源项目。
20、最后就涉及到具体应用了,是要和dsp一起做图像处理呢或是做个报警器呢或是做个带界面的QT程序。
以上不涉及非常规的特殊驱动。
至于开发板,呵呵,如果你想把你的程序在开发板上跑起来,只需要把 gcc 换成 arm-linux-gcc,然后把缺少的库放进去,就算移植完成了,。
lanqilove 发表于 2014-1-17 18:39
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文 ...
多谢好心人指点啊!!! gzhuli 发表于 2014-1-1 17:43
2440本来就是要跑OS的,裸奔更繁琐,也发挥不了完全的性能。
先从现成OS环境玩起,从应用一步一步深入到内 ...
先从现成OS环境玩起,从应用一步一步深入到内核模块、驱动,再到bootloader,最后才是裸奔或自己写RTOS,这时基本上就驾轻就熟了。
说的是正道,我花了二周的时间,才把开发环境搭好,现在在应用这里就卡住了,韦东山板子的应用太少了,从别的地方找到的资料,不是这里错,就是那里错了 lanqilove 发表于 2014-1-17 18:39
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文 ...
赞一个! lanqilove 发表于 2014-1-17 18:39
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文 ...
20步,够详细。 lanqilove 发表于 2014-1-17 18:39
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文 ...
{:victory:} 说得好! lanqilove 发表于 2014-1-17 18:39
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文 ...
直接在PC上学习编程序就行了吗?看来我一直走错道路了,以为要从底层搞到上层,而且还要有块电路板 受教了 嵌入我心 发表于 2014-1-6 17:17
多谢指教,我去看看!
友善的我看过了,建议你还是按照楼上说的,先别走逻辑,多写应用程序,真的。不然,我怕你玩不下去。 我已经在公司全职搞硬件去了。。。。。。兄弟们。 lanqilove 发表于 2014-1-17 18:39
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文 ...
要得就是你这种人才来解答,大神级别的呀。 芯片都停产了,学点别的吧 玩2440直接上系统吧,别玩什么裸奔.玩裸奔真心你还不如去玩STM32.
2440的视频网上搜索到很多, 先找个LINUX的好好看1,2遍,看不懂就去书补习. 半年可以入门了. 看完受益匪浅 最依然 发表于 2014-1-16 17:37
和lz一样大四,搞linux,要不要留个联系方式共同进步。
我已经不搞linux了 ,在公司全职做硬件。 都是牛人呀! 想学linxu可以按照大家指引的道路,可惜一般的大学生不进这个论坛的。 现在在学linux,看完鸟哥的私房菜,看了一下makefile,看Unix环境高级编程看不下去啊,很多都看不懂,接下来是不是学学bootloder,先走走过,熟悉个大概,再回来慢慢搞 jiaowoxiaolu 发表于 2014-1-2 09:28
裸奔也是挺好玩的,看我发的那几个裸奔贴
裸奔贴在哪里啊,谢谢了 新手刚学习却实有点难,其这个人感觉难点还是在刚开始的系统移植之类的,新手都想自己移植,结果花了没少时间 {:shocked:}尝试了几次 都无法 入门,楼上的朋友说,应用入门 真是经验之谈啊,刚开始搞bootloader 这的 让人泄气{:shutup:} 玩4412的飘过 同学S3C2440,现在还没有入门,正在啃骨头中。兄弟你用的哪个2440啊,可否加个QQ,指导一下,谢谢了。 linux真正搞搞熟悉,还有很有前途的 从裸机->U-boot->内核->文件系统.... 是一个长期的积累过程
我研究u-boot源码都花了半年多,全日制研究(脱产),反复的玩味....... 先搞清楚 core是什麽,soc是什麽 lanqilove 发表于 2014-1-17 18:39
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文 ...
哇!这个可行!一直想玩玩linux {:sweat:}看了这么多,总结一句:先易后难。 lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
太精辟了!!! lanqilove 发表于 2014-1-17 18:39
建议先买本《linux系统编程》看看,我觉得这本书很好,虽然我没看完,但是我认为里面的一句话“一切皆文 ...
大神!!小弟受教了 2440是最简单的了,资料最多~!我弄了个天谴的开发板,也打算啃一下! 煮酒fu 发表于 2014-1-1 15:42
看到那么多的代码,我都害怕。真心的害怕。。。。。。
改行吧,呵呵,做这个太伤脑子了 hl1200 发表于 2014-1-1 17:07
韦老师那个教程,我一直都觉得是个坑,专带你往墙上撞,打击你的自信心,最后交钱去培训。
能用2440做bt下 ...
正准备买韦老师开发板。我自己也不倾向学2440的底层,那么韦老师的开发板没有讲应用的吗?望指点! xukai871105 发表于 2014-1-2 11:15
我个人觉得树莓派的资料很多,但是多数是以英文资料为主!
在我的学习过程中,wiringPi是一个很好的选择 ...
感觉树莓派好+1 看了各位的回复,茅舍顿开!{:lol:} 是呀,2440还没停产 本人觉得如果楼主不怕苦的话,可以参考我之前写过的一个帖子,应该会有些收获:
http://www.amobbs.com/forum.php?mod=viewthread&tid=5523300 自己搞,不如去个培训班吧,那样才有意思 lanqilove 发表于 2014-1-1 17:43
千万不能从所谓的裸机->U-boot->内核开始搞起,永远不要认为arm9是个高端的单片机,你会发现内核以下的东西 ...
高人 每一步的发现就是一次升级
页:
[1]
2