PIC16F1824 - ex 11-1: DATA EEPROM READ

PIC, AVR, Arduino, Raspberry Pi, Basic Stamp, PLC mm.
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av Erik M »

Kära TomasL, du kan väl åtminstone hålla reda på vad det är som ska beräknas?
Att jag inte dubbelkollade har liksom inte med saken att göra - när det blivit uppmärksammat och rättat - för andra än sådana som inte kan skilja på problem och onödigt kjäbbel. Är du en sådan?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45270
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av TomasL »

Nja. Jag vill ha saker korrekta, och gör någon fel vill jag att de rättar det, vilket du inte gjort.
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av sodjan »

> Det tolkar åtminstone jag som att row [block] i HEF är på 32 byte.

Ja, *nu* gör du det ja. :-)

> Skillnaden ligger i att normalt flash är 14 bitar.
> HEF är 8 bitar.

Jo, det stämmer. App.noten nämner det. Lite underligt att databladet
inte också nämner det, så vitt jag kan se. Man tabelluppslagningen för
att läsa kan i alla fall bara läsa 8 bitar så det är ingen större skillnad.
Man kan i alla fall inte använda mer än 8 bitar i det övriga flash heller,
om det inte är programkod man skriver. Det är lite otydligt, men det verkar
som att man kan "flasha" programkod till HEF och köra det som vanligt, så
då måste 14 bitar vara tillgängligt. Databladet är inte helt tydligt där...
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45270
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av TomasL »

Gissar att bara 8 bitar är tillgängliga för denna del av minnet vid egenprogrammering.
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av Erik M »

Janne, det har jag gjort hela tiden.
(Jag räknade däremot inte baklänges för att kolla hur många byte exemplet använde sig av, därav blev summan och dess sammanräkning…olika.)
Du har däremot tyckt de ska vara precis som övrigt Flash.

TomasL, lev då som du lär. Vad som syns är din vilja att tjafsa.

Det som kvarstår är att förklara den svindlande hastigheten, jämfört med EEPROM's 4-5ms/byte.

För det ni säger är väl att det tar [hur många det nu är] ms att skriva en rad?
Lite flytande beroende på antal använda och tomma byte, visst.
Men fortfarande en row på … 8 - 10ms var väl den senaste uppgiften?
Hur stor är denna row, i byte räknat för...
...Flash?
...HEF?
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45270
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av TomasL »

Rowens storlek beror på processorn.
När skall du lära dig läsa databladen?
Användarvisningsbild
lillahuset
Gått bort
Inlägg: 13969
Blev medlem: 3 juli 2008, 08:13:14
Ort: Norrköping

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av lillahuset »

Var nu snäll mot Erik.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45270
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av TomasL »

:D
Användarvisningsbild
sodjan
EF Sponsor
Inlägg: 43178
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping
Kontakt:

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av sodjan »

> Du har däremot tyckt de ska vara precis som övrigt Flash.

Det är ingen skillnad, förrutom "HE" biten. Men det påverkar inte skrivningen.

> Det som kvarstår är att förklara den svindlande hastigheten, jämfört med EEPROM's 4-5ms/byte.

Det är ungefär samma hastighet. "Några ms" för *varje enskild skrivoperation*.
Sedan har man gjort så att 32 adresser kan skrivas parallellt på samma gång till flash.

Men om man har 32 olika värden/parametrar som var för sig måste uppdateras vid
olika tidpunkter så blir det mycket mer jobb än om de låg i EEPROM. Eftersom alla
32 bytes måste läsas, raderas och skrivas om för att uppdatera ett enskilt värde.

> För det ni säger är väl att det tar [hur många det nu är] ms att skriva en rad?

Databladen har aktuellt värde på den processor man jobbar med. 2-2.5 ms för 16F1508.

> Lite flytande beroende på antal använda och tomma byte, visst.

Nej, det spelar ingen som helst roll.

> Men fortfarande en row på … 8 - 10ms var väl den senaste uppgiften?

Nej, det var för att skriva 128 bytes, alltså 4 rows.

> Hur stor är denna row, i byte räknat för...

Ja, för vadå? Databladet har värdet för den processor man jobbar med.

> ...Flash?
> ...HEF?

Ingen skillnad. HEF *är* flash, bara med "HE" tillägget.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45270
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av TomasL »

Det som kvarstår är att förklara den svindlande hastigheten, jämfört med EEPROM's 4-5ms/byte.
Det tar faktiskt längre tid att göra en skrivning till FLASH än det tar att göra en skrivning till EEPROM, dock till FLASHen kan du skriva flera byte samtidigt, till skillnad från EEPROMet, på det sättet går det fortare.
Skall du skriva 1 byte till flash tar det betydligt längre tid än att skriva 1 byte till EEPROM.
Erik M
Inlägg: 1380
Blev medlem: 23 februari 2012, 18:34:39
Ort: Göteborg

Re: PIC16F1824 - ex 11-1: DATA EEPROM READ

Inlägg av Erik M »

Ah! Där kom den enkla förklaringen.
Bussbredd. Vilken genomgående är mycket bredare i Stockholm, det vet vem som helst som legat bredvid en vid ett rödljus i huvudstaden...

Sicken väldig tur att jag precis införskaffat en drös med PIC16F1705.
Jag såg framför mig att behöva skrota dem, för att införskaffa ovan nämnda PIC16F1824 - vad bra att jag frågade först! :mrgreen:

Tack för given information. :tumupp:
Skriv svar