Problem jest następujący.
Potrzebuje przesłać plik txt zawierający różne współrzędne oraz parametry maszynowe z PC do mikrokontrolera, który z kolei zapisze te dane do pamięci, najlepiej flash.
Nie bardzo wiem jak się do tego zabrać, Czy wogóle w bascomie jest to wykonalne, czy trzeba pisać w C.
Z samą transmisją nie powinno być problemu, programiki do transmisji też mam, gorzej z zapisaniem w pamięci. transmisja pójdzie bajt po bajcie, trzeba to odpowiednio poukładać. Dane będą później sekwencyjnie pobierane z pamięci i wykorzystane do obliczenia ścieżki ruchu
Aktyw Forum
Zarejestruj się na forum.ep.com.pl i zgłoś swój akces do Aktywu Forum. Jeśli jesteś już zarejestrowany wystarczy, że się zalogujesz.
Sprawdź punkty Zarejestruj sięRVR , RS232 i pamięć flash
Moderatorzy:Jacek Bogusz, robertw, k.pawliczak, Moderatorzy
nie widzę za bardzo problemu. jeżeli chcesz wykorzystać zewnętrzny flash jako RAM, a nie flash programu.
w drugim przypadku jeżeli powstanie zakłócenie to może ci nadpisać wykonywalny program.
a jeśli chodzi o flash zewnętrzny to wykorzystaj taki na SPI lub I2C. proponuje RAMTRON na SPI, jest obsługiwany przez BASCOM'a. Można go tak ustawić że korzysta z niej jak z pamięci dodatkowej RAM która po wyłączeniu nie kasuje się, ale procek musi mieć sprzętowe SPI.
w drugim przypadku jeżeli powstanie zakłócenie to może ci nadpisać wykonywalny program.
a jeśli chodzi o flash zewnętrzny to wykorzystaj taki na SPI lub I2C. proponuje RAMTRON na SPI, jest obsługiwany przez BASCOM'a. Można go tak ustawić że korzysta z niej jak z pamięci dodatkowej RAM która po wyłączeniu nie kasuje się, ale procek musi mieć sprzętowe SPI.
Dane muszą być zapamiętane nawet po wyłączeniu zasilania.
Przesłane dane to tzw. kod cnc ( np. współrzędne x, y , parametry itp. )
Trzeba to zapisać do zewnętrznej pamięci. Myśle że ostatecznie większy eprom powinien też wystarczyć. pliki będą miały maksymalnie 1 MB . Większa pamięć daje możliwość wgrania kilku plików. Pamięć flash na spi to byłby ful wypas.
Zawsze korzystałem w swoich programach z wewnętrznego eproma.
Nie wiem jak jest z zewnętrznymi pamięciami. Przy pamięciach flash są bloki, strony, różne komendy zapisu, odczytu. Interesuje mnie to jak to trzeba napisać w bascomie
Przesłane dane to tzw. kod cnc ( np. współrzędne x, y , parametry itp. )
Trzeba to zapisać do zewnętrznej pamięci. Myśle że ostatecznie większy eprom powinien też wystarczyć. pliki będą miały maksymalnie 1 MB . Większa pamięć daje możliwość wgrania kilku plików. Pamięć flash na spi to byłby ful wypas.
Zawsze korzystałem w swoich programach z wewnętrznego eproma.
Nie wiem jak jest z zewnętrznymi pamięciami. Przy pamięciach flash są bloki, strony, różne komendy zapisu, odczytu. Interesuje mnie to jak to trzeba napisać w bascomie
to ich strona
http://www.ramtron.com/
te układy są obsługiwane przez BASCOM, zobacz HELP do niego, ja używałem procka 89S8252 i 89S53 mają wew SPI
"Przy pamięciach flash są bloki, strony, różne komendy zapisu, odczytu. "
jeżeli będziesz wykorzystywał go z poziomu BASCOM'a to tworzysz np tablice kilkusetbajtową wskazując na zewnętrzny RAM (tron) np
$ramtron
....
....
dim DUPA(2000) as XRAM byte
...
...
i w programie wpisujesz do tablicy dane. Jeżeli chcesz wgrywać pliki to nawet lepiej używać zmiennej tablicowej.
"pliki będą miały maksymalnie 1 MB "
chyba aż takich nie mają. ale RAMTRON daje wieczystą gwarancje na ich ciągłe zapisywanie ( także te na 5V, jak się zepsuje to ci wymienią), może jakoś to wykorzystasz.
http://www.ramtron.com/
te układy są obsługiwane przez BASCOM, zobacz HELP do niego, ja używałem procka 89S8252 i 89S53 mają wew SPI
"Przy pamięciach flash są bloki, strony, różne komendy zapisu, odczytu. "
jeżeli będziesz wykorzystywał go z poziomu BASCOM'a to tworzysz np tablice kilkusetbajtową wskazując na zewnętrzny RAM (tron) np
$ramtron
....
....
dim DUPA(2000) as XRAM byte
...
...
i w programie wpisujesz do tablicy dane. Jeżeli chcesz wgrywać pliki to nawet lepiej używać zmiennej tablicowej.
"pliki będą miały maksymalnie 1 MB "
chyba aż takich nie mają. ale RAMTRON daje wieczystą gwarancje na ich ciągłe zapisywanie ( także te na 5V, jak się zepsuje to ci wymienią), może jakoś to wykorzystasz.
Zmontowałem swój układ, wykorzystałem eeprom 24c32, taki miałem pod ręką. Wszystko działa fajnie tylko że eeprom ma długi czas zapisu i przy transmisji powyrzej 600 Bd nie nadąża zapisywać danych.
Odnośnie pamięci flash RAM(tron) to:
1.Gdzie to można kupić? w polsce
2.Czy jak zastosuje pamięć flash np. ATMELA jako XRAM to będzie to samo?
Zastanawia mnie jeszcze jedno. Podłączam pamięć Flash jako XRAM. Konfiguruje ją w bascomie i robię sobie w programie np. 5000 zmiennych.
Wiadomo, sama zawartość tych zmiennych zostanie zapisama w pamięci zewnętrznej, ale na samo zaadresowanie jej bascom użyje pamięci wewnętrznej mikrokontrolera.
Czy po skonfigurowaniu obsłubi XRAM w bascomie cała pamięć jest już automatycznie adresowana, a swoją tablice mogę robić sobie do woli?
czy adresowane są komórki te , z krórych kożystam?
Odnośnie pamięci flash RAM(tron) to:
1.Gdzie to można kupić? w polsce
2.Czy jak zastosuje pamięć flash np. ATMELA jako XRAM to będzie to samo?
Zastanawia mnie jeszcze jedno. Podłączam pamięć Flash jako XRAM. Konfiguruje ją w bascomie i robię sobie w programie np. 5000 zmiennych.
Wiadomo, sama zawartość tych zmiennych zostanie zapisama w pamięci zewnętrznej, ale na samo zaadresowanie jej bascom użyje pamięci wewnętrznej mikrokontrolera.
Czy po skonfigurowaniu obsłubi XRAM w bascomie cała pamięć jest już automatycznie adresowana, a swoją tablice mogę robić sobie do woli?
czy adresowane są komórki te , z krórych kożystam?
Odnośnie pamięci flash RAM(tron) to:
1.Gdzie to można kupić? w polsce
to kupowałem tylko przez przedstawiciela, nie widziałem tego nigdy w sklepie elektronicznym
www.citworld.com, wybierz wersję polską
tel (71) 79 30 500
2.Czy jak zastosuje pamięć flash np. ATMELA jako XRAM to będzie to samo?
nie wiem, o ile mi wiadomo to pamięć RAMTRON ma nieskończoną ilość zapisów/kasowania co umożliwia korzystanie z niej jak z RAMu, a pamięci ATMEL'a nie znam.
Zastanawia mnie jeszcze jedno. Podłączam pamięć Flash jako XRAM. Konfiguruje ją w bascomie i robię sobie w programie np. 5000 zmiennych.
Wiadomo, sama zawartość tych zmiennych zostanie zapisama w pamięci zewnętrznej, ale na samo zaadresowanie jej bascom użyje pamięci wewnętrznej mikrokontrolera.
nie za bardzo chyba rozumiem.
gdzie znajduje sie dana zmienna wie sam program, bascom używa do odczytu/zapisu do RAMTRON'a rejestrów SFR, niczego nie lokuje w RAM'ie wewnętrznym procka
Czy po skonfigurowaniu obsłubi XRAM w bascomie cała pamięć jest już automatycznie adresowana, a swoją tablice mogę robić sobie do woli?
[i/]
nie korzystałem z opcji bezpośredniego adresowania pamięci XRAM, zostawiałem to BASCOM'owi podczas deklaracji zmiennych, ja się odwoływałem albo do nazw zmiennych albo do tablicy.
czy adresowane są komórki te , z krórych kożystam?
[i/]
wyjaśniłem to lub nie rozumiem
Kto jest online
Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 31 gości