Отговори на тема  [ 2 мнения ] 
Проблем с PIC18F452 
Автор Съобщение
Ранг: Минаващ
Ранг: Минаващ

Регистриран на: Чет Фев 11, 2010 1:16 pm
Мнения: 16
Мнение Проблем с PIC18F452
Микроконтролера е PIC18F452
Някой знае ли защо това нещо работи само в 0вата страница на програмната памет?
При симулация чрез MPLAB SIM няма проблеми, но в действителност контролера увисва ако дадения код не е в 0вата страница.
movf PCL, W
movf Temp, W
rlncf WREG
rlncf WREG
addwf PCL, f
goto Razklonenie_0 ;0
goto Razklonenie_1 ;1
.
.
.
goto Razklonenie_X ;X
Започвам да мисля че самия чип е нещо бъгав


Нед Фев 14, 2010 9:56 pm
Профил
Ранг: Ориентиран
Ранг: Ориентиран

Регистриран на: Чет Ное 20, 2008 1:49 pm
Мнения: 276
Местоположение: Бургас
Мнение 
Ако правилно разчитам кода ти, ти искаш да умножиш променливата ТЕМП по 4, след което я изпозвваш за изчислено ГОТО. Виждам следните недостатъци:
Първата инструкция ми се вижда безсмислена, защото стойността от Темп ще ти измести стойността от програмния брояч и на практика ти не работиш с него. Допускам, че имаш печатна грешка там, погледни си.
Щом умножиш променливата по 4 и я прибавиш към програмния брояч, това означава, че ще се избира всяко четвърто разклонение от таблицата ти. Това донякъде ми изглежда нелогично, тъй като останалите три позиции се прескачат и са неизползваеми, което от своя страна е прахосничество на програмна памет. Конкретно за таблиците има отделна статия в сайта на Микрочип.
Не знам дали може да се прави рлнсф върху работния регистър. Пльосни стойността му в някой регистър, завърти я и я зареди обратно.
А по въпроса ти:
Първо трябва да настроиш правилно старшия байт на програмния брояч и тогава можеш да правиш изчислени ГОТО-та. Прочети за директивите pagesel и pageselw.

_________________
Digitally yours: Optron


Пон Мар 22, 2010 2:46 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 2 мнения ] 

Кой е на линия

Потребители разглеждащи този форум: 0 регистрирани и 3 госта


Вие не можете да пускате нови теми
Вие не можете да отговаряте на теми
Вие не можете да променяте собственото си мнение
Вие не можете да изтривате собствените си мнения
Вие не можете да прикачвате файл

Търсене:
Иди на:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.
Хостинг и Домейни