Projekt

Allgemein

Profil

Qt » sthello.diff

Maximilian Seesslen, 20.11.2024 19:01

Unterschiede anzeigen:

.gitmodules
1 1
[submodule "libarena"]
2 2
	path = libarena
3
	url = git@git.seesslen.net:src/libarena
3
	url = ../libarena
4 4
[submodule "libbiwak"]
5 5
	path = libbiwak
6
	url = git@git.seesslen.net:src/libbiwak
6
	url = ../libbiwak
7 7
[submodule "libcampo"]
8 8
	path = libcampo
9
	url = git@git.seesslen.net:src/libcampo
9
	url = ../libcampo
10 10
[submodule "liblepto"]
11 11
	path = liblepto
12
	url = git@git.seesslen.net:src/liblepto
12
	url = ../liblepto
13 13
[submodule "libHALWrapper"]
14 14
	path = libHALWrapper
15
	url = git@git.seesslen.net:src/libHALWrapper
15
	url = ../libHALWrapper
16 16
[submodule "libfosh"]
17 17
	path = libfosh
18
	url = git@git.seesslen.net:src/libfosh
18
	url = ../libfosh
CMakeLists.txt
40 40
endif( )
41 41

  
42 42
if( NOT HOST )
43

  
44
if ( NOT ARENA_BOARD )
45
   # Does not work at the moment
46
   # set ( ARENA_BOARD "st_discovery_f072" )
47
   # set ( ARENA_BOARD "st_discovery_f407" )
48
   #------------------------------------
49

  
50
   # set ( ARENA_BOARD "st_nucleo_f303" )
51
   set ( ARENA_BOARD "stm32l011f4" )
52
   # set ( ARENA_BOARD "stm32l151c6" )
53
   # set ( ARENA_BOARD "stm32l152c8" )
54
   # set ( ARENA_BOARD "stm32l152r6" )
55
   # set ( ARENA_BOARD "stm32l431rc" )
56
   # set ( ARENA_BOARD "stm32f303" )
57
   # set ( ARENA_BOARD "stm32f103c6" )
58
   # set ( ARENA_BOARD "stm32l443cc" )
59
   # set ( ARENA_BOARD "stm32l031f6" )
60
   # set ( ARENA_BOARD "stm32f042f6" )
61
   # set ( ARENA_BOARD "stm32f042g4" )
62
   # set ( ARENA_BOARD "stm32f042g6" )
63
   # set ( ARENA_BOARD "stm32g030c8" )
64
   # set ( ARENA_BOARD "stm32g441kb" )
65
endif( NOT ARENA_BOARD )
43
   if ( NOT ARENA_BOARD )
44
      # Does not work at the moment
45
      # set ( ARENA_BOARD "st_discovery_f072" )
46
      # set ( ARENA_BOARD "st_discovery_f407" )
47
      #------------------------------------
48

  
49
      # set ( ARENA_BOARD "st_nucleo_f303" )
50
      set ( ARENA_BOARD "stm32l011f4" )
51
      # set ( ARENA_BOARD "stm32l151c6" )
52
      # set ( ARENA_BOARD "stm32l152c8" )
53
      # set ( ARENA_BOARD "stm32l152r6" )
54
      # set ( ARENA_BOARD "stm32l431rc" )
55
      # set ( ARENA_BOARD "stm32f303" )
56
      # set ( ARENA_BOARD "stm32f103c6" )
57
      # set ( ARENA_BOARD "stm32l443cc" )
58
      # set ( ARENA_BOARD "stm32l031f6" )
59
      # set ( ARENA_BOARD "stm32f042f6" )
60
      # set ( ARENA_BOARD "stm32f042g4" )
61
      # set ( ARENA_BOARD "stm32f042g6" )
62
      # set ( ARENA_BOARD "stm32g030c8" )
63
      # set ( ARENA_BOARD "stm32g441kb" )
64
   endif( NOT ARENA_BOARD )
65
else( NOT HOST )
66
   set ( ARENA_BOARD "qt" )
67
   set ( ARENA_FRAMEWORK "qt" )
68
endif( NOT HOST )
66 69

  
67 70
set ( ARENA_APP "sthello" )
68 71

  
69 72
find_package( Biwak REQUIRED )
70 73
find_package( Arena REQUIRED )
71
find_package( ArenaFlash REQUIRED )
74
if( NOT HOST )
75
   find_package( ArenaFlash REQUIRED )
76
endif( NOT HOST )
72 77
find_package( Lepto REQUIRED )
73 78

  
74 79
if( "${MCU_PLATFORM}" MATCHES "stm32" )
......
94 99
      arena
