Sida 3 av 20
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 22 oktober 2019, 20:07:22
av bearing
säter skrev:DanielM skrev:Det kommer vara den mest avancerade självinställande och adaptiva regulatorn för att hålla temperaturen i en vattentank.
Varför behöver du ett så avancerat system för mätning av vattentemperatur?
Jag skulle tro att största problemet är själva mätningen av temperaturen.
Jag gissar att han ska brygga öl =)
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 22 oktober 2019, 22:14:47
av DanielM
Nix. Jag köper hellre.
Hur som helst så undrar jag om C-kod tar lika mycket minne som i Eclipse (PC) som i ett inbyggt system? Det är kompilatorn som styr storleken? Jag köra GCC och ARM vill ha GCC-arm. Någon skillnad när det kommer till storlek? Kan man också kolla ramförbrukningen i Eclipse?
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 25 oktober 2019, 10:24:42
av Rick81
Minnesstorlek påverkas av processor arkitektur, kompilator, optimering, lib som används etc. då det går inte säga hur det skiljer mellan PC och ARM. Enklast är porta koden och testa.
GCC arm visar hur mycker RAM och flash som används, men på ett ganska otydligt sätt. Här visas hur man ska tolka det.
https://mcuoneclipse.com/2013/04/14/tex ... explained/
Kör man nyare True studio så visar den minnershantering på ett mer logiskt sätt.
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 26 oktober 2019, 15:42:29
av DanielM
Hur gör man det i Atollic? Jag har startat upp ett nytt projekt och implementerat qpOASES_e där nu i src mappen. Nu vill jag testa med att analysera hur mycket flash och RAM det tar. RAM kanske är svårt att analysera? Men flash då?
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 26 oktober 2019, 17:44:24
av Rick81
RAM och flash är lätt att kolla. Kolla outputen från GCC efter kompilering i konsollen och kolla min länk.
Tex:
Program Size:
88600 2224 58884 149708 248cc
text data bss dec hex
Flash = text = 88600 bytes = 86,5 kB
RAM = data +bss = 2224+58884 = 61108 bytes = 59,7 kB
I Atollic finnns ett minnesfönster är man ser RAM och flash som använts efter varje kompilering i %, vilket är mycket trevligare. Se sida 2 här:
http://info.atollic.com/hubfs/Whitepape ... 8174286666
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 26 oktober 2019, 18:28:06
av DanielM
Måste jag ha kortet inkopplat? Jag har inte köpt min kraftfulla Nucleo 144 än.
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 26 oktober 2019, 18:40:37
av Rick81
Nej du ser det direkt vid kompilering utan inkoppling till stm32
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 26 oktober 2019, 18:45:09
av DanielM
Du menar om jag tar clean och sedan build?
arm-atollic-eabi-gcc -o Adaptive Model Predictive Control.elf Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_cortex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_dma.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_dma_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_eth.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_eth_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_exti.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_flash.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_flash_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_gpio.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_hsem.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_i2c.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_i2c_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_mdma.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pcd_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pwr.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_pwr_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_rcc.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_rcc_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_tim.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_tim_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_uart.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_hal_uart_ex.o Drivers/STM32H7xx_HAL_Driver/Src/stm32h7xx_ll_usb.o Src/CControl/Sources/Algebra.o Src/CControl/Sources/Estimation.o Src/CControl/Sources/Feedback.o Src/CControl/Sources/Identification.o Src/CControl/Sources/Tools.o Src/main.o Src/qpOASES/Source/Bounds.o Src/qpOASES/Source/Constraints.o Src/qpOASES/Source/Flipper.o Src/qpOASES/Source/Indexlist.o Src/qpOASES/Source/Matrices.o Src/qpOASES/Source/MessageHandling.o Src/qpOASES/Source/OQPinterface.o Src/qpOASES/Source/Options.o Src/qpOASES/Source/QProblem.o Src/qpOASES/Source/QProblemB.o Src/qpOASES/Source/Utils.o Src/stm32h7xx_hal_msp.o Src/stm32h7xx_it.o Src/syscalls.o Src/system_stm32h7xx.o startup/startup_stm32h743xx.o -mthumb -mcpu=cortex-m7 -mfloat-abi=hard -mfpu=fpv5-d16 -T../STM32H743ZI_FLASH.ld -specs=nosys.specs -static -Wl,-Map=Adaptive Model Predictive Control.map -Wl,--gc-sections -Wl,--defsym=malloc_getpagesize_P=0x80 -Wl,--start-group -lc -lm -Wl,--end-group -specs=nano.specs
/home/hp/Programa/Atollic/ide/jre/bin/java -jar /home/hp/Programa/Atollic/Tools/arm-atollic-reports.jar sizeinfo list Adaptive Model Predictive Control.elf
Generate build reports...
Print size information
text data bss dec hex filename
17384 216 2904 20504 5018 Adaptive Model Predictive Control.elf
Print size information done
Generate listing file
Output sent to: Adaptive Model Predictive Control.list
Generate listing file done
Generate build reports done
arm-atollic-eabi-objcopy -O ihex Adaptive Model Predictive Control.elf Adaptive Model Predictive Control.hex
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 26 oktober 2019, 22:28:10
av DanielM
Nu har jag lagt till lwIP och klickat på "build".
Kod: Markera allt
text data bss dec hex filename
41420 6484 16072 63976 f9e8 Adaptive Model Predictive Control.elf
Vad är data? Är det 6484 bytes som jag har applicerat på projektet? Alltså ca 6.4 kB har jag utnyttjat, från 2 Mb som är totala ROM.
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 26 oktober 2019, 22:50:36
av mankan
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 26 oktober 2019, 23:37:17
av hummel
DanielM skrev:Nu har jag lagt till lwIP och klickat på "build".
Kod: Markera allt
text data bss dec hex filename
41420 6484 16072 63976 f9e8 Adaptive Model Predictive Control.elf
Vad är data? Är det 6484 bytes som jag har applicerat på projektet? Alltså ca 6.4 kB har jag utnyttjat, från 2 Mb som är totala ROM.
Ursäkta men vad i Rick81s svar var det som du inte förstod? Eller tittade du inte ens på länken?
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 27 oktober 2019, 00:04:42
av DanielM
Måste ha missat att sett denna länk.
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 27 oktober 2019, 10:56:39
av Rick81
Men jag skrev ju också exakt hur man räknar ut använt flash och RAM:
Tex:
Program Size:
88600 2224 58884 149708 248cc
text data bss dec hex
Flash = text = 88600 bytes = 86,5 kB
RAM = data +bss = 2224+58884 = 61108 bytes = 59,7 kB
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 27 oktober 2019, 18:56:36
av DanielM
Nu har jag skapat mitt projekt och lagt in endast grundläggande saker så som RLS, MPC, tf2ss. Jag har ingen hemsida än implementerad.
Kod: Markera allt
text data bss dec hex filename
119592 8268 107268 235128 39678 Adaptive Model Predictive Control.elf
Alltså 0.119 MB ROM och 0.115 MB RAM har jag förbrukat nu.
Jag vill alltså ha en kontrollpanel med graf. Det kanske är att glömma nu? Jag har 2 mb ROM och 1 MB ram att röra mig mellan.
Re: Hur kan jag få tag på prestandaversionen av Nucleo?
Postat: 27 oktober 2019, 19:04:55
av Rick81
Du har ju hur mycket RAM, Flash som helst (för en inbyggd processor). Inga problem fixa en kontrollpanel med graf. Du kan t.o.m lägga in bilder i flashet ( så har jag gjort när jag kopplat en 320x240 färgdisplay till en stm32 som hade 256 kB flash)