Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Вопросы начинающих

Вопросы начинающих Прежде чем задать вопрос, стоит воспользоваться поиском

Ответ
 
Опции темы Опции просмотра
Старый 27.02.2017, 19:38   #1
vovonj
Junior Member
 
Регистрация: 22.07.2012
Возраст: 46
Сообщений: 17
Вес репутации: 100/19
vovonj will become famous soon enoughvovonj will become famous soon enough
По умолчанию PIC16F819 EEPROM

Здравствуйте. Разрабатываю устройство на вышеупомянотом девайсе.
В даташите на странице 26 описан регистр EECON1.
В микроконтроллерах с которыми я раньше работал бита 7 в данном регистре небыло. Если при старте записать "0" в бит 7, то данные выводятся из EEPROM. При установке "1" данные из EEPROM не читаются, а читаются с какого-то другого места. Ненонятно откуда.
Отсда вопрос дя чего нужна "1" в седьмом бите и как этим пользоваться.
vovonj вне форума   Ответить с цитированием
Старый 27.02.2017, 19:47   #2
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,532
Вес репутации: 4855/151
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: PIC16F819 EEPROM

Цитата:
Сообщение от vovonj Посмотреть сообщение
Здравствуйте. Разрабатываю устройство на вышеупомянотом девайсе.
В даташите на странице 26 описан регистр EECON1.
В микроконтроллерах с которыми я раньше работал бита 7 в данном регистре небыло. Если при старте записать "0" в бит 7, то данные выводятся из EEPROM. При установке "1" данные из EEPROM не читаются, а читаются с какого-то другого места. Ненонятно откуда.
Отсда вопрос дя чего нужна "1" в седьмом бите и как этим пользоваться.
в этом пике можно писать и читать как eeprom память данных, так и память программ. этим битом определяется с какой памятью будем работать.
Greg вне форума   Ответить с цитированием
Старый 27.02.2017, 19:52   #3
vovonj
Junior Member
 
Регистрация: 22.07.2012
Возраст: 46
Сообщений: 17
Вес репутации: 100/19
vovonj will become famous soon enoughvovonj will become famous soon enough
По умолчанию Re: PIC16F819 EEPROM

А как узнать с какого и по какой адрес памяти программ ПИК будет брать данные?
vovonj вне форума   Ответить с цитированием
Старый 27.02.2017, 19:55   #4
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,532
Вес репутации: 4855/151
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: PIC16F819 EEPROM

Цитата:
Сообщение от vovonj Посмотреть сообщение
А как узнать с какого и по какой адрес памяти программ ПИК будет брать данные?
надо читать даташит на стр.28. там все написано. и даже больше чем все...
Greg вне форума   Ответить с цитированием
Старый 27.02.2017, 19:56   #5
vovonj
Junior Member
 
Регистрация: 22.07.2012
Возраст: 46
Сообщений: 17
Вес репутации: 100/19
vovonj will become famous soon enoughvovonj will become famous soon enough
По умолчанию Re: PIC16F819 EEPROM

С пасибо конечно но с английским туговато.
vovonj вне форума   Ответить с цитированием
Старый 27.02.2017, 19:59   #6
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,532
Вес репутации: 4855/151
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: PIC16F819 EEPROM

Цитата:
Сообщение от vovonj Посмотреть сообщение
Спасибо конечно но с английским туговато.
там почти все в картинках и в тексте есть примеры. адрес слова пишется в регистры адреса, в регистре данных появляется значение. т.е. читает по одному слову.
Greg вне форума   Ответить с цитированием
Старый 27.02.2017, 20:14   #7
vovonj
Junior Member
 
Регистрация: 22.07.2012
Возраст: 46
Сообщений: 17
Вес репутации: 100/19
vovonj will become famous soon enoughvovonj will become famous soon enough
По умолчанию Re: PIC16F819 EEPROM

Это понятно. Нокак я могу рганизовать массив данных в памяти программ которые будут выводиться например на цифровой индикатор.
Как узнать в каком месте программы вставить этот массив
Папример DE 0xA0,0xA7,0x4F,0x4B,0x20,0xA8,0x50,0x4F ; БЛОК ПРО 00-2F
vovonj вне форума   Ответить с цитированием
Старый 27.02.2017, 20:44   #8
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 6,532
Вес репутации: 4855/151
Greg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond reputeGreg has a reputation beyond repute
По умолчанию Re: PIC16F819 EEPROM

