Example #1
0
// public functions
void DebugCommHw_Init(DebugCommHw* p_this) {
  BufferedIoEvent events;
  events.EventWrite = DebugCommHw_OnBufferedIoWrite;

  DebugComm_Init(&p_this->base, &events);
  CircleBuffer_Init(&rx_, rx_raw_, 64);
  CircleBuffer_Init(&tx_, tx_raw_, 64);
  DebugCommHw_ConfigUsart();
  SET_BIT(uart_handle.Instance->CR1, USART_CR1_RXNEIE);
  SET_BIT(uart_handle.Instance->CR3, USART_CR3_EIE);
}
Example #2
0
// SD Specification: https://www.sdcard.org/downloads/pls/simplified_specs/part1_410.pdf
bool SD_Init(SdInterface* self) {
  CircleBuffer_Init(&self->buffer);
  self->state = SDS_TRANSMIT;
  self->timeoutCount = 0;

  self->flow_type = SDF_IDLE;
  self->flow_state = 0;
}
Example #3
0
void UART_Init(UartBuffer* self, mailbox_t onRX) {
  CircleBuffer_Init(&self->rx);
  CircleBuffer_Init(&self->tx);
  self->onRX = onRX;
}