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

Вернуться   Форум Микро-Чип > Продукция MICROCHIP

Продукция MICROCHIP Технические вопросы по всей продукции Microchip

Ответ
 
Опции темы Опции просмотра
Старый 18.05.2007, 18:07   #1
snek
Guest
 
Сообщений: n/a
По умолчанию запись\чтение Flash памяти программ 16f877

Хочу записать во Flash память контроллера PIC16F877 некоторый объем данных.
Запись слова делал по алгоритму приведенному в документе на этот контроллер. Затем выполняю чтение слова, но считываю не записанные данные, а 0х000.
Помогите разобраться. Может требуется реализовывать какие-либо задержки или флажки где то ставить, а может еще какие "запупырки" есть.
  Ответить с цитированием
Старый 18.05.2007, 23:02   #2
Grey
Member
 
Регистрация: 26.02.2007
Адрес: Россия
Сообщений: 65
Вес репутации: 100/50
Grey will become famous soon enoughGrey will become famous soon enough
Отправить сообщение для Grey с помощью ICQ
По умолчанию Re: запись\чтение Flash памяти программ 16f877

А чо бы тебе в Sim Mplab или в Proteuse не потренироваться,перед тем как вопросы пытаться начать формировать?
Цитата:
разобраться. Может требуется реализовывать какие-либо задержки или флажки где то ставить, а может еще какие "запупырки" есть.

Может и есть...
А DS почитать в лом чтоль?
(Кстати,знаеш ли ты,О мудрейший,чо ЕТО такое вообще?)

PS
"- Нет, не могу больше! Пойду приму триста капель эфирной валерьянки!" (с)
Grey вне форума   Ответить с цитированием
Старый 19.05.2007, 03:49   #3
snek
Guest
 
Сообщений: n/a
По умолчанию Re: запись\чтение Flash памяти программ 16f877

Знаю, знаю о мудрейший что такое DS и симулятором пользоваться умею.
Вместо того чтоб шутить "шутник" лучше бы ответил по теме.
Дело то в том, что все я изучал и документацию (DS) на контроллер и симулятором прогонял (но скорее всего симулятор в MPLAB не поддерживает симуляции записи\чтения во Flash, не знаю). Для проверки правильности записи\чтения пробовал использовать LCD. Результат чтения выводил на монитор но результат 0x000.
У меня такие предположения, что дело в задержках на время записи, но хотелосьбы послушать что скажет более опытный в этом деле человек.
А такие коментарии как у тебя Grey можно томами на форумах писать.
  Ответить с цитированием
Старый 19.05.2007, 09:54   #4
Greg
Super Moderator
 
Регистрация: 25.02.2007
Адрес: Moscow, ODBS
Сообщений: 7,031
Вес репутации: 6060/179
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: запись\чтение Flash памяти программ 16f877

Цитата:
Сообщение от snek Посмотреть сообщение
А такие коментарии как у тебя Grey можно томами на форумах писать.
да это вы тут воду льёте.

нет бы сразу показать свой код и назвать номер документа DS, из которого брали пример
Greg вне форума   Ответить с цитированием
Старый 19.05.2007, 17:38   #5
ssp
Guest
 
Сообщений: n/a
По умолчанию Re: запись\чтение Flash памяти программ 16f877

пример чтения - ничего не менял, кусок кода из своей программы
zapros movfw TMR0
bank2
movwf EEADR ;адрес данных в таблице
movlw .3 ;адрес таблицы ORG 0300h
movwf EEADRH
bank3
bsf EECON1,EEPGD
bsf EECON1,RD
nop
nop
bank2
movfw EEDATA
bank0
movwf CCPR1L
bank2
movfw EEDATH
bank0
movwf CCPR1H
clrf TMR1L
clrf TMR1H ;обнуляем таймер
clrf PIR1 ;сброс флага таймера
let CCP1CON,b'00001010';сравнение
let T1CON,b'00110001' ;деление 1:8,внутренний,включен
btfss PIR1,CCP1IF ; флаг модуля сравнения
goto $-1

разберешься...
  Ответить с цитированием
Старый 21.05.2007, 10:58   #6
snek
Guest
 
Сообщений: n/a
По умолчанию Re: запись\чтение Flash памяти программ 16f877

Я делаю следующим образом.
Записываю во Flash:
;_________________________________________________ ___
WR_Flash
banksel EEADR ;Bank 2
MOVF ADDRL, W ;Write address
MOVWF EEADR ;of desired
MOVF ADDRH, W ;program memory
MOVWF EEADRH ;location
MOVF VALUEL, W ;Write value to
MOVWF EEDATA ;program at
MOVF VALUEH, W ;desired memory
MOVWF EEDATH ;location
banksel EECON1 ;Bank 3
BSF EECON1, EEPGD ;Point to Program memory
BSF EECON1, WREN ;Enable writes
;Only disable interrupts
BCF INTCON, GIE ;if already enabled,
;otherwise discard
MOVLW 0x55 ;Write 55h to
MOVWF EECON2 ;EECON2
MOVLW 0xAA ;Write AAh to
MOVWF EECON2 ;EECON2
BSF EECON1, WR ;Start write operation
NOP ;Two NOPs to allow micro
NOP ;to setup for write
;Only enable interrupts
BSF INTCON, GIE ;if using interrupts,
;otherwise discard
BCF EECON1, WREN ;Disable writes
;_________________________________________________ __________


Считываю из Flash:
;_________________________________________________ __________
RD_Flash
banksel EEADR ;Bank 2
MOVF ADDRL, W ;Write the
MOVWF EEADR ;address bytes
MOVF ADDRH,W ;for the desired
MOVWF EEADRH ;address to read
banksel EECON1 ;Bank 3
BSF EECON1, EEPGD ;Point to Program memory
BSF EECON1, RD ;Start read operation
NOP ;Required two NOPs
NOP ;
banksel DATAL ;Bank 2
MOVF EEDATA, W ;DATAL = EEDATA
MOVWF DATAL ;
MOVF EEDATH,W ;DATAH = EEDATH
MOVWF DATAH ;
;_________________________________________________ __________

Доккумент -->DS30292C
PIC16F87X Data Sheet

  Ответить с цитированием
Старый 21.05.2007, 13:39   #7
Chipper
Guest
 
Сообщений: n/a
По умолчанию Re: запись\чтение Flash памяти программ 16f877

А кристалл точно PIC16F877 или с буквой A?
  Ответить с цитированием
Старый 21.05.2007, 14:39   #8
snek
Guest
 
Сообщений: n/a
По умолчанию Re: запись\чтение Flash памяти программ 16f877

народ я разобрался.
спасибо всем за попытки мне помочь.
  Ответить с цитированием
Старый 21.05.2007, 22:45   #9
Grey
Member
 
Регистрация: 26.02.2007
Адрес: Россия
Сообщений: 65
Вес репутации: 100/50
Grey will become famous soon enoughGrey will become famous soon enough
Отправить сообщение для Grey с помощью ICQ
По умолчанию Re: запись\чтение Flash памяти программ 16f877

Ну и аминь!!!
А что-бы сразу так вот проделать это-же самое?
А вот уж если и оно не пройдет...тогда welcom сюды ))
Grey вне форума   Ответить с цитированием
Ответ


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

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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
страничная организация памяти программ ??? швондер Продукция MICROCHIP 42 18.05.2008 22:15
размещение проекта в памяти программ timday Продукция MICROCHIP 0 18.12.2007 17:15
PIC16F877A Таблица в памяти программ Shultz Продукция MICROCHIP 8 06.09.2007 07:25


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


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