历史上的今天
今天是:2024年10月22日(星期二)
2019年10月22日 | 嵌入式ARM学习知识
2019-10-22 来源:51hei
1、软件方面
这应该是最大的区别了。引入了操作系统。为什么引入操作系统?有什么好处嘛?
1)方便。主要体现在后期的开发,即在操作系统上直接开发应用程序。不像单片机一样一切都要重新写。前期的操作系统移植工作,还是要专业人士来做。
2)安全。这是LINUX的一个特点。LINUX的内核与用户空间的内存管理分开,不会因为用户的单个程序错误而引起系统死掉。这在单片机的软件开发中没见到过。
3)高效。引入进程的管理调度系统,使系统运行更加高效。在传统的单片机开发中大多是基于中断的前后台技术,对多任务的管理有局限性。
2、硬件方面
现在的8位单片机技术硬件发展的也非常得快,也出现了许多功能非常强大的单片机。但是与32arm相比还是有些差距吧。
arm芯片大多把SDRAM,LCD等控制器集成到片子当中。在8位机,大多要进行外扩。
总的来说,单片机是个微控制器,arm显然已经是个微处理器了。
引入嵌入式操作系统之后,可以实现许多单片机系统不能完成的功能。比如:嵌入式web服务器,java虚拟机等。也就是说,有很多免费的资源可以利用,上述两种服务就是例子。如果在单片机上开发这些功能可以想象其中的难度。
初学者如何选择ARM开发硬件?
1. 如果你有做硬件和单片机的经验,建议自己做个最小系统板:假如你从没有做过ARM的开发,建议你一开始不要贪大求全,把所有的应用都做好,因为ARM的启动方式和dsp或单片机有所不同,往往会碰到各种问题,所以建议先布一个仅有Flash,SRAM或SDRAM、CPU、JTAG、和复位信号的小系统板,留出扩展接口。使最小系统能够正常运行,你的任务就完成了一半,好在arm的外围接口基本都是标准接口,假如你已有这些硬件的布线经验,这对你来讲是一件很轻易的事情。
2. 动手写启动代码,根据硬件地址先写一个能够启动的小代码,包括以下部分:
初始化端口,屏蔽中断,把程序拷贝到SRAM中;完成代码的重映射;配置中断句柄,连接到C语言入口。也许你看到给你的一些示例程序当中,bootloader会有很多东西,但是不要被这些复杂的程序所困扰,因为你不是做开发板的,你的任务就是做段小程序,让你的应用程序能够运行下去
3.假如你是作硬件,每个厂家基本上都有针对该芯片的DEMO板原理图。先将原理图消化。这样你以后做设计时,对资源的分配心中有数。器件的DATSHEET一定要好好消化。
4. 仔细研究你所用的芯片的资料,尽管arm在内核上兼容,但每家芯片都有自己的特色,编写程序时必须考虑这些问题。尤其是女孩子,在这儿千万别有依靠心理,总想拿别人的示例程序修改,却越改越乱。
5. 多看一些操作系统程序,在arm的应用开放源代码的程序很多,要想提高自己,就要多看别人的程序,linux,uc/os-II等等这些都是很好的原码。
6.假如做软件最好对操作系统的机理要有所了解。当然这对软件工程师来说是小菜一碟。但假如是硬件出身的就有点费劲。
问:做最小系统板是2层还是4层好?
答:只有AT91可以用两层板,其他的最少4层;44b0的地和电源处理好也可用两层板;
上一篇:STM32学习探究:流水灯的实现
下一篇:ARM一些总结
史海拾趣
|
在W6馆,无数老外的到场,印证了这些参展商的做法。-------“我们的电子产品是销往国外的,并不针对国内的市场 原因呢??大家似乎口径一致:“国内市场交易环境不好,不愿意做”。那么针对中国庞大的零部件市场将由谁来填补呢 其中一个销售回答 ...… 查看全部问答> |
|
以前在报纸上看到的,、 东西很简单,一个光源,最好是点光源, 一个相机就可以了 光源本来想用个高亮发光管来用,后来因为还要焊接, 懒得动弹 就翻出来小时候玩的那个激光管来,用USB供电,正好 环境最好找个全黑的地方, 相机吧快门调节 ...… 查看全部问答> |
|
刚开始学嵌入式,这两个题硬是不会做!! 3.radiusLib.c中定义了一个全局变量g_user_point,请增加关于用户信息读取和设置的网关命令 4.自己编写一个接口,调用radius认证请求和计费请求,并完成radius认证,认证成功或者失败给出打印信息 还请 ...… 查看全部问答> |
|
在TCPMP的static LRESULT CALLBACK Proc(HWND Wnd, UINT Msg, WPARAM wParam, LPARAM lParam)函数下面画的位图始终被别的窗口给盖住,哪位知道是什么原因吗?谢谢! case WM_PAINT: hdc=BeginPaint(p- ...… 查看全部问答> |
|
Microsoft ActiveSyn 4.5 Vs2005 wince 5.0 pxa270 如上。 我是要将vs2005的程序同步到pxa270的板子上进行调试。不知道是我设置的问题还是什么原因,vs2005的程序就是不能同步到板子上。 我在家用2440的板子,就可以。 sdk 是自己导出的,也 ...… 查看全部问答> |
|
我查了MSDN,找到CLUSCTL_RESOURCE_TYPE_STORAGE_GET_AVAILABLE_DISKS可以查到,但是用起来实在太烦,有没有像_getdrives这样一句话搞定的函数?… 查看全部问答> |
|
三维通信股份有限公司(简称三维通信,股票代码:002115)成立于1993年5月,总部坐落于杭州滨江,是专业提供无线产品和网络覆盖解决方案的国家重点高新技术企业和软件企业。公司集研发、生产、工程服务为一体,是一家通过全球通信行业质量管理体系 ...… 查看全部问答> |




