Технический форум по робототехнике.
vovan@desinto:~/src/orfa2$ time stm32flash /dev/ttyUSB3 -vw orfa2.bin
stm32flash - http://stm32flash.googlecode.com/
Using Parser : Raw BINARY
Serial Config: 57600 8E1
Version : 0x22
Option 1 : 0x00
Option 2 : 0x00
Device ID : 0x0414 (High-density)
RAM : 64KiB (512b reserved by bootloader)
Flash : 512KiB (sector size: 2x2048)
Option RAM : 15b
System RAM : 2KiB
Wrote and verified address 0x08002bf8 (100.00%) Done.
Resetting device... done.
stm32flash /dev/ttyUSB3 -vw orfa2.bin 0,05s user 0,00s system 0% cpu 5,497 total
vovan@desinto:~/src/orfa2$ ls -l orfa2.bin
-rwxr-xr-x 1 vovan vovan 11256 2011-08-27 20:13 orfa2.bin*
vovan@desinto:~/src/chibios/trunk/testhal/STM32F1xx/USB_CDC$ minicom -D /dev/ttyACM0
Добро пожаловать в minicom 2.5
ПАРАМЕТРЫ: I18n
Дата компиляции Feb 5 2011, 06:31:42.
Port /dev/ttyACM0
Нажмите CTRL-A Z для получения подсказки по клавишам
x�~x�~ ?
ch> info
Kernel: 2.3.3unstable
Compiler: GCC 4.4.1
Architecture: ARMv7-M
Core Variant: Cortex-M3
Port Info: Advanced kernel mode
Platform: STM32 Performance Line High Density
Board: Open Robotics OR-STM32-DS
ch> help
Commands: help exit info systime mem threads test
ch> systime
84388
ch> [A
[A ?
ch> systime
90479
ch> mem
core free memory : 58392 bytes
heap fragments : 0
heap free total : 0 bytes
ch> threads
addr stack prio refs state time
200008D8 20000794 64 1 SLEEPING 0
20000C50 20000CBC 1 1 READY 104922
20000A58 20000B14 64 1 SLEEPING 0
20001348 20001A7C 64 1 CURRENT 2
ch> test
*** ChibiOS/RT test suite
***
*** Kernel: 2.3.3unstable
*** Compiler: GCC 4.4.1
*** Architecture: ARMv7-M
*** Core Variant: Cortex-M3
*** Port Info: Advanced kernel mode
*** Platform: STM32 Performance Line High Density
*** Test Board: Open Robotics OR-STM32-DS
----------------------------------------------------------------------------
--- Test Case 1.1 (Threads, enqueuing test #1)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 1.2 (Threads, enqueuing test #2)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 1.3 (Threads, priority change)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 1.4 (Threads, delays)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 2.1 (Semaphores, enqueuing)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 2.2 (Semaphores, timeout)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 2.3 (Semaphores, atomic signal-wait)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 2.4 (Binary Semaphores, functionality)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.1 (Mutexes, priority enqueuing test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.2 (Mutexes, priority inheritance, simple case)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.3 (Mutexes, priority inheritance, complex case)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.4 (Mutexes, priority return)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.5 (Mutexes, status)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.6 (CondVar, signal test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.7 (CondVar, broadcast test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 3.8 (CondVar, boost test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 4.1 (Messages, loop)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 5.1 (Mailboxes, queuing and timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.1 (Events, registration and dispatch)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.2 (Events, wait and broadcast)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 6.3 (Events, timeouts)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 7.1 (Heap, allocation and fragmentation test)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 8.1 (Memory Pools, queue/dequeue)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 9.1 (Dynamic APIs, threads creation from heap)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 9.2 (Dynamic APIs, threads creation from memory pool)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 9.3 (Dynamic APIs, registry and references)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 10.1 (Queues, input queues)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 10.2 (Queues, output queues)
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.1 (Benchmark, messages #1)
--- Score : 270046 msgs/S, 540092 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.2 (Benchmark, messages #2)
--- Score : 213151 msgs/S, 426302 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.3 (Benchmark, messages #3)
--- Score : 213151 msgs/S, 426302 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.4 (Benchmark, context switch)
--- Score : 926888 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.5 (Benchmark, threads, full cycle)
--- Score : 157880 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.6 (Benchmark, threads, create only)
--- Score : 230996 threads/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.7 (Benchmark, mass reschedule, 5 threads)
--- Score : 66635 reschedules/S, 399810 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.8 (Benchmark, round robin context switching)
--- Score : 501440 ctxswc/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.9 (Benchmark, I/O Queues throughput)
--- Score : 655320 bytes/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.10 (Benchmark, virtual timers set/reset)
--- Score : 704312 timers/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.11 (Benchmark, semaphores wait/signal)
--- Score : 886892 wait+signal/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.12 (Benchmark, mutexes lock/unlock)
--- Score : 647188 lock+unlock/S
--- Result: SUCCESS
----------------------------------------------------------------------------
--- Test Case 11.13 (Benchmark, RAM footprint)
--- System: 376 bytes
--- Thread: 72 bytes
--- Timer : 20 bytes
--- Semaph: 12 bytes
--- EventS: 4 bytes
--- EventL: 12 bytes
--- Mutex : 16 bytes
--- CondV.: 8 bytes
--- Queue : 32 bytes
--- MailB.: 40 bytes
--- Result: SUCCESS
----------------------------------------------------------------------------
Final result: SUCCESS
ch>
vovan@desinto:~/src/chibios/trunk/testhal/STM32F1xx/USB_CDC$ svn diff
Index: main.c
===================================================================
--- main.c (revision 3254)
+++ main.c (working copy)
@@ -408,9 +408,9 @@
(void)arg;
chRegSetThreadName("blinker");
while (TRUE) {
- palClearPad(IOPORT3, GPIOC_LED);
+ palClearPad(GPIOB, GPIOB_LED);
chThdSleepMilliseconds(500);
- palSetPad(IOPORT3, GPIOC_LED);
+ palSetPad(GPIOB, GPIOB_LED);
chThdSleepMilliseconds(500);
}
}
@@ -436,7 +436,7 @@
*/
sduObjectInit(&SDU1);
sduStart(&SDU1, &serusbcfg);
- palClearPad(GPIOC, GPIOC_USB_DISC);
+ //palClearPad(GPIOC, GPIOC_USB_DISC);
/*
* Shell manager initialization.
Index: Makefile
===================================================================
--- Makefile (revision 3254)
+++ Makefile (working copy)
@@ -54,7 +54,9 @@
# Imported source files and paths
CHIBIOS = ../../..
-include $(CHIBIOS)/boards/OLIMEX_STM32_P103/board.mk
+#include $(CHIBIOS)/boards/OLIMEX_STM32_P103/board.mk
+ORFA = $(CHIBIOS)/../../orfa2
+include $(ORFA)/boards/OR_STM32_DS/board.mk
include $(CHIBIOS)/os/hal/platforms/STM32F1xx/platform.mk
include $(CHIBIOS)/os/hal/hal.mk
include $(CHIBIOS)/os/ports/GCC/ARMCMx/STM32F1xx/port.mk
@@ -62,7 +64,7 @@
include $(CHIBIOS)/test/test.mk
# Define linker script file here
-LDSCRIPT= $(PORTLD)/STM32F103xB.ld
+LDSCRIPT= $(PORTLD)/STM32F103xE.ld
# C sources that can be compiled in ARM or THUMB mode depending on the global
# setting.
TIM1:
mode: PWM
CH1: M0PWMP
CH1N: M0PWMN
CH2: M1PWMP
CH2N: M1PWMN
CH3: MDPWM1
CH4: MDPWM2