Biblioteca pentru a converti numere binare în numere zecimale codificate binar și simboluri

Uneori, programare microcontroler necesare terminale de afișare sau a unor date numerice. Acest lucru poate fi lecturi ADC, valoarea ceasului intern, coduri de eroare, mașină de stat, etc. Numărul O procedură constă din următorii pași pentru a converti un număr binar la BCD, converti numărul de BCD într-o reprezentare caracter și apoi transmite rezultatul unor funcții de ieșire. Pentru a realiza această sarcină, am scris o mică bibliotecă.

- Acesta funcționează cu orice microcontrolere și compilatoare,
- algoritm rapid fără a utiliza o operație de divizare,
- Se ruleaza cu numere binare 8, 16 și 32 de biți,
- există funcții pentru lucrul cu zecimale, având în vedere lungimea cuvânt,
- poate stoca rezultatul conversiei ca un șir de caractere într-un tampon,
- în cazul în care funcția de ieșire determinată extern poate transmite în mod direct rezultatul acesteia.

1. Fișierele rescriere bcd.h și bcd.c în dosarul proiectului.
2. Conectați bcd.c la proiect în cadrul IDE.
3. Inklyudim fișier antet bcd.h la sishnomu fișier, care vor fi utilizate de funcții de conversie.
4. Configurați fișierul de configurare în bcd.h. antet
5. prescris în codul apela funcțiile bibliotecii.

Configurarea implică următoarele etape.

2. Funcții Redefinirea O. În cazul în care nu se utilizează această funcționalitate un macro ar trebui să fie lăsat necompletat.

Caracteristici comune pentru conversia numerelor binare 8, 16 și 32 de biți.

void BCD_Uchar (valoare uint8_t) - convertește un număr de 0-255
void BCD_Uint (valoare uint16_t) - convertește un număr de 0-65535
void BCD_Ulong (valoare uint32_t) - convertește un număr 0-4294967295

Funcții pentru conversia de biți adâncime zecimală prestabilite.

void BCD_1 (valoare uint8_t) - convertește numerele de la 0 la 9
void BCD_2 (valoare uint8_t) - convertește un număr 0-99
void BCD_3 (valoare uint8_t) - convertește un număr de 0-255
void BCD_3Int (valoare uint16_t) - convertește un număr de 0-999
void BCD_4Int (valoare uint16_t) - convertește un număr de 0-9999
void BCD_5Int (valoare uint16_t) - convertește un număr de 0-65535

exemplu

Funcția pentru a obține un pointer la un tampon în care pentru a stoca rezultatul. În cazul în care nu se utilizează tamponul, funcția returnează un pointer nul.

bcd.rar - bibliotecă pentru traducerea numerelor binare în BCD și simbolurile