95 100
      biwak
96 101
      lepto
102
)
103

  
104
if( NOT HOST )
105
   target_link_libraries(
106
      ${PROJECT_NAME}
97 107
      stm-${MCU_REV}
98 108
      syscalls
99
)
109
   )
110
endif()
100 111

  
101 112
#---Bringup--------------------------------------------------------------------
102 113

  
103 114
project( sthello_bringup ASM C CXX )
104 115

  
105
find_package(ArenaFlash REQUIRED)
116
if( NOT HOST )
117
   find_package(ArenaFlash REQUIRED)
118
endif( NOT HOST )
106 119

  
107 120
add_executable(
108 121
      ${PROJECT_NAME}
......
118 131
      bringup
119 132
      biwak
120 133
      lepto
134
)
135

  
136
if( NOT HOST )
137
   target_link_libraries(
138
      ${PROJECT_NAME}
121 139
      stm-${MCU_REV}
122 140
      syscalls
123
)
141
   )
142
endif()
124 143

  
125 144
#install(	TARGETS ${PROJECT_NAME}
126 145
#         DESTINATION   bin
127 146
#)
128 147

  
129
else ( NOT HOST )
148
#---Tests----------------------------------------------------------------------
149

  
150
if ( HOSTXXX )
130 151

  
131 152
project ( sthello_tests LANGUAGES C CXX )
132 153

  
......
141 162
add_subdirectory( liblepto )
142 163
add_subdirectory( libbiwak )
143 164

  
144
endif( NOT HOST )
145

  
165
endif( HOST )
146 166

  
147 167
#---fin.-----------------------------------------------------------------------
arena/apps/sthello.json
33 33
            "stm32f042gx": "",
34 34
            "stm32f103cx": "",
35 35
            "stm32g030cx": "",
36
            "qt": "",
36 37
            "stm32l151cx": "uartBootloader",
37 38
            "other": "uartBootloader"
38 39
         },
......
66 67
            "stm32l151cx": "INPUT_NI PA1"
67 68
         }
68 69
      },
70
      {
71
         "type": "INPUT",
72
         "name": "interrupt"
73
      },
