Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Помощ за MPLAB.....
http://mcu-bg.com/mcu_site/viewtopic.php?f=7&t=6654
Страница 1 от 1

Автор:  karlos [ Вто Мар 17, 2009 10:38 pm ]
Заглавие:  Помощ за MPLAB.....

Здравейте ,
ползвам MPLAB 7.50 с интегриран PICC компилатор ....
пиша програмка на С , ( за 16f648 ) - > build all - > и всичко е наред:

Summary:
Program space used AE0h ( 2784) of 1000h words ( 68.0%)
Data space used D2h ( 210) of 100h bytes ( 82.0%)
EEPROM space used 0h ( 0) of 100h bytes ( 0.0%)
ID Location space used 0h ( 0) of 4h bytes ( 0.0%)
Configuration bits used 0h ( 0) of 1h word ( 0.0%)

..... след това добавям 4 оператора ( примерно ... GIE=1 ; sec = 1200 ; DELAY(); RB1 = 1; )

и резултата е :

Error[593] : can't find 0x82B words (0x82b withtotal) for psect "text15" in segment "CODE"

.... сигурно аз не правя нещо както трябва , но не ми е ясно как тези 4 оператора ще заемат
оставащите 32% от program space ?

и като заредя .hex файлчето в WinPic-a , виждам че има доста свободно място в паметта на pic-a....

Ще съм благодарен за всеки съвет !

Автор:  MidNighT_SpiRiT [ Вто Мар 17, 2009 11:20 pm ]
Заглавие: 

Това показва, че ти е свършил сегмента, а не паметта. Нека някой да каже за по-добро решение, но аз си го бях решил този проблем като разкъсах сорс кода на няколко файла. Мисля, че може да зададеш колко големи да бъдат сегментите, но не съм сигурен.

Автор:  Gogo [ Вто Мар 17, 2009 11:35 pm ]
Заглавие: 

MidNighT_SpiRiT написа:
Това показва, че ти е свършил сегмента, а не паметта.
Ебати компилатора! :lol: То, че и пика е крив не е спорно, ама С компилатор, дето ще ме кара да се съобразявам с разпределението на кривата памет на пикльото!!! А мерси...

Автор:  karlos [ Сря Мар 18, 2009 1:25 am ]
Заглавие: 

Хм , намерих само "display memory- segment usаge" - on/off и толкова , никъде намек
за определяне размер на сегмент....... а разбиването на части как ?

Автор:  ps66 [ Сря Мар 18, 2009 9:02 am ]
Заглавие:  Re: Помощ за MPLAB.....

karlos написа:
... след това добавям 4 оператора ( примерно ... GIE=1 ; sec = 1200 ; DELAY(); RB1 = 1; )
...


на това "DELAY()" - ти хубаво му викаш оператор ... ама знаеш ли го кВо е (имаш ли му сорса :)) ?

Автор:  karlos [ Сря Мар 18, 2009 10:57 am ]
Заглавие: 

Функция за времезакъснение - в началото на програмката е, но дори и вместо нея да е x = 200; , резултата
е същия........

Автор:  MidNighT_SpiRiT [ Чет Мар 19, 2009 3:57 pm ]
Заглавие: 

Цитат:
....... а разбиването на части как ?

Нали ти казах - разхвърляй сорс кода на няколко файла (модула).

Автор:  karlos [ Чет Мар 19, 2009 4:50 pm ]
Заглавие: 

Не съм правил такова нещо досега , но ще прочета дебелите книги ...... :D

Автор:  zmej [ Пет Мар 20, 2009 8:36 pm ]
Заглавие: 

Вариант 1: включи си оптимизациите. :D
Вариант 2: разучи какво прави директивата #pragma psect ...

Автор:  karlos [ Пет Мар 20, 2009 9:09 pm ]
Заглавие: 

zmej написа:
Вариант 1: включи си оптимизациите. :D
Вариант 2: разучи какво прави директивата #pragma psect ...


1.И с включени , и с изключени оптимизаций - все същото
2. Ще чета за #pragma psect......... :cry:

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/