[经验] 我的ARM学习经历(附带资料)

    [复制链接]

技术员

发表于 2011-10-1 21:09:32   152746 查看 3774 回复 显示全部楼层 倒序浏览
分享
下面介绍我的学习经历:

1、基础阶段

     话说07年第一份工作从事的是PLC开发,用protel画原理图和PCB,写AVR单片机程序,焊焊板子,还去过华强北买器件,比较杂,但是接触面比较广,为进一步学ARM打下了基础。
    期间不甘心只停留在AVR单片机层次,买了邵贝贝的《uCOS-II嵌入式操作系统》,看了4-5遍,弄懂它的原理,还看了陈明计的《SmallRTOS嵌入式操作系统》,之后自己写了一个AVR的时间片调度器。

    2、接触ARM
     09年4月份换了工作,搞B超,接触三星的S3C2410,看2410的数据手册,开始接触到ARM的32个寄存器、中断管理、MMU、7种工作模式,还真的晕了好长一段时间,模模糊糊,弄不懂,挺痛苦的。工作中也开始实践起来,基于ADS1.2,采用uCOS-II。
      先不管ARM内核的细节、产品平台底层的细节,也先不管USB、LCD、内存控制器等较复杂的部分。先搞单片机有的那些外设,发现单单写2410的驱动程序,如SPI、USART、IO控制,发现跟单片机一样,只要看2410数据手册的SPI、USART、IO口部分就行了。这时,信心有了,感觉自己多少可以把2410玩起来了。
      这时买了一块2410开发板,带有ADS1.2例程,这些例程有启动汇编代码,还有底层的一些C语言初始化代码,看的很费劲,不知道是啥意思。没关系,你总会找到main函数入口吧?其他我不管,先自己在main函数里面编编代码玩玩先,试了URAT、SPI、I2C、RTC,跑起来了。这时再学学中断,按照例程的中断,自己也编写一下自己的中断例子。
     发现经过例程学习ARM,效果比单看书好的多。单看书你会晕,很多不明白,越看越枯燥,越看越没信心,感觉看了很久,心里还不知道ARM是什么。学学例程的话,把ARM当单片机用,很简单,上手很快,你对ARM的恐惧感就慢慢消失了,信心也有了,再结合书本,对照例子,心中一些不明白的ARM内核原理,也逐渐开朗,哦,原来如此,原理很简单嘛。
     再后来,看ARM原理、MMU、中断管理、SDRAM、LCD控制器,自然而然的都明白了。

     3、提高
     基础有了,慢慢的接触到USB、FAT文件系统、U-BOOT、GUI显示,一个一个的去熟悉,发现你已经入了嵌入式的大门,慢慢的积累,每搞定一个功能,也小有成就感了。

      4、后记
       10年五一又换了一份工作,用atmel的9260芯片,搭建软件平台,这时对以往知识的一次综合应用,以前都是现成的平台,自己在上面添加功能,修修改改,这一次,是从无到有的建立ARM+uCOS-II软件平台:
      编译器选型,选了MDK,上网找破解;
      了解9260的启动过程,程序烧写方案;
      选择调试工具,建立调试环境,使用JLINK、或者wiggler+HJTAG;
      uCOS-II移植,下载了官方IAR移植版的,根据MDK做修改,终于跑起来;
      编写9260各种外设驱动;
      应用软件系统结构设计,多任务划分;应用编程,问题解决,这一块花的时间最多了。
      学习zmodem,把官方的zmodem程序看懂,移植到产品上,做了一个不超过4K的9260引导程序,代替atmel的at91bootstrap,可以通过“超级终端+串口”烧录程序,而用SAM-BA烧写,很麻烦;
      深入分析了yaffs文件系统,做了一个日志系统,计划今年将yaffs分析经验写成一个文档;
      今年的计划:预测物联网趋势,网络将会大规模应用,要深入学习tcpip,学精,分析lwip代码

       5、希望能给后来者参考价值。

先把要分享的资料放出来
三星2410的样例程序:
游客,如果您要查看本帖隐藏内容请回复

基于2410的uCOS-II
游客,如果您要查看本帖隐藏内容请回复

任务调度器代码
游客,如果您要查看本帖隐藏内容请回复



点评

can  发表于 2013-10-9 19:09

评分

参与人数 1威望 +1 +1 收起 理由
fengqingyang08 + 1 + 1

查看全部评分

本帖被以下淘专辑推荐:

  • · ARM|主题: 9, 订阅: 6
标签:ARM 寄存器

实习生

发表于 2011-10-1 21:11:36  
加油 写的不错 学习下
回复

点赞 举报

实习生

发表于 2011-10-1 21:14:51  
必须要顶  够大师了
回复

点赞 举报

技术员

发表于 2011-10-1 21:16:29  
不错 很有收获 顶楼主
回复

点赞 举报

实习生

发表于 2011-10-1 21:19:25  
楼主的路跟我想走的路非常相似,
两次跳槽的时间都差不多,最后想从事的物联网工作也妈惊人的相似,顶神马……
我会follow你的,不过希望结局会不一样

评分

参与人数 1积分 +1 收起 理由
新金瓶梅 + 1 圣墟http://www.shuhuang.me/i/0/48/

查看全部评分

回复

