Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
10.12.2009, 10:16
|
|
Частый гость
Регистрация: 18.06.2005
Сообщений: 16
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Помогите EEPROM PIC18F452
Помогите разобраться не могу записать в EEPROM даные
Стандартная продцедура записи и чтения
LIST P=PIC18F452
#include "P18F452.INC"
;***************************
; ЧТЕНИЕ И ЗАПИСЬ В ППЗУ
;***************************
EEPROM_READ: ; ЧТЕНИЕ ИЗ ППЗУ
MOVWF EEADR
BCF EECON1,EEPGD
BSF EECON1,RD
MOVF EEDATA,W
RETURN
;***************************
EEPROM_WR:
MOVLW COUNT ; ЗАПИСЬ В ППЗУ
MOVWF EEADR
MOVLW DATA_EE ; Установить нужные данные
MOVWF EEDATA
BCF EECON1,EEPGD
BSF EECON1,WREN
BCF INTCON,GIE
MOVLB B'00000111'
MOVLW 55H
MOVWF EECON2
MOVLW 0xAA
MOVWF EECON2
BSF EECON1,WR
BSF INTCON,GIE
EE1:BTFSC EECON1,1 ; ОЖИДАНИЕ ОКОНЧАНИЯ ЗАПИСИ
GOTO EE1
BCF EECON1,WREN
RETURN
;*************************
end
При симуляции нет записи в EECON2
Что делаю не так
|
|
|
|
10.12.2009, 11:11
|
|
Вид на жительство
Регистрация: 02.02.2006
Сообщений: 472
Сказал спасибо: 2
Сказали Спасибо 12 раз(а) в 10 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
Насколько помню команда MOVLW это запись константы в аккумулятор. У вас стоит COUNT - это что регистр? Если хотите записать из регистра можно использовать MOVF.
__________________
Наука умеет много гитик!
|
|
|
|
10.12.2009, 12:02
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
Упустили
BCF EECON1, CFGS ; Access program FLASH or Data EEPROM memory
__________________
Мыслю, следовательно существую
|
|
|
|
10.12.2009, 14:54
|
|
Частый гость
Регистрация: 18.06.2005
Сообщений: 16
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
Не помогло.При симуляции все идет нормально до момента записи 55h и AAh в EECON2. Вижу что запись в данный регистр не происходит,а пока не пройдет данная продседура запись в память не начнется.
|
|
|
|
10.12.2009, 15:16
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.02.2008
Адрес: Днепр. Украина
Сообщений: 3,294
Сказал спасибо: 442
Сказали Спасибо 1,048 раз(а) в 706 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
Чем проверяете(симулируете)?
|
|
|
|
10.12.2009, 15:19
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
Микрочип тербует обязательную последовательность команд :
BCF INTCON, GIE ; Disable interrupts
MOVLW 55h ;
MOVWF EECON2 ; Write 55h
MOVLW AAh ;
В Вашем коде после BCF INTCON,GIE стоит MOVLB B'00000111'. Может там собака зарыта ?
__________________
Мыслю, следовательно существую
|
|
|
|
10.12.2009, 15:36
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
Нда, забыл. На форумах попадался следующий казус. Автор пытался писать в EEPROM ПИКа, из средней серии если не ошибаюсь, да не суть важно. Жаловался не пишется. А ответ оказался простым. Запись в EEPROM требует времени, 4мС если склероз не подводит. Автор ждал результат немедленно. Сумулятор же вполне корректно отрабатывал задержку......
Удачи!
__________________
Мыслю, следовательно существую
|
|
|
|
10.12.2009, 15:42
|
|
Частый гость
Регистрация: 18.06.2005
Сообщений: 16
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
Симулирую в MPLAB , с пиками работаю давно только с 16, хорошо знаю что нужно выполнить определенные обязательные действия и по симулятору видно что должна проходить запись 55h Aah ,а этого нет.
Все просто в 16 пиках, а здесь почемуто не проходит и не пойму что не так.
|
|
|
|
10.12.2009, 15:59
|
|
Почётный гражданин KAZUS.RU
Регистрация: 05.08.2007
Адрес: Болгария Перник
Сообщений: 1,771
Сказал спасибо: 74
Сказали Спасибо 357 раз(а) в 245 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
У меня даташит на 18F452 2006 года. В таблице на стр. 45 EECON2 не помечен никак. Однако на стр. 47 написано : EECON2 Data EEPROM Control Register 2 (not a physical register).
__________________
Мыслю, следовательно существую
|
|
|
|
10.12.2009, 16:39
|
|
Частый гость
Регистрация: 18.06.2005
Сообщений: 16
Сказал спасибо: 0
Сказали Спасибо 2 раз(а) в 2 сообщении(ях)
|
Re: Помогите EEPROM PIC18F452
Все правильно, регистр физически не доступен, но в MPLAB запись в данный регистр происходит, т.к. там иметируются все регистры, это я проверял на другом пике.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 06:54.
|
|