АвторСообщение



Пост N: 7
Зарегистрирован: 09.03.13
Рейтинг: 0
ссылка на сообщение  Отправлено: 18.05.13 18:50. Заголовок: Попытка записать и прочитать байты в flash память PIC18F452


#include "built_in.h"
unsigned short i = 0;
unsigned long addr=0x0003dc;
unsigned short dataWr[64] =
{1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,
1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,
1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,
1,2,3,4};
void Flash_Write_Secto(long address, char *sdata) {
unsigned short saveintcon, i, j;

saveintcon = INTCON;
//--- erase memory
TBLPTRL = Lo(address);
TBLPTRH = Hi(address);
TBLPTRU = Higher(address);
//--- required erase sequence
EECON1.EEPGD = 1;
EECON1.CFGS = 0;
EECON1.WREN = 1;
EECON1.FREE = 1;
INTCON.GIE = 0;
EECON2 = 0x55;
EECON2 = 0xAA;
EECON1.WR = 1;
INTCON.GIE = 1;
asm TBLRD*- ;
//--- write memory
FSR0L = Lo(sdata);
FSR0H = Hi(sdata);
j = 0;
while (j <= 7) {
i = 0;
while (i <= 7) {
TABLAT = POSTINC0;
asm {
TBLWT+*
}
i++;
}
EECON1.EEPGD = 1;
EECON1.CFGS = 0;
EECON1.WREN = 1;
INTCON.GIE = 0;
EECON2 = 0x55;
EECON2 = 0xAA;
EECON1.WR = 1;

j++;
}
INTCON.GIE = 1;
EECON1.WREN = 0;
//--- restore interrupt
INTCON = saveintcon;
}//~
void main() {
PORTB = 0;
TRISB = 0;
Flash_Write_Secto(addr, dataWr);
addr=0x0003dc;
for (i = 0; i <= 63; i++) {
PORTB = Flash_Read(addr++);

}

}//~!

В программе PIC 18 Simulator в регистр TABLAT запись проходит и чтение тоже а результата ноль.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 6 [только новые]


постоянный участник


Пост N: 205
Зарегистрирован: 01.03.11
Рейтинг: 2
ссылка на сообщение  Отправлено: 18.05.13 18:55. Заголовок: а в симуляторе мплаб..


а в симуляторе мплаб?

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 8
Зарегистрирован: 09.03.13
Рейтинг: 0
ссылка на сообщение  Отправлено: 18.05.13 19:07. Заголовок: У меня нету такого с..


У меня нету такого симулятора.
В протеусе тоже не работает.
Вот по этой ссылке можно скачать .hex проекта http://www.cyberforum.ru/microcontrollers/thread869565.html
Если у вас есть мплаб то не могли бы вы прогнать?

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 606
Зарегистрирован: 01.03.11
Рейтинг: 3
ссылка на сообщение  Отправлено: 19.05.13 07:37. Заголовок: MPLAB бесплатная сре..


MPLAB бесплатная среда разработки со встроенным симулятором. Скачивается на микрочип.
Или у меня опять признаки склероза?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 375
Зарегистрирован: 25.09.09
Откуда: г.Саратов
Рейтинг: 1
ссылка на сообщение  Отправлено: 19.05.13 19:41. Заголовок: Работаю с компилятор..


Работаю с компилятором BoostC C Compiler. Симулятор Proteus. Дилетант в Си.
VladimirUV пишет:

 цитата:
в регистр TABLAT запись проходит и чтение тоже а результата ноль.


Сам разделил бы задачу выполнения приведенного кода на 2 этапа:
- запись и чтения массива в ROM,
- вставка Inline asm.
Для записи в ROM я использую команду rom char*data={11,0x64,......}; Есть ограничения на её использование. Простое объявление массива забивает ОЗУ, что для моих 16Fxxx чревато бедствием.Читай описание своего компилятора для этого этапа. Этот этап пробовал на схеме в Proteus с индикацией результата на LCD 2x16.
Второй этап - аналогичное освоение. См. в описании своего компилятора, как общается программа с переменными вставки.
Если всё это тебе известно, то удачи.



Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 9
Зарегистрирован: 09.03.13
Рейтинг: 0
ссылка на сообщение  Отправлено: 20.05.13 14:29. Заголовок: Похоже у меня пробле..


Похоже у меня проблемы с компилятором.
BoostC C Compiler платный?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 376
Зарегистрирован: 25.09.09
Откуда: г.Саратов
Рейтинг: 1
ссылка на сообщение  Отправлено: 20.05.13 17:46. Заголовок: VladimirUV пишет: B..


VladimirUV пишет:

 цитата:
BoostC C Compiler платный?


Погугли. Мой встроен в среду IDE, которая требует таблетку от жадности. Среда FlowCode for PIC, со своими заморочками. Советовать что-либо в этом плане не буду. Инструментарий для любого ремесла - дело почти интимное.
VladimirUV пишет:

 цитата:
Похоже у меня проблемы с компилятором.


Глянь компилятор Hi-Tech, прикрути его к MPLAB IDE, среда бесплатная. MAZ плохого не посоветует. Работай в этой среде с окном отладчика Proteus VSM. Использую его для симуляции в asm. Дело вкуса, но не стоит круто менять привычное. А Си, он и в Африке Си. В любом случае -загляни в руководство "своего" компилятора.
Вот, все таки посоветовал.

Спасибо: 1 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 52
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет



Создай свой форум на сервисе Borda.ru
Текстовая версия