#include <stdint.h>
#include "ReadWriteBits.h"
Go to the source code of this file.
|
typedef uint8_t volatile *const | uspi_ptr |
|
typedef uint16_t volatile *const | uspi_ptr16 |
|
typedef uint8_t const | uspi_pin |
|
typedef uint8_t const | uspi_bit |
|
|
uspi_ptr | UartSpi_ddr |
|
uspi_ptr | UartSpi_port |
|
uspi_ptr | UartSpi_UCSR0A |
|
uspi_ptr | UartSpi_UCSR0B |
|
uspi_ptr | UartSpi_UCSR0C |
|
uspi_ptr | UartSpi_UDR0 |
|
uspi_ptr16 | UartSpi_UBRR0 |
|
uspi_pin | UartSpi_Miso |
|
uspi_pin | UartSpi_AdcConv |
|
uspi_pin | UartSpi_Sck |
|
uspi_bit | UartSpi_UMSEL00 |
|
uspi_bit | UartSpi_UMSEL01 |
|
uspi_bit | UartSpi_RXEN0 |
|
uspi_bit | UartSpi_TXEN0 |
|
uspi_bit | UartSpi_UCPOL0 |
|
uspi_bit | UartSpi_UCPHA0 |
|
uspi_bit | UartSpi_UDORD0 |
|
uspi_bit | UartSpi_UDRE0 |
|
uspi_bit | UartSpi_RXC0 |
|
API
void UartSpiInit(void);
void StartAdcConversion(void);
Definition in file UartSpi.h.
◆ CfgSpiToTransferMsbFirst()
void CfgSpiToTransferMsbFirst |
( |
void |
| ) |
|
|
inline |
Transfer MSB first
Definition at line 117 of file UartSpi.h.
◆ GiveSpiControlOverMisoAndMosiPins()
void GiveSpiControlOverMisoAndMosiPins |
( |
void |
| ) |
|
|
inline |
Override normal port operation for SPI MOSI/MISO:
- enable the transmitter:
- the UART Tx pin becomes the SPI MOSI
- enable the receiver:
- the UART Rx pin becomes the SPI MISO
Definition at line 127 of file UartSpi.h.
◆ RunSpiAt5Mhz()
void RunSpiAt5Mhz |
( |
void |
| ) |
|
|
inline |
Configure USART to clock ADC SCK at fosc/2 = 5MHz
fosc = 10MHz
(10MHz external oscillator)
- baudrate in bits per second
= fosc/(2*(UBBR0+1))
- set
UBBR0=0
for baudrate = fosc/2
Definition at line 37 of file UartSpi.h.
◆ SetAdcConvAsOutput()
void SetAdcConvAsOutput |
( |
void |
| ) |
|
|
inline |
AdcConv is a general purpose i/o pin.
- configure as an output
- controls start of conversion
- controls start of readout
Definition at line 63 of file UartSpi.h.
◆ SetSckAsOutput()
void SetSckAsOutput |
( |
void |
| ) |
|
|
inline |
Cfg XCK as an output. CPOL=1 makes the clock idle high.
Definition at line 50 of file UartSpi.h.
◆ UartSpiInit()
void UartSpiInit |
( |
void |
| ) |
|
|
inline |
UartSpiInit behavior:
- clocks SPI bus at 5MHz
- sets Sck as an output
- sets AdcConv to idle low
- sets AdcConv as an output
- enables the UART in Master SPI Mode
- uses SPI data mode CPOL 1 CPHA 1
- cfgs SPI to transfer MSB first
- gives SPI control over Miso and Mosi pin behavior
Definition at line 164 of file UartSpi.h.
◆ UseSpiDataModeCpol1CPha1()
void UseSpiDataModeCpol1CPha1 |
( |
void |
| ) |
|
|
inline |
Use SPI data mode: CPOL=1, CPHA=1
- clock idles high
- load data on falling clock edge
- sample data on rising clock edge
Definition at line 96 of file UartSpi.h.