69 74
      {
70 75
         "type": "PWM",
71 76
         "name": "Buzzer",
libHALWrapper
1
Subproject commit 6a83e49ec859bd837d190327ae69eb4ee6616158
1
Subproject commit edaca10c1e82ec003eb3c84519f7c713e13aba2f
libarena
1
Subproject commit 876325ecf68d74f597613c29a0667572b92d8f90
1
Subproject commit c34cd161fc497bfe13d011797cc563073e768c0c
libbiwak
1
Subproject commit 0a673da683236603e2ddd71de55ba9f42304513d
1
Subproject commit a008179b03a6673877a337dbdc97b7fdb5abe3ec-dirty
libcampo
1
Subproject commit 6a0a8d947a98b16bebe8a4a2019a2ad3c747539f
1
Subproject commit b5000a411c4c4dfa4675e1c82c30c33b954ce746
libfosh
1
Subproject commit 3dcb9f6029790a45245743a41f46f88f23840b09
1
Subproject commit 5444adf91fb50985017f7534046c9c520babc072
liblepto
1
Subproject commit d20ad818948d88014af18f943e4d91482d92ca7d
1
Subproject commit 3958bf62dbf352baa1dcfe1dce449c7de6fe03da-dirty
src/main.cpp
9 9
//#include <fosh/fosh.hpp>
10 10
#include <unistd.h>
11 11

  
12
extern char _sdata[];
13
extern char _edata[];
14
extern char _sbss;
15
extern char _ebss;
16
extern char __heap_start[];
17
extern char __heap_end[];
18
extern char _sflash[];
19
extern char _eflash[];
20
extern char _eram[];
21
extern char __stack_size[];
22
extern char __heap_size[];
23
extern char __ram_size[];
24
extern char _sidata[];
25

  
26
extern "C"
27
{
28
   void	*biwakMalloc(size_t)
29
   {
30
      return ( &__heap_start );
31
   }
32
}
33 12

  
34 13
int main(int argc, char *argv[]) 
35 14
{
36
   uint32_t hs=(uint32_t)&__heap_start;
37
   uint32_t he=(uint32_t)&__heap_end;
38
   uint32_t br=(uint32_t)sbrk(0);
39
   
40 15
   biwakInit();
41 16
   arenaInit();
42
   //static_assert( he > hs );
43 17
   
44
   //exception( "ddd", sizeof(CPlatform) );
45 18
   CPlatform *pPlatform = new CPlatform;
46 19
   setStdio( &pPlatform->m_uartDebug );
47 20
   CHeartBeat heartBeat( pPlatform->m_ledHeartbeat );
48 21

  
49
   uint32_t br2=(uint32_t)sbrk(0);
50
   register int *sp asm ("sp");
51
   
52 22
   printf("-----------------\n");
53
   printf("Ram total:       %ul\n", (unsigned int)&__ram_size);
54
#if 0
55
   printf("Heap start:      0x%X\n", (unsigned int)hs);
56
   printf("Heap end:        0x%X\n", (unsigned int)he);
57
   printf("Heap size (min)  %d\n", (unsigned int)&__heap_size);
58
   printf("Heap size        %d\n", (unsigned int)(he-hs) );
59
   printf("Stack size (min) %d\n", (unsigned int)&__stack_size);
60
   printf("Stack size (calc)%d\n", (unsigned int)( (uint32_t)_eram - he) );
61
   printf("Start br:        0x%X\n", (unsigned int)br);
62
   printf("Current br:      0x%X\n", (unsigned int)br2);
63
   printf("Sizeof platform: %d\n", sizeof(CPlatform));
64
   printf("Free heap:       %d\n", (unsigned int)(he - br2) );
65
   printf("SP               0x%X\n", (unsigned int)sp);
66
   printf("Binary size      %d\n", (unsigned int)( ( _sidata + (_edata-_sdata)) - _sflash ) );
67
#endif
68
   
69
   /* 
70
   char buf[0x10]; 
71
   snprintf(buf, 0x10, "%s %d", "Hallo", 456);
72
   lInfo("Information %d", 123);
73
   pPlatform->m_uartDebug.puts("XYZ\n");
74
   lInfo("Warning 0x%x", 0xaffe);
75
   lCritical("Ui %b", 0xaffe);
76
   */
77
   #if 0
78
      struct S{
79
         char c;
80
         uint64_t value;
81
      } __attribute(( packed ));
82

  
83
      S s { .value=0x7777666611223344 };
84
      uint64_t *p=&s.value;
85
      //printf("uint32_t: 0x%X@%p    %X %X %X\n", *p, p);
86
   #endif
87

  
88
   CBringup bringup;
89

  
90
   //bringup.addTest( new CTestInternFlash );
91

  
92
   CBringupWriterMd writer( bringup );
93
   //writer.printSoftwareInfo();
94
   //writer.printProtocoll();
95 23

  
96 24
   while(1) 
97 25
   {
src/main_bringup.cpp
9 9
//#include <fosh/fosh.hpp>
10 10
#include <unistd.h>
11 11

  
12
extern char _sdata[];
13
extern char _edata[];
14
extern char _sbss;
15
extern char _ebss;
16
extern char __heap_start[];
17
extern char __heap_end[];
18
extern char _sflash[];
19
extern char _eflash[];
20
extern char _eram[];
21
extern char __stack_size[];
22
extern char __heap_size[];
23
extern char __ram_size[];
24
extern char _sidata[];
25

  
26
extern "C"
27
{
28
   void	*biwakMalloc(size_t)
29
   {
30
      return ( &__heap_start );
31
   }
32
}
33 12

  
34 13
int main(int argc, char *argv[]) 
35 14
{
36
   uint32_t hs=(uint32_t)&__heap_start;
37
   uint32_t he=(uint32_t)&__heap_end;
38
   uint32_t br=(uint32_t)sbrk(0);
39
   
40 15
   biwakInit();
41 16
   arenaInit();
42 17
   
......
44 19
   setStdio( &pPlatform->m_uartDebug );
45 20
   CHeartBeat heartBeat( pPlatform->m_ledHeartbeat );
46 21
   
22
#if 1
23

  
47 24
   CBringup bringup;
48 25

  
49 26
   lInfo("Starting BU...");
50 27

  
51
   //bringup.addTest( new CTestCrc );
28
   #if defined STM32
29
   bringup.addTest( new CTestCrc );
30
   #endif
52 31
   //bringup.addTest( new CTestInternFlash );
53 32

  
54 33
   CBringupWriterMd writer( bringup );
55
   //writer.printSoftwareInfo();
56
   //writer.printProtocoll();
34
   writer.printSoftwareInfo();
35
   writer.printProtocoll();
36

  
37
#endif
57 38

  
58 39
   while(1) 
59 40
   {
(5-5/6)