我DIY的STM32核心板启动uClinux成功了

[复制链接]
23133|84
手机看帖
扫描二维码
随时随地手机跟帖
不爱说话|  楼主 | 2013-1-22 10:40 | 显示全部楼层 |阅读模式
本帖最后由 不爱说话 于 2013-3-7 16:27 编辑

增加一个uClinux启动的视频

板子是我自己做的,外扩了flash和大容量pSRAM(4M Byte)。FSMC的片选按照ST3210E-EVAL设计的,使用了ST官方发布的uClinux针对我的板子进行修改。只是苦于ST提供的bootloader没有源码,为了启动我修改后的uClinux费了不少功夫,最后分析上网搜索linux的启动步骤,自己写了一个bootloader,顺利的启动了uClinux。虽然还有些小问题,别的不说了先上启动信息(后面有板子的照片)

Linux version 2.6.26-uc0 (root@localhost.localdomain) (gcc version 4.5.2 (Sourcery G++ Lite 2011.03-46) ) #18 Mon Jan 21 14:36:20 CST 2013
CPU: ARMv7-M Processor [411fc231] revision 1 (ARMv?(11)M)
Machine: STM3210E-EVAL
SRAM Config: bank[0] @ 0x68000000 (size: 4096KB) - bank[1] @ 0x20000000 (size: 64KB).
Ignoring unrecognised tag 0x00000000
Ignoring unrecognised tag 0x00000000
Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 1016
Kernel command line: noinitrd root=mtd1 rootfstype=jffs2 init=/linuxrc console=ttyS0
PID hash table entries: 16 (order: 4, 64 bytes)
console [ttyS0] enabled
Dentry cache hash table entries: 1024 (order: 0, 4096 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 4MB 0MB = 4MB total
Memory: 4052KB available (492K code, 56K data, 8K init)
Mount-cache hash table entries: 512
JFFS2 version 2.2. 漏 2001-2006 Red Hat, Inc.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
kobject_add_internal failed for P/ with -EEXIST, don't try to register things with the same name in the same directory.
simple-gpio: now handling 16 GPIOs: 0 - 15
ttyS0 at MMIO 0x40013800 (irq = 37) is a STM32 USART1 Port
Probed and found the STM3210E-EVAL NOR flash chip
Creating 4 MTD partitions on "S29GL064N NOR FLASH":
0x00000000-0x00100000 : "Kernel raw data"
0x00100000-0x00160000 : "rootfs"
0x00160000-0x00190000 : "rawdata"
0x00190000-0x001c0000 : "cramfs_partition"
rtc-stm3210e_eval rtc-stm3210e_eval.0: rtc core: registered rtc-stm3210e_eval as rtc0
rtc-stm3210e_eval rtc-stm3210e_eval.0: setting system clock to 1970-01-01 00:00:00 UTC (0)
VFS: Mounted root (jffs2 filesystem) readonly.
Bad page state in process 'swapper'
page:68001040 flags:0x00000000 mapping:00000000 mapcount:1 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Bad page state in process 'swapper'
page:68001060 flags:0x00000000 mapping:00000000 mapcount:1 count:0
Trying to fix it up, but a reboot is needed
Backtrace:
Freeing init memory: 8K
Mounting proc fs
Mounting sysfs
Welcome to
       ____ _  _
      /  __| ||_|
_   _| |  | | _ ___   _   _ _    _
| | | | |  | || |  _ \| | | |\ \/ /
| |_| | |__| || | | | | |_| |/    \
| ___ \____|_||_|_| |_|\____|\_/\_/
| |
|_|

For further information check:

http://www.uclinux.org/

http://www.st.com/stm32

/ #

正面

正面

背面

背面

核心板背面

核心板背面

核心板正面

核心板正面
LDTEST| | 2013-1-22 11:13 | 显示全部楼层
呱唧呱唧!

使用特权

评论回复
戒指320| | 2013-1-22 13:11 | 显示全部楼层
uclinux 跑起来后  请问cpu还能干点啥

使用特权

评论回复
不爱说话|  楼主 | 2013-1-22 13:15 | 显示全部楼层
LDTEST 发表于 2013-1-22 11:13
呱唧呱唧!

谢谢关注!

使用特权

评论回复
不爱说话|  楼主 | 2013-1-22 13:19 | 显示全部楼层
戒指320 发表于 2013-1-22 13:11
uclinux 跑起来后  请问cpu还能干点啥

我移植的是ST官方的那个uClinux包,它里面只是一个demo。可以点亮LED,液晶屏什么的。因为我这个是核心板没有LCD所以就没有这些了。linux功能很多的,系统能跑起来后具体的功能就看需要添加了。

使用特权

评论回复
戒指320| | 2013-1-22 13:20 | 显示全部楼层
我的意思是cpu占用率太多了

使用特权

评论回复
戒指320| | 2013-1-22 13:21 | 显示全部楼层
f103系列的不建议使用uclinux

使用特权

评论回复
LDTEST| | 2013-1-22 15:14 | 显示全部楼层
诚然楼主用103 是没有什么空闲做其它事了,不过楼主可以引申移植到 STM32F4XX 上面,这只是个练手嘛

使用特权

评论回复
suhaocong| | 2013-1-22 15:17 | 显示全部楼层
不错

使用特权

评论回复
不爱说话|  楼主 | 2013-1-22 16:23 | 显示全部楼层
戒指320 发表于 2013-1-22 13:21
f103系列的不建议使用uclinux

作为学习uclinux用还是可以的。

使用特权

评论回复
dong_abc| | 2013-1-22 19:35 | 显示全部楼层
顶一下

使用特权

评论回复
sinadz| | 2013-1-22 20:11 | 显示全部楼层
能不能共享一些相关的资料

使用特权

评论回复
火箭球迷| | 2013-1-22 20:31 | 显示全部楼层
还不错

使用特权

评论回复
elec921| | 2013-1-22 21:51 | 显示全部楼层
板子画的合格了

使用特权

评论回复
reille| | 2013-1-22 22:44 | 显示全部楼层
板子不错啊,很精致,几层?4层板?BGA的封装,焊接不易啊
此外,LZ有兴趣移植个ecos上去呗

使用特权

评论回复
icecut| | 2013-1-22 23:33 | 显示全部楼层
支持

使用特权

评论回复
Kua_Max| | 2013-1-22 23:46 | 显示全部楼层
小伙子不错,必须顶

使用特权

评论回复
wangwang3008| | 2013-1-23 00:35 | 显示全部楼层
高手a !

使用特权

评论回复
不爱说话|  楼主 | 2013-1-23 09:55 | 显示全部楼层
reille 发表于 2013-1-22 22:44
板子不错啊,很精致,几层?4层板?BGA的封装,焊接不易啊
此外,LZ有兴趣移植个ecos上去呗 ...

2层板 + 手工焊接BGA

你说的ecos是ucos-II吗,这些系统移植到STM32满大街都是,没必要再重复了吧。

使用特权

评论回复
aceice| | 2013-1-23 10:14 | 显示全部楼层
不爱说话 发表于 2013-1-23 09:55
2层板 + 手工焊接BGA

你说的ecos是ucos-II吗,这些系统移植到STM32满大街都是,没必要再重复了吧。 ...

手工BGA?咋检查呢?

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:飞翼电子工作室 http://shop68798667.taobao.com/

115

主题

885

帖子

34

粉丝