最近在开发一个基于ATMega2560的单片机系统,因为外围模块比较多,
同时也想以后开发其它板子时,能够稍微修改上一次的代码就可以适用到新板子,
查阅很多资料后,发现APM飞控就是用这样的一种思想:硬件抽象层;还有就是Android系统也使用了硬件抽象层的概念,这样的设计可以极大地提高兼容性。然而当我仔细研究APM的源码之后,我发现我找不到任何访问硬件的信息,难道C++不能直接访问硬件吗?在这里提问,希望各位师兄师姐,给位大神,牛人能够不吝赐教,小生感激不尽!在此先谢过大家了~~~
用C++面向对象的方法访问硬件资源
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
5条回答 默认 最新
- 无规矩不成方圆 2015-01-14 06:06关注
嵌入式操作系统一般都是使用宏定义来定义设备的接口地址,像我之前使用的C51单片机,根本没有操作系统,通过说明书可以了解到它的许多接口地址,这些都是生产厂商规定好的,我使用的时候都是重新用宏来定义一下(地址较少相对简单),如果是其他平台(arm板等等),建议你搜索一下其他嵌入式系统,我之前一直在用ucos-ii,这是一款专门的嵌入式操作系统,代码精简深入,用C语言写的,其中就涉及到你说的硬件操作问题,很适合你去学习,相信你看过以后问题自然就会明白了。这是ucos官网http://micrium.com/
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 求daily translation(DT)偏差订正方法的代码
- ¥15 js调用html页面需要隐藏某个按钮
- ¥15 ads仿真结果在圆图上是怎么读数的
- ¥20 Cotex M3的调试和程序执行方式是什么样的?
- ¥20 java项目连接sqlserver时报ssl相关错误
- ¥15 一道python难题3
- ¥15 牛顿斯科特系数表表示
- ¥15 arduino 步进电机
- ¥20 程序进入HardFault_Handler
- ¥15 关于#python#的问题:自动化测试