Цитата:
Сообщение от vovonj Посмотреть сообщение
Это понятно. Нокак я могу рганизовать массив данных в памяти программ которые будут выводиться например на цифровой индикатор.
Как узнать в каком месте программы вставить этот массив
Папример DE 0xA0,0xA7,0x4F,0x4B,0x20,0xA8,0x50,0x4F ; БЛОК ПРО 00-2F
там все просто, надо научиться писать программы для этих пиков, т.е. пользоваться программой MPLAB IDE. тогда массив можно будет вставить в любом месте, обозвать его как-то меткой, а потом на эту метку ссылаться. регистры, что вы откопали, не нужны.
примеры всяких разных программ можно найти на сайте микрочипа в разделе application notes. или книгу какую скачать. без английского и в 46 там все довольно тухло, но книгу можно найти и на русском языке.
Greg вне форума   Ответить с цитированием
Старый 28.02.2017, 18:34   #9
Zhuk72
Member
 
Аватар для Zhuk72
 
Регистрация: 09.11.2015
Адрес: Baku
Возраст: 45
Сообщений: 74
Вес репутации: 207/8
Zhuk72 has a spectacular aura aboutZhuk72 has a spectacular aura aboutZhuk72 has a spectacular aura about
По умолчанию Re: PIC16F819 EEPROM

Цитата:
Сообщение от vovonj Посмотреть сообщение
Как узнать в каком месте программы вставить этот массив
Папример DE 0xA0,0xA7,0x4F,0x4B,0x20,0xA8,0x50,0x4F ; БЛОК ПРО 00-2F
Greg, испорчу ваш воспитательный процесс ))
Потому как эта инфа в МПЛабе очень неявно описана, либо приходится по чужим исходникам ориентироваться.

vovonj, перед дампом напишите org 2100h (вы ведь на асм пишите?), можете в начале, до основной программы, т.е. до org 0.

А вот такая таблица обнаружилась по пути MPLAB X IDE Windows and Dialogs : Memory Windows - 8- and 16-Bit Devices : EE Data Memory Window
Код:
Table: Programmer – Data EEPROM Start Address Device Generic Start Address
Midrange MCUs 0x2100
Enhanced Midrange MCUs 0x1E000
PIC18F MCUs 0xF00000
PIC24 MCUs, dsPIC DSCs 0x7FFE00
Zhuk72 вне форума   Ответить с цитированием
Старый 28.02.2017, 19:09   #10
vovonj
Junior Member
 
Регистрация: 22.07.2012
Возраст: 46
Сообщений: 17
Вес репутации: 100/19
vovonj will become famous soon enoughvovonj will become famous soon enough
По умолчанию Re: PIC16F819 EEPROM

С пасибо Greg, но директива org 2100h обращение к ПЗУ запись данных, там все понятно и отлично работает. Спасибо Корабельникову С.А за его самоучитель. Вопрос состоял втом,что если не хватает объема EEPROM, можно ли организовать подобный массив в памяти программ используя переключение бита №7 врегистру EECON1 ? И если можно, то как понять с ккого адреса памяти программ микроконтроллер будет брать константы. В моем случае это текст, который выводится на символьный индикатор типа Winstar на 16 символов в строке.
vovonj вне форума   Ответить с цитированием
Старый 28.02.2017, 19:23   #11
Zhuk72
Member
 
Аватар для Zhuk72
 
Регистрация: 09.11.2015
Адрес: Baku
Возраст: 45
Сообщений: 74
Вес репутации: 207/8
Zhuk72 has a spectacular aura aboutZhuk72 has a spectacular aura aboutZhuk72 has a spectacular aura about
По умолчанию Re: PIC16F819 EEPROM

Теперь понятно.
Вам нужно познакомиться с регистрами INDF и FSR.
Их используют при табличном чтении. Это именно то, что вам и нужно.
Zhuk72 вне форума   Ответить с цитированием
Старый 28.02.2017, 19:36   #12
vovonj
Junior Member
 
Регистрация: 22.07.2012
Возраст: 46
Сообщений: 17
Вес репутации: 100/19
vovonj will become famous soon enoughvovonj will become famous soon enough
По умолчанию Re: PIC16F819 EEPROM

Нет Вы опять не поняли. Эти регистры я исспользую в подпрограмме которая ситывает данные из EEPROM и помещает их врегистры ОЗУ.
Там я задаю начальный адрес регистра EEPROM, к-во считываемых байт и начальный адрес регистра ОЗУ куда данные будут переписываться. Когда первый раз я начал работать с этим микроконтроллером,то у меня при включении с 10 раз примерно 3 раза данные из EEPROM не читались. На идикатор выводилась "аброкадабра". В итоге я прсмотрев даташит с удивлением обнаружил этот бит. В других микрокотнтроллерах, с которыми я работал до этого времени он не исспользуется (например 16F628). И при сбросе туда записывается случайное значение. После того как при старте я внего записал "0" устройство заработало как надо. Вот вопрос откуда микроконтроллер вычитывает эту "аброкадабру" когда бит установлен в "1", Если при этом задан адрес регистра EEPROM?
vovonj вне форума   Ответить с цитированием
Старый 28.02.2017, 20:22   #13
GANY
Senior Member
 
