Отговори на тема  [ 20 мнения ]  Отиди на страница Предишна  1, 2
CCS complier въпрос? 
Автор Съобщение
Ранг: Форумен бог
Ранг: Форумен бог
Аватар

Регистриран на: Нед Юни 10, 2007 2:22 pm
Мнения: 6492
Местоположение: София
Мнение 
За умножениетоили делението съм съгласен - бих ги избягвал в прекъсване, но може и да се наложи.
Но това не са функции в контекста на мисленето на HLL писач, а само по един символ... та едва
ли става дума за тях.

За маскирането не съм - това е май масова заблуда, че могло да се обработва прекъсване
немаскиран. Неотдавна го дъвкахме в друга тема. Обработката на прекъсването приключва
в момента в който бъде демаскирано - какво следва в нечий сорс след това няма значение,
процесорът я е там я не (обслужвайки друго прекъсване). Дали демаскирането го прави човек
с RTI , RTE или каквато там е инструкцията за връщане от прекъсване или по друг начин
(бутайки директно флага например) няма значение.

_________________
-------------------
www.tgi-sci.com
-------------------
http://www.flickr.com/photos/didi_tgi/


Пет Сеп 25, 2009 4:38 pm
Профил WWW
Ранг: Форумен бог
Ранг: Форумен бог

Регистриран на: Нед Сеп 26, 2004 9:21 pm
Мнения: 30686
Местоположение: София
Мнение 
Естествено че ако ти се налага да умножаваш или делиш това е друга работа. Аз не знам CCS сам да забранява прекъсвания или да прави каквото и да е друго. Той си има някакъв стандаертен хендлер на прекъсването, който е доста тромав и недъгаво написан, който лесно се маха, има си fuse за това. Но и неговия не прави нищо по различно, просто според мен не е написан много добре.
Не знам кой тоя софт дето все в прекъсване се изпълнява, може и аз просто да не знам.


Пет Сеп 25, 2009 6:37 pm
Профил
Ранг: Почетен член
Ранг: Почетен член
Аватар

Регистриран на: Пет Фев 17, 2006 9:17 am
Мнения: 765
Местоположение: Стара Загора
Мнение 
Код:
void _(void){
int i;
for (i=0;i<100;i++);
}

#int_usb
void ___(void){
_();
while (1);
}

void main()
{
   _();

}




Код:
.................... void _(void){
.................... int i;
.................... 
.................... for (i=0;i<100;i++);
009E:  CLRF   1A
00A0:  MOVF   1A,W
00A2:  SUBLW  63
00A4:  BNC   00AA
00A6:  INCF   1A,F
00A8:  BRA    00A0
.................... 
.................... }
00AA:  RETLW  00
.................... #int_usb
.................... void ___(void){
.................... 
.................... _();
00AC:  RCALL  009E
.................... while (1);
00AE:  BRA    00AE
.................... }
.................... 
00B0:  BCF    FA1.5
00B2:  GOTO   0058
.................... void main()
.................... {
00B6:  CLRF   FF8
00B8:  BCF    FD0.7
00BA:  BSF    0D.7
00BC:  CLRF   FEA
00BE:  CLRF   FE9
00C0:  BSF    FB8.3
00C2:  MOVLW  08
00C4:  MOVWF  FAF
00C6:  MOVLW  02
00C8:  MOVWF  FB0
00CA:  MOVLW  A6
00CC:  MOVWF  FAC
00CE:  MOVLW  90
00D0:  MOVWF  FAB
00D2:  MOVF   FC1,W
00D4:  ANDLW  C0
00D6:  IORLW  0F
00D8:  MOVWF  FC1
00DA:  MOVLW  07
00DC:  MOVWF  FB4
00DE:  CLRF   18
[b]
00E0:  BTFSC  FF2.7
00E2:  BSF    18.7
00E4:  BCF    FF2.7 [/b]
.................... 
.................... 
....................    _();
00E6:  RCALL  009E
[b]
00E8:  BTFSC  18.7
00EA:  BSF    FF2.7[/b]
.................... //Setup_Oscillator parameter not selected from Intr Oscillotar Config tab
.................... 
....................    // TODO: USER CODE!!
.................... 
.................... }
00EC:  SLEEP




Съб Сеп 26, 2009 12:23 pm
Профил ICQ
Ранг: Новодошъл
Ранг: Новодошъл

Регистриран на: Сря Яну 24, 2007 11:00 pm
Мнения: 158
Мнение 
На реда преди деклариране на функцията слагаш едно #inline


Вто Окт 06, 2009 7:23 pm
Профил
Ранг: Почетен член
Ранг: Почетен член

Регистриран на: Съб Окт 13, 2007 12:12 pm
Мнения: 712
Мнение 
Враво! :idea: :supz:


Вто Окт 06, 2009 7:45 pm
Профил
Покажи мненията от миналия:  Сортирай по  
Отговори на тема   [ 20 мнения ]  Отиди на страница Предишна  1, 2

Кой е на линия

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


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

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