|  | 
| 10 | 10 | #include "hardware/uart.h" | 
| 11 | 11 | 
 | 
| 12 | 12 | int main() { | 
|  | 13 | +    // create feature groups to group configuration settings | 
|  | 14 | +    // these will also show up in picotool info, not just picotool config | 
|  | 15 | +    bi_decl(bi_program_feature_group(0x1111, 0, "UART Configuration")); | 
|  | 16 | +    bi_decl(bi_program_feature_group(0x1111, 1, "Enabled Interfaces")); | 
| 13 | 17 |     // stdio_uart configuration and initialisation | 
| 14 |  | -    bi_decl(bi_ptr_int32(0x1234, 1, use_uart, 1)); | 
| 15 |  | -    bi_decl(bi_ptr_int32(0x1234, 2, uart_num, 0)); | 
| 16 |  | -    bi_decl(bi_ptr_int32(0x1234, 3, uart_tx, 0)); | 
| 17 |  | -    bi_decl(bi_ptr_int32(0x1234, 4, uart_rx, 1)); | 
| 18 |  | -    bi_decl(bi_ptr_int32(0x1234, 5, uart_baud, 115200)); | 
|  | 18 | +    bi_decl(bi_ptr_int32(0x1111, 1, use_uart, 1)); | 
|  | 19 | +    bi_decl(bi_ptr_int32(0x1111, 0, uart_num, 0)); | 
|  | 20 | +    bi_decl(bi_ptr_int32(0x1111, 0, uart_tx, 0)); | 
|  | 21 | +    bi_decl(bi_ptr_int32(0x1111, 0, uart_rx, 1)); | 
|  | 22 | +    bi_decl(bi_ptr_int32(0x1111, 0, uart_baud, 115200)); | 
| 19 | 23 |     if (use_uart) { | 
| 20 | 24 |         stdio_uart_init_full(UART_INSTANCE(uart_num), uart_baud, uart_tx, uart_rx); | 
| 21 | 25 |     } | 
| 22 | 26 | 
 | 
| 23 | 27 |     // stdio_usb initialisation | 
| 24 |  | -    bi_decl(bi_ptr_int32(0x1234, 6, use_usb, 1)); | 
|  | 28 | +    bi_decl(bi_ptr_int32(0x1111, 1, use_usb, 1)); | 
| 25 | 29 |     if (use_usb) { | 
| 26 | 30 |         stdio_usb_init(); | 
| 27 | 31 |     } | 
| 28 | 32 | 
 | 
| 29 | 33 |     // default printed string | 
| 30 |  | -    bi_decl(bi_ptr_string(0x1234, 7, text, "Hello, world!", 256)); | 
|  | 34 | +    bi_decl(bi_ptr_string(0, 0, text, "Hello, world!", 256)); | 
| 31 | 35 | 
 | 
| 32 | 36 |     while (true) { | 
| 33 | 37 |         printf("%s\n", text); | 
|  | 
0 commit comments