#include <stdio.h>
#include <stdint.h>
#include "pico/stdlib.h"
void print_bits8(uint8_t valor) { // imprime um valor de 8 bits
for (int i = 7; i >= 0; i--) {
printf("%d ", (valor >> i) & 1);
}
}
void print_bits16(uint16_t valor) { // imprime um valor de 16 bits
for (int i = 15; i >= 0; i--) {
printf("%d ", (valor >> i) & 1);
}
}
int main() {
stdio_init_all();
uint16_t valor_int = 3025; // Número de 16 bits (D15 a D0)
// separação em 8 bits
uint8_t valor_H = valor_int >> 8; // Bits D15 a D8
uint8_t valor_L = valor_int & 0xFF; // Bits D7 a D0
// Mostrar valores decimais
printf("Valor_int = %u\n", valor_int);
printf("Valor_H = %u\n", valor_H);
printf("Valor_L = %u\n\n", valor_L);
//Mostrar valores em binario
printf("Valor_int (16 bits): ");
print_bits16(valor_int);
printf("\n");
printf("Valor_H (8 bits): ");
print_bits8(valor_H);
printf("\n");
printf("Valor_L (8 bits): ");
print_bits8(valor_L);
printf("\n");
while (true) {
sleep_ms(1000);
}
}