2015-07-17 3 views
-3

Вот мой код:C вызов функции из другого исходного файла

main.c

#include <bluetooth.h> 
#include <tftController.h> 
main() { 
initLCD(); 
wait(); 
} 

bluetooth.c

#include "bluetooth.h" 
void mainHandler() { 
    if (receieve == "start") { 
    startTFT(); 
    } 
} 

tftController.c

void startTFT() { 
    sw(0x51); 
    delay(100); 
    sw(0x08); 
    delay(100); 
    putImage(); 
} 

Проблема, с которой я сталкиваюсь, заключается в том, что startTFT() не вызывается из bluetooth.c, хотя код компилируется красиво. кто-нибудь может помочь мне или указать, что здесь не так? Действительно оценен !!! Я использую это на микроконтроллере для управления TFT LCD.

+1

Где 'mainHandler' называется? – tonysdg

+0

Где: 'receive'? Сравнивая его с «start», используя «==», вероятно, не то, что вы хотите – FredK

+0

mainHandler будет вызываться, когда происходит прерывание. Он автоматически вызывается. Я не включил весь код, но в основном получаю строку, содержащую данные, полученные от линии Bluetooth. После того, как все данные собраны, он перескакивает на код, который я там включил. –

ответ

1

Вам нужно позвонить mainHandler:

main.c

#include <bluetooth.h> 
#include <tftController.h> 
main() { 
    initLCD(); 
    mainHandler(); 
    wait(); 
} 
+0

Я думаю, что я не очень хорошо объяснил, mainHandler - функция обработчика прерываний, он будет автоматически вызван, когда будут данные, проходящие через линию Bluetooth. –

Смежные вопросы