Warning: Illegal string offset 'name' in [path]/includes/functions.php on line 6439
pa Ride7 stm32 softa compileri

thread: pa Ride7 stm32 softa compileri

  1. #1
    Senior Member
    Sep 2006
    2,537

    pa Ride7 stm32 softa compileri

    Ir tāda lieta ka rakstu vienu kodu kas ir uz 2 failiem viens ir fails kurā ir Main() proga un otrā failā ir Interput Service Routines kodi un rodās stūlba situācija ka tas compileris compilējot kodu uzražo reālu brāķi, proti izlaiž kodu rindas tur kur C failā nav redzams mainīgā pielietojums, vai tālākas darbības, kā lai šito noņem, šeit piemērs kur var redzēt ka C kodā kreisā compileris neuzģenerē kodu parastiem mainīgiem:
    int a=6;
    int b= 7;

    int* OnOff = &VOnOff;

    un tālāk if loopu arī neņem un tai vietā ieliek pirmo izvēli, problēma ir tur ka otrs C koda gabals uzliek tā VOnOff mainīgā vērtību uz 1, un pēc katra izsukuma viņu nomaina līdz ar to vaidzētu If loopam strādāt un mainīt GPIO_Pin_8;9 pinus bet tagat debaggojot uz sava Stm32 circle kita nekas nemainās un disasamblerā debagojot pa Asm kodu arī nekas nenotiek, piebildīšu ka Interput Service Routines failā pareizi nocompilējās kods un VOnOff tiek nomainīts un strādā, un neiet, sūdīgi compilējās tieši galveinais Main() fails.
    [attachment=0:36gc8mi9]Stm32compilerFinish.JPG[/attachment:36gc8mi9]

    Ko darīt ??
    vēl piebilde ka tas VOnOff main.h failā ir definēts kā EXTERN u32 VOnOff; es lasīju ka šitā definējot no citiem failiem var tikt klāt pie tā mainīgā, vispār kā pareizāk definēt RAm atmiņā mainīgo un tikt pie tā klāt no dažādiem C failiem ?
     

  1. : 72
    : 08-10-2008, 13:30