-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed.pionier.net.pl!2.eu.feeder.erj
e.net!feeder.erje.net!news.ripco.com!usenet.blueworldhosting.com!feed1.usenet.b
lueworldhosting.com!peer01.iad!feed-me.highwinds-media.com!peer01.ams1!peer.ams
1.xlned.com!news.xlned.com!peer02.ams4!peer.am4.highwinds-media.com!news.highwi
nds-media.com!newsfeed.neostrada.pl!unt-exc-01.news.neostrada.pl!unt-spo-a-01.n
ews.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail
From: "Grzegorz Niemirowski" <g...@g...net>
Newsgroups: pl.misc.elektronika
References: <63da914d$0$19625$65785112@news.neostrada.pl>
<16qbnwht7z74n.8802zax2iioq$.dlg@40tude.net>
<63dad430$0$9589$65785112@news.neostrada.pl>
<trelrs$g0p$1$Janusz@news.chmurka.net>
<trgbkf$st9$1$PiotrGalka@news.chmurka.net>
<63dbd22e$0$9601$65785112@news.neostrada.pl>
<ts6rps$roo$1$PiotrGalka@news.chmurka.net>
<63e9f424$0$19625$65785112@news.neostrada.pl>
<tsg6eb$96a$1$PiotrGalka@news.chmurka.net> <tsgv8m$2kn8s$1@dont-email.me>
<tsiqth$55n$1$PiotrGalka@news.chmurka.net> <tsj9if$2v62r$1@dont-email.me>
<tsl72n$lpl$1$PiotrGalka@news.chmurka.net> <tsl934$38gns$2@dont-email.me>
<tsles1$qru$1$PiotrGalka@news.chmurka.net> <tslnh9$3a7hn$2@dont-email.me>
<tsok11$sie$1$PiotrGalka@news.chmurka.net>
Subject: Re: C++ ośla łączka
Date: Fri, 17 Feb 2023 23:06:16 +0100
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="utf-8"; reply-type=response
Content-Transfer-Encoding: 8bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Newsreader: OE PowerTool 4.5.5
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.7681
X-WWW: https://www.grzegorz.net/
Lines: 47
Message-ID: <63effa57$0$19622$65785112@news.neostrada.pl>
Organization: Telekomunikacja Polska
NNTP-Posting-Host: 89.65.244.230
X-Trace: 1676671575 unt-rea-a-02.news.neostrada.pl 19622 89.65.244.230:64030
X-Complaints-To: a...@n...neostrada.pl
X-Received-Bytes: 3544
Xref: news-archive.icm.edu.pl pl.misc.elektronika:778415
[ ukryj nagłówki ]Piotr Gałka <p...@c...pl> napisał(a):
> No i w czasie tego przygotowywania się natknął się na info, że:
> Jak się chce modyfikować flash to kawałek funkcji ma być wykonywany z
> RAMu. To co ma być w RAMie kompiluje się bratu do 10 czy 12 bajtów. Na
> zapas przekopiowywał do RAMu 40 bajtów, ale chciał to zrobić dokładnie, bo
> kto wie, czy kiedyś jakaś kolejna wersja kompilatora czegoś tam nie wrzuci
> i zrobi się ponad 40 bajtów.
> On jest na etapie, że kiedyś wszystko pisał wyłącznie w asm, a obecnie
> stara się wszystko napisać w C - że niby bardziej przenośne.
> Ale nie udało mu się znaleźć metody policzenia tego "sizeof(funkcja)" więc
> mówił mi dziś, że ten kawałek zostawi w asm aby nie mogło być żadnych
> niespodzianek.
Dlaczego chcecie sami kopiować tę funkcję? Czy skonfigurowanie odpowiedniej
sekcji w skrypcie linkera nie wchodzi w grę? Przykładowo funkcja do zapisu
Flash znadująca się w RAM-ie jest w bibliotekach ST:
__RAM_FUNC HAL_FLASHEx_HalfPageProgram(uint32_t Address, uint32_t* pBuffer);
Makro __RAM_FUNC zdefiniowane jest tak:
#define __RAM_FUNC HAL_StatusTypeDef __attribute__((section(".RamFunc")))
Czyli funkcja HAL_FLASHEx_HalfPageProgram jest oznaczona atrybutem
umieszczającym ją w sekcji .RamFunc. Ta z kolei w skrypcie linkera jest
umieszczana w sekcji .data:
.data :
{
. = ALIGN(4);
__data_init_start = LOADADDR(.data);
PROVIDE(__data_init_start = __data_init_start);
__data_start = .;
PROVIDE(__data_start = __data_start);
. = ALIGN(4);
*(.data .data.* .gnu.linkonce.d.* .RamFunc)
. = ALIGN(4);
__data_end = .;
PROVIDE(__data_end = __data_end);
} > ram AT > rom
--
Grzegorz Niemirowski
https://www.grzegorz.net/
Następne wpisy z tego wątku
- 17.02.23 23:58 heby
- 18.02.23 09:11 J.F
- 19.02.23 12:14 JDX
- 19.02.23 12:29 Marek
- 20.02.23 13:51 Zbych
- 20.02.23 13:57 Grzegorz Niemirowski
- 20.02.23 14:05 Zbych
- 22.02.23 11:44 Piotr Gałka
- 22.02.23 13:02 Piotr Gałka
- 22.02.23 13:16 heby
- 22.02.23 13:28 Piotr Gałka
- 22.02.23 13:45 Piotr Gałka
- 22.02.23 20:35 Grzegorz Niemirowski
- 22.02.23 20:41 Marek
- 22.02.23 20:47 Piotr Gałka
Najnowsze wątki z tej grupy
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
- FV--> ciepła woda w kranie
- Szok
- Dziwny schemat wzmacniacza m.cz.
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- CGNAT i ewentualne problemy
Najnowsze wątki
- 2025-07-05 Shrek, wzrośnie cena prądu :-)
- 2025-07-05 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2025-07-05 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-05 Środa Wielkopolska => SAP FI/CO Konsultant wewnętrzny <=
- 2025-07-06 Płacić za wodę ze studni
- 2025-07-06 Kolejny inżynier...
- 2025-07-05 UE ustępuje pod presją Trumpa. Socjaldemokraci: oddaliśmy miliardy
- 2025-07-04 od kiedy można obrażać Plastusia i do kiedy Batyra?
- 2025-07-05 UE ustępuje pod presją Trumpa. Socjaldemokraci: oddaliśmy miliardy
- 2025-07-03 Trybik
- 2025-07-04 Renault Symbioz
- 2025-07-04 Architektura IIIRP: Wyjątkowa, a prymitywniejsza niż stodoła pod zaborami
- 2025-07-04 Warszawa => International Freight Forwarder <=
- 2025-07-04 Wrocław => SAP ABAP Developer <=
- 2025-07-04 Warszawa => Mid/Senior IT Recruiter <=