51单片机能移植操作系统么?
听说51可以移植操作系统,但是我有很多问题。1)51内部存储器分RAM和ROM,其中程序存储在ROM中,但ROM是只读的,如果移植操作系统,那么用户程序怎么加载?加载不到...
听说51可以移植操作系统,但是我有很多问题。
1)51内部存储器分RAM和ROM,其中程序存储在ROM中,但ROM是只读的,如果移植操作系统,那么用户程序怎么加载?加载不到ROM还怎么执行?
2)51程序默认下载到内部ROM,但内部ROM只有4K,如果超过4K,那么该怎么下载到外部ROM?(用STC-ISP下载直接被截断),怎么设置STC-ISP才能直接将程序下载到外部ROM?
3)51单片机的ROM和RAM和PC机的内存有什么联系和区别? 展开
1)51内部存储器分RAM和ROM,其中程序存储在ROM中,但ROM是只读的,如果移植操作系统,那么用户程序怎么加载?加载不到ROM还怎么执行?
2)51程序默认下载到内部ROM,但内部ROM只有4K,如果超过4K,那么该怎么下载到外部ROM?(用STC-ISP下载直接被截断),怎么设置STC-ISP才能直接将程序下载到外部ROM?
3)51单片机的ROM和RAM和PC机的内存有什么联系和区别? 展开
7个回答
展开全部
严格的说,51不能移植操作系统。但实际上51可以一直一个叫“多任务系统”的类似于操作系统的系统(这个我亲自试过),其它的能移植的就不知道了。ucosII是不能移植到51上的。在多任务系统中:用户程序是和系统一起加载到ROM的。51单片机P0口可做硬件地址总线连接片外ROM,这个了解汇编的应该清楚。还有就是有一种烧写叫ISP,这种方法可以先吧程序存到SD卡中,再写个引导程序,让单片机自己给自己下程序,这个方法实际应用与ARM9,51理论上也可以。51升级版(如STC12C5A)有较大的ROM,可省去片外ROM。但即使这样,也难以保证操作系统的需要。关于第三个问题:我只能说应用目的和功能差不多,实际有非常大差别,无论是通信协议还是使用方法还是速度都有差别。
最后要说的是,要用操作系统首先要了解操作系统,知道为什么用操作系统,用操作系统为了“赶时髦”只能是自己给自己添堵。。。根据我的经验,程序源代码少于30K,RAM 少于5K的一般没必要用操作系统,用中断、DMA、单片机自带的各种硬件功能完全可以实现。以51的硬件能力上操作系统本人目前没发现有什么实用价值。
最后要说的是,要用操作系统首先要了解操作系统,知道为什么用操作系统,用操作系统为了“赶时髦”只能是自己给自己添堵。。。根据我的经验,程序源代码少于30K,RAM 少于5K的一般没必要用操作系统,用中断、DMA、单片机自带的各种硬件功能完全可以实现。以51的硬件能力上操作系统本人目前没发现有什么实用价值。
意法半导体(中国)投资有限公司
2023-06-12 广告
2023-06-12 广告
STM32F103是一款高性能的嵌入式芯片,由意法半导体(STMicroelectronics)公司生产。它是STM32系列芯片之一,具有紧凑、低功耗、高性能等特点,被广泛应用于嵌入式系统中。STM32F103的主要特点包括:1. 集成了A...
点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
展开全部
1.这时OS只认为是多个函数相互作用,用户程序也不过是其中一个函数,就是说用户程序中是没有main()的。单片机的OS和计算机差别非常大,所以不能类比,简单说你把自己的用户程序加入到OS中,然后编译得到一个HEX或者BIN文件,将此文件写入单片机的ROM中,单片机运行时直接读取ROM中的指令执行,就没有“加载”这一说法了。
2.单片机的ROM容量不够,就换大容量的单片机。让STC-ISP下载到外部ROM,那是不可能的。
3.51单片机的ROM保存程序,cpu核心直接读取其中的程序运行,RAM只是保存中间结果和临时变量,不能保存可执行的代码。而计算机的内存就不一样了,cpu先从硬盘U盘等存储器上读取程序放在内存条中,然后从内存中执行这个程序。
2.单片机的ROM容量不够,就换大容量的单片机。让STC-ISP下载到外部ROM,那是不可能的。
3.51单片机的ROM保存程序,cpu核心直接读取其中的程序运行,RAM只是保存中间结果和临时变量,不能保存可执行的代码。而计算机的内存就不一样了,cpu先从硬盘U盘等存储器上读取程序放在内存条中,然后从内存中执行这个程序。
追问
如果不能烧写到外部ROM,那外部ROM有什么用呢?
追答
外部ROM可以保存一些参数常数的。
现在就事论事的说,STC单片机用STC-ISP烧写程序,只能烧写到单片机内部的ROM中,是没法写道外部的,如果你想烧写到外部的,那就用通用编程器,没办法。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
(1)所有架构都是ROM+RAM的,程序固化在ROM中,运行时在RAM中跑;
(2)可以选择Flash比较大的单片机,也可以接外部的ROM。
现在的单片机型号很多,可以按需要选择; 可以到官网上找选型手册,上面有参数比较;
下载到外部的ROM,可参考官方的操作指导书,有些单片机可能不支持;
---另:根据个人的经验 Flash肯定够用了
(3)类似的。
51单片机可以用一些比较简单的操作系统 如Tiny51,或者ucosII等等
(2)可以选择Flash比较大的单片机,也可以接外部的ROM。
现在的单片机型号很多,可以按需要选择; 可以到官网上找选型手册,上面有参数比较;
下载到外部的ROM,可参考官方的操作指导书,有些单片机可能不支持;
---另:根据个人的经验 Flash肯定够用了
(3)类似的。
51单片机可以用一些比较简单的操作系统 如Tiny51,或者ucosII等等
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
单片机(Microcontrollers)是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计数器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统,在工业控制领域广泛应用。从上世纪80年代,由当时的4位、8位单片机,发展到现在的300M的高速单片机。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
能,看到过别人弄过,但是自己不会
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询