#include <stdio.h>\n\nstruct UART_ControlRegister {\n unsigned int baudrate : 4;\n unsigned int tx_enable : 1;\n unsigned int rx_enable : 1;\n unsigned int tx_irq_en : 1;\n unsigned int rx_irq_en : 1;\n unsigned int parity_en : 1;\n unsigned int stop_bits : 1;\n unsigned int reserved : 22;\n};\n\nvoid configure_uart(struct UART_ControlRegister *reg) {\n \/\/ Your logic here\n reg->baudrate = 9;\n reg->tx_enable = 1;\n reg->rx_enable = 1;\n reg->tx_irq_en = 1;\n reg->rx_irq_en = 0;\n reg->parity_en = 1;\n reg->stop_bits = 0;\n}\n\nint main() {\n struct UART_ControlRegister reg = {0};\n\n configure_uart(®);\n\n printf(\"baudrate = %u\\n\", reg.baudrate);\n printf(\"tx_enable = %u\\n\", reg.tx_enable);\n printf(\"rx_enable = %u\\n\", reg.rx_enable);\n printf(\"tx_irq_en = %u\\n\", reg.tx_irq_en);\n printf(\"rx_irq_en = %u\\n\", reg.rx_irq_en);\n printf(\"parity_en = %u\\n\", reg.parity_en);\n printf(\"stop_bits = %u\", reg.stop_bits);\n\n return 0;\n}<\/code><\/pre>Solving Approach<\/strong><\/h2> <\/h2> <\/p> <\/p>"}
Test Cases
Test Results
Input
Expected Output
baudrate = 9 tx_enable = 1 rx_enable = 1 tx_irq_en = 1 rx_irq_en = 0 parity_en = 1 stop_bits = 0