Перейти к содержанию

Рекомендуемые сообщения

Ошибка компиляции при установленных битах конфигурации. Урок №3. (Включение 10-и устройств)

Если убрать конфигурацию, то компилируется, но в протеусе не работает. Программу устанавливал по Вашей ссылке к урокам. Возможно необходима какая-то дополнительная настройка программы? Подскажите где копать.

Заранее спасибо. 

 

P.S. Все уроки отрабатываю на микроконтроллере pic16f628a. Портов А и В пока хватает, все получается. Даже совместить пару-тройку проектов в один, за исключением, если необходимо изменить порт назначения как не цифровой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Попробуй из строки конфигурации убрать pic12f675, именно на это ругается.

В принципе можно удалить всё, кроме: @ device intrc_osc_noclockout

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Спасибо, навели на мысль. После эксперементов заработало

'@ device pic12f675, CPD_OFF, PROTECT_OFF, MCLR_OFF, PWRT_ON, WDT_ON, INTRC_OSC_NOCLKOUT ;НЕ РАБОТАЕТ
'@ device intrc_osc_noclockout   ; НЕ Работает
'@intrc_osc_noclockout   ; Работает
@INTRC_OSC_NOCLKOUT     ;Работает
'@ INTRC_OSC_NOCLKOUT     ;Не работает

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

В компилятора на каждый поддерживаемый микроконтроллер есть файл. В нём прописаны все возможные настройки мк. Возможно pic12f675 как то иначе писать надо. Хотя можно не писать вообще, ic-prog всё равно не распознаёт, и приходится тип мк выбирать вручную, а остальные рекомендую приписывать, что бы при прошивке не вспоминать, какие необходимо включить, а какие нет.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
 

ICProg всеравно не видит конфигурацию. Пришлось ковырять "INC" файл. Только тогда заработал. В смысле конфигурацию выставляю тут в файле.

 

 

;****************************************************************

;* 16F628A.INC *
;* *
;* By : Leonard Zerman, Jeff Schmoyer *
;* Notice : Copyright © 2003 microEngineering Labs, Inc. *
;* All Rights Reserved *
;* Date : 11/06/03 *
;* Version : 2.45 *
;* Notes : *
;****************************************************************
NOLIST
ifdef PM_USED
LIST
include 'M16F62xA.INC' ; PM header
device pic16F628A, xt_osc, wdt_on, mclr_on, lvp_off, protect_off
XALL
NOLIST
else
LIST
LIST p = 16F628A, r = dec, w = -302
INCLUDE "P16F628A.INC" ; MPASM Header
__config _XT_OSC & _WDT_ON & _MCLRE_ON & _LVP_OFF & _CP_OFF
NOLIST
endif
LIST

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Наконец-то окончательно разобрался с конфигурацией. Просмотрев видео по установке 

обнаружил, что у тебя, Жень, стоит x86 система. А у меня x64 система. В общем решил переустановить все. Итог плачевный 850f8ed21bdft.jpg Решил установить на x86 системе, благо на работе доступ к компам не ограничен :) Итог - все отлично работает, видит все, что прописано в конфигурации, компилирует. Стал сравнивать с тем, что установлено и "работает" у меня на x64.

 

На x86

20dab3e41954t.jpg 036b0c427971t.jpg

На x64

964706f2cef1t.jpg 5c1669141bb6t.jpg

 

Получается у меня компилировал "MPASM".

 

PIC Basic для системы на x64 к сожалению не нашел. Но, во всяком случае разобрался, почему не работало.

 

P.S. К видео можно сделать пометку, что актуально для 32-х битной системы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

При компиляции выдает сообщение (crossing page boundary -- ensure page bits are set). При этом хекс-файл создается и вроде работает. На это следует обращать внимание?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Выдаёт ошибку при компиляции любой программы, или конкретно какой-то?

 

Конфигурировать мк можно записывая число в регистр config. Правда это менее наглядно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Ну я так понимаю, что это предупреждение. Выдает только при конкретной программе.

5a32efda9d1ft.jpg

Есть предположение, что превышено число строк или слов.... как-то так. Если убрать несколько подпрограмм, сообщения не выдаются.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Нет, если памяти в мк не хватает, то компилятор так и пишет, и хекс не выдаёт. Где то косяк в программе. Пробуй поочерёдно комментировать строки.

В протеусе ошибки не выскакивают при работе?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Ошибок нет. Прога работает в протеусе.

Единственное сообщение выдает  (Simulation is not running in real time due to excessive CPU load)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Эта ошибка у меня тоже частенько вылазит. Не хватает ресурсов компа для симуляции в реальном времени.

Пробуй строки комментировать по одной и компилировать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Из тырнета цитаты:

 

"MPLAB предупреждает, что регистр в этой строке находится на другой странице..."

"Обращается к другому регистру или GOTO уйдет на другую страницу..."

 

 

Поперепроверил все GOTO GOSUB RETURN.... ничего лишнего не нашел.

Но нашел как отключить предупреждения.

Можно строкой в программе:

@ ERRORLEVEL -306

Можно в настройках PBP:

b63af7d6d0e3t.jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
 

Исходник брал из Урока №12 в нем ничего не менял. В итоге вот такая ошибка ac3f4d5687d3t.jpg

Система Виндов7 32бит. Пробовал убирать строку с конфигурацией, компиляция проходит но в протеусе ничего не работает((

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Компилятор где брал? Может версия не та, что я использовал. Я пробовал с PBP 2.5 и 2.6, работали оба.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
 
 

Ничего не помогло, такая же ошибка после компиляции(( 

Печаль. Хочу себе купить PIC16f628 в замен PIC16f84a для проверки и работы программатора. 

В 628 надо же конфигурацию создавать в ПИК базик про? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Да, нужное включить, ненужное выключить.

Можно конфигурацию непосредственно при программировании выставлять вместо стороки @ device.....

 

Винда точно 32bit? Я сжал компилятор, которым сам компилирую. В настройках программы путь точно на эту папку?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
 
 

Я разобрался. Ошибки конфигурации были в MCS, а в MCS Plus компилирует все на ура!! В чем отличия этих 2х программ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Очередная ошибка. Компилировалось все без каких-либо ошибок. Делал это не один десяток раз) В очередной раз появилась эта ошибка.83e51f17a0a7t.jpg

 

 

Компилятор лежит в C:\PBP 2,6 версия. Переустановка MCS Plus помогает решить проблему, но до первого закрытия программы. Когда открываешь MCS Plus опять выскакивает эта ошибка fatal : 301 out memory . Теперь так и работаю удаляю да устанавливаю прогу, перед каждым ее открытием. В чем может быть проблема? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти



×
  • Создать...