UART custom baudrate.

Jan Waclawek konfera na efton.sk
Středa Duben 7 13:40:11 CEST 2021


>> nicméně python 3.5 dá

Dost by ma prekvapilo, kebyze sa to neda nastavit.

IEE754 sa rozsiahlo a nechutne zaokruhleniu venuje. Ako napokon vsetkemu
okolo float - a vsetko to je rozsiahle a nechutne; daleko rozsiahlejsie a
nechutnejsie ako by bezny clovek chcel pripustit.

V C na to sluzia prostriedky z nie prilis znameho <fenv.h>. V tejto
suvislosti tiez stoja za zmienku tiez nie prilis zname funkcie lrint() a
llrint() (ako "spravna" nahrada za nativne pretypovanie).


>Ale mozno to citaju vyvojari z MS a budu sa
>inspirovat :)

Ti dnesni sa mozu vyhovarat, ze to je - a spravne - zakonzervovany stav z
dob tvorby WinAPI, takze za to mozu ich predkovia.

M$ sa roky branil existencii serioveho portu, v PC99 si presadil jeho
defacto zakaz, a len vo Win10 ho halasne znovuobjavil (v zbastardelej
USBovitej podobe), zrejme nejakemu managerovi povedali ze to je IoT.

Dost dobre to ilustruje priepast medzi svetom mcu (s dorazom na "c" ako
"control") a PC.

wek



----- Original Message ---------------

>Nikoho neospravedlnujem :) Len som popisal terajsi stav. Ten vypocet
>je kdesi hlboko vo Win (neviem, ci v API, alebo az v driveri), ja ani
>vy ho nezmenime. Ale mozno to citaju vyvojari z MS a budu sa
>inspirovat :)
>
>miro
>
>st 7. 4. 2021 o 13:11 Miroslav Mraz <mrazik at volny.cz> napísal(a):
>>
>> Celočíselné proměnné nejsou omluva, pro dělící poměr lze napsat
>> jednoduše místo
>> fbase / baud
>> výraz
>> (fbase + (baud >> 1)) / baud
>> a bude to rozhodně přesnější.
>>
>> Ze zaokrouhlování rozhodně vědu udělat jde - zkuste si udělat v pythonu
>> něco jako
>> for n in range (0,10):
>>    a = float(n) + 0.5
>>    b = round (a)
>>    print ('round({0:g}) = {1:g}'.format(a,b))
>> Pokud na to pustíte python 2.7 bude výsledek
>> round(0.5) = 1
>> round(1.5) = 2
>> round(2.5) = 3
>> round(3.5) = 4
>> round(4.5) = 5
>> round(5.5) = 6
>> round(6.5) = 7
>> round(7.5) = 8
>> round(8.5) = 9
>> round(9.5) = 10
>> nicméně python 3.5 dá
>> round(0.5) = 0
>> round(1.5) = 2
>> round(2.5) = 2
>> round(3.5) = 4
>> round(4.5) = 4
>> round(5.5) = 6
>> round(6.5) = 6
>> round(7.5) = 8
>> round(8.5) = 8
>> round(9.5) = 10
>> A i když se to zdá být blbost, je to vlastně správně. Technicky je to
>> zřejmě jedno, ale páni finančníci nebo statistici byli asi jiného názoru.
>>
>> Mrazík
>>
>> Dne 06. 04. 21 v 17:59 Miroslav Šinko napsal(a):
>> > Neviem, ako teraz moderne Win, ale kedysi som (hadam k Win2k) kdesi
>> > vypatral, ze je to takto.. Pouzivaju sa celociselne premenne, ziadnu
>> > vedu v tom hladat netreba. Tiez si nemyslim, ze by prave tento vypocet
>> > menili do novsich Win :)
>> >
>> > miro
>> >
>> > ut 6. 4. 2021 o 17:51 Jan Waclawek <konfera at efton.sk> napísal(a):
>> >>
>> >> Njn v M$ nevedia zaokruhlovat ale to zase nie je ziadne prekvapenie.
>> >>
>> >> wek
>> >>



Další informace o konferenci Hw-list