|
|
Elektronika.lt portalo forumas
Jūs esate neprisijungęs lankytojas. Norint dalyvauti diskusijose, būtina užsiregistruoti ir prisijungti prie forumo.
Prisijungę galėsite kurti naujas temas, atsakyti į kitų užduotus klausimus, balsuoti forumo apklausose.
Administracija pasilieka teisę pašalinti pasisakymus bei dalyvius,
kurie nesilaiko forumo taisyklių.
Pastebėjus nusižengimus, prašome pranešti.
Dabar yra 2024 11 11, 21:21. Visos datos yra GMT + 2 valandos.
|
|
|
|
Forumas » Mikrovaldikliai » Atmegos atmintis
|
Jūs negalite rašyti naujų pranešimų į šį forumą Jūs negalite atsakinėti į pranešimus šiame forume Jūs negalite redaguoti savo pranešimų šiame forume Jūs negalite ištrinti savo pranešimų šiame forume Jūs negalite dalyvauti apklausose šiame forume
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 16:26 |
|
|
|
Labas!
Taigi iskilo klausimas del vidines atmegos32 atminties.
Programoje naudoju kintamaji
unsigned char bmp[1024]={0x00,0x00,0x00,0x00,0x0.... ir t.t..
Bet jis visas netelpa i ta atminti kur kintamuosius raso
Cia paveiksliuka noriu lcd sukurt..
Sukompiliavus raso "bild succeeded" ir:
AVR Memory Usage
----------------
Device: atmega32
Program: 12878 bytes (39.3% Full)
(.text + .data + .bootloader)
Data: 2740 bytes (133.8% Full)
(.data + .bss + .noinit)
Tai taip suprantu kad negali buti daugiau 100%. O vat "program" atmintyje dar lieka dauk vietos, tai gal butu galima kaip nors ta dideli kintamaji irasyt i ten?
Aciu uz ats |
|
_________________ Aš pažeidžiau forumo taisykles ir reklamavau paraše. ...Bet uz reklama tai susimokejau |
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 16:47 |
|
|
|
kam tau ta paveiskliuka laikyti ram atmintyje? rasyk ji i flash.
flash unsigned char bmp[1024]={0x00,0x00,0x00,0x00,0x0.... ir t.t..
arba
constant unsigned char bmp[1024]={0x00,0x00,0x00,0x00,0x0.... ir t.t.. |
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 16:48 |
|
|
|
Tai aisku, kad tokias nesamones reikia flashe laikyt o ne rame... Nu galima ir eeprome bet speju jis ir tiek vietos neturi.
unsigned char img[] PROGMEM = {};
pgm_read_byte(&img[i]);
kazkas tokio turetu but. |
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 16:57 |
|
|
|
kam i eeproma tai rasyti jei tam yra flash?
be to is flash sjkaityti lengviau be jokiu ten papildomu funkciju
tiesiog prie kinatmojo darasai kad jis turi saugomas flash atmintyje |
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 17:10 |
|
|
|
As nesiulau ten saugot, tiesiog parasiau, kad galima ir ten.
Dabar vienas klausimas ne i tema, ka nurodo inline komanda pries funkcija? |
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 17:23 |
|
|
|
Su "flash" ir "constant" kompiliatorius nesuprato..
tai parasiau :
const unsigned char bmp[1024] = {0x00,0x00.........
sukompiliuoja, bet vistiek rodo tuos pacius atminties uzimtumo procentus |
|
_________________ Aš pažeidžiau forumo taisykles ir reklamavau paraše. ...Bet uz reklama tai susimokejau |
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 17:47 |
|
|
|
#include <avr\pgmspace.h>
const char kintamas[] PROGMEM = {1, 2,...}; |
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 17:59 |
|
|
|
Jega veikia
Taip parasius dideja "program" atminties uzimtumas. Aciu.
O ten kur sneikaz rase "pgm_read_byte(&img[i]); " irgi kompiliojasi, bet taip pagalvojau ten raso read_byte, tai galima tik 1 arba 0 irasyt? Ar toki koki nurodziau "char" t.y. skaiciu iki 255? |
|
_________________ Aš pažeidžiau forumo taisykles ir reklamavau paraše. ...Bet uz reklama tai susimokejau |
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 18:06 |
|
|
|
Bito nuo baito neskiriam?
&img[i] nurodo img pradzios adresa, i nurodo kuri masyvo nari norim pasiimt. Paprasciausiai i++; ir pereis nuo 0 iki 1024. |
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 18:13 |
|
|
|
ai jo tikslei dabar skiriam |
|
_________________ Aš pažeidžiau forumo taisykles ir reklamavau paraše. ...Bet uz reklama tai susimokejau |
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 18:21 |
|
|
|
sneikaz rašo: |
Dabar vienas klausimas ne i tema, ka nurodo inline komanda pries funkcija? |
inline turi reiksti kad funkcija bus iterpta tiesiogiai be call ret ir visokiu steko manipuliaciju ja iskvieciant kas padidina greiti, bet jei funkcija naudojama keleta kartu tai jinai kiekvienoje vietoje bus nukopijuota todel uzims daug daugisu vietos.(tas zinoma menka problema dabar kai tiek atminties daug)
deja nevisi kompiliatoriai i ta kreipia demesi |
|
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 20:07 |
|
|
|
Digix rašo: |
sneikaz rašo: |
Dabar vienas klausimas ne i tema, ka nurodo inline komanda pries funkcija? |
inline turi reiksti kad funkcija bus iterpta tiesiogiai be call ret ir visokiu steko manipuliaciju ja iskvieciant kas padidina greiti, bet jei funkcija naudojama keleta kartu tai jinai kiekvienoje vietoje bus nukopijuota todel uzims daug daugisu vietos.(tas zinoma menka problema dabar kai tiek atminties daug)
deja nevisi kompiliatoriai i ta kreipia demesi |
paprasčiau sakant, tai tampa ne funkcija, o kodo gabalas, kuris yra įkišamas į tą vietą, kur iškvieti funkciją.
daugiau apie visus šituos dalykus rašoma kompiliatorių dokumentacijose. |
|
_________________ nepamirškit, klysti žmogiška
privatas - privatiems klausimams
arch linux |
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 20:15 |
|
|
|
Jei kompiliatorius to nedaro gali tiesiog tapacia funkcija kitaip uzsivadinti |
|
|
|
|
|
Atmegos atmintis |
Parašytas: 2009 08 23, 20:22 |
|
|
|
zvasas rašo: |
Jei kompiliatorius to nedaro gali tiesiog tapacia funkcija kitaip uzsivadinti |
kas tau is to?
sakykim as sukriau funkcija
vien del programos aiskumo
void wait()
{while (PINA & 2)};
tai dabar vietoje to kad visur kisčiau tokia eilute
while (PINA & 2)
rasau
wait();
programa iskart paiskeja
kai kada illine funfijas galima su define pakeisti
sakykim taip
#define wait() while (PINA & 2)
bet jei ji sudetinga ar priima paraetrus tai jau sudetinga |
|
|
|
|
|
|
Google paieška forume |
|
|
Naujos temos forume |
|
|
FS25 Tractors
Farming Simulator 25 Mods,
FS25 Maps,
FS25 Trucks |
|
ETS2 Mods
ETS2 Trucks,
ETS2 Bus,
Euro Truck Simulator 2 Mods
|
|
FS22 Tractors
Farming Simulator 22 Mods,
FS22 Maps,
FS25 Mods |
|
VAT calculator
VAT number check,
What is VAT,
How much is VAT |
|
LEGO
Mänguköök,
mudelautod,
nukuvanker |
|
Thermal monocular
Thermal vision camera,
Night vision ar scope,
Night vision spotting scope |
|
FS25 Mods
FS25 Harvesters,
FS25 Tractors Mods,
FS25 Maps Mods |
|
Dantų protezavimas
All on 4 implantai,
Endodontija mikroskopu,
Dantų implantacija |
|
FS25 Mods
FS25 Maps,
FS25 Cheats,
FS25 Install Mods |
|
GTA 6 Weapons
GTA 6 Characters,
GTA 6 Map,
GTA 6 Vehicles |
|
FS25 Mods
Farming Simulator 25 Mods |
|
|
|