申请的的开发套件到目前还没到手,看到网友们都开始动手干了,我也是按捺不住了,所以就先在悠龙公司的主页下载了uTenux_V1.5.00r160.zip,打算看看,先了解一下。
下面是文件目录表:
└─uTenux_OpenSource_Edition
├─image
│├─atmel
││├─at91sam3s4c
││└─at91sam4s16c
│├─freescale
││└─mk60dn512xxx10
│├─fujitsu
││└─mb9bf506r
│├─infineon
││└─xmc4500x144x1024
│├─nxp
││├─lpc1766
││├─lpc1788
││└─lpc4088
│├─st
││├─stm32f103ze
││├─stm32f107vc
││├─stm32f207zg
││├─stm32f303vc
││├─stm32f407ig
││├─stm32f407vg
││└─stm32f407zg
│└─ti
│├─lm3s9b96
│└─lm4f232h5qd
├─manual
│└─uTenux_Kernel_BasisLecture
├─sample
│├─common
││├─01.task
││├─02.semaphore
││├─03.eventflag
││├─04.mailbox
││├─05.mutex
││├─06.messbuf
││├─07.rendport
││├─08.mempoolf
││├─09.mempoolv
││├─10.time
││├─11.cycle
││├─12.alarm
││└─14.sysinfo
│└─sysdepend
│└─armv7_m
│└─13.int
├─source
│└─uTenux
│├─.externalToolBuilders
│├─.settings
│├─app
││├─build
│││├─app_at91sam3
│││├─app_at91sam4
│││├─app_lm3s
│││├─app_lm4f
│││├─app_lpc17
│││├─app_lpc178
│││├─app_lpc40
│││├─app_mb9bf5
│││├─app_mk60d
│││├─app_stm32f1
│││├─app_stm32f2
│││├─app_stm32f3
│││├─app_stm32f4
│││└─app_xmc4000
││└─usermain
││├─build
│││├─app_at91sam3
│││├─app_at91sam4
│││├─app_lm3s
│││├─app_lm4f
│││├─app_lpc17
│││├─app_lpc178
│││├─app_lpc40
│││├─app_mb9bf5
│││├─app_mk60d
│││├─app_stm32f1
│││├─app_stm32f2
│││├─app_stm32f3
│││├─app_stm32f4
│││└─app_xmc4000
││└─src
│├─bin
││├─app_at91sam3
│││└─chip_at91sam3s4c
││├─app_at91sam4
│││└─chip_at91sam4s16c
││├─app_lm3s
│││└─chip_lm3s9b96
││├─app_lm4f
│││└─chip_lm4f232h5qd
││├─app_lpc17
│││└─chip_lpc1766
││├─app_lpc178
│││└─chip_lpc1788
││├─app_lpc40
│││└─chip_lpc4088
││├─app_mb9bf5
│││└─chip_mb9bf506r
││├─app_mk60d
│││└─chip_mk60dn512xxx10
││├─app_stm32f1
│││├─chip_stm32f103ze
│││└─chip_stm32f107vc
││├─app_stm32f2
│││└─chip_stm32f207zg
││├─app_stm32f3
│││└─chip_stm32f303vc
││├─app_stm32f4
│││├─chip_stm32f407ig
│││├─chip_stm32f407vg
│││└─chip_stm32f407zg
││└─app_xmc4000
││└─chip_xmc4500x144x1024
│├─config
││└─sysdepend
││├─app_at91sam3
│││└─chip_at91sam3s4c
││├─app_at91sam4
│││└─chip_at91sam4s16c
││├─app_lm3s
│││└─chip_lm3s9b96
││├─app_lm4f
│││└─chip_lm4f232h5qd
││├─app_lpc17
│││└─chip_lpc1766
││├─app_lpc178
│││└─chip_lpc1788
││├─app_lpc40
│││└─chip_lpc4088
││├─app_mb9bf5
│││└─chip_mb9bf506r
││├─app_mk60d
│││└─chip_mk60dn512xxx10
││├─app_stm32f1
│││├─chip_stm32f103ze
│││└─chip_stm32f107vc
││├─app_stm32f2
│││└─chip_stm32f207zg
││├─app_stm32f3
│││└─chip_stm32f303vc
││├─app_stm32f4
│││├─chip_stm32f407ig
│││├─chip_stm32f407vg
│││└─chip_stm32f407zg
││└─app_xmc4000
││└─chip_xmc4500x144x1024
│├─etc
││└─sysdepend
││├─app_at91sam3
││├─app_at91sam4
││├─app_lm3s
││├─app_lm4f
││├─app_lpc17
││├─app_lpc178
││├─app_lpc40
││├─app_mb9bf5
││├─app_mk60d
││├─app_stm32f1
││├─app_stm32f2
││├─app_stm32f3
││├─app_stm32f4
││└─app_xmc4000
│├─include
││├─cpu
│││└─sysdepend
│││├─armv7e_m
│││└─armv7_m
││├─dev
│││└─sysdepend
│││├─app_at91sam3
│││├─app_at91sam4
│││├─app_lm3s
│││├─app_lm4f
│││├─app_lpc17
│││├─app_lpc178
│││├─app_lpc40
│││├─app_mb9bf5
│││├─app_mk60d
│││├─app_stm32f1
│││├─app_stm32f2
│││├─app_stm32f3
│││├─app_stm32f4
│││└─app_xmc4000
││├─sbs
││├─tk
│││└─sysdepend
│││├─armv7e_m
│││└─armv7_m
││└─tm
│├─kernel
││├─build
│││├─app_at91sam3
│││├─app_at91sam4
│││├─app_lm3s
│││├─app_lm4f
│││├─app_lpc17
│││├─app_lpc178
│││├─app_lpc40
│││├─app_mb9bf5
│││├─app_mk60d
│││├─app_stm32f1
│││├─app_stm32f2
│││├─app_stm32f3
│││├─app_stm32f4
│││└─app_xmc4000
││└─src
││└─sysdepend
││├─armv7e_m
│││├─acc
│││├─gcc
│││└─icc
││└─armv7_m
││├─acc
││├─gcc
││└─icc
│├─lib
││├─build
│││├─app_at91sam3
│││├─app_at91sam4
│││├─app_lm3s
│││├─app_lm4f
│││├─app_lpc17
│││├─app_lpc178
│││├─app_lpc40
│││├─app_mb9bf5
│││├─app_mk60d
│││├─app_stm32f1
│││├─app_stm32f2
│││├─app_stm32f3
│││├─app_stm32f4
│││└─app_xmc4000
││├─libcpu
│││├─build
││││├─at91sam3
││││├─at91sam4
││││├─lm3s
││││├─lm4f
││││├─lpc17
││││├─lpc178
││││├─lpc40
││││├─mb9bf5
││││├─mk60d
││││├─stm32f1
││││├─stm32f2
││││├─stm32f3
││││├─stm32f4
││││└─xmc4000
│││└─src
│││└─sysdepend
│││├─armv6_m
││││├─acc
││││├─gcc
││││└─icc
│││├─armv7e_m
││││├─acc
││││├─gcc
││││└─icc
│││└─armv7_m
│││├─acc
│││├─gcc
│││└─icc
││├─libdev
│││├─build
││││├─app_at91sam3
││││├─app_at91sam4
││││├─app_lm3s
││││├─app_lm4f
││││├─app_lpc17
││││├─app_lpc178
││││├─app_lpc40
││││├─app_mb9bf5
││││├─app_mk60d
││││├─app_stm32f1
││││├─app_stm32f2
││││├─app_stm32f3
││││├─app_stm32f4
││││└─app_xmc4000
│││└─src
│││└─sysdepend
│││├─app_at91sam3
│││├─app_at91sam4
│││├─app_lm3s
│││├─app_lm4f
│││├─app_lpc17
│││├─app_lpc178
│││├─app_lpc40
│││├─app_mb9bf5
│││├─app_mk60d
│││├─app_stm32f1
│││├─app_stm32f2
│││├─app_stm32f3
│││├─app_stm32f4
│││└─app_xmc4000
││└─libtm
││├─build
│││├─app_at91sam3
│││├─app_at91sam4
│││├─app_lm3s
│││├─app_lm4f
│││├─app_lpc17
│││├─app_lpc178
│││├─app_lpc40
│││├─app_mb9bf5
│││├─app_mk60d
│││├─app_stm32f1
│││├─app_stm32f2
│││├─app_stm32f3
│││├─app_stm32f4
│││└─app_xmc4000
││└─src
│├─lic
│└─subass
│└─build
│├─app_at91sam3
│├─app_at91sam4
│├─app_lm3s
│├─app_lm4f
│├─app_lpc17
│├─app_lpc178
│├─app_lpc40
│├─app_mb9bf5
│├─app_mk60d
│├─app_stm32f1
│├─app_stm32f2
│├─app_stm32f3
│├─app_stm32f4
│└─app_xmc4000
└─support
我们真正要用到的只有两个文件夹:sample和source。其中Sameple下由两个文件夹,主要是一些应用案例。source中是uTenux的内核文件和工程模板,以及对于不同处理器的应用库。除了这个个文件夹,我们还应该看一下manual中的相关知道手册,这些手册都uTenux的移植和架构讲的非常详细。
下面就我这次将uTenux移植到STM32F103ZE做一个详细的讲解。
1、刚才说到其中的source中是uTenux的内核文件和模板及一些应用库,所以我们将这部分单独的拿出来放到自己将要用的一个文件目录,以后这个就是我们的模板了。
2、我们以..\sample\common\01.task为例Step to Step的学习。
首先,我们将01.task目录下的四个文件复制到1中所说的那个目录下的..\source\uTenux\app\usermain\src中替换原有文件。
3、做完以上工作后就可以打开..\source\uTenux\bin\app_stm32f1\workspace.uvmpw在如图中的目录添加TaskSample.c文件。
4、做好以上工作就可以编译了,编译过后通过后由J-Link下载程序至STM32开发板。然后用USB-串口的线连接PC机和STM32F103的UART1(注意硬件连接不能出问题)。下面就可以用串口软件看实验结果了。我用的串口软件是putty,打开putty,设置好对应的参数后(波特率115200),复位STM32F103就可以在Putty中看到实验结果如图所示:
以上便是我对uTenux的初识。谢谢您的阅读,如有不到之处,望您指教。