Jump to content

Welcome to vip-cxema.org

logo3.png

The forum has a section for guests, where you can ask your questions without registration: Вопросы и ответы

By registering, you will be able to send private messages, receive notification of replies to topics. You can always send a message, many restrictions are removed.


Recommended Posts

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

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

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

 

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

Share this post


Link to post
Share on other sites
 
 

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

'@ 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     ;Не работает

Share this post


Link to post
Share on other sites
 

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

Share this post


Link to post
Share on other sites
 
 

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

Share this post


Link to post
Share on other sites
 

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

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

 

На x86

20dab3e41954t.jpg 036b0c427971t.jpg

На x64

964706f2cef1t.jpg 5c1669141bb6t.jpg

 

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

 

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

 

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

Share this post


Link to post
Share on other sites
 

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

Share this post


Link to post
Share on other sites
 

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

 

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

Share this post


Link to post
Share on other sites
 

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

5a32efda9d1ft.jpg

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

Share this post


Link to post
Share on other sites
 

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

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

Share this post


Link to post
Share on other sites
 

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

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

Share this post


Link to post
Share on other sites
 

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

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

Share this post


Link to post
Share on other sites
 

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

 

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

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

 

 

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

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

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

@ ERRORLEVEL -306

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

b63af7d6d0e3t.jpg

Share this post


Link to post
Share on other sites
 
 

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

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

Share this post


Link to post
Share on other sites
 
 
 
 

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

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

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

Share this post


Link to post
Share on other sites
 

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

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

 

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

Share this post


Link to post
Share on other sites
 
 
 
 

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

 

 

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

Share this post


Link to post
Share on other sites
 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...



×
  • Create New...