Вопрос на эту же тему. В проекте используется четыре файла adc.c adc.h main.c main.h , в adc.h объявлена переменная buf как extern unsigned char buf; в adc.c #include<adc.h> unsigned char buf; в main #include<adc.h> компилятор переменную buf видит в main.c все работает, дальше по такому же принципу добавил еще два фаила das.c das.h и добавил строчку в маке файл. В них тоже также объявляю переменную dataR прикрепляю к main фаил das.h , компилятор эту переменную тоже видит в файле main. при компиляции ошибок нет, только данные не передаются, то есть в этой переменной постоянно какие то цифры, не то что должно быть. В файле das.c одна функция, которая по прерыванию от таймера записывает данные в переменную dataR. Сделал принудительную запись в dataR = 10; по прерыванию, но когда считываю данные в файле маин там какието 255 или 210 ,все время меняется эта цифра. Вопрос понимаю, не конкретный, кто может знать что происходит в моих исходниках, Просто может у кого была похожая проблема, или или порекомендуете что? yagarto GCC-4.3.2
|