Re: Dotazy k STM32F103C8T6 a multiplexované řw616ZW7DrSBMRUQgZGlzcGxlamUu

Jiří Nesvacil nesvacil na posys.eu
Pátek Březen 12 11:54:25 CET 2021


Díky. Jak píšete Rust se dynamicky vyvíjí a ještě dodám, že si ho musí 
všimnout více editory, aby nějakou intelisence měl více podporovánu. To, 
že je rekompilovatelný do C je asi dobrý, protože máte aspoň standardní 
debugger.

Vidím to, zůstat u C++ , používat syntaxi s referencí:

 1. |voidf1(constcomplex*x,constcomplex*y)// without references|
 2. |{|
 3. |complex z =*x+*y;// ugly|
 4. |// ...|
 5. |}|
 6. ||
 7. |voidf2(constcomplex&x,constcomplex&y)// with references|
 8. |{|
 9. |complex z =x+y;// better|
10. |// ...|
11. |}|

A taky možná nějaké lepší stringy, s pascal notací délky na začátku a 
třeba i délky bufferu. Ty standardní string operace jsme všechny 
přepsali, to je šílenost na únik... .Jestli máte nějaký lepší tip. Jinak 
jedeme v UTF8 s zakončením 0.

Jirka


Dne 12.03.2021 v 10:58 Miroslav Mraz napsal(a):
> Do nativního kódu jde přeložit ledacos, třeba i java. Pokud chcete 
> experimentovat, doporučuji vyzkoušet Rust. Řeší některé problémy 
> C/C++, především bezpečnost - takové ty pravidla MISRA pro C máte de 
> facto zakompovány (a o mnoho lépe) už v jazyce.
> Před časem jsem to zkoušel, ale moc mě to nenadchlo, pro bare-metal je 
> Rust příliš restriktivní, C++ mně poskytuje daleko větší volnost. Což 
> samozřejmě znamená i větší prostor pro to udělat chybu.
> Ale hodně dynamicky se to rozvíjí a od té doby to udělalo dost velký 
> skok dopředu. Co jsem tak koukal, tak už je v tom udělaný i nějaký 
> RTOS a začíná to vypadat trochu použitelně. Dokonce je v tom i nějaké 
> jakoby Arduino.
> Opět to asi nebude univerzální všelék, nějaké problémy to řeší a na 
> druhou stranu to jiné bude přinášet. Protože je to myšleno jako jazyk 
> dost univerzální, tedy i low-level, umožňuje spojit Rust + C/C++ 
> (dokonce i assembler), takže možná by bylo schůdné udělat nějaké 
> "jádro" pro přístup na železo v C a logiku aplikace pak psát bezpečně 
> v Rustu. Ale zřejmě je v tom nějaký čertík skrytý v detailu, co jsem 
> zatím zkoumal, tak je spíš snaha vše udělat v Rustu (což mi připadá 
> poměrně komplikované).
>
> Mrazík
>
> Dne 12. 03. 21 v 10:29 Marek Sembol napsal(a):
>> Jen poznamka: pokud vam ten nativni kod pripada jako vyhoda, tak vam 
>> nic nebrani si ten C# (obecne .NET) nechat prelozit do nativu. A 
>> treba pro Micro.NET (pro embeded) se to taky prekladalo do nativu 
>> (nevim jestli se to nezmenilo, ale spis ne, prece jen neni tam 
>> prostor ani vykon)
>> Na velke masine je ten nenativni kod .NET spis vyhodou :)
>> BR,
>> Marek
>>
>> On Fri, Mar 12, 2021 at 8:30 AM Jiří Nesvacil <nesvacil na posys.eu 
>> <mailto:nesvacil na posys.eu>> wrote:
>>
>>     Psát kousek programu v C, struktury, mraky pointeru se dá, ale při
>>     větším projektu to bývá neudržitelné. Při porovnání verzí, 
>> commitu se
>>     jednoduše nějaká * či & ztratí.
>>
>>     Mimochodem,  šlo tady spoustu emailů na Pascal a ten je daleko
>>     čistější.
>>     Oproti C se vypořádal dobře i s řetězci a ne jako dnes v C je 
>> spoustu
>>     kódování, převodů, zkoumání délek, indexací,... . Nemá taky pro 
>> neznalé
>>     pointery přes * & a je to daleko čistější. Navíc je to nativní 
>> kód na
>>     rozdíl od Java,C#. Pro u embedded systémů je taky, že nemá garbadge
>>     collector. Jsou tady novější jazyky jako GO, ale ten má garbadge
>>     collector, to je pro embedded zařízení trošku moc. Takže pascal by
>>     mohla
>>     být lepší forma než C až na úplně nejnižší volání.
>>
>>     V c++ se zápisu občas dá vyhnout použitím pointerů zápisů přes
>>     referencování a následně na properties čistě přes ".", to 
>> považuji za
>>     čistější.
>>
>>     Psát komplexnější projekt v ARMu čistě v C má své limity dle mého 
>> soudu.
>>
>>     Jirka
>>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list


-- 
Tento e-mail byl zkontrolován na viry programem AVG.
http://www.avg.cz
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20210312/7edb69da/attachment-0001.html>


Další informace o konferenci Hw-list