OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 12554|回复: 17

基于STM32的嵌入式操作系统DIY讨论帖

[复制链接]

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
发表于 2013-3-15 16:08:27 | 显示全部楼层 |阅读模式
我有这样的一个预想,用高端一点的STM32片子,搭建nand flash和sram,搭建VS1053音频解码(最好用IIS专用音频芯片代替),搭建TF卡槽,LCD显示屏,LCD,NAND,SRAM全部用FSMC连接,根据需要可以添加SPI flash或者nor flash。
我的构想是这样的,直接在stm32的内部flash中,编写一个bootloader,注意,是bootloader,不加载任何系统和内核,bootloader中需要写好所有板载器件的驱动程序,包括nand,sram,lcd音频等,并且预留出进入接口,bootloader开机检测nand,读取nand中的东西,发送到sram中,然后从sram中瞬时读取出来运行。
关于系统,预想能做到像电脑一样,把系统镜像弄在SD卡,然后放进去,bootloader开机检测到nand中没有操作系统,就从sd卡安装。
操作系统DIY构想,用ucos内核作为系统运行时基,ui自定,通过编译成bin文件存放在sd卡,运行后“安装进nand flash”,然后重启后直接运行nand flash中的程序代码,当然,这里要从nand flash中读取出来,存进ram以加快速度,完事后,系统有了,系统DIY成可以安装应用程序的那种,再在上位机开发一个C#版本的SDK包,直接用上位机开发这个操作系统的应用程序。
总的来说,这里有三层内容,架构参考了安卓系统,成功与否就在于bootloader的编写了,要熟悉STM32是怎么运行代码的,因为你得读nand中的代码运行,bootloader是第一层,第二层是nand中的系统,加载nand后第三层是应用。
由于这个嵌入式操作系统涉及了3层东西,STM32运行起来可能会比较慢,整个东西做出来,有点架构可能有一点像NES模拟器,因为NES模拟器本来就是一个操作系统,他直接运行外部储存的fc游戏,可以看作是一个程序,但实际上,fc游戏本来就是一个程序。
这构想不知道可行性有多高。
Time?And?Relative?Dimension?In?Space.
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-3-15 18:15:12 | 显示全部楼层
回复【楼主位】Tardis:
---------------------------------
这想法我也有过。见此贴:http://www.openedv.com/posts/list/3311.htm
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

2

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2013-3-14
在线时间
0 小时
发表于 2013-3-15 23:14:31 | 显示全部楼层
好主意,这样一台完整电脑的元素全有了!    M3可能速度还慢了些,也许可以用M4来实现! 现在很火的卡片电脑Raspberry i(树莓派)就是这样的模型,希望国内也有一个这样的平台来玩啊!  支持
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
 楼主| 发表于 2013-3-16 10:40:40 | 显示全部楼层
回复【3楼】SevenFly:
---------------------------------
树莓派不开源,玩个屁呢~~~
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-3-16 10:50:59 | 显示全部楼层
淘宝了下,这树莓派卖的很火啊。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
 楼主| 发表于 2013-3-16 12:02:13 | 显示全部楼层
回复【5楼】正点原子:
---------------------------------
是卖的很火,ARM11的,但他bootloader不开源,没法玩。
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2201
金钱
2201
注册时间
2012-2-8
在线时间
35 小时
发表于 2013-3-16 12:10:15 | 显示全部楼层
回复【6楼】Tardis:
---------------------------------
开源了也不一定兼容, ARM11 是多地址空间的(因为有MMU), 每个应用程序都有自己的地址空间, M3, M4 没有MMU. 加载的时候需要考虑的东西是有些区别的. 要做好这个得先了解ELF, relocatable code, position independent code, shared library, ABI 这些东西, 加起来感觉不少.
https://github.com/roxma
回复 支持 反对

使用道具 举报

2

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2013-3-14
在线时间
0 小时
发表于 2013-3-16 18:02:06 | 显示全部楼层
树莓派火了,但性能比树莓派更牛的pcDuino也来了(1GHz ARM Cortex A8)!但对于国内的爱好者来说,没好的基础都玩不来啊! 要是有国内一款卡片电脑 像CM3这样好学的话,肯定超多人想玩!
回复 支持 反对

使用道具 举报

2

主题

27

帖子

0

精华

初级会员

Rank: 2

积分
55
金钱
55
注册时间
2013-3-14
在线时间
0 小时
发表于 2013-3-16 18:03:33 | 显示全部楼层
回复【4楼】Tardis:
---------------------------------
树莓派不开源,不正给留出机会啦
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
 楼主| 发表于 2013-3-19 13:37:44 | 显示全部楼层
回复【7楼】Pony279:
---------------------------------
ARM落后了,A8才是王道
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
 楼主| 发表于 2013-3-19 13:38:23 | 显示全部楼层
回复【8楼】SevenFly:
---------------------------------
那是必须的
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

36

主题

1105

帖子

5

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
2201
金钱
2201
注册时间
2012-2-8
在线时间
35 小时
发表于 2013-3-19 13:44:02 | 显示全部楼层
回复【10楼】Tardis:
---------------------------------
面向的应用领域不同, ARM11后就叫Cortex了
“A”系列面向尖端的基于虚拟内存的操作系统和用户应用;“R”系列针对实时系统;“M”系列对微控制器。
https://github.com/roxma
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
 楼主| 发表于 2013-3-20 15:47:03 | 显示全部楼层
回复【12楼】Pony279:
---------------------------------
正解
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
 楼主| 发表于 2013-3-20 15:47:41 | 显示全部楼层
最近我弄NAND 的读写,刚发现一个很严重问题,NAND要实现无缝读写,至少得需要1MB的RAM作读改写缓存。
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-3-20 21:29:30 | 显示全部楼层
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
 楼主| 发表于 2013-3-23 11:01:09 | 显示全部楼层
回复【15楼】正点原子:
---------------------------------
是不是感觉很大鸭梨?1MB的RAM,用外扩也砸爆了。
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-3-23 14:21:29 | 显示全部楼层
回复【16楼】Tardis:
---------------------------------
换支持SDRAM的芯片吧!
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

46

主题

1579

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
1970
金钱
1970
注册时间
2011-7-17
在线时间
4 小时
 楼主| 发表于 2013-3-23 14:31:19 | 显示全部楼层
回复【17楼】正点原子:
---------------------------------
看样子,该搞A8去了……
Time?And?Relative?Dimension?In?Space.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-22 20:20

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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