<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=utf-8"><meta name=Generator content="Microsoft Word 15 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
        {page:WordSection1;}
--></style></head><body lang=CS link=blue vlink="#954F72"><div class=WordSection1><p class=MsoNormal>Přesně to jsem našel taky. Takhle chráněných registrů je hromada a bylo i dřív, ale nikdy jsem kvůli tomu nemusel použít jiný asm, než jen cli/sti. V codevisionu to mají ošetřeno, aby to proběhlo dobře.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Bohužel mi v něm nefunguje vestavěný programátor (pokouší se udělat nějakej temp u sebe v program files), tak teď používám Atmel studio. Dá se v něm sice udělat projekt, kterej pak překládá CV, ale nedá se tvrdit, že by to chodilo zrovna hladce, tak jsem tentokrát vygeneroval novej projekt GCC a narážím na různé nečekané komplikace:-)</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Asi zůstanu u tý lehce zlobící spolupráce CV a AS.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>PH</p><p class=MsoNormal><o:p> </o:p></p><div style='mso-element:para-border-div;border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0cm 0cm 0cm'><p class=MsoNormal style='border:none;padding:0cm'><b>Od: </b><a href="mailto:konfera@efton.sk">Jan Waclawek</a><o:p></o:p></p></div><p class=MsoNormal>Tieto moderne AVRka od Microchipu nepoznam, naposledy som AVRko programoval</p><p class=MsoNormal>pred eeee cojaviem asi 8 rokmi.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Takze stahujem DS, hladam MCLKCTRLA a hned druhy najdenie je</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>The Main Clock and Prescaler configuration registers (CLKCTRL.MCLKCTRLA,</p><p class=MsoNormal>CLKCTRL.MCLKCTRLB) are</p><p class=MsoNormal>protected by the Configuration Change Protection Mechanism, employing a</p><p class=MsoNormal>timed write procedure for changing these</p><p class=MsoNormal>registers.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Klikatelna linka vedie na</p><p class=MsoNormal>8.5.7.1  Sequence for Write Operation to Configuration Change Protected I/O</p><p class=MsoNormal>Registers</p><p class=MsoNormal>[...]</p><p class=MsoNormal>2. Within four instructions, the software must write the appropriate data</p><p class=MsoNormal>to the protected register.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Cize to treba napisat v asembleri. Bodka.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>wek</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>----- Original Message ---------------</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Subject: RE: Atmel studio / GCC - oprimalizace</p><p class=MsoNormal>   From: Pavel Hudecek <edizon@seznam.cz></p><p class=MsoNormal>   Date: Wed, 1 Apr 2020 16:53:06 +0200</p><p class=MsoNormal>     To: HW-news <hw-list@list.hw.cz></p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Tiny414 v kitu explained nano.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Inicializace hodin:</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>                unsigned char n;</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>                __asm__("cli");</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>                // Main clock source: 20MHz Internal RC Oscillator</p><p class=MsoNormal>                // 20MHz oscillator specified by the OSCCFG.FREQSEL fuse bits=0x02</p><p class=MsoNormal>                // Peripheral clock output on CLKOUT (PORTB, Pin 5): Off</p><p class=MsoNormal>                n=CLKCTRL_CLKSEL_OSC20M_gc | (0<<CLKCTRL_CLKOUT_bp);</p><p class=MsoNormal>                CPU_CCP=CCP_IOREG_gc;</p><p class=MsoNormal>                CLKCTRL.MCLKCTRLA=n;</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>                // Peripheral clock prescaler division ratio: 1</p><p class=MsoNormal>                // Peripheral clock: 20000,000 kHz</p><p class=MsoNormal>                n=0;</p><p class=MsoNormal>                CPU_CCP=CCP_IOREG_gc;</p><p class=MsoNormal>                CLKCTRL.MCLKCTRLB=n;</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Takhle to vygeneroval codevision, pùvodnì tam byly ještì ty pragmy mìnící</p><p class=MsoNormal>optimalizaci, ale odmazal jsem je, aby neprudil že je ignoruje.</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>PH</p><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal>Od: Jan Waclawek</p><p class=MsoNormal>No dobre ale ake je to vlastne AVR? Daju sa v nom vobec programovo menit</p><p class=MsoNormal>hodiny?</p><p class=MsoNormal><o:p> </o:p></p></div></body></html>