# Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

### Protego

# MLA -- USB Library

20 December, 2013

- 1
- 2
…
- 83
- 84
- 85
- 86
- 87
…
- 311
- 312

Parameters
Parameters Description
pDdata Pointer to the starting location of data bytes
len Number of bytes to be transferred
Function
void mUSBUSARTTxRom(rom uint8_t *pData, uint8_t len)
1.4.1.3.2.18 USBUSARTIsTxTrfReady Macro
This macro is used to check if the CDC class is ready to send more data.
File
usb_device_cdc.h
Syntax
#define USBUSARTIsTxTrfReady (cdc_trf_state == CDC_TX_READY)
Description
This macro is used to check if the CDC class handler firmware is ready to send more data to the host over the CDC bulk IN
endpoint.
Typical Usage:
if(USBUSARTIsTxTrfReady())
{
putrsUSBUSART("Hello World");
}
Remarks
Make sure the application periodically calls the CDCTxService() handler, or pending USB IN transfers will not be able to
advance and complete.
Preconditions
The return value of this function is only valid if the device is in a configured state (i.e. - USBDeviceGetState() returns
CONFIGURED_STATE)
Function
bool USBUSARTIsTxTrfReady(void)
1.4.1.3.3 Data Types and Constants
Data types and constants used to interface with the CDC module.
Macros
Name Description
NUM_STOP_BITS_1 1 stop bit - used by CDCSetLineCoding() and CDCSetCharacterFormat()
NUM_STOP_BITS_1_5 1.5 stop bit - used by CDCSetLineCoding() and
CDCSetCharacterFormat()
NUM_STOP_BITS_2 2 stop bit - used by CDCSetLineCoding() and CDCSetCharacterFormat()
PARITY_EVEN even parity - used by CDCSetLineCoding() and CDCSetParity()
PARITY_MARK mark parity - used by CDCSetLineCoding() and CDCSetParity()
PARITY_NONE no parity - used by CDCSetLineCoding() and CDCSetParity()
1.4 Library Interface MLA - USB Library Help Device/Peripheral
85

- 1
- 2
…
- 83
- 84
- 85
- 86
- 87
…
- 311
- 312