| Предишната тема :: Следващата тема |
| Автор |
Съобщение |
jonnyqest Нов потребител

Регистриран на: 13 Фев 2008 Мнения: 2
|
Пуснато на: Сря Фев 13, 2008 19:21 Заглавие: Проблем с програмиране на EEPORM 27C256 |
|
|
| Здравейте. Имам доста голям (според мен) проблем. Трябва да запиша в EEPROM 27C256 най-обикновенни програми, най-вероятно в табличен вид. Проблема ми произлиза от това че не знам как да напиша файла, който трябва да се запише в самата памет. Единственото което знам е че трябва да е в .hex или .bin формат. Аз до сега съм работил само с Асемблер и C и нямам идея как да го напиша този файл. Ако някой може да ми помогне ще съм му много благодарен. |
|
| Върнете се в началото |
|
 |
RC Опитен потребител

Регистриран на: 22 Фев 2003 Мнения: 13214
|
Пуснато на: Сря Фев 13, 2008 19:32 Заглавие: |
|
|
jonnyqest, да ме прощаваш но при така зададен въпрос
| Цитат: | | Трябва да запиша в EEPROM 27C256 най-обикновенни програми, най-вероятно в табличен вид. Проблема ми произлиза от това че не знам как да напиша файла, който трябва да се запише в самата памет |
силно се съмнявам в това
| Цитат: | | Аз до сега съм работил само с Асемблер и C и нямам идея как да го напиша този файл. |
Въпросните формати са стантартни и обикновенно се поддържат от всички програматори.
Разликата е в представянето на "данните" да ги наречем.
И са изхнодни формати от компилатора с който се работи.
Още нещо, тук си объркал или абревиатурата или типа памет.
Заглавието си объркал да речем в бързината. _________________ RemoteControls |
|
| Върнете се в началото |
|
 |
ELP Опитен потребител

Регистриран на: 07 Яну 2004 Мнения: 6933 Местожителство: София
|
Пуснато на: Сря Фев 13, 2008 20:18 Заглавие: |
|
|
| А какъв процесор ще ги ползва тези програми ? При начално стартиране повечето процесори имат т.н. reset вектор ,или начален адрес от паметта където търсят началото на програмата или пренасочване към него . |
|
| Върнете се в началото |
|
 |
woodoman Активен потребител

Регистриран на: 03 Яну 2008 Мнения: 67
|
Пуснато на: Сря Фев 13, 2008 20:24 Заглавие: |
|
|
Пиши за какво ще се използват тези данни и знаеш ли какви трябва да са точно те. _________________ Нека да си помагаме взаимно. Защото ако не си помогнем ние няма кой да ни помогне. |
|
| Върнете се в началото |
|
 |
Niakoi Опитен потребител

Регистриран на: 20 Авг 2006 Мнения: 356 Местожителство: Каръктаун
|
Пуснато на: Сря Фев 13, 2008 20:28 Заглавие: |
|
|
Програмист на совалката - да и ъпдейтва софтуера  _________________ Жица, на която не виждам двата края, не я пипам! |
|
| Върнете се в началото |
|
 |
Комбинатор Опитен потребител

Регистриран на: 31 Окт 2007 Мнения: 310
|
Пуснато на: Чет Фев 14, 2008 20:01 Заглавие: |
|
|
ТИ имаш доста сериозен проблем.
Да всеки микроконтролер има ресет вектор
ORG 000 ;
примерно.
Но много старите микропроцесори имат възможноста да
зареждат машинната команда от ROM-а
Съвременните МИКРОКОНТРОЛЕРИ Програмния брояч (PC)
Зарежда машинната дума от ресет вектора и той задължително
е в вътрешния флаша , rom-а или еепрома,
Вече външните памети като въпросния епром
съдържат само масиви от данни които се използват, от програмата.
Използвам "машинна дума" некоректно но
за това пък е българска.
Щом имаш понятие от асемблер
компилатора който ползваш, трябва да има възможност
да инициализираш масиви от данни, с различна дестинация.
например
при PIC говорим за малките 16-ки
с адрес 2100 началната клетка на вътрешния еепром
или
eeprom char myMas[10]="Hellllloo\0"
и така нататъка
Лошото е че тази памет която си избарал има паралелно подаване на адреса а и данните се извеждат паралелно
и са ти необходими значителен брой портове специално за нея.
Или има вероятност да се ползва логика за да се намали харча
на I/O , Но е по трудно за писане |
|
| Върнете се в началото |
|
 |
jonnyqest Нов потребител

Регистриран на: 13 Фев 2008 Мнения: 2
|
Пуснато на: Пет Фев 15, 2008 21:20 Заглавие: |
|
|
| Може би трябваше да уточня, че епрома ми е управляващото устройство, т.е. че нямам микропроцесор. Сигналите излизащи от епрома управляват МОС драйвери. Затова не знам как точно трябва да ми изглежда програмата. |
|
| Върнете се в началото |
|
 |
RC Опитен потребител

Регистриран на: 22 Фев 2003 Мнения: 13214
|
Пуснато на: Пет Фев 15, 2008 21:45 Заглавие: |
|
|
Последното твърдение е също малко спорно.
За да "управлява" каквото и да било EPROM-a с изходите си трябва да има "някой" който да го тактува, да му генерира адреси и управляващи сигнали за четене ....
Т.е. говорим за някакъв вид "хардуерен автомат" и в този случай е пресилено да се нарече съдържанието на паметта (епрома) - програма. Там наистина трябва да имаш масиви от числа (данни) и компилаторите са си направо излишни .
За да се получи повече яснота по въпроса ще трябва пак да се понапънеш и да си признаеш с повече конкретика какво и как се прави. Пък ако ще да е и някакъв съвсем отнесен пример, но конкретен като реализация за да схванеш принципа.
Все пак какъв е въпроса (основния):
-наясно си какво трябва да има в епрома (като данни разположени на съответните адреси) и не ти е ясно как да го обърнеш това във вид на файл за програмиране?
-или въпроса е по-изначален? |
|
| Върнете се в началото |
|
 |
ELP Опитен потребител

Регистриран на: 07 Яну 2004 Мнения: 6933 Местожителство: София
|
Пуснато на: Пет Фев 15, 2008 23:04 Заглавие: |
|
|
| Има такива схеми на електронни звънци ,това е вид програмен автомат ,с тактов генератор ,брояч на адресите и очевидно 8 изхода ,това са данните ,могат да управляват драйвери или с ЦАП да формират аналогови сигнали . Страхувам се че обикновените методи за програмиране на езици от ниско и високо ниво не са приложими в случая ,трябва да го проектираш като краен автомат -определени входни данни -съответни изходни и така стъпка по стъпка това е ,после запис тестване и пак проби ,докато стане. |
|
| Върнете се в началото |
|
 |
Комбинатор Опитен потребител

Регистриран на: 31 Окт 2007 Мнения: 310
|
Пуснато на: Пет Фев 15, 2008 23:37 Заглавие: |
|
|
Имаше и едни станций за кабелни телевизий, Самоковски май бяха
Те настройваха управляващото напрежение с джъмпери на адресите
и един тактов генератор
Ами да разбере при какъв генериран адрес какво трябва да има на D0-D7, и натам е лесно.
Чете с програматора празната ЕЕPROM и след това ръчно едитва на всяка клетка данните според адресите , ако иска след това може и да я запише.
За тези неща има програмируеми матрици , по лесно е с тях. |
|
| Върнете се в началото |
|
 |
|