Seregio 0 29 июля, 2009 Опубликовано 29 июля, 2009 · Жалоба в IAR перерепределяю функцию putchar и все работает. начинаю переписывать getchar как прописано в EWAVR_CompilerReference.pdf выкидывает ошибку Error[e27]: Entry "getchar" in module main ( C:\Documents and Settings\seregio\Мои документы\Release\Obj\main.r90 ) redefined in module. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DogPawlowa 0 29 июля, 2009 Опубликовано 29 июля, 2009 · Жалоба выкидывает ошибку Error[e27]: Entry "getchar" in module main ( C:\Documents and Settings\seregio\Мои документы\Release\Obj\main.r90 ) redefined in module. И что, так текст ошибки и оборван, или Вы не скопипастили правильно? Как функция getchar в хэдере записана? Как файлы включаются? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Seregio 0 29 июля, 2009 Опубликовано 29 июля, 2009 · Жалоба Error[e27]: Entry "getchar" in module main ( C:\Documents and Settings\seregio\Мои документы\Release\Obj\main.r90 ) redefined in module ?getchar ( L:\Program Files\IAR Systems\Embedded Workbench Evaluation 5.3\avr\LIB\DLIB\dlAVR-3s-ec_mul-64-n.r90 ) Error while running Linker в хедере прописана стандартно: __INTRINSIC int getchar(void); т.е. ничего не трогал printf - работает без замечаний, scanf ругается код #include <iom128.h> #include <stdio.h> #include <intrinsics.h> int putchar(int c) { while ( !UCSR0A_UDRE0 ){}; UDR0 = c; return c; } int getchar(void) { while ( !(UCSR0A_RXC0) ){} return UDR0-1; } void main (void) { float x; DDRB_DDB0=1; PORTB_PORTB0 = 0; UCSR0A=0x00; UCSR0B=0x18; UCSR0C=0x86; UBRR0H=0x00; UBRR0L=0x33; scanf("%f", &x); printf("X = %f ", x); } Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DogPawlowa 0 31 июля, 2009 Опубликовано 31 июля, 2009 · Жалоба в хедере прописана стандартно: __INTRINSIC int getchar(void); т.е. ничего не трогал printf - работает без замечаний, scanf ругается Сейчас нет компилятора AVR под рукой, на MSP-шном все компилируется. Можен что-то не то в свойствах проекта? Но тут ничего не могу уточнить, scanf практически не использую, так как у меня событийная обработка, и клавиши считываются в фоне. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
D1ma 0 16 ноября, 2009 Опубликовано 16 ноября, 2009 · Жалоба Уменя таже проблема и printf не работает как надо, выводит только первый символ (попадает в putchar только один рас) #include <stdio.h> #include "wh2004.h" wh2004 lcd; int putchar(int c) { lcd.printChar(c); return 1; } int getchar() { return 0; } int main() { printf("Hello world!"); printf("Hello world!"); return 0; } Выводит : HH с printf разобрался. putchar должна возврачать тотже символ, что и принемает int putchar(int c) { lcd.printChar(c); return c; } а scanf дает ошибку Error[e27]: Entry "getchar" in module main ( C:\Documents and Settings\D!m@\Ðàáî÷èé ñòîë\USA\project\boot\Debug\Obj\main.r90 ) redefined in module ?getchar ( C:\Program Files\IAR Systems\Embedded Workbench Evaluation 5.3\avr\LIB\DLIB\dlAVR-3s-ec_mul-f.r90 ) Error while running Linker Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться