I * A * R FOR A * V * R

M

mike2002

Guest
Sveiki,
Vai kāds ir pieredze ar IAR Compiler AVR?
Man radušās problēmas, kā izmantot printf un piedāvā funkcijas.
Es tā, kas Baud likme un UART par MEGA8.Funkcijas sastādīta naudas sodu, bet atzīmējot uz seriālo?
Pateicība,<img src="http://www.edaboard.com/images/smiles/icon_cry.gif" alt="Saucošs vai Ļoti bēdīgs" border="0" />
 
hi ..Es to izdarīt citā veidā ...

sprintf (buf, "\ nTempC =% d grādi C \ n", (int) temp_lsb); / / print temp.C
nosūta (buf)

kur

anulēts sūtīt (CHAR TX_Char)
(/ / šajā sūta TX_Char lai UART
UDR = TX_Char;
while (! (USR & 32)); / /, uzgaidiet, kamēr tx buferis tukšs
)
anulēts sūta (CHAR * string)
(
neparakstīts int n;
uz (n = 0; n <strlen (string); n )
sūtīt (string [n]);
)

Man nekad nav izmantots printf tieši seriel ..vienmēr caur reģistrs ...

sveicieni

atcelt

 
printf aicina bibliotēku funkciju putchar, kas ir jāpielāgo attiecībā uz mērķa aparatūras konfigurāciju.
Funkcija tiek piegādātas avots formāta failu putchar.c
Skatīt HELP detalizētu aprakstu.

Sveicieni

 
atcelt wrote:

hi ..
Es to izdarīt citā veidā ...sprintf (buf, "\ nTempC =% d grādi C \ n", (int) temp_lsb); / / print temp.
C

nosūta (buf)kuranulēts sūtīt (CHAR TX_Char)

(/ / šajā sūta TX_Char lai UART

UDR = TX_Char;

while (! (USR & 32)); / /, uzgaidiet, kamēr tx buferis tukšs

)

anulēts sūta (CHAR * string)

(

neparakstīts int n;

uz (n = 0; n <strlen (string); n )

sūtīt (string [n]);

)Man nekad nav izmantots printf tieši seriel ..
vienmēr caur reģistrs ...sveicieniatcelt
 
Thanks to all of you,
Es tā pārskatīto putchar funkciju un iekļauta, lai mans kods:
int putchar (int c)
(
if (c == '\ n ")
putchar ( "\ r ');
kamēr ((UCSRA & (1 <<Udre)) == 0) / / Udre, datu reģistra tukšs
;
UDR = c;
atgriezties c;
)
Tagad visi Lib.funkcijas saistībā ar sērijas I / O darbību.
I guess getchar () būs jāpārskata arī gūt citā veidā komunikācija?

<img src="http://www.edaboard.com/images/smiles/icon_lol.gif" alt="Smejas" border="0" />
 

Welcome to EDABoard.com

Sponsor

Back
Top