Аватар для GANY
 
Регистрация: 05.11.2007
Адрес: Казахстан/Шымкент
Возраст: 33
Сообщений: 2,175
Вес репутации: 1074/66
GANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud of
По умолчанию Re: PIC16F819 EEPROM

вот на русском документация.

корабельникова лучше не читать.

http://www.microchip.ru/lit/?mid=1x0
GANY вне форума   Ответить с цитированием
Старый 28.02.2017, 20:24   #14
Zhuk72
Member
 
Аватар для Zhuk72
 
Регистрация: 09.11.2015
Адрес: Baku
Возраст: 45
Сообщений: 74
Вес репутации: 207/8
Zhuk72 has a spectacular aura aboutZhuk72 has a spectacular aura aboutZhuk72 has a spectacular aura about
По умолчанию Re: PIC16F819 EEPROM

Цитата:
Сообщение от vovonj Посмотреть сообщение
Нет Вы опять не поняли.
Я прекрасно понял, а вы нет

Забудьте о еепром и его регистрах.
Погуглите в сети по написанному мной выше, это как раз оно.
Zhuk72 вне форума   Ответить с цитированием
Старый 28.02.2017, 20:46   #15
GANY
Senior Member
 
Аватар для GANY
 
Регистрация: 05.11.2007
Адрес: Казахстан/Шымкент
Возраст: 33
Сообщений: 2,175
Вес репутации: 1074/66
GANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud of
По умолчанию Re: PIC16F819 EEPROM

Цитата:
Сообщение от Zhuk72 Посмотреть сообщение
Я прекрасно понял, а вы нет

Забудьте о еепром и его регистрах.
Погуглите в сети по написанному мной выше, это как раз оно.
в данном случае ему надо просто читать таблицы, как я понял.

из памяти программ.
GANY вне форума   Ответить с цитированием
Старый 28.02.2017, 21:01   #16
vovonj
Junior Member
 
Регистрация: 22.07.2012
Возраст: 46
Сообщений: 17
Вес репутации: 100/19
vovonj will become famous soon enoughvovonj will become famous soon enough
По умолчанию Re: PIC16F819 EEPROM

Правильно поняли
vovonj вне форума   Ответить с цитированием
Старый 28.02.2017, 21:04   #17
GANY
Senior Member
 
Аватар для GANY
 
Регистрация: 05.11.2007
Адрес: Казахстан/Шымкент
Возраст: 33
Сообщений: 2,175
Вес репутации: 1074/66
GANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud of
По умолчанию Re: PIC16F819 EEPROM

Цитата:
Сообщение от vovonj Посмотреть сообщение
Правильно поняли
ну тогда табличное чтение в вашем контроллере весьма удобная вещь.

принцип точно такой же как в еепром.

про эту функцию на русском можете почитать в даташите на 87х контроллер. по ссылке который я дал.

там все очень просто.

и дергать счетчик команд для этого не нужно.

преимущество данной функции еще в том что в массив данных можно писать 14 битные цифры а не 8 бит.
каждый разряд читается отдельно.
и это очень удобно.

пишется как :
DATA 3fff
DATA fff
итд.

можно с экселя сразу кидать огромные массивы данных.
GANY вне форума   Ответить с цитированием
Старый 28.02.2017, 21:11   #18
GANY
Senior Member
 
Аватар для GANY
 
Регистрация: 05.11.2007
Адрес: Казахстан/Шымкент
Возраст: 33
Сообщений: 2,175
Вес репутации: 1074/66
GANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud ofGANY has much to be proud of
По умолчанию Re: PIC16F819 EEPROM

правда для экселя удобнее в десятичном формате.

DATA .589
DATA .987
DATA .12890

итд.
GANY вне форума   Ответить с цитированием
Старый 28.02.2017, 21:12   #19
vovonj
Junior Member
 
Регистрация: 22.07.2012
Возраст: 46
Сообщений: 17
Вес репутации: 100/19
vovonj will become famous soon enoughvovonj will become famous soon enough
По умолчанию Re: PIC16F819 EEPROM

Спасибо я почитаю
vovonj вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Время записи в EEPROM PIC12F683 kaligraf Вопросы начинающих 2 12.04.2016 02:00
EEPROM в PIC16F84 miksayer Вопросы начинающих 14 09.03.2012 18:41
PIC16F877 EEPROM стирается после выключения питания alx71 Продукция MICROCHIP 15 16.12.2010 10:00
Внутренний EEPROM 16F84A nayabuka Продукция MICROCHIP 29 25.03.2008 10:59
PIC18F452 не пишет в EEPROM tzirulnicov Продукция MICROCHIP 2 03.01.2008 16:10


Часовой пояс GMT +3, время: 09:30.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd. Перевод: zCarot