<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="pl-pl">
<link rel="self" type="application/atom+xml" href="https://forum.atnel.pl/feed.php?f=4&amp;t=22855&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2020-02-12T09:21:56+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=4&amp;t=22855&amp;mode</id>
<entry>
<author><name><![CDATA[ProgramistaAVR]]></name></author>
<updated>2020-02-12T09:21:56+01:00</updated>
<published>2020-02-12T09:21:56+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224681#p224681</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224681#p224681"/>
<title type="html"><![CDATA[Re: Wyświetlenie nazwy procesora]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224681#p224681"><![CDATA[
<div class="quotetitle">P3ndz3l3k napisał(a):</div><div class="quotecontent"><br />Niestety o ile bez problemu można odczytać wartość stałej F_CPU (czyli taktowania procka) to kompletnie nie działa<br />MCU (czyli jego typ).<br /></div><br />Odczytanie typu CPU ze stałych kompilatora to jedno, z fuses CPU to inna sprawa.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=21040">ProgramistaAVR</a> — 12 lut 2020, o 09:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[P3ndz3l3k]]></name></author>
<updated>2020-02-09T16:00:20+01:00</updated>
<published>2020-02-09T16:00:20+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224616#p224616</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224616#p224616"/>
<title type="html"><![CDATA[Re: Wyświetlenie nazwy procesora]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224616#p224616"><![CDATA[
<div class="quotetitle">andrews napisał(a):</div><div class="quotecontent"><br />[syntax=c]#define STRINGIFY(x) #x<br />#define TOSTRING(x) STRINGIFY(x)<br /><br />    const char device_name&#91;&#93; PROGMEM = TOSTRING(__AVR_DEVICE_NAME__);[/syntax]<br />Powinno zadziałać, jeśli masz prawidłowo skonfigurowany mikrokontroler w projekcie.<br />Pewną wadą rozwiązania może być to, że nazwa mikrokontrolera będzie napisana małymi literami (czyli np. &quot;atmega328p&quot;).<br /></div><br /><br />Sprawdziłem i działa także wielkie dzięki.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3709">P3ndz3l3k</a> — 9 lut 2020, o 16:00</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[micky]]></name></author>
<updated>2020-02-09T13:36:32+01:00</updated>
<published>2020-02-09T13:36:32+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224612#p224612</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224612#p224612"/>
<title type="html"><![CDATA[Re: Wyświetlenie nazwy procesora]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224612#p224612"><![CDATA[
Zawsze można użyć lub napisać własną funkcję, która by odpowiednio sformatowała nazwę na pożądany ciąg (typu 2 pierwsze z dużej i ostatni znak jeśli jest litera to też z dużej).<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1546">micky</a> — 9 lut 2020, o 13:36</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[andrews]]></name></author>
<updated>2020-02-09T11:21:00+01:00</updated>
<published>2020-02-09T11:21:00+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224611#p224611</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224611#p224611"/>
<title type="html"><![CDATA[Re: Wyświetlenie nazwy procesora]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224611#p224611"><![CDATA[
[syntax=c]#define STRINGIFY(x) #x<br />#define TOSTRING(x) STRINGIFY(x)<br /><br />    const char device_name&#91;&#93; PROGMEM = TOSTRING(__AVR_DEVICE_NAME__);[/syntax]<br />Powinno zadziałać, jeśli masz prawidłowo skonfigurowany mikrokontroler w projekcie.<br />Pewną wadą rozwiązania może być to, że nazwa mikrokontrolera będzie napisana małymi literami (czyli np. &quot;atmega328p&quot;).<br /><br />Jeśli Ci to nie odpowiada, pozostanie chyba tylko ręczne zdefiniowanie własnych nazw najlepiej w osobnym pliku nagłówkowym, coś na podobieństwo pliku <strong><em>io.h</em></strong><br />[syntax=c]#if defined (__AVR_ATmega128__)<br />#  define DEVICE_NAME &quot;ATmega128&quot;<br />// ...<br />#elif defined (__AVR_ATmega128A__)<br />#  define DEVICE_NAME &quot;ATmega128A&quot;<br />#elif defined (__AVR_ATmega1280__)<br />#  define DEVICE_NAME &quot;ATmega1280&quot;<br />#elif defined (__AVR_ATmega1281__)<br />#  define DEVICE_NAME &quot;ATmega1281&quot;<br />#elif defined (__AVR_ATmega1284__)<br />#  define DEVICE_NAME &quot;ATmega1284&quot;<br />#elif defined (__AVR_ATmega1284P__)<br />#  define DEVICE_NAME &quot;ATmega1284P&quot;<br />// itd.<br />#endif[/syntax]<br />spis wszystkich masz <a href="https://www.microchip.com/webdoc/avrlibcreferencemanual/using_tools_1using_avr_gcc_mach_opt.html"  class="postlink">tutaj</a><br />a następnie przypisanie ciągu do zmiennej:<br />[syntax=c]const char device_name&#91;&#93; PROGMEM = DEVICE_NAME;[/syntax]<br />Byłoby trochę pisania, ale przecież nie musisz chyba uwzględniać całego spektrum mikrokontrolerów.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=14165">andrews</a> — 9 lut 2020, o 11:21</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[P3ndz3l3k]]></name></author>
<updated>2020-02-08T22:47:15+01:00</updated>
<published>2020-02-08T22:47:15+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224609#p224609</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224609#p224609"/>
<title type="html"><![CDATA[Wyświetlenie nazwy procesora]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=22855&amp;p=224609#p224609"><![CDATA[
Witam Ponownie wszystkich<br /><br />Chciałbym na wyświetlaczu LCD2x16 wyświetlić nazwę (typ) procesora który właśnie steruje tym wyświetlaczem.<br />W Bluebook-u na stronach 141, 142 jest opisane jak można pobrać typ procesora i co należy dopisać w Eclipse<br />aby takie dane były dostępne.<br />Niestety o ile bez problemu można odczytać wartość stałej F_CPU (czyli taktowania procka) to kompletnie nie działa<br />MCU (czyli jego typ).<br />Próbowałem to zrobić także na Eclipse Indigo z WinAVR na XP-eku i także mi to nie działa pomimo wpisania <br />Project properties -&gt; C/C++Build -&gt; Settings -&gt; AVR Compiler -&gt; Miscellanous -&gt; Other flags -&gt; -DMCU=$(AVRTARGETMCU)<br /><br />Siedziałem nad tym dzisiaj z pół dnia i nie udało mi się znaleźć rozwiązania.<br />Na naszym forum znalazłem bardzo stary wątek <a href="https://forum.atnel.pl/topic7016.html?hilit=AVRTARGETMCU"  class="postlink">https://forum.atnel.pl/topic7016.html?hilit=AVRTARGETMCU</a><br /><br />Gdzie użytkownik &quot;wat1970&quot; miał podobny problem jednak dla niego rozwiązaniem było <br />zastosowanie zamiast MCU     __AVR_ATmega328__<br />Co nie jest dla mnie rozwiązaniem.<br /><br />Pozdrawiam Paweł.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=3709">P3ndz3l3k</a> — 8 lut 2020, o 22:47</p><hr />
]]></content>
</entry>
</feed>