<?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=23&amp;t=796&amp;mode" />

<title>ATNEL tech-forum</title>
<link href="https://forum.atnel.pl/index.php" />
<updated>2014-11-07T13:35:34+01:00</updated>

<author><name><![CDATA[ATNEL tech-forum]]></name></author>
<id>https://forum.atnel.pl/feed.php?f=23&amp;t=796&amp;mode</id>
<entry>
<author><name><![CDATA[WoodPaker]]></name></author>
<updated>2014-11-07T13:35:34+01:00</updated>
<published>2014-11-07T13:35:34+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=102797#p102797</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=102797#p102797"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=102797#p102797"><![CDATA[
PICe są o tyle fajne i zarazem trudne, że posiadają tylko kilka instrukcji w assemblerze. Większość rzeczy uzyskuje się poprzez intsrukcje wejścia/wyjścia. Ta minimalizacja bardzo ułatwia zapamiętanie mnemoników ale powoduje, że kod staje się mniej czytelny niż w MEGACH i trudniejszy do napisania. Natomiast kod napisany pod PICa w C jest dość łatwo przerabialny na MEGOWEGO C. Znaczy inaczej. Da się to łatwo zrobić. Jako przykład proszę poczytać kod w C dla PICa z tej strony. <!-- m --><a class="postlink" href="http://www.electronics-lab.com/projects/mcu/015/" >http://www.electronics-lab.com/projects/mcu/015/</a><!-- m -->  lub <!-- m --><a class="postlink" href="http://www.circuitvalley.com/2011/12/two-wire-serial-lcd-16x2-graphics.html" >http://www.circuitvalley.com/2011/12/tw ... phics.html</a><!-- m --> Prawda, że wygląda podobnie jak MEGA C?<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=1425">WoodPaker</a> — 7 lis 2014, o 13:35</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[lauba1]]></name></author>
<updated>2014-11-07T13:05:37+01:00</updated>
<published>2014-11-07T13:05:37+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=102792#p102792</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=102792#p102792"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=102792#p102792"><![CDATA[
<div class="quotetitle">SunRiver napisał(a):</div><div class="quotecontent"><br />Jak wiemy z noty nasza pamięć posiada 1MegaBit pojemności na 8 stronach adresowych<br />czyli 128 x 8 = 1024bajty czyli 1Kbajt pojemności.<br /></div><br />Sun nie łapie tego jakoś:<br /><br />skoro mamy pamięć 1 Mega Bit czyli jest to 1024 kilo Bitów, a to jest znowu  1024 * 1024 Bitów czyli 1048576 Bitów, tak się to liczy?<br />Bo wtedy nie rozumiem do końca tego już zapisu czyli 128 x 8 = 1024bajty czyli 1Kbajt pojemności, chyba sam już za dużo zacząłem kombinować ;p<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=291">lauba1</a> — 7 lis 2014, o 13:05</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kierlan]]></name></author>
<updated>2012-01-24T16:33:22+01:00</updated>
<published>2012-01-24T16:33:22+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2053#p2053</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2053#p2053"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2053#p2053"><![CDATA[
moj mały faworyt jeśli chodzi o minimalizacje :] czekam na Pickita tylko, bo zaopatrzenie w pice juz mam <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=84">kierlan</a> — 24 sty 2012, o 16:33</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2012-01-24T16:13:33+01:00</updated>
<published>2012-01-24T16:13:33+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2051#p2051</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2051#p2051"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2051#p2051"><![CDATA[
A się wyrwał z 10 siatkami <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> łobuz jeden:)<br /><br />ale fakt PIC10F322 jest dosyć ciekawy mimo niewielkich wymiarów i 6 nóżek <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br />posiada spore zasoby:)<br /><br />0,896 KB flash<br />osiąga 4 mipsy <br />64bajty ram<br />2 8 bitowe timery<br />3kanałowy 9 bitowy ADC<br />działa w zakresie napiec 1.8 - 5.5V<br />i ma 40 lat gwarancji na pamiec Data flash <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br />i wiele innych:)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 24 sty 2012, o 16:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kierlan]]></name></author>
<updated>2012-01-24T15:59:35+01:00</updated>
<published>2012-01-24T15:59:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2050#p2050</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2050#p2050"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2050#p2050"><![CDATA[
ciekawe są też PIC10F wielkości tranzystorka SMD <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=84">kierlan</a> — 24 sty 2012, o 15:59</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2012-01-24T16:03:26+01:00</updated>
<published>2012-01-24T15:50:16+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2049#p2049</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2049#p2049"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2049#p2049"><![CDATA[
w zasadzie to wygląda tak w uproszczeniu że dostajemy sprzętowy USB który pracuje na sterownikach HID   chyba najprostszym przykładem <br />może być zbudowany na 18F2550  programator, debuger, USB-RS , analizator stanów logicznych czyli PICKIT2  <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><br /><br />Albo na trochę większym bracie odpowiedniku ATmegi32  PIC18F4550  płytka PICDEM  gdzie przez USB mamy bezpośredni dostęp<br />do sprzętu na płytce i jego monitorowanie włącznie z bootloaderem  na USB  bez przejściówek typu FTDI i komplikowania sobie życia<br />w sposób znany z AVR np poprzez oprogramowanie CDC , po prostu dostajesz od Microchipa kompletna klasę USB  wraz ze sterownikiem HID <br />oraz wymaganym VID i PID  nie mówiąc o tym że możesz wystapic o nadanie własnych nieodpłatnie.<br /><br /><a href="http://forum.atnel.pl/_obrazki/o/58_9436634074a1e48059ac713559de83bf.jpg"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/58_9436634074a1e48059ac713559de83bf.jpg" alt="Obrazek" /></a><br /><br />a na kompie po podłączeniu działa to tak:<br /><a href="http://forum.atnel.pl/_obrazki/o/58_8e3a4c3ff8aa514166ba39c6881cf133.JPG"  class="postlink"><img src="http://forum.atnel.pl/_obrazki/o/thumb/58_8e3a4c3ff8aa514166ba39c6881cf133.JPG" alt="Obrazek" /></a><br /><br />No i najważniejsze co nie zauważyłeś jest to USB 2.0<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 24 sty 2012, o 15:50</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-01-24T15:41:23+01:00</updated>
<published>2012-01-24T15:41:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2048#p2048</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2048#p2048"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2048#p2048"><![CDATA[
O!!! czytając w końcu na temat ala odpowiednika ATmega328 wśród PIC'owej braci - szybko skoczyłem do sklepu tuż za internetowym rogiem, żeby zasięgnąć języka co ten procesorek ma w sobie jeszcze - aby się choć troszkę przekonać do PIC'ków. Pomyślałem, że czymś mnie miło może zaskoczy....<br /><br />Zatem poza rodzajami pamięci, które pięknie kolega SunRiver porównał (dzięki - bo ja nie jestem w stanie się połapać w tych PIC'kach) .... jak się sprawa ma z innymi peryferiami.<br /><br />1. Pamięci EEPROM maławo bo tylko 256 bajtów - no ale co tam - aż tak często się z niej nie korzysta<br />2. 1xUART + SPI/I2C - ATmega328 tyż posiada<br />3. 1xTimer 8-bit + 3xTimer16bit <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ... wow tu już banan się pokazał - dużo lepiej niż w ATmega328<br />4. 10 kanałowy ADC hmm też trochę lepiej<br />5. 1xUSB .... no no nooo ... ładnie, nawet bardzo ładnie<br /><br />(SunRiver - przestań!, bo przez ciebie jeszcze mnie coś podkusi i wezmę w ręce te kocie PIC'e) <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /><br /><br />A tak na poważnie - to może podpowie kolega SunRiver jak to jest (tak ogólnie mi chodzi a nie o szczegóły) z praktycznym wykorzystaniem tego USB w procku zarówno od strony procka-programu jak i szczególnie od strony PC ????<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 24 sty 2012, o 15:41</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2012-01-24T15:39:12+01:00</updated>
<published>2012-01-24T15:39:12+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2047#p2047</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2047#p2047"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2047#p2047"><![CDATA[
Uprzedzając pytania dotyczące tych magicznych 14 bitów w PIC <br />dodam jeszcze tylko tyle że budowa procesorów PIC podobnie jak ATMega opiera się na architekturze harvardzkiej, <br />tzn. mają oddzieloną pamięć danych od pamięci programu ale Pice dodatkowo mają  dwie oddzielne magistrale o różnej<br />szerokości słowa. Dla pamięci programu są stosowane słowa 14-bitowe, natomiast pamięć danych jest 8-bitowa. <br />Dlatego procesory PIC są zaliczane do grupy procesorów 8-bitowych.<br />Dzięki tak długim słowom pamięci programu w pojedynczej instrukcji może być zawarty<br />zarówno kod, jak i argument (argumenty) operacji, wskutek czego liczba słów<br />możliwych do zapamiętania w pamięci odpowiada liczbie możliwych do wykonania<br />instrukcji. W przypadku architektury tradycyjnej jedna komórka zawiera zwykle kod<br />operacji, a kolejne – argumenty. Dlatego kod wynikowy takich samych programów<br />jest zazwyczaj dla procesorów PIC nieco krótszy.<br />W procesorach zastosowano potokowy system pracy ( pipeline), w którym procesor<br />podczas wykonywania rozkazu pobiera z pamięci następny, co sprawia wrażenie, że<br />wykonanie rozkazu trwa tylko jeden cykl maszynowy.<br />Wszystkie rejestry specjalne procesora – SFR ( Special Function Register) – odwzorowane<br />są w pamięci RAM i są dostępne tak samo jak inne komórki pamięci,<br />tzn. poprzez adresowanie bezpośrednie lub pośrednie. Pomysł ten nazwano koncepcją<br />tablicy rejestrów ( Register File Concept).<br />Inną interesującą cechą procesorów PIC jest to, że w każdym słowie pamięci programu<br />może być umieszczony zarówno argument, jak i wynik operacji, tradycyjnie<br />przesyłany do akumulatora. Jego rolę pełni w tych procesorach rejestr roboczy oznaczony<br />jako W ( Working Register). Brak wyjątków, obecnych zazwyczaj w takich<br />przypadkach, bardzo upraszcza programowanie procesora. Cechę tę producent nazywa<br />symetrią lub ortogonalnością instrukcji. Teraz mam nadzieje ze stało się już wszystko jasne.<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 24 sty 2012, o 15:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kierlan]]></name></author>
<updated>2012-01-24T15:34:54+01:00</updated>
<published>2012-01-24T15:34:54+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2046#p2046</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2046#p2046"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2046#p2046"><![CDATA[
nio pice są dosyć ciekawymi i fajnymi &quot;kuzynami&quot; AVR <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=84">kierlan</a> — 24 sty 2012, o 15:34</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2012-01-24T15:08:35+01:00</updated>
<published>2012-01-24T15:08:35+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2045#p2045</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2045#p2045"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2045#p2045"><![CDATA[
No przepraszam wszystkich za mała pomyłeczkę w istocie babcia M8 ma 1Kb pamięci SRAM <br />czyli 1024 bajty  czyli  8kilobitów (8192bity) w istocie strzeliłem byka.<br /><br />Co zaś do pamięci PIC to posłużę się jako przykładem  układem PIC18F2550 można by rzec taka PICKOWA mega8 oczywiście w dużym uproszczeniu<br />Procesor ten posiada Fizycznie 32Kbajty pamięci Flash co pozwala na zmieszczenie w niej 16384 instrukcji 8 bitowych.<br />posiada 2Kbajty (2048bajtów) pamięci SRAM i 256bajtów EEprom.  No dobra taka pickowa mega328 <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> i tu jest wszystko tak samo jak w AVR, ale <br />jak słusznie zauważył kolega Mirek niektóre pice posiadają bardzo dziwne ilości pamięci pogrupowane w słowa 14 bitowe d-word  ale jest to spowodowane tylko i wyłącznie oszczędnością pamięci i instrukcji gdzie po prostu zrealizowano dla uproszczenia UWAGA !!<br /><br />bajt 7 bitowy <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" />  spowodowane jest to tym, że nic nie tracimy na funkcjonalności , po prostu obcinany jest nieznaczący bit z instrukcji.<br />to działa tak jak kasowanie w wyniku pomiaru zera nieznaczącego.<br /><br />gdzie przykładem może być np PIC16F690 <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> gdzie pamięć jest zorganizowana w 4096 × 14-bitowych słów <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /> <br />to tak w bardzo dużym skrócie, bo geneza tego rozwiaząnia jest trochę długa i przynudnawa , ale wierzcie mi na słowo ma głębszy sens<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 24 sty 2012, o 15:08</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[kierlan]]></name></author>
<updated>2012-01-24T14:39:08+01:00</updated>
<published>2012-01-24T14:39:08+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2044#p2044</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2044#p2044"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2044#p2044"><![CDATA[
zgadzam się 1 kilobajt <img src="https://forum.atnel.pl/images/smilies/icon_razz.gif" alt=":P" title="Pokazuje język" /> jest drobna pomyłeczka <img src="https://forum.atnel.pl/images/smilies/icon_e_smile.gif" alt=":)" title="Szczęśliwy" /><p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=84">kierlan</a> — 24 sty 2012, o 14:39</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[mirekk36]]></name></author>
<updated>2012-01-24T14:13:17+01:00</updated>
<published>2012-01-24T14:13:17+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2043#p2043</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2043#p2043"/>
<title type="html"><![CDATA[Re: Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2043#p2043"><![CDATA[
<div class="quotetitle">SunRiver napisał(a):</div><div class="quotecontent"><br />Pamięć SRAM           1Kbit          (1024 bity /8  co nam daje 128 słów 8 bitowych (bajtów))<br /></div><br /><br />No ale tu chyba wkradła się mała pomyłka ? hmmm ?<br /><br />Babcia ATmega8 ma jednak 1024 bajty pamięci RAM dostępnej dla śmiertelnika, który chce jej używać. Czyli jednak 1 Kilo Bajt a nie 1 Kilo Bit. Tak mi się wydaje przynajmniej - na ile znam ten procek.<br /><br /><br />natomiast to:<br /><div class="quotetitle">SunRiver napisał(a):</div><div class="quotecontent"><br />Pamięć Flash            8 Kbajtów  (8192-słowa 8bitowe )<br /></div><br /><br />Bym uzupełnił może tak:<br />Pamięć Flash            8 Kbajtów  (8192-bajty )<br />Jednak pamięć zorganizowana jest w postaci słów, gdzie słowo oznacza dwa bajty. Pisząc jeden, nawet najprostszy rozkaz asemblera np NOP zajmujemy w tejże pamięci nie 1 bajt ale aż 2 bajty !!! (CAŁE SŁOWO)<br /><br />W efekcie pamięci flash dla programu posiadamy w ATmega8 tak na prawdę nie 8KBajtów a 4KSłowa (tak się to powinno określać) .... czyli możemy zapisać tylko 4096 rozkazów !!! i ani jednego więcej.<br /><br />W przypadku np procków PIC 8-bitowych pamięć FLASH podaje się i słusznie w KBajtach ale tu to już jest jak dla mnie przynajmniej wolna amerykanka (dlatego może są bardziej popularne w Ameryce <img src="https://forum.atnel.pl/images/smilies/icon_e_wink.gif" alt=";)" title="Puszcza oko" /> ) mają one np organizację pamięci w słowa 14-bitowe ..... brrrr Przez to np nie da się optymalnie wykorzystać pamięci Flash do załadowana jakichś danych 8-bitowych. A w przypadku AVRów - spokojnie w jednym słowie 16-biotowym upakujemy pięknie dwa bajty danych.... Może się gdzieś mylę w przypadku PIC'ów - ale na pewno zaraz mnie kolega SunRiver sprowadzi na ziemię i sprostuje. (ja z góry przepraszam, jeśli coś w sprawie PIC'ków namieszałem)<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=54">mirekk36</a> — 24 sty 2012, o 14:13</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[SunRiver]]></name></author>
<updated>2012-01-24T14:03:23+01:00</updated>
<published>2012-01-24T14:03:23+01:00</published>
<id>https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2042#p2042</id>
<link href="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2042#p2042"/>
<title type="html"><![CDATA[Flasha, RAMU i EEProma mi brak.]]></title>

<content type="html" xml:base="https://forum.atnel.pl/viewtopic.php?t=796&amp;p=2042#p2042"><![CDATA[
Kwestia zasobów mikrokontrolera jest szczególnie ważna podczas pisania programu i dobór właściwego <br />jest bardzo ważny. Znamy wiele krzyków z elektrody gdzie wielu pisze &quot; ATMega8 do czegoś takiego tu wystarczy TINY&quot; Zapewne jest w tym wiele racji , ale należy też pamiętać o tym że większość zasobów <br />wyrażana jest w kilobitach nie kilobajtach. Początkujący maja wiele problemów z rozróżnieniem wartości<br />i panowaniem nad wieloma czynnikami wpływającymi na program, takimi jak stos, rejestry itd często też<br />udaje się im skompilować program który ... jakimś cudem nie mieści się w pamięci procesora dlaczego tak się dzieje??<br /><br />Tu oprzemy się na naszej małej Medze8  <br /><br />Jest ona mała i popularna oraz w większości przypadków aż za dobra do projektów wiec słów kilka:<br /><br />Pamięć Flash            8 Kbajtów  (8192-słowa 8bitowe )<br />Pamięć EEPROM        512 bajtów (512 - słów 8bitowych)<br />Pamięć SRAM           1Kbit          (1024 bity /8  co nam daje 128 słów 8 bitowych (bajtów))<br /><br />Jak widać zależności SRAM mamy bardzo mało a musi się w nim wiele zmieścić.<br /><br />Skoro jednak mega 8 ma 8Kb Flasha to czym się przejmować i dlaczego w poście o delayu podałem wartości po kompilacji w bitach. To proste kompilator arduino którego używam wersja 022 dostosowana do Sunduino  wyświetla  po kompilacji objetość pliku wynikowego w bitach właśnie. <br /><br />I teraz liczymy to następujaco:<br /><br />1bit = 1bit <br />8bitów =  (słowo 8bitowe)<br />1024bity = 1 kilobit<br /><br />jak z tego wynika wystarczy ilość kilobitów podzielić przez  8 co nam daje liczbę 8bitowych słów czyli bajtów programu.<br /><br />W samej pamięci flash nie jest to aż tak istotne , ale w przypadku pamięci SRAM czy popularnych EEpromów zewnętrznych oraz pamięci DATAFLASH  to już kwestia 1 wagi.<br /><br />Pojemność pamięci zewnętrznych EEprom jest zawsze wyrażana w KILO BITACH  i tu najwięcej <br />popełnia się błędów dlatego że :<br /><br />Kupiliśmy sobie wielkiego eeproma, a co wystarczy na duuuużooo  np:<br />kostka serial EEProm 24AA1026 posiadająca zasoby na poziomie 1MB dużo prawda nic bardziej mylnego.<br />Pamięć ta jest wyrażona w MegaBITACH  czyli jest to aż 1024kilobity. Czyli ile tak właściwie??<br /><br />można to obliczyć następująco:<br /><br />Jak wiemy z noty nasza pamięć posiada 1MegaBit pojemności na 8 stronach adresowych<br />czyli 128 x 8 = 1024bajty czyli 1Kbajt pojemności.<br /><br />Warto o tym pamiętać. Podobnie jest z pamięciami  DATA FLASH i Serial SRAM ... oraz SRAM zawartymi<br />w procesorach.<br /><br />W zasadzie w mikrokontrolerach wprowadzono z bajtami pewnego rodzaju uproszczenie.<br />ponieważ ich pamięć flash jest przeliczana na słowa 8 bitowe (z racji ilości bitów w rejestrach) <br />W związku jednak z naleciałością komputeryzacyjną stosuje się do wyrażania tej pamięci jednostkę <br />bajt (słowo 8 bitowe) a w stosunku do innych pamięci stosuje się bit lub wielokrotność kilobit<br /><br />tak wiec zapis:<br />1Kb = 1 kilobajt <br />a<br />1KB = 1 kilobit   <br /><br />różnica jest taka że  <br /><br />1Kb = 1024 bajty =  819 2bity<br />natomiast<br />1KB = 1024 bity = 128 bajtów<p>Statystyki: Napisane przez <a href="https://forum.atnel.pl/memberlist.php?mode=viewprofile&amp;u=58">SunRiver</a> — 24 sty 2012, o 14:03</p><hr />
]]></content>
</entry>
</feed>