I
IceZero
Guest
Jeg må gjøre noe galt fordi dette ikke fungerer som jeg forventet. Det jeg prøver å gjøre er å skifte i 4 byte som mottas fra UART sekvensielt i en 32-bit register. Jeg har tatt min kode nedenfor. Da jeg leste tilbake 32-bit register til UART, alle 4-byte av 32-bits register inneholder den sist mottatte byte fra UART. Det virker som når jeg legger den uart_rx_data_out å uart_rx_opcode i det siste trinnet, er det å legge denne verdien til alle biter ikke bare biter 0-7 som jeg forventer. Jeg er trolig gjør noe virkelig dumt.
Code:
if (cnt_rx_next == 0) begynne / / Legg tilgjengelige byte inn OP kode Registrer uart_rx_opcode = 32'h00000000 + uart_rx_data_out / / Øk The Counter cnt_rx_next = cnt_rx_reg + 1; end else if (cnt_rx_next == 1) begynner / / Legg tilgjengelige byte inn OP kode Registrer uart_rx_opcode = (uart_rx_opcode