点赞 2 举报

实习生

发表于 2011-10-1 21:22:35  
学习ARM路程是不简单简单的.
1.    要有毅力,不然还真学不下去,不过搞电子的人都很有毅力的.
2.       前面的学习对于熟练单片机的人来说,是简单的.
后面的描述:
        再后来,看ARM原理、MMU、中断管理、SDRAM、LCD控制器,自然而然的都明白了。
3、提高
     基础有了,慢慢的接触到USB、FAT文件系统、U-BOOT、GUI显示,逐步去熟悉,你已经入了嵌入式的大门,慢慢的积累,每搞定一个功能,也小有成就感了。

如果涉及到系统的东西,几句就能解决的话那遍地都是学ARM的了.
而且,即使能进门了,想要向深处爬,不从基础上,不从原理上学习,肯定不行的.

看LZ的水平,还在刚进门的时候徘徊呢
回复

点赞 1 举报

助理工程师

发表于 2011-10-1 21:24:47  
这个很好,学习了!正不知道该赞学呢!谢楼主{:42:}!
回复

点赞 举报

资深工程师

发表于 2011-10-1 21:26:18  
不错的学习感受啊  谢谢分享
回复

点赞 举报

技术员

发表于 2011-10-1 21:30:28    楼主|
86xue 发表于 2011-10-1 21:22
学习ARM路程是不简单简单的.
1.    要有毅力,不然还真学不下去,不过搞电子的人都很有毅力的.
2.       前 ...

哈哈,我水平非常一般,正在不停的学习,,学无止境。。
兴趣目标是把网络研究透一点,
相信年月积累,,肯定迈出菜鸟行列,,争取早日跨入牛人行列。
回复

点赞 举报

技术员

发表于 2011-10-2 12:13:40  
LZ厉害

点评

hao  发表于 2012-9-20 22:41
回复

点赞 举报

实习生

发表于 2011-10-16 16:31:42  
我要s3c2440都差不多
回复

点赞 举报

实习生

发表于 2011-10-20 10:08:35  
很好。。。多谢!!!
回复

点赞 举报

实习生

发表于 2011-10-21 10:48:48  
不错啊,感谢分享。
回复

点赞 举报

实习生

发表于 2011-10-21 11:27:38  
很受用,偶也正在接粗arm,也很晕
回复

点赞 举报

技术员

发表于 2011-10-21 12:46:24  
LZ真厉害
回复

点赞 举报

技术员

发表于 2011-10-22 09:14:45  
加油呀

点评

正处疑惑时期  发表于 2013-3-24 10:48
回复

点赞 举报

实习生

发表于 2011-10-22 18:19:59  
谢谢
回复

点赞 举报

实习生

发表于 2011-10-27 18:14:59  
但愿对电子有兴趣的我们,都能在嵌入式里面找到乐趣
回复

点赞 举报

实习生

发表于 2011-10-29 17:27:48  
ttttttttttttttttttt
回复

点赞 举报

实习生

发表于 2011-10-29 17:28:37  
rrrrrrrrrrrrrrrrrr

点评

写的不错,赞一个,咱们的经历比较相似,我也是先学习的单片机,我用的是51单片机,然后又弄了两年的DSP处理器,现在很想学习一下ARM相关知识加油  发表于 2013-4-22 11:59
回复

点赞 举报

高级模式
您需要登录后才可以回帖 登录 | 注册

关闭

站长推荐 上一条 /7 下一条

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

推荐专区

技术干货集中营

专家问答

用户帮助┃咨询与建议┃版主议事

工程师杂谈

工程师创意

工程师职场

论坛电子赛事

社区活动专版

发烧友活动

-

嵌入式论坛

ARM技术论坛

Android论坛

Linux论坛

单片机/MCU论坛

FPGA|CPLD|ASIC论坛

DSP论坛

嵌入式系统论坛

-

电源技术论坛

电源技术论坛

无线充电技术

-

硬件设计论坛

PCB设计论坛

电路设计论坛

电子元器件论坛

控制|传感

总线技术|接口技术

-

测试测量论坛

LabVIEW论坛

Matlab论坛

测试测量技术专区

仪器仪表技术专区

-

EDA设计论坛

multisim论坛

PADS技术论坛

Protel|AD|DXP论坛

Allegro论坛

proteus论坛|仿真论坛

EasyEDA-中国人自已的EDA工具

Orcad论坛

-

综合技术与应用

电机控制

智能电网

光电及显示

参考设计中心

汽车电子技术论坛

医疗电子论坛

-

开源硬件

-

无线通信论坛

无线通信技术专区

天线|RF射频|微波|雷达技术

-

IC设计论坛

芯片测试与失效分析

Mixed Signal/SOC[数模混合芯片设计]

Analog/RF IC设计

设计与制造封装测试

-

厂商专区

TI论坛

TI Deyisupport社区

-

检测技术与质量

电磁兼容(EMC)设计与整改

安规知识论坛

检测与认证

-

消费电子论坛

手机技术论坛

平板电脑/mid论坛

音视/视频/机顶盒论坛

-

电子论坛综合区

聚丰众筹官方社区

新人报道区

聚丰供应链

-

论坛服务区

-

供求信息发布

供需广告

招聘┃求职发布区

电子展览展会专区