不在硬件上移植操作系统,直接用C语言编写应用程序移植到硬件上,需要做那些工作?才能实现其功能。

2024-12-22 17:57:02
推荐回答(3个)
回答1:

以ARM来说吧,首先要写异常向量表,然后是配置时钟,再然后中断设置,等等,再然后跳进main函数
这个main函数里面你可以什么都不要写,就在结尾用一个while(1);死循环
然后当产生中断的时候,进入中断模式,你可以在中断函数中写相应的功能函数
比如当你按下触摸屏,就会产生中断,你在中断函数中进行触摸屏绘制屏幕,这样就实现了手写功能。

当然如果做一个好点的系统,中断里面尽量简单些,可以在外面生成一个事件队列,中断的时候就往队列里放一些回调函数的代号,然后中断立刻退出。而main函数就一直遍历时间队列,如果事件队列里面有事件序号,就去调用响应的回调函数,这样就是一个简单的系统了

回答2:

主要修改地方就是显示部分与输入部分,运行过程与算法基本上不需要修改.
1.要了解一下你这个应用程序的内存开销和代码大小
2.输入输出有那些量;
3.根据1,2情况选取合适的硬件处理器;
4.修改显示和输入部分代码
5.调试完善

回答3:

你是不是想做裸机程序??不要系统的,直接运行的那种???
你还是要清楚硬件的接口,先用硬件的汇编做最底层的驱动,才能控制硬件,再用C语言编写程序吧