From 5741d2d2a79ddae73e81bfcf5283e913d3637b48 Mon Sep 17 00:00:00 2001 From: eddyem Date: Mon, 28 May 2018 22:48:44 +0300 Subject: [PATCH] Add displaying T @ oLED screen --- STM32/Tcalc_screen/Makefile | 144 + STM32/Tcalc_screen/Readme.md | 8 + STM32/Tcalc_screen/hardware.c | 92 + STM32/Tcalc_screen/hardware.h | 78 + STM32/Tcalc_screen/i2c.c | 99 + STM32/Tcalc_screen/i2c.h | 41 + STM32/Tcalc_screen/ld/stm32f042k.ld | 12 + STM32/Tcalc_screen/main.c | 286 ++ STM32/Tcalc_screen/spi.c | 60 + STM32/Tcalc_screen/spi.h | 33 + STM32/Tcalc_screen/ssd1306.c | 233 ++ STM32/Tcalc_screen/ssd1306.h | 50 + STM32/Tcalc_screen/ssd1306_fonts.c | 301 ++ STM32/Tcalc_screen/ssd1306_fonts.h | 17 + STM32/Tcalc_screen/tsys01.bin | Bin 0 -> 16192 bytes STM32/Tcalc_screen/tsys01.c.tags | 4560 +++++++++++++++++++++++++++ STM32/Tcalc_screen/tsys01.geany | 43 + STM32/Tcalc_screen/usart.c | 173 + STM32/Tcalc_screen/usart.h | 53 + 19 files changed, 6283 insertions(+) create mode 100644 STM32/Tcalc_screen/Makefile create mode 100644 STM32/Tcalc_screen/Readme.md create mode 100644 STM32/Tcalc_screen/hardware.c create mode 100644 STM32/Tcalc_screen/hardware.h create mode 100644 STM32/Tcalc_screen/i2c.c create mode 100644 STM32/Tcalc_screen/i2c.h create mode 100644 STM32/Tcalc_screen/ld/stm32f042k.ld create mode 100644 STM32/Tcalc_screen/main.c create mode 100644 STM32/Tcalc_screen/spi.c create mode 100644 STM32/Tcalc_screen/spi.h create mode 100644 STM32/Tcalc_screen/ssd1306.c create mode 100644 STM32/Tcalc_screen/ssd1306.h create mode 100644 STM32/Tcalc_screen/ssd1306_fonts.c create mode 100644 STM32/Tcalc_screen/ssd1306_fonts.h create mode 100755 STM32/Tcalc_screen/tsys01.bin create mode 100644 STM32/Tcalc_screen/tsys01.c.tags create mode 100644 STM32/Tcalc_screen/tsys01.geany create mode 100644 STM32/Tcalc_screen/usart.c create mode 100644 STM32/Tcalc_screen/usart.h diff --git a/STM32/Tcalc_screen/Makefile b/STM32/Tcalc_screen/Makefile new file mode 100644 index 0000000..7162a71 --- /dev/null +++ b/STM32/Tcalc_screen/Makefile @@ -0,0 +1,144 @@ +BINARY = tsys01 +BOOTPORT ?= /dev/ttyUSB0 +BOOTSPEED ?= 9600 +# MCU FAMILY +FAMILY = F0 +# MCU code +MCU = F042x6 +# hardware definitions +#DEFS := -DUSARTNUM=2 -DI2CPINS=A9A10 +DEFS += -DEBUG +# change this linking script depending on particular MCU model, +# for example, if you have STM32F103VBT6, you should write: +LDSCRIPT = ld/stm32f042k.ld + +INDEPENDENT_HEADERS= + +FP_FLAGS ?= -msoft-float +ASM_FLAGS = -mthumb -mcpu=cortex-m0 -march=armv6-m -mtune=cortex-m0 +ARCH_FLAGS = $(ASM_FLAGS) $(FP_FLAGS) + +############################################################################### +# Executables +OPREFIX ?= /opt/bin/arm-none-eabi +#PREFIX ?= /usr/x86_64-pc-linux-gnu/arm-none-eabi/gcc-bin/7.3.0/arm-none-eabi +PREFIX ?= $(OPREFIX) + +RM := rm -f +RMDIR := rmdir +CC := $(PREFIX)-gcc +LD := $(PREFIX)-gcc +AR := $(PREFIX)-ar +AS := $(PREFIX)-as +OBJCOPY := $(OPREFIX)-objcopy +OBJDUMP := $(OPREFIX)-objdump +GDB := $(OPREFIX)-gdb +STFLASH := $(shell which st-flash) +STBOOT := $(shell which stm32flash) + +############################################################################### +# Source files +OBJDIR = mk +LDSCRIPT ?= $(BINARY).ld +SRC := $(wildcard *.c) +OBJS := $(addprefix $(OBJDIR)/, $(SRC:%.c=%.o)) +STARTUP = $(OBJDIR)/startup.o +OBJS += $(STARTUP) +DEPS := $(OBJS:.o=.d) + +INC_DIR ?= ../inc + +INCLUDE := -I$(INC_DIR)/F0 -I$(INC_DIR)/cm +LIB_DIR := $(INC_DIR)/ld + +############################################################################### +# C flags +CFLAGS += -O2 -g -MD -D__thumb2__=1 +CFLAGS += -Wall -Wextra -Wshadow -Wimplicit-function-declaration +CFLAGS += -Wredundant-decls $(INCLUDE) +# -Wmissing-prototypes -Wstrict-prototypes +CFLAGS += -fno-common -ffunction-sections -fdata-sections + +############################################################################### +# Linker flags +LDFLAGS += --static -nostartfiles +#--specs=nano.specs +LDFLAGS += -L$(LIB_DIR) +LDFLAGS += -T$(LDSCRIPT) +LDFLAGS += -Wl,-Map=$(OBJDIR)/$(BINARY).map +LDFLAGS += -Wl,--gc-sections + +############################################################################### +# Used libraries +LDLIBS += -Wl,--start-group -lc -lgcc -Wl,--end-group +LDLIBS += $(shell $(CC) $(CFLAGS) -print-libgcc-file-name) + +DEFS += -DSTM32$(FAMILY) -DSTM32$(MCU) + +#.SUFFIXES: .elf .bin .hex .srec .list .map .images +#.SECONDEXPANSION: +#.SECONDARY: + +ELF := $(OBJDIR)/$(BINARY).elf +LIST := $(OBJDIR)/$(BINARY).list +BIN := $(BINARY).bin +HEX := $(BINARY).hex + +all: bin list + +elf: $(ELF) +bin: $(BIN) +hex: $(HEX) +list: $(LIST) + +ifneq ($(MAKECMDGOALS),clean) +-include $(DEPS) +endif + +$(OBJDIR): + mkdir $(OBJDIR) + +$(STARTUP): $(INC_DIR)/startup/vector.c + $(CC) $(CFLAGS) $(DEFS) $(INCLUDE) $(ARCH_FLAGS) -o $@ -c $< + +$(OBJDIR)/%.o: %.c + @echo " CC $<" + $(CC) $(CFLAGS) $(DEFS) $(INCLUDE) $(ARCH_FLAGS) -o $@ -c $< + +#$(OBJDIR)/%.d: %.c $(OBJDIR) +# $(CC) -MM -MG $< | sed -e 's,^\([^:]*\)\.o[ ]*:,$(@D)/\1.o $(@D)/\1.d:,' >$@ + +$(BIN): $(ELF) + @echo " OBJCOPY $(BIN)" + $(OBJCOPY) -Obinary $(ELF) $(BIN) + +$(HEX): $(ELF) + @echo " OBJCOPY $(HEX)" + $(OBJCOPY) -Oihex $(ELF) $(HEX) + +$(LIST): $(ELF) + @echo " OBJDUMP $(LIST)" + $(OBJDUMP) -S $(ELF) > $(LIST) + +$(ELF): $(OBJDIR) $(OBJS) + @echo " LD $(ELF)" + $(LD) $(LDFLAGS) $(ARCH_FLAGS) $(OBJS) $(LDLIBS) -o $(ELF) + +clean: + @echo " CLEAN" + $(RM) $(OBJS) $(DEPS) $(ELF) $(HEX) $(LIST) $(OBJDIR)/*.map + @rmdir $(OBJDIR) 2>/dev/null || true + + +flash: $(BIN) + @echo " FLASH $(BIN)" + $(STFLASH) write $(BIN) 0x8000000 + +boot: $(BIN) + @echo " LOAD $(BIN) through bootloader" + $(STBOOT) -b$(BOOTSPEED) $(BOOTPORT) -w $(BIN) + +gentags: + CFLAGS="$(CFLAGS) $(DEFS)" geany -g $(BINARY).c.tags *[hc] 2>/dev/null + +.PHONY: clean flash boot gentags diff --git a/STM32/Tcalc_screen/Readme.md b/STM32/Tcalc_screen/Readme.md new file mode 100644 index 0000000..b54ada8 --- /dev/null +++ b/STM32/Tcalc_screen/Readme.md @@ -0,0 +1,8 @@ +# Check temperature on sensors pair and show values of T @ 0.96'' oLED display +# also test by USART (115200). +Code for NUCLEO-042 + +### PINOUT +- I2C: PA9 (SCL) & PA10 (SDA) +- USART2: PA2 (Tx) & PA15 (Rx) +- SPI for screen: PA4 (CS), PA5 (SCL), PA7 (MOSI), PB4 (RST), PB5 (D/C) diff --git a/STM32/Tcalc_screen/hardware.c b/STM32/Tcalc_screen/hardware.c new file mode 100644 index 0000000..5612c42 --- /dev/null +++ b/STM32/Tcalc_screen/hardware.c @@ -0,0 +1,92 @@ +/* + * geany_encoding=koi8-r + * hardware.c - hardware-dependent macros & functions + * + * Copyright 2018 Edward V. Emelianov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ + +#include "hardware.h" + +void gpio_setup(void){ + // Set green led (PB3) as output + RCC->AHBENR |= RCC_AHBENR_GPIOBEN | RCC_AHBENR_GPIOAEN; + GPIOB->MODER = GPIO_MODER_MODER3_O; + // D/C & Reset pins: D/C - PB5, Reset - PB4 + GPIOB->MODER |= GPIO_MODER_MODER4_O | GPIO_MODER_MODER5_O; +} + +void spi_setup(){ + /* Enable the peripheral clock of GPIOA */ + RCC->AHBENR |= RCC_AHBENR_GPIOAEN; + /* (1) Select AF mode (10) on PA5, PA7, push-pull @PA4. MISO disabled (simplex mode)*/ + /* (2) AF0 for SPI1 signals */ + GPIOA->MODER = (GPIOA->MODER + & ~(GPIO_MODER_MODER4 | GPIO_MODER_MODER5 | \ + GPIO_MODER_MODER7))\ + | (GPIO_MODER_MODER4_O | GPIO_MODER_MODER5_AF |\ + GPIO_MODER_MODER7_AF); /* (1) */ + GPIOA->AFR[0] = (GPIOA->AFR[0] & \ + ~(GPIO_AFRL_AFRL5 | GPIO_AFRL_AFRL7)); /* (2) */ + + /* Enable the peripheral clock SPI1 */ + RCC->APB2ENR |= RCC_APB2ENR_SPI1EN; + + /* Configure SPI1 in master */ + /* (1) Master selection, BR: Fpclk/256, software SS management + CPOL and CPHA at zero (rising first edge) */ + /* (2) Slave select output disabled, 8-bit Rx fifo */ + /* (3) Enable SPI1 */ + SPI1->CR1 = SPI_CR1_MSTR | SPI_CR1_BR | SPI_CR1_SSM | SPI_CR1_SSI; /* (1) */ + SPI1->CR2 = SPI_CR2_FRXTH | SPI_CR2_DS_2 | SPI_CR2_DS_1 | SPI_CR2_DS_0; /* (2) */ + SPI1->CR1 |= SPI_CR1_SPE; /* (3) */ + CS_HI(); RST_HI(); +} + +void i2c_setup(I2C_SPEED speed){ + I2C1->CR1 = 0; +#if I2CPINS == A9A10 +/* + * GPIO Resources: I2C1_SCL - PA9, I2C1_SDA - PA10 + * GPIOA->AFR[1] AF4 -- GPIOA->AFR[1] &= ~0xff0, GPIOA->AFR[1] |= 0x440 + */ + RCC->AHBENR |= RCC_AHBENR_GPIOAEN; // clock + GPIOA->AFR[1] &= ~0xff0; // alternate function F4 for PA9/PA10 + GPIOA->AFR[1] |= 0x440; + GPIOA->MODER &= ~(GPIO_MODER_MODER9 | GPIO_MODER_MODER10); + GPIOA->MODER |= GPIO_MODER_MODER9_AF | GPIO_MODER_MODER10_AF; // alternate function + GPIOA->OTYPER |= GPIO_OTYPER_OT_9 | GPIO_OTYPER_OT_10; // opendrain + //GPIOA->OTYPER |= GPIO_OTYPER_OT_10; // opendrain +#else // undefined +#error "Not implemented" +#endif + // I2C + RCC->APB1ENR |= RCC_APB1ENR_I2C1EN; // timing + RCC->CFGR3 |= RCC_CFGR3_I2C1SW; // use sysclock for timing + if(speed == LOW_SPEED){ // 10kHz + // PRESC=B, SCLDEL=4, SDADEL=2, SCLH=0xC3, SCLL=0xC7 + //I2C1->TIMINGR = (0xB<<28) | (4<<20) | (2<<16) | (0xC3<<8) | (0xC7); + I2C1->TIMINGR = (0xB<<28) | (4<<20) | (2<<16) | (0xC3<<8) | (0xB0); + }else{ // 100kHz + // Clock = 6MHz, 0.16(6)us, need 5us (*30) + // PRESC=4 (f/5), SCLDEL=0 (t_SU=5/6us), SDADEL=0 (t_HD=5/6us), SCLL,SCLH=14 (2.(3)us) + //I2C1->TIMINGR = (4<<28) | (14<<8) | (14); // 0x40000e0e + I2C1->TIMINGR = (0xB<<28) | (4<<20) | (2<<16) | (0x12<<8) | (0x11); + } + I2C1->CR1 = I2C_CR1_PE;// | I2C_CR1_RXIE; // Enable I2C & (interrupt on receive - not supported yet) +} diff --git a/STM32/Tcalc_screen/hardware.h b/STM32/Tcalc_screen/hardware.h new file mode 100644 index 0000000..d51dc15 --- /dev/null +++ b/STM32/Tcalc_screen/hardware.h @@ -0,0 +1,78 @@ +/* + * geany_encoding=koi8-r + * hardware.h + * + * Copyright 2018 Edward V. Emelianov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ +#pragma once +#ifndef __HARDWARE_H__ +#define __HARDWARE_H__ + +#include "stm32f0.h" + +#define LED0_port GPIOB +#define LED0_pin (1<<3) + +#ifndef USARTNUM +#define USARTNUM 2 +#endif + +#define CONCAT(a,b) a ## b +#define STR_HELPER(s) #s +#define STR(s) STR_HELPER(s) + +#define FORMUSART(X) CONCAT(USART, X) +#define USARTX FORMUSART(USARTNUM) + +#ifndef I2CPINS +#define I2CPINS A9A10 +#endif + +#ifndef LED1_port +#define LED1_port LED0_port +#endif +#ifndef LED1_pin +#define LED1_pin LED0_pin +#endif +#define LED_blink(x) pin_toggle(x ## _port, x ## _pin) + +// oLED +#define RST_PORT GPIOB +#define RST_PIN (1<<4) +#define DC_PORT GPIOB +#define DC_PIN (1<<5) +#define CS_PORT GPIOA +#define CS_PIN (1<<4) +#define RST_HI() do{pin_set(RST_PORT, RST_PIN);}while(0) +#define RST_LO() do{pin_clear(RST_PORT, RST_PIN);}while(0) +#define DC_HI() do{pin_set(DC_PORT, DC_PIN);}while(0) +#define DC_LO() do{pin_clear(DC_PORT, DC_PIN);}while(0) +#define CS_HI() do{pin_set(CS_PORT, CS_PIN);}while(0) +#define CS_LO() do{pin_clear(CS_PORT, CS_PIN);}while(0) + +typedef enum{ + LOW_SPEED, + HIGH_SPEED +} I2C_SPEED; + +void gpio_setup(void); +void i2c_setup(I2C_SPEED speed); +void spi_setup(); + +#endif // __HARDWARE_H__ diff --git a/STM32/Tcalc_screen/i2c.c b/STM32/Tcalc_screen/i2c.c new file mode 100644 index 0000000..11412df --- /dev/null +++ b/STM32/Tcalc_screen/i2c.c @@ -0,0 +1,99 @@ +/* + * geany_encoding=koi8-r + * i2c.c + * + * Copyright 2017 Edward V. Emelianov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ +#include "stm32f0.h" +#include "hardware.h" +#include "i2c.h" + +/** + * I2C for TSYS01 + * Speed <= 400kHz (200) + * t_SCLH > 21ns + * t_SCLL > 21ns + * while reading, sends NACK + * after reading get 24bits of T value, we need upper 2 bytes: ADC16 = ADC>>8 + * T = (-2) * k4 * 10^{-21} * ADC16^4 + * + 4 * k3 * 10^{-16} * ADC16^3 + * + (-2) * k2 * 10^{-11} * ADC16^2 + * + 1 * k1 * 10^{-6} * ADC16 + * +(-1.5)* k0 * 10^{-2} + * All coefficiens are in registers: + * k4 - 0xA2, k3 - 0xA4, k2 - 0xA6, k1 - 0xA8, k0 - 0xAA + */ + +extern volatile uint32_t Tms; +static uint32_t cntr; + +/** + * write command byte to I2C + * @param addr - device address (TSYS01_ADDR0 or TSYS01_ADDR1) + * @param data - byte to write + * @return 0 if error + */ +uint8_t write_i2c(uint8_t addr, uint8_t data){ + cntr = Tms; + while(I2C1->ISR & I2C_ISR_BUSY) if(Tms - cntr > I2C_TIMEOUT) return 0; // check busy + cntr = Tms; + while(I2C1->CR2 & I2C_CR2_START) if(Tms - cntr > I2C_TIMEOUT) return 0; // check start + I2C1->CR2 = 1<<16 | addr | I2C_CR2_AUTOEND; // 1 byte, autoend + // now start transfer + I2C1->CR2 |= I2C_CR2_START; + cntr = Tms; + while(!(I2C1->ISR & I2C_ISR_TXIS)){ // ready to transmit + if(I2C1->ISR & I2C_ISR_NACKF){ + I2C1->ICR |= I2C_ICR_NACKCF; + return 0; + } + if(Tms - cntr > I2C_TIMEOUT) return 0; + } + I2C1->TXDR = data; // send data + return 1; +} + +/** + * read nbytes (2 or 3) of data from I2C line + * @return 1 if all OK, 0 if NACK or no device found + */ +uint8_t read_i2c(uint8_t addr, uint32_t *data, uint8_t nbytes){ + uint32_t result = 0; + cntr = Tms; + while(I2C1->ISR & I2C_ISR_BUSY) if(Tms - cntr > 5) return 0; // check busy + cntr = Tms; + while(I2C1->CR2 & I2C_CR2_START) if(Tms - cntr > 5) return 0; // check start + // read N bytes + I2C1->CR2 = (nbytes<<16) | addr | 1 | I2C_CR2_AUTOEND | I2C_CR2_RD_WRN; + I2C1->CR2 |= I2C_CR2_START; + uint8_t i; + cntr = Tms; + for(i = 0; i < nbytes; ++i){ + while(!(I2C1->ISR & I2C_ISR_RXNE)){ // wait for data + if(I2C1->ISR & I2C_ISR_NACKF){ + I2C1->ICR |= I2C_ICR_NACKCF; + return 0; + } + if(Tms - cntr > 5) return 0; + } + result = (result << 8) | I2C1->RXDR; + } + *data = result; + return 1; + } diff --git a/STM32/Tcalc_screen/i2c.h b/STM32/Tcalc_screen/i2c.h new file mode 100644 index 0000000..d8eb595 --- /dev/null +++ b/STM32/Tcalc_screen/i2c.h @@ -0,0 +1,41 @@ +/* + * geany_encoding=koi8-r + * i2c.h + * + * Copyright 2017 Edward V. Emelianov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ + +// timeout in ms +#define I2C_TIMEOUT (15) +// CSB=1, address 1110110 +#define TSYS01_ADDR0 (0x76 << 1) +// CSB=0, address 1110111 +#define TSYS01_ADDR1 (0x77 << 1) +// registers: reset, read ADC value, start converstion, sart of PROM +#define TSYS01_RESET (0x1E) +#define TSYS01_ADC_READ (0x00) +#define TSYS01_START_CONV (0x48) +#define TSYS01_PROM_ADDR0 (0xA0) +// conversion time = 10ms + pause == 20ms +#define CONV_TIME (20) +// pause between readings - 2s +#define WAIT_TIME (2000) + +uint8_t read_i2c(uint8_t addr, uint32_t *data, uint8_t nbytes); +uint8_t write_i2c(uint8_t addr, uint8_t data); diff --git a/STM32/Tcalc_screen/ld/stm32f042k.ld b/STM32/Tcalc_screen/ld/stm32f042k.ld new file mode 100644 index 0000000..e747253 --- /dev/null +++ b/STM32/Tcalc_screen/ld/stm32f042k.ld @@ -0,0 +1,12 @@ +/* Linker script for STM32F042x6, 32K flash, 6K RAM. */ + +/* Define memory regions. */ +MEMORY +{ + rom (rx) : ORIGIN = 0x08000000, LENGTH = 32K + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 6K +} + +/* Include the common ld script. */ +INCLUDE stm32f0.ld + diff --git a/STM32/Tcalc_screen/main.c b/STM32/Tcalc_screen/main.c new file mode 100644 index 0000000..277c7b2 --- /dev/null +++ b/STM32/Tcalc_screen/main.c @@ -0,0 +1,286 @@ +/* + * main.c + * + * Copyright 2017 Edward V. Emelianoff + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ + +#include "hardware.h" +#include "usart.h" +#include "i2c.h" +#include "ssd1306.h" + +static uint16_t coefficients[2][5]; // Coefficients for given sensors +static const uint8_t Taddr[2] = {TSYS01_ADDR0, TSYS01_ADDR1}; +volatile uint32_t Tms = 0; + +#define TBUFLEN 11 +static char Tbuf[2][TBUFLEN] = {0}; // buffer for temperatures +static uint8_t refreshdisplay = 0; + +/* Called when systick fires */ +void sys_tick_handler(void){ + ++Tms; +} + +uint8_t sprintu(char *buf, uint8_t buflen, uint32_t val){ + uint8_t i, l = 0, bpos = 0; + char rbuf[10]; + if(!val){ + buf[0] = '0'; + buf[1] = 0; + return 1; + }else{ + while(val){ + rbuf[l++] = val % 10 + '0'; + val /= 10; + } + if(buflen < l+1) return 0; + bpos = l; + buf[l] = 0; + for(i = 0; i < l; ++i){ + buf[--bpos] = rbuf[i]; + } + } + return l; +} + +// print 32bit unsigned int +void printu(uint32_t val){ + char buf[11]; + uint8_t l = sprintu(buf, 11, val); + while(LINE_BUSY == usart_send_blocking(buf, l)); +} + +void getcoeffs(uint8_t addr){ // show norm coefficiens + int i; + const uint8_t regs[5] = {0xAA, 0xA8, 0xA6, 0xA4, 0xA2}; // commands for coefficients + uint32_t K; + char numbr = (addr == TSYS01_ADDR0) ? '0' : '1'; + uint16_t *coef = coefficients[numbr-'0']; + for(i = 0; i < 5; ++i){ + if(write_i2c(addr, regs[i])){ + if(read_i2c(addr, &K, 2)){ + coef[i] = K; + } + } + } +} + +/** + * Get temperature & calculate it by polinome + * T = (-2) * k4 * 10^{-21} * ADC16^4 + * + 4 * k3 * 10^{-16} * ADC16^3 + * + (-2) * k2 * 10^{-11} * ADC16^2 + * + 1 * k1 * 10^{-6} * ADC16 + * +(-1.5)* k0 * 10^{-2} + * k0*(-1.5e-2) + 1e-6*val*(k1 + 1e-5*val*(-2*k2 + 1e-5*val*(4*k3 + -2e-5*k4*val))) + * answer is in 100th + */ +uint8_t calc_t(uint32_t t, int i){ + if(coefficients[i][0] == 0){ + getcoeffs(Taddr[i]); + } + if(coefficients[i][0] == 0){ + SEND("no sensor\n"); + return 0; + } + if (t < 6500000 || t > 13000000) return 0; // wrong value - too small or too large + int j; + double d = (double)t/256., tmp = 0.; + // k0*(-1.5e-2) + 0.1*1e-5*val*(1*k1 + 1e-5*val*(-2.*k2 + 1e-5*val*(4*k3 + 1e-5*val*(-2*k4)))) + const double mul[5] = {-1.5e-2, 1., -2., 4., -2.}; + for(j = 4; j > 0; --j){ + tmp += mul[j] * (double)coefficients[i][j]; + tmp *= 1e-5*d; + } + tmp = tmp/10. + mul[0]*coefficients[i][0]; + Tbuf[i][0] = 'T'; Tbuf[i][1] = i + '0'; + Tbuf[i][2] = '='; Tbuf[i][3] = ' '; + char *ptr = &Tbuf[i][4]; + uint8_t l = TBUFLEN - 4, s; + if(tmp < 0.){ + *ptr++ = '-'; + tmp = -tmp; + } + uint32_t x = (uint32_t)tmp; + if(x > 120){ + *ptr = 0; + return 0; // wrong value + } + s = sprintu(ptr, l, x); + ptr += s; l -= s; + tmp -= x; + *ptr++ = '.'; --l; + x = (uint32_t)(tmp*100); + if(x < 10){ + *ptr++ = '0'; --l; + } + s += sprintu(ptr, l, x); + refreshdisplay = 1; + return 1; +} + +int main(void){ + uint32_t lastT = 0; + int16_t L = 0; + uint8_t i; + uint32_t started[2] = {0, 0}; // time of measurements for given sensor started + uint32_t tgot[2] = {0, 0}; // time of last measurements + uint8_t errcnt[2] = {0,0}; + char *txt; + sysreset(); + SysTick_Config(6000, 1); + gpio_setup(); + usart_setup(); + i2c_setup(LOW_SPEED); + spi_setup(); + // reset on start + write_i2c(TSYS01_ADDR0, TSYS01_RESET); + write_i2c(TSYS01_ADDR1, TSYS01_RESET); + + ssd1306_Fill(0); + + while (1){ + if(refreshdisplay){ + ssd1306_Fill(0); + ssd1306_WriteString(Tbuf[0], Font_11x18, 1); + ssd1306_SetCursor(0, 32); + ssd1306_WriteString(Tbuf[1], Font_11x18, 1); + ssd1306_UpdateScreen(); + refreshdisplay = 0; + } + if(lastT > Tms || Tms - lastT > 499){ + LED_blink(LED0); + lastT = Tms; + ssd1306_UpdateScreen(); + } + ssd1306_process(); + for(i = 0; i < 2; ++i){ + uint8_t err = 1; + if(started[i]){ + if(Tms - started[i] > CONV_TIME){ // poll sensor i + if(write_i2c(Taddr[i], TSYS01_ADC_READ)){ + uint32_t t; + if(read_i2c(Taddr[i], &t, 3) && t){ + if(!calc_t(t, i)){ + //SEND("!calc "); + write_i2c(Taddr[i], TSYS01_RESET); + }else{ + err = 0; + tgot[i] = Tms; + } + started[i] = 0; + }else{ + //SEND("can't read "); + } + }else{ + //SEND("can't write "); + } + }else{ + err = 0; + } + }else{ + if(Tms - tgot[i] > WAIT_TIME){ + if(write_i2c(Taddr[i], TSYS01_START_CONV)){ + started[i] = Tms ? Tms : 1; + err = 0; + }else{ + //SEND("can't start conv\n"); + started[i] = 0; + } + } + } + if(err){ + if(!write_i2c(Taddr[i], TSYS01_RESET)){ // sensor's absent? clear its coeff. + i2c_setup(LOW_SPEED); + if(++errcnt[i] > 10){ + errcnt[i] = 0; + Tbuf[i][0] = '-'; + tgot[i] = 0; + Tbuf[i][1] = 0; + coefficients[i][0] = 0; + refreshdisplay = 1; + } + } + }else errcnt[i] = 0; + } + + if(usartrx()){ // usart1 received data, store in in buffer + L = usart_getline(&txt); + char _1st = txt[0]; + if(L == 2 && txt[1] == '\n'){ + L = 0; + switch(_1st){ + case 'b': + ssd1306_Fill(0); + break; + case 'c': + ssd1306_Fill(0xff); + break; + /*case '0': + ssd1306_WriteString("Please, wait\n", Font_7x10, 1); + break; + case '1': + ssd1306_WriteString("Please, wait\n", Font_11x18, 1); + break; + case '2': + ssd1306_WriteString("Please, wait\n", Font_16x26, 1); + break;*/ + case 'R': // 'R' - reset both + SEND("Reset\n"); + write_i2c(TSYS01_ADDR0, TSYS01_RESET); + write_i2c(TSYS01_ADDR1, TSYS01_RESET); + break; + case 'D': + if(write_i2c(TSYS01_ADDR0, TSYS01_RESET)) SEND("0"); + if(write_i2c(TSYS01_ADDR1, TSYS01_RESET)) SEND("1"); + newline(); + break; + case 'L': + i2c_setup(LOW_SPEED); + SEND("Low speed\n"); + break; + case 'H': + i2c_setup(HIGH_SPEED); + SEND("High speed\n"); + break; + case 'r': + ssd1306_Reset(); + break; + default: + SEND("help:\n" + "b - clear screen\n" + "c - fill screen white\n" + "D - discovery sensors\n" + "L - low speed\n" + "H - high speed\n" + "r - reset display\n" + "R - reset sensors\n" + ); + break; + } + } + } + if(L){ // text waits for sending + while(LINE_BUSY == usart_send(txt, L)); + L = 0; + } + } + return 0; +} + diff --git a/STM32/Tcalc_screen/spi.c b/STM32/Tcalc_screen/spi.c new file mode 100644 index 0000000..f0080e6 --- /dev/null +++ b/STM32/Tcalc_screen/spi.c @@ -0,0 +1,60 @@ +/* + * geany_encoding=koi8-r + * spi.c + * + * Copyright 2018 Edward V. Emelianov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ + +#include "spi.h" +#include "usart.h" + +extern volatile uint32_t Tms; +static uint32_t tstart; + +extern void printu(uint32_t val); +#define CHK(x, msg) do{tstart = Tms; do{if(Tms - tstart > 2){/*printu(SPI1->SR); SEND(msg);*/ return;}}while(x);}while(0) + +/** + * send 1 byte blocking + * return 1 on success + */ +void spi_write_byte(uint8_t data){ + CHK(!(SPI1->SR & SPI_SR_TXE), "TXEb1\n"); + // AHTUNG! without *((uint8_t*) STM32 will try to send TWO bytes (with second byte == 0) + *((uint8_t*)&(SPI1->DR)) = data; + CHK(!(SPI1->SR & SPI_SR_TXE), "TXEb2\n"); + CHK(SPI1->SR & SPI_SR_BSY, "BSYb\n"); +} + +/** + * Blocking rite data to current SPI + * @param data - buffer with data + * @param len - buffer length + * @return 0 in case of error (or 1 in case of success) + */ +void spiWrite(uint8_t *data, uint16_t len){ + uint16_t i; + CHK(!(SPI1->SR & SPI_SR_TXE), "TXE1\n"); + for(i = 0; i < len; ++i){ + *((uint8_t*)&(SPI1->DR)) = data[i]; + CHK(!(SPI1->SR & SPI_SR_TXE), "TXE2\n"); + } + CHK(SPI1->SR & SPI_SR_BSY, "BSY\n"); +} + diff --git a/STM32/Tcalc_screen/spi.h b/STM32/Tcalc_screen/spi.h new file mode 100644 index 0000000..6e34bed --- /dev/null +++ b/STM32/Tcalc_screen/spi.h @@ -0,0 +1,33 @@ +/* + * geany_encoding=koi8-r + * spi.h + * + * Copyright 2018 Edward V. Emelianov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ + +#pragma once +#ifndef __SPI_H__ +#define __SPI_H__ + +#include "hardware.h" + +void spiWrite(uint8_t *data, uint16_t len); +void spi_write_byte(uint8_t data); + +#endif // __SPI_H__ diff --git a/STM32/Tcalc_screen/ssd1306.c b/STM32/Tcalc_screen/ssd1306.c new file mode 100644 index 0000000..ef2327f --- /dev/null +++ b/STM32/Tcalc_screen/ssd1306.c @@ -0,0 +1,233 @@ +/* + * geany_encoding=koi8-r + * ssd1306.c + * + * Copyright 2018 Edward V. Emelianov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ +#include "spi.h" +#include "ssd1306.h" +#include "usart.h" +#include // memset + +#define RST_PAUSE (10) +#define BOOT_PAUSE (100) + +extern volatile uint32_t Tms; +static uint32_t Tloc; +static uint8_t curx, cury; + +typedef enum{ + ST_UNINITIALIZED, + ST_RSTSTART, + ST_RESETED, + ST_NEED4UPDATE, + ST_IDLE +} SSD1306_STATE; + +static SSD1306_STATE state = ST_UNINITIALIZED; + +static uint8_t SSD1306_Buffer[SSD1306_WIDTH * SSD1306_HEIGHT / 8]; + + +static void ssd1306_WriteCommand(uint8_t byte){ + CS_LO(); DC_LO(); + spi_write_byte(byte); + CS_HI(); +} + +static void ssd1306_WriteData(uint8_t* buffer, uint16_t len){ + CS_LO(); DC_HI(); + spiWrite(buffer, len); + CS_HI(); +} + +// colr == 0 for black or 0xff for white or other values for vertical patterns +void ssd1306_Fill(uint8_t colr){ + memset(SSD1306_Buffer, colr, sizeof(SSD1306_Buffer)); + curx = 0; cury = 0; +} + +// Write ful; screenbuffer to the screen +static void ssd1306_UpdateScreen_(){ + uint8_t i; + for(i = 0; i < SSD1306_HEIGHT/8; i++){ + ssd1306_WriteCommand(0xB0 + i); + ssd1306_WriteCommand(0x00); + ssd1306_WriteCommand(0x10); + ssd1306_WriteData(&SSD1306_Buffer[SSD1306_WIDTH*i], SSD1306_WIDTH); + } +} + +// change status to need4update, return 1 if can't +uint8_t ssd1306_UpdateScreen(){ + if(state != ST_IDLE) return 1; + state = ST_NEED4UPDATE; + return 0; +} + +static void ssd1306_init(){ + const uint8_t cmds[] = { + 0xAE, // display off + 0x20, // Set memory address + 0x10, // 0x00: horizontal addressing mode, 0x01: vertical addressing mode + // 0x10: Page addressing mode(RESET), 0x11: invalid + 0xB0, // Set page start address for page addressing mode: 0 ~ 7 + 0xC8, // Set COM output scan direction + 0x00, // Set low column address + 0x10, // Set height column address + 0x40, // Set start line address + 0x81, // Set contrast control register + 0xFF, + 0xA1, // Set segment re-map 0 to 127 + 0xA6, // Set normal display + 0xA8, // Set multiplex ratio(1 to 64) + 0x3F, + 0xA4, // 0xa4: ouput follows RAM content, 0xa5: ouput ignores RAM content + 0xD3, // Set display offset + 0x00, // Not offset + 0xD5, // Set display clock divide ratio/oscillator frequency + 0xF0, // Set divide ration + 0xD9, // Set pre-charge period + 0x22, + 0xDA, // Set COM pins hardware configuration + 0x12, + 0xDB, // Set VCOMH + 0x20, // 0x20: 0.77*Vcc + 0x8D, // Set DC-DC enable + 0x14, + 0xAF, // turn on SSD1306panel + }; + uint8_t idx; + for (idx = 0; idx < sizeof(cmds); ++idx){ + ssd1306_WriteCommand(cmds[idx]); + } +} + +void ssd1306_Reset(){ + state = ST_UNINITIALIZED; +} + +void ssd1306_process(){ + switch (state){ + case ST_UNINITIALIZED: // reset screen + //SEND("ST_UNINITIALIZED\n"); + state = ST_RSTSTART; + Tloc = Tms; + // high CS, low RST + CS_HI(); RST_LO(); + break; + case ST_RSTSTART: // reset procedure is over + //SEND("ST_RSTSTART\n"); + if(Tms - Tloc > RST_PAUSE){ + state = ST_RESETED; + RST_HI(); + Tloc = Tms; + } + break; + case ST_RESETED: // initialize screen + //SEND("ST_RESETED\n"); + if(Tms - Tloc > BOOT_PAUSE){ + ssd1306_init(); + state = ST_IDLE; + } + break; + case ST_NEED4UPDATE: + //SEND("ST_NEED4UPDATE\n"); + ssd1306_UpdateScreen_(); + state = ST_IDLE; + break; + case ST_IDLE: + default: + break; + } + ; +} + +/** + * Draw one pixel in the screenbuffer + * @parameter x, y - coordinate (Y from top to bottom) + * @parameter color == 0 for black + */ +void ssd1306_DrawPixel(uint8_t x, uint8_t y, uint8_t color){ + if(x >= SSD1306_WIDTH || y >= SSD1306_HEIGHT) return; + // Check if pixel should be inverted + if(color){ + SSD1306_Buffer[x + (y / 8) * SSD1306_WIDTH] |= 1 << (y % 8); + }else{ + SSD1306_Buffer[x + (y / 8) * SSD1306_WIDTH] &= ~(1 << (y % 8)); + } +} + +/** + * Draw 1 char to the screen buffer + * @parameter ch - given char + * @parameter Font - selected font + * @parameter color == 0 for black + * @return 1 if all OK + */ +char ssd1306_WriteChar(char ch, FontDef Font, uint8_t color){ + uint32_t i, b, j; + // Check remaining space on current line + if(SSD1306_WIDTH <= (curx + Font.FontWidth)){ + if(SSD1306_HEIGHT <= (cury + 2*Font.FontHeight)) return 0; + cury += Font.FontHeight; + curx = 0; + } + if(SSD1306_HEIGHT <= (cury + Font.FontHeight)) return 0; + if(ch == '\n'){ + cury += Font.FontHeight; + curx = 0; + } + if(ch < ' ' || ch > '~') return 0; // wrong symbol + // Use the font to write + for(i = 0; i < Font.FontHeight; i++) { + b = Font.data[(ch - 32) * Font.FontHeight + i]; + for(j = 0; j < Font.FontWidth; j++){ + if((b << j) & 0x8000) { + ssd1306_DrawPixel(curx + j, (cury + i), color); + } else { + ssd1306_DrawPixel(curx + j, (cury + i), !color); + } + } + } + curx += Font.FontWidth; + return ch; +} + +// Write full string to screenbuffer +char ssd1306_WriteString(char* str, FontDef Font, uint8_t color){ + // Write until null-byte + while (*str){ + if(!ssd1306_WriteChar(*str, Font, color)){ + // Char could not be written + return *str; + } + // Next char + str++; + } + // Everything ok - return 0 + return 0; +} + +// Position the cursor +void ssd1306_SetCursor(uint8_t x, uint8_t y){ + if(x >= SSD1306_WIDTH || y > SSD1306_HEIGHT) return; + curx = x; + cury = y; +} diff --git a/STM32/Tcalc_screen/ssd1306.h b/STM32/Tcalc_screen/ssd1306.h new file mode 100644 index 0000000..bf151c0 --- /dev/null +++ b/STM32/Tcalc_screen/ssd1306.h @@ -0,0 +1,50 @@ +/* + * geany_encoding=koi8-r + * ssd1306.h + * + * Copyright 2018 Edward V. Emelianov + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + * + */ +#pragma once +#ifndef __SSD1306_H__ +#define __SSD1306_H__ + +#include "ssd1306_fonts.h" + +// SSD1306 OLED height in pixels +#ifndef SSD1306_HEIGHT +#define SSD1306_HEIGHT 64 +#endif + +// SSD1306 width in pixels +#ifndef SSD1306_WIDTH +#define SSD1306_WIDTH 128 +#endif + +void ssd1306_process(); +uint8_t ssd1306_UpdateScreen(); +void ssd1306_Reset(); + +void ssd1306_DrawPixel(uint8_t x, uint8_t y, uint8_t color); +char ssd1306_WriteChar(char ch, FontDef Font, uint8_t color); +void ssd1306_Fill(uint8_t colr); + +char ssd1306_WriteString(char* str, FontDef Font, uint8_t color); +void ssd1306_SetCursor(uint8_t x, uint8_t y); + +#endif // __SSD1306_H__ diff --git a/STM32/Tcalc_screen/ssd1306_fonts.c b/STM32/Tcalc_screen/ssd1306_fonts.c new file mode 100644 index 0000000..6f233f1 --- /dev/null +++ b/STM32/Tcalc_screen/ssd1306_fonts.c @@ -0,0 +1,301 @@ + +#include "ssd1306_fonts.h" + +static const uint16_t Font7x10 [] = { +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // sp +0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x0000, 0x1000, 0x0000, 0x0000, // ! +0x2800, 0x2800, 0x2800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // " +0x2400, 0x2400, 0x7C00, 0x2400, 0x4800, 0x7C00, 0x4800, 0x4800, 0x0000, 0x0000, // # +0x3800, 0x5400, 0x5000, 0x3800, 0x1400, 0x5400, 0x5400, 0x3800, 0x1000, 0x0000, // $ +0x2000, 0x5400, 0x5800, 0x3000, 0x2800, 0x5400, 0x1400, 0x0800, 0x0000, 0x0000, // % +0x1000, 0x2800, 0x2800, 0x1000, 0x3400, 0x4800, 0x4800, 0x3400, 0x0000, 0x0000, // & +0x1000, 0x1000, 0x1000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // ' +0x0800, 0x1000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x2000, 0x1000, 0x0800, // ( +0x2000, 0x1000, 0x0800, 0x0800, 0x0800, 0x0800, 0x0800, 0x0800, 0x1000, 0x2000, // ) +0x1000, 0x3800, 0x1000, 0x2800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // * +0x0000, 0x0000, 0x1000, 0x1000, 0x7C00, 0x1000, 0x1000, 0x0000, 0x0000, 0x0000, // + +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1000, 0x1000, 0x1000, // , +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3800, 0x0000, 0x0000, 0x0000, 0x0000, // - +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1000, 0x0000, 0x0000, // . +0x0800, 0x0800, 0x1000, 0x1000, 0x1000, 0x1000, 0x2000, 0x2000, 0x0000, 0x0000, // / +0x3800, 0x4400, 0x4400, 0x5400, 0x4400, 0x4400, 0x4400, 0x3800, 0x0000, 0x0000, // 0 +0x1000, 0x3000, 0x5000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x0000, 0x0000, // 1 +0x3800, 0x4400, 0x4400, 0x0400, 0x0800, 0x1000, 0x2000, 0x7C00, 0x0000, 0x0000, // 2 +0x3800, 0x4400, 0x0400, 0x1800, 0x0400, 0x0400, 0x4400, 0x3800, 0x0000, 0x0000, // 3 +0x0800, 0x1800, 0x2800, 0x2800, 0x4800, 0x7C00, 0x0800, 0x0800, 0x0000, 0x0000, // 4 +0x7C00, 0x4000, 0x4000, 0x7800, 0x0400, 0x0400, 0x4400, 0x3800, 0x0000, 0x0000, // 5 +0x3800, 0x4400, 0x4000, 0x7800, 0x4400, 0x4400, 0x4400, 0x3800, 0x0000, 0x0000, // 6 +0x7C00, 0x0400, 0x0800, 0x1000, 0x1000, 0x2000, 0x2000, 0x2000, 0x0000, 0x0000, // 7 +0x3800, 0x4400, 0x4400, 0x3800, 0x4400, 0x4400, 0x4400, 0x3800, 0x0000, 0x0000, // 8 +0x3800, 0x4400, 0x4400, 0x4400, 0x3C00, 0x0400, 0x4400, 0x3800, 0x0000, 0x0000, // 9 +0x0000, 0x0000, 0x1000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1000, 0x0000, 0x0000, // : +0x0000, 0x0000, 0x0000, 0x1000, 0x0000, 0x0000, 0x0000, 0x1000, 0x1000, 0x1000, // ; +0x0000, 0x0000, 0x0C00, 0x3000, 0x4000, 0x3000, 0x0C00, 0x0000, 0x0000, 0x0000, // < +0x0000, 0x0000, 0x0000, 0x7C00, 0x0000, 0x7C00, 0x0000, 0x0000, 0x0000, 0x0000, // = +0x0000, 0x0000, 0x6000, 0x1800, 0x0400, 0x1800, 0x6000, 0x0000, 0x0000, 0x0000, // > +0x3800, 0x4400, 0x0400, 0x0800, 0x1000, 0x1000, 0x0000, 0x1000, 0x0000, 0x0000, // ? +0x3800, 0x4400, 0x4C00, 0x5400, 0x5C00, 0x4000, 0x4000, 0x3800, 0x0000, 0x0000, // @ +0x1000, 0x2800, 0x2800, 0x2800, 0x2800, 0x7C00, 0x4400, 0x4400, 0x0000, 0x0000, // A +0x7800, 0x4400, 0x4400, 0x7800, 0x4400, 0x4400, 0x4400, 0x7800, 0x0000, 0x0000, // B +0x3800, 0x4400, 0x4000, 0x4000, 0x4000, 0x4000, 0x4400, 0x3800, 0x0000, 0x0000, // C +0x7000, 0x4800, 0x4400, 0x4400, 0x4400, 0x4400, 0x4800, 0x7000, 0x0000, 0x0000, // D +0x7C00, 0x4000, 0x4000, 0x7C00, 0x4000, 0x4000, 0x4000, 0x7C00, 0x0000, 0x0000, // E +0x7C00, 0x4000, 0x4000, 0x7800, 0x4000, 0x4000, 0x4000, 0x4000, 0x0000, 0x0000, // F +0x3800, 0x4400, 0x4000, 0x4000, 0x5C00, 0x4400, 0x4400, 0x3800, 0x0000, 0x0000, // G +0x4400, 0x4400, 0x4400, 0x7C00, 0x4400, 0x4400, 0x4400, 0x4400, 0x0000, 0x0000, // H +0x3800, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x3800, 0x0000, 0x0000, // I +0x0400, 0x0400, 0x0400, 0x0400, 0x0400, 0x0400, 0x4400, 0x3800, 0x0000, 0x0000, // J +0x4400, 0x4800, 0x5000, 0x6000, 0x5000, 0x4800, 0x4800, 0x4400, 0x0000, 0x0000, // K +0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x4000, 0x7C00, 0x0000, 0x0000, // L +0x4400, 0x6C00, 0x6C00, 0x5400, 0x4400, 0x4400, 0x4400, 0x4400, 0x0000, 0x0000, // M +0x4400, 0x6400, 0x6400, 0x5400, 0x5400, 0x4C00, 0x4C00, 0x4400, 0x0000, 0x0000, // N +0x3800, 0x4400, 0x4400, 0x4400, 0x4400, 0x4400, 0x4400, 0x3800, 0x0000, 0x0000, // O +0x7800, 0x4400, 0x4400, 0x4400, 0x7800, 0x4000, 0x4000, 0x4000, 0x0000, 0x0000, // P +0x3800, 0x4400, 0x4400, 0x4400, 0x4400, 0x4400, 0x5400, 0x3800, 0x0400, 0x0000, // Q +0x7800, 0x4400, 0x4400, 0x4400, 0x7800, 0x4800, 0x4800, 0x4400, 0x0000, 0x0000, // R +0x3800, 0x4400, 0x4000, 0x3000, 0x0800, 0x0400, 0x4400, 0x3800, 0x0000, 0x0000, // S +0x7C00, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x0000, 0x0000, // T +0x4400, 0x4400, 0x4400, 0x4400, 0x4400, 0x4400, 0x4400, 0x3800, 0x0000, 0x0000, // U +0x4400, 0x4400, 0x4400, 0x2800, 0x2800, 0x2800, 0x1000, 0x1000, 0x0000, 0x0000, // V +0x4400, 0x4400, 0x5400, 0x5400, 0x5400, 0x6C00, 0x2800, 0x2800, 0x0000, 0x0000, // W +0x4400, 0x2800, 0x2800, 0x1000, 0x1000, 0x2800, 0x2800, 0x4400, 0x0000, 0x0000, // X +0x4400, 0x4400, 0x2800, 0x2800, 0x1000, 0x1000, 0x1000, 0x1000, 0x0000, 0x0000, // Y +0x7C00, 0x0400, 0x0800, 0x1000, 0x1000, 0x2000, 0x4000, 0x7C00, 0x0000, 0x0000, // Z +0x1800, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1800, // [ +0x2000, 0x2000, 0x1000, 0x1000, 0x1000, 0x1000, 0x0800, 0x0800, 0x0000, 0x0000, /* \ */ +0x3000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x3000, // ] +0x1000, 0x2800, 0x2800, 0x4400, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // ^ +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xFE00, // _ +0x2000, 0x1000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // ` +0x0000, 0x0000, 0x3800, 0x4400, 0x3C00, 0x4400, 0x4C00, 0x3400, 0x0000, 0x0000, // a +0x4000, 0x4000, 0x5800, 0x6400, 0x4400, 0x4400, 0x6400, 0x5800, 0x0000, 0x0000, // b +0x0000, 0x0000, 0x3800, 0x4400, 0x4000, 0x4000, 0x4400, 0x3800, 0x0000, 0x0000, // c +0x0400, 0x0400, 0x3400, 0x4C00, 0x4400, 0x4400, 0x4C00, 0x3400, 0x0000, 0x0000, // d +0x0000, 0x0000, 0x3800, 0x4400, 0x7C00, 0x4000, 0x4400, 0x3800, 0x0000, 0x0000, // e +0x0C00, 0x1000, 0x7C00, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x0000, 0x0000, // f +0x0000, 0x0000, 0x3400, 0x4C00, 0x4400, 0x4400, 0x4C00, 0x3400, 0x0400, 0x7800, // g +0x4000, 0x4000, 0x5800, 0x6400, 0x4400, 0x4400, 0x4400, 0x4400, 0x0000, 0x0000, // h +0x1000, 0x0000, 0x7000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x0000, 0x0000, // i +0x1000, 0x0000, 0x7000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0xE000, // j +0x4000, 0x4000, 0x4800, 0x5000, 0x6000, 0x5000, 0x4800, 0x4400, 0x0000, 0x0000, // k +0x7000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x0000, 0x0000, // l +0x0000, 0x0000, 0x7800, 0x5400, 0x5400, 0x5400, 0x5400, 0x5400, 0x0000, 0x0000, // m +0x0000, 0x0000, 0x5800, 0x6400, 0x4400, 0x4400, 0x4400, 0x4400, 0x0000, 0x0000, // n +0x0000, 0x0000, 0x3800, 0x4400, 0x4400, 0x4400, 0x4400, 0x3800, 0x0000, 0x0000, // o +0x0000, 0x0000, 0x5800, 0x6400, 0x4400, 0x4400, 0x6400, 0x5800, 0x4000, 0x4000, // p +0x0000, 0x0000, 0x3400, 0x4C00, 0x4400, 0x4400, 0x4C00, 0x3400, 0x0400, 0x0400, // q +0x0000, 0x0000, 0x5800, 0x6400, 0x4000, 0x4000, 0x4000, 0x4000, 0x0000, 0x0000, // r +0x0000, 0x0000, 0x3800, 0x4400, 0x3000, 0x0800, 0x4400, 0x3800, 0x0000, 0x0000, // s +0x2000, 0x2000, 0x7800, 0x2000, 0x2000, 0x2000, 0x2000, 0x1800, 0x0000, 0x0000, // t +0x0000, 0x0000, 0x4400, 0x4400, 0x4400, 0x4400, 0x4C00, 0x3400, 0x0000, 0x0000, // u +0x0000, 0x0000, 0x4400, 0x4400, 0x2800, 0x2800, 0x2800, 0x1000, 0x0000, 0x0000, // v +0x0000, 0x0000, 0x5400, 0x5400, 0x5400, 0x6C00, 0x2800, 0x2800, 0x0000, 0x0000, // w +0x0000, 0x0000, 0x4400, 0x2800, 0x1000, 0x1000, 0x2800, 0x4400, 0x0000, 0x0000, // x +0x0000, 0x0000, 0x4400, 0x4400, 0x2800, 0x2800, 0x1000, 0x1000, 0x1000, 0x6000, // y +0x0000, 0x0000, 0x7C00, 0x0800, 0x1000, 0x2000, 0x4000, 0x7C00, 0x0000, 0x0000, // z +0x1800, 0x1000, 0x1000, 0x1000, 0x2000, 0x2000, 0x1000, 0x1000, 0x1000, 0x1800, // { +0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, 0x1000, // | +0x3000, 0x1000, 0x1000, 0x1000, 0x0800, 0x0800, 0x1000, 0x1000, 0x1000, 0x3000, // } +0x0000, 0x0000, 0x0000, 0x7400, 0x4C00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // ~ +}; + +static const uint16_t Font11x18 [] = { +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // sp +0x0000, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0000, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, // ! +0x0000, 0x1B00, 0x1B00, 0x1B00, 0x1B00, 0x1B00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // " +0x0000, 0x1980, 0x1980, 0x1980, 0x1980, 0x7FC0, 0x7FC0, 0x1980, 0x3300, 0x7FC0, 0x7FC0, 0x3300, 0x3300, 0x3300, 0x3300, 0x0000, 0x0000, 0x0000, // # +0x0000, 0x1E00, 0x3F00, 0x7580, 0x6580, 0x7400, 0x3C00, 0x1E00, 0x0700, 0x0580, 0x6580, 0x6580, 0x7580, 0x3F00, 0x1E00, 0x0400, 0x0400, 0x0000, // $ +0x0000, 0x7000, 0xD800, 0xD840, 0xD8C0, 0xD980, 0x7300, 0x0600, 0x0C00, 0x1B80, 0x36C0, 0x66C0, 0x46C0, 0x06C0, 0x0380, 0x0000, 0x0000, 0x0000, // % +0x0000, 0x1E00, 0x3F00, 0x3300, 0x3300, 0x3300, 0x1E00, 0x0C00, 0x3CC0, 0x66C0, 0x6380, 0x6180, 0x6380, 0x3EC0, 0x1C80, 0x0000, 0x0000, 0x0000, // & +0x0000, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // ' +0x0080, 0x0100, 0x0300, 0x0600, 0x0600, 0x0400, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0400, 0x0600, 0x0600, 0x0300, 0x0100, 0x0080, // ( +0x2000, 0x1000, 0x1800, 0x0C00, 0x0C00, 0x0400, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0400, 0x0C00, 0x0C00, 0x1800, 0x1000, 0x2000, // ) +0x0000, 0x0C00, 0x2D00, 0x3F00, 0x1E00, 0x3300, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // * +0x0000, 0x0000, 0x0000, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0xFFC0, 0xFFC0, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // + +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C00, 0x0C00, 0x0400, 0x0400, 0x0800, // , +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1E00, 0x1E00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // - +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, // . +0x0000, 0x0300, 0x0300, 0x0300, 0x0600, 0x0600, 0x0600, 0x0600, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x1800, 0x1800, 0x1800, 0x0000, 0x0000, 0x0000, // / +0x0000, 0x1E00, 0x3F00, 0x3300, 0x6180, 0x6180, 0x6180, 0x6D80, 0x6D80, 0x6180, 0x6180, 0x6180, 0x3300, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // 0 +0x0000, 0x0600, 0x0E00, 0x1E00, 0x3600, 0x2600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0000, 0x0000, 0x0000, // 1 +0x0000, 0x1E00, 0x3F00, 0x7380, 0x6180, 0x6180, 0x0180, 0x0300, 0x0600, 0x0C00, 0x1800, 0x3000, 0x6000, 0x7F80, 0x7F80, 0x0000, 0x0000, 0x0000, // 2 +0x0000, 0x1C00, 0x3E00, 0x6300, 0x6300, 0x0300, 0x0E00, 0x0E00, 0x0300, 0x0180, 0x0180, 0x6180, 0x7380, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // 3 +0x0000, 0x0600, 0x0E00, 0x0E00, 0x1E00, 0x1E00, 0x1600, 0x3600, 0x3600, 0x6600, 0x7F80, 0x7F80, 0x0600, 0x0600, 0x0600, 0x0000, 0x0000, 0x0000, // 4 +0x0000, 0x7F00, 0x7F00, 0x6000, 0x6000, 0x6000, 0x6E00, 0x7F00, 0x6380, 0x0180, 0x0180, 0x6180, 0x7380, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // 5 +0x0000, 0x1E00, 0x3F00, 0x3380, 0x6180, 0x6000, 0x6E00, 0x7F00, 0x7380, 0x6180, 0x6180, 0x6180, 0x3380, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // 6 +0x0000, 0x7F80, 0x7F80, 0x0180, 0x0300, 0x0300, 0x0600, 0x0600, 0x0C00, 0x0C00, 0x0C00, 0x0800, 0x1800, 0x1800, 0x1800, 0x0000, 0x0000, 0x0000, // 7 +0x0000, 0x1E00, 0x3F00, 0x6380, 0x6180, 0x6180, 0x2100, 0x1E00, 0x3F00, 0x6180, 0x6180, 0x6180, 0x6180, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // 8 +0x0000, 0x1E00, 0x3F00, 0x7300, 0x6180, 0x6180, 0x6180, 0x7380, 0x3F80, 0x1D80, 0x0180, 0x6180, 0x7300, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // 9 +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, // : +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0C00, 0x0C00, 0x0400, 0x0400, 0x0800, // ; +0x0000, 0x0000, 0x0000, 0x0000, 0x0080, 0x0380, 0x0E00, 0x3800, 0x6000, 0x3800, 0x0E00, 0x0380, 0x0080, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // < +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7F80, 0x7F80, 0x0000, 0x0000, 0x7F80, 0x7F80, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // = +0x0000, 0x0000, 0x0000, 0x0000, 0x4000, 0x7000, 0x1C00, 0x0700, 0x0180, 0x0700, 0x1C00, 0x7000, 0x4000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // > +0x0000, 0x1F00, 0x3F80, 0x71C0, 0x60C0, 0x00C0, 0x01C0, 0x0380, 0x0700, 0x0E00, 0x0C00, 0x0C00, 0x0000, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, // ? +0x0000, 0x1E00, 0x3F00, 0x3180, 0x7180, 0x6380, 0x6F80, 0x6D80, 0x6D80, 0x6F80, 0x6780, 0x6000, 0x3200, 0x3E00, 0x1C00, 0x0000, 0x0000, 0x0000, // @ +0x0000, 0x0E00, 0x0E00, 0x1B00, 0x1B00, 0x1B00, 0x1B00, 0x3180, 0x3180, 0x3F80, 0x3F80, 0x3180, 0x60C0, 0x60C0, 0x60C0, 0x0000, 0x0000, 0x0000, // A +0x0000, 0x7C00, 0x7E00, 0x6300, 0x6300, 0x6300, 0x6300, 0x7E00, 0x7E00, 0x6300, 0x6180, 0x6180, 0x6380, 0x7F00, 0x7E00, 0x0000, 0x0000, 0x0000, // B +0x0000, 0x1E00, 0x3F00, 0x3180, 0x6180, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6180, 0x3180, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // C +0x0000, 0x7C00, 0x7F00, 0x6300, 0x6380, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6300, 0x6300, 0x7E00, 0x7C00, 0x0000, 0x0000, 0x0000, // D +0x0000, 0x7F80, 0x7F80, 0x6000, 0x6000, 0x6000, 0x6000, 0x7F00, 0x7F00, 0x6000, 0x6000, 0x6000, 0x6000, 0x7F80, 0x7F80, 0x0000, 0x0000, 0x0000, // E +0x0000, 0x7F80, 0x7F80, 0x6000, 0x6000, 0x6000, 0x6000, 0x7F00, 0x7F00, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x0000, 0x0000, 0x0000, // F +0x0000, 0x1E00, 0x3F00, 0x3180, 0x6180, 0x6000, 0x6000, 0x6000, 0x6380, 0x6380, 0x6180, 0x6180, 0x3180, 0x3F80, 0x1E00, 0x0000, 0x0000, 0x0000, // G +0x0000, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x7F80, 0x7F80, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x0000, 0x0000, 0x0000, // H +0x0000, 0x3F00, 0x3F00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x3F00, 0x3F00, 0x0000, 0x0000, 0x0000, // I +0x0000, 0x0180, 0x0180, 0x0180, 0x0180, 0x0180, 0x0180, 0x0180, 0x0180, 0x0180, 0x6180, 0x6180, 0x7380, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // J +0x0000, 0x60C0, 0x6180, 0x6300, 0x6600, 0x6600, 0x6C00, 0x7800, 0x7C00, 0x6600, 0x6600, 0x6300, 0x6180, 0x6180, 0x60C0, 0x0000, 0x0000, 0x0000, // K +0x0000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x7F80, 0x7F80, 0x0000, 0x0000, 0x0000, // L +0x0000, 0x71C0, 0x71C0, 0x7BC0, 0x7AC0, 0x6AC0, 0x6AC0, 0x6EC0, 0x64C0, 0x60C0, 0x60C0, 0x60C0, 0x60C0, 0x60C0, 0x60C0, 0x0000, 0x0000, 0x0000, // M +0x0000, 0x7180, 0x7180, 0x7980, 0x7980, 0x7980, 0x6D80, 0x6D80, 0x6D80, 0x6580, 0x6780, 0x6780, 0x6780, 0x6380, 0x6380, 0x0000, 0x0000, 0x0000, // N +0x0000, 0x1E00, 0x3F00, 0x3300, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x3300, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // O +0x0000, 0x7E00, 0x7F00, 0x6380, 0x6180, 0x6180, 0x6180, 0x6380, 0x7F00, 0x7E00, 0x6000, 0x6000, 0x6000, 0x6000, 0x6000, 0x0000, 0x0000, 0x0000, // P +0x0000, 0x1E00, 0x3F00, 0x3300, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6580, 0x6780, 0x3300, 0x3F80, 0x1E40, 0x0000, 0x0000, 0x0000, // Q +0x0000, 0x7E00, 0x7F00, 0x6380, 0x6180, 0x6180, 0x6380, 0x7F00, 0x7E00, 0x6600, 0x6300, 0x6300, 0x6180, 0x6180, 0x60C0, 0x0000, 0x0000, 0x0000, // R +0x0000, 0x0E00, 0x1F00, 0x3180, 0x3180, 0x3000, 0x3800, 0x1E00, 0x0700, 0x0380, 0x6180, 0x6180, 0x3180, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // S +0x0000, 0xFFC0, 0xFFC0, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, // T +0x0000, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x7380, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // U +0x0000, 0x60C0, 0x60C0, 0x60C0, 0x3180, 0x3180, 0x3180, 0x1B00, 0x1B00, 0x1B00, 0x1B00, 0x0E00, 0x0E00, 0x0E00, 0x0400, 0x0000, 0x0000, 0x0000, // V +0x0000, 0xC0C0, 0xC0C0, 0xC0C0, 0xC0C0, 0xC0C0, 0xCCC0, 0x4C80, 0x4C80, 0x5E80, 0x5280, 0x5280, 0x7380, 0x6180, 0x6180, 0x0000, 0x0000, 0x0000, // W +0x0000, 0xC0C0, 0x6080, 0x6180, 0x3300, 0x3B00, 0x1E00, 0x0C00, 0x0C00, 0x1E00, 0x1F00, 0x3B00, 0x7180, 0x6180, 0xC0C0, 0x0000, 0x0000, 0x0000, // X +0x0000, 0xC0C0, 0x6180, 0x6180, 0x3300, 0x3300, 0x1E00, 0x1E00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, // Y +0x0000, 0x3F80, 0x3F80, 0x0180, 0x0300, 0x0300, 0x0600, 0x0C00, 0x0C00, 0x1800, 0x1800, 0x3000, 0x6000, 0x7F80, 0x7F80, 0x0000, 0x0000, 0x0000, // Z +0x0F00, 0x0F00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0F00, 0x0F00, // [ +0x0000, 0x1800, 0x1800, 0x1800, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0600, 0x0600, 0x0600, 0x0600, 0x0300, 0x0300, 0x0300, 0x0000, 0x0000, 0x0000, /* \ */ +0x1E00, 0x1E00, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x1E00, 0x1E00, // ] +0x0000, 0x0C00, 0x0C00, 0x1E00, 0x1200, 0x3300, 0x3300, 0x6180, 0x6180, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // ^ +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xFFE0, 0x0000, // _ +0x0000, 0x3800, 0x1800, 0x0C00, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // ` +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1F00, 0x3F80, 0x6180, 0x0180, 0x1F80, 0x3F80, 0x6180, 0x6380, 0x7F80, 0x38C0, 0x0000, 0x0000, 0x0000, // a +0x0000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6E00, 0x7F00, 0x7380, 0x6180, 0x6180, 0x6180, 0x6180, 0x7380, 0x7F00, 0x6E00, 0x0000, 0x0000, 0x0000, // b +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1E00, 0x3F00, 0x7380, 0x6180, 0x6000, 0x6000, 0x6180, 0x7380, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // c +0x0000, 0x0180, 0x0180, 0x0180, 0x0180, 0x1D80, 0x3F80, 0x7380, 0x6180, 0x6180, 0x6180, 0x6180, 0x7380, 0x3F80, 0x1D80, 0x0000, 0x0000, 0x0000, // d +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1E00, 0x3F00, 0x7300, 0x6180, 0x7F80, 0x7F80, 0x6000, 0x7180, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // e +0x0000, 0x07C0, 0x0FC0, 0x0C00, 0x0C00, 0x7F80, 0x7F80, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0000, 0x0000, 0x0000, // f +0x0000, 0x0000, 0x0000, 0x0000, 0x1D80, 0x3F80, 0x7380, 0x6180, 0x6180, 0x6180, 0x6180, 0x7380, 0x3F80, 0x1D80, 0x0180, 0x6380, 0x7F00, 0x3E00, // g +0x0000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6F00, 0x7F80, 0x7180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x0000, 0x0000, 0x0000, // h +0x0000, 0x0600, 0x0600, 0x0000, 0x0000, 0x3E00, 0x3E00, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0000, 0x0000, 0x0000, // i +0x0600, 0x0600, 0x0000, 0x0000, 0x3E00, 0x3E00, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x4600, 0x7E00, 0x3C00, // j +0x0000, 0x6000, 0x6000, 0x6000, 0x6000, 0x6180, 0x6300, 0x6600, 0x6C00, 0x7C00, 0x7600, 0x6300, 0x6300, 0x6180, 0x60C0, 0x0000, 0x0000, 0x0000, // k +0x0000, 0x3E00, 0x3E00, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0000, 0x0000, 0x0000, // l +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xDD80, 0xFFC0, 0xCEC0, 0xCCC0, 0xCCC0, 0xCCC0, 0xCCC0, 0xCCC0, 0xCCC0, 0xCCC0, 0x0000, 0x0000, 0x0000, // m +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6F00, 0x7F80, 0x7180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x0000, 0x0000, 0x0000, // n +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1E00, 0x3F00, 0x7380, 0x6180, 0x6180, 0x6180, 0x6180, 0x7380, 0x3F00, 0x1E00, 0x0000, 0x0000, 0x0000, // o +0x0000, 0x0000, 0x0000, 0x0000, 0x6E00, 0x7F00, 0x7380, 0x6180, 0x6180, 0x6180, 0x6180, 0x7380, 0x7F00, 0x6E00, 0x6000, 0x6000, 0x6000, 0x6000, // p +0x0000, 0x0000, 0x0000, 0x0000, 0x1D80, 0x3F80, 0x7380, 0x6180, 0x6180, 0x6180, 0x6180, 0x7380, 0x3F80, 0x1D80, 0x0180, 0x0180, 0x0180, 0x0180, // q +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6700, 0x3F80, 0x3900, 0x3000, 0x3000, 0x3000, 0x3000, 0x3000, 0x3000, 0x3000, 0x0000, 0x0000, 0x0000, // r +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1E00, 0x3F80, 0x6180, 0x6000, 0x7F00, 0x3F80, 0x0180, 0x6180, 0x7F00, 0x1E00, 0x0000, 0x0000, 0x0000, // s +0x0000, 0x0000, 0x0800, 0x1800, 0x1800, 0x7F00, 0x7F00, 0x1800, 0x1800, 0x1800, 0x1800, 0x1800, 0x1800, 0x1F80, 0x0F80, 0x0000, 0x0000, 0x0000, // t +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6180, 0x6380, 0x7F80, 0x3D80, 0x0000, 0x0000, 0x0000, // u +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x60C0, 0x3180, 0x3180, 0x3180, 0x1B00, 0x1B00, 0x1B00, 0x0E00, 0x0E00, 0x0600, 0x0000, 0x0000, 0x0000, // v +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0xDD80, 0xDD80, 0xDD80, 0x5500, 0x5500, 0x5500, 0x7700, 0x7700, 0x2200, 0x2200, 0x0000, 0x0000, 0x0000, // w +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x6180, 0x3300, 0x3300, 0x1E00, 0x0C00, 0x0C00, 0x1E00, 0x3300, 0x3300, 0x6180, 0x0000, 0x0000, 0x0000, // x +0x0000, 0x0000, 0x0000, 0x0000, 0x6180, 0x6180, 0x3180, 0x3300, 0x3300, 0x1B00, 0x1B00, 0x1B00, 0x0E00, 0x0E00, 0x0E00, 0x1C00, 0x7C00, 0x7000, // y +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x7FC0, 0x7FC0, 0x0180, 0x0300, 0x0600, 0x0C00, 0x1800, 0x3000, 0x7FC0, 0x7FC0, 0x0000, 0x0000, 0x0000, // z +0x0380, 0x0780, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0E00, 0x1C00, 0x1C00, 0x0E00, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0780, 0x0380, // { +0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, 0x0600, // | +0x3800, 0x3C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0E00, 0x0700, 0x0700, 0x0E00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x0C00, 0x3C00, 0x3800, // } +0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3880, 0x7F80, 0x4700, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, // ~ +}; + +static const uint16_t Font16x26 [] = { +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [ ] +0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03C0,0x03C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x0000,0x0000,0x0000,0x03E0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [!] +0x1E3C,0x1E3C,0x1E3C,0x1E3C,0x1E3C,0x1E3C,0x1E3C,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = ["] +0x01CE,0x03CE,0x03DE,0x039E,0x039C,0x079C,0x3FFF,0x7FFF,0x0738,0x0F38,0x0F78,0x0F78,0x0E78,0xFFFF,0xFFFF,0x1EF0,0x1CF0,0x1CE0,0x3CE0,0x3DE0,0x39E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [#] +0x03FC,0x0FFE,0x1FEE,0x1EE0,0x1EE0,0x1EE0,0x1EE0,0x1FE0,0x0FE0,0x07E0,0x03F0,0x01FC,0x01FE,0x01FE,0x01FE,0x01FE,0x01FE,0x01FE,0x3DFE,0x3FFC,0x0FF0,0x01E0,0x01E0,0x0000,0x0000,0x0000, // Ascii = [$] +0x3E03,0xF707,0xE78F,0xE78E,0xE39E,0xE3BC,0xE7B8,0xE7F8,0xF7F0,0x3FE0,0x01C0,0x03FF,0x07FF,0x07F3,0x0FF3,0x1EF3,0x3CF3,0x38F3,0x78F3,0xF07F,0xE03F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [%] +0x07E0,0x0FF8,0x0F78,0x1F78,0x1F78,0x1F78,0x0F78,0x0FF0,0x0FE0,0x1F80,0x7FC3,0xFBC3,0xF3E7,0xF1F7,0xF0F7,0xF0FF,0xF07F,0xF83E,0x7C7F,0x3FFF,0x1FEF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [&] +0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03C0,0x01C0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = ['] +0x003F,0x007C,0x01F0,0x01E0,0x03C0,0x07C0,0x0780,0x0780,0x0F80,0x0F00,0x0F00,0x0F00,0x0F00,0x0F00,0x0F00,0x0F80,0x0780,0x0780,0x07C0,0x03C0,0x01E0,0x01F0,0x007C,0x003F,0x000F,0x0000, // Ascii = [(] +0x7E00,0x1F00,0x07C0,0x03C0,0x01E0,0x01F0,0x00F0,0x00F0,0x00F8,0x0078,0x0078,0x0078,0x0078,0x0078,0x0078,0x00F8,0x00F0,0x00F0,0x01F0,0x01E0,0x03C0,0x07C0,0x1F00,0x7E00,0x7800,0x0000, // Ascii = [)] +0x03E0,0x03C0,0x01C0,0x39CE,0x3FFF,0x3F7F,0x0320,0x0370,0x07F8,0x0F78,0x1F3C,0x0638,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [*] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0xFFFF,0xFFFF,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [+] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03E0,0x03E0,0x03E0,0x03E0,0x01E0,0x01E0,0x01E0,0x01C0,0x0380, // Ascii = [,] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFE,0x3FFE,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [-] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03E0,0x03E0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [.] +0x000F,0x000F,0x001E,0x001E,0x003C,0x003C,0x0078,0x0078,0x00F0,0x00F0,0x01E0,0x01E0,0x03C0,0x03C0,0x0780,0x0780,0x0F00,0x0F00,0x1E00,0x1E00,0x3C00,0x3C00,0x7800,0x7800,0xF000,0x0000, // Ascii = [/] +0x07F0,0x0FF8,0x1F7C,0x3E3E,0x3C1E,0x7C1F,0x7C1F,0x780F,0x780F,0x780F,0x780F,0x780F,0x780F,0x780F,0x7C1F,0x7C1F,0x3C1E,0x3E3E,0x1F7C,0x0FF8,0x07F0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [0] +0x00F0,0x07F0,0x3FF0,0x3FF0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x3FFF,0x3FFF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [1] +0x0FE0,0x3FF8,0x3C7C,0x003C,0x003E,0x003E,0x003E,0x003C,0x003C,0x007C,0x00F8,0x01F0,0x03E0,0x07C0,0x0780,0x0F00,0x1E00,0x3E00,0x3C00,0x3FFE,0x3FFE,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [2] +0x0FF0,0x1FF8,0x1C7C,0x003E,0x003E,0x003E,0x003C,0x003C,0x00F8,0x0FF0,0x0FF8,0x007C,0x003E,0x001E,0x001E,0x001E,0x001E,0x003E,0x1C7C,0x1FF8,0x1FE0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [3] +0x0078,0x00F8,0x00F8,0x01F8,0x03F8,0x07F8,0x07F8,0x0F78,0x1E78,0x1E78,0x3C78,0x7878,0x7878,0xFFFF,0xFFFF,0x0078,0x0078,0x0078,0x0078,0x0078,0x0078,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [4] +0x1FFC,0x1FFC,0x1FFC,0x1E00,0x1E00,0x1E00,0x1E00,0x1E00,0x1FE0,0x1FF8,0x00FC,0x007C,0x003E,0x003E,0x001E,0x003E,0x003E,0x003C,0x1C7C,0x1FF8,0x1FE0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [5] +0x01FC,0x07FE,0x0F8E,0x1F00,0x1E00,0x3E00,0x3C00,0x3C00,0x3DF8,0x3FFC,0x7F3E,0x7E1F,0x3C0F,0x3C0F,0x3C0F,0x3C0F,0x3E0F,0x1E1F,0x1F3E,0x0FFC,0x03F0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [6] +0x3FFF,0x3FFF,0x3FFF,0x000F,0x001E,0x001E,0x003C,0x0038,0x0078,0x00F0,0x00F0,0x01E0,0x01E0,0x03C0,0x03C0,0x0780,0x0F80,0x0F80,0x0F00,0x1F00,0x1F00,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [7] +0x07F8,0x0FFC,0x1F3E,0x1E1E,0x3E1E,0x3E1E,0x1E1E,0x1F3C,0x0FF8,0x07F0,0x0FF8,0x1EFC,0x3E3E,0x3C1F,0x7C1F,0x7C0F,0x7C0F,0x3C1F,0x3F3E,0x1FFC,0x07F0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [8] +0x07F0,0x0FF8,0x1E7C,0x3C3E,0x3C1E,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x3C1F,0x3E3F,0x1FFF,0x07EF,0x001F,0x001E,0x001E,0x003E,0x003C,0x38F8,0x3FF0,0x1FE0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [9] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03E0,0x03E0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03E0,0x03E0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [:] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03E0,0x03E0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03E0,0x03E0,0x03E0,0x03E0,0x01E0,0x01E0,0x01E0,0x03C0,0x0380, // Ascii = [;] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0003,0x000F,0x003F,0x00FC,0x03F0,0x0FC0,0x3F00,0xFE00,0x3F00,0x0FC0,0x03F0,0x00FC,0x003F,0x000F,0x0003,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [<] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xFFFF,0xFFFF,0x0000,0x0000,0x0000,0xFFFF,0xFFFF,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [=] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xE000,0xF800,0x7E00,0x1F80,0x07E0,0x01F8,0x007E,0x001F,0x007E,0x01F8,0x07E0,0x1F80,0x7E00,0xF800,0xE000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [>] +0x1FF0,0x3FFC,0x383E,0x381F,0x381F,0x001E,0x001E,0x003C,0x0078,0x00F0,0x01E0,0x03C0,0x03C0,0x07C0,0x07C0,0x0000,0x0000,0x0000,0x07C0,0x07C0,0x07C0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [?] +0x03F8,0x0FFE,0x1F1E,0x3E0F,0x3C7F,0x78FF,0x79EF,0x73C7,0xF3C7,0xF38F,0xF38F,0xF38F,0xF39F,0xF39F,0x73FF,0x7BFF,0x79F7,0x3C00,0x1F1C,0x0FFC,0x03F8,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [@] +0x0000,0x0000,0x0000,0x03E0,0x03E0,0x07F0,0x07F0,0x07F0,0x0F78,0x0F78,0x0E7C,0x1E3C,0x1E3C,0x3C3E,0x3FFE,0x3FFF,0x781F,0x780F,0xF00F,0xF007,0xF007,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [A] +0x0000,0x0000,0x0000,0x3FF8,0x3FFC,0x3C3E,0x3C1E,0x3C1E,0x3C1E,0x3C3E,0x3C7C,0x3FF0,0x3FF8,0x3C7E,0x3C1F,0x3C1F,0x3C0F,0x3C0F,0x3C1F,0x3FFE,0x3FF8,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [B] +0x0000,0x0000,0x0000,0x01FF,0x07FF,0x1F87,0x3E00,0x3C00,0x7C00,0x7800,0x7800,0x7800,0x7800,0x7800,0x7C00,0x7C00,0x3E00,0x3F00,0x1F83,0x07FF,0x01FF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [C] +0x0000,0x0000,0x0000,0x7FF0,0x7FFC,0x787E,0x781F,0x781F,0x780F,0x780F,0x780F,0x780F,0x780F,0x780F,0x780F,0x780F,0x781F,0x781E,0x787E,0x7FF8,0x7FE0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [D] +0x0000,0x0000,0x0000,0x3FFF,0x3FFF,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3FFE,0x3FFE,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3FFF,0x3FFF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [E] +0x0000,0x0000,0x0000,0x1FFF,0x1FFF,0x1E00,0x1E00,0x1E00,0x1E00,0x1E00,0x1E00,0x1FFF,0x1FFF,0x1E00,0x1E00,0x1E00,0x1E00,0x1E00,0x1E00,0x1E00,0x1E00,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [F] +0x0000,0x0000,0x0000,0x03FE,0x0FFF,0x1F87,0x3E00,0x7C00,0x7C00,0x7800,0xF800,0xF800,0xF87F,0xF87F,0x780F,0x7C0F,0x7C0F,0x3E0F,0x1F8F,0x0FFF,0x03FE,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [G] +0x0000,0x0000,0x0000,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7FFF,0x7FFF,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x7C1F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [H] +0x0000,0x0000,0x0000,0x3FFF,0x3FFF,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x3FFF,0x3FFF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [I] +0x0000,0x0000,0x0000,0x1FFC,0x1FFC,0x007C,0x007C,0x007C,0x007C,0x007C,0x007C,0x007C,0x007C,0x007C,0x007C,0x007C,0x0078,0x0078,0x38F8,0x3FF0,0x3FC0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [J] +0x0000,0x0000,0x0000,0x3C1F,0x3C1E,0x3C3C,0x3C78,0x3CF0,0x3DE0,0x3FE0,0x3FC0,0x3F80,0x3FC0,0x3FE0,0x3DF0,0x3CF0,0x3C78,0x3C7C,0x3C3E,0x3C1F,0x3C0F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [K] +0x0000,0x0000,0x0000,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3FFF,0x3FFF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [L] +0x0000,0x0000,0x0000,0xF81F,0xFC1F,0xFC1F,0xFE3F,0xFE3F,0xFE3F,0xFF7F,0xFF77,0xFF77,0xF7F7,0xF7E7,0xF3E7,0xF3E7,0xF3C7,0xF007,0xF007,0xF007,0xF007,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [M] +0x0000,0x0000,0x0000,0x7C0F,0x7C0F,0x7E0F,0x7F0F,0x7F0F,0x7F8F,0x7F8F,0x7FCF,0x7BEF,0x79EF,0x79FF,0x78FF,0x78FF,0x787F,0x783F,0x783F,0x781F,0x781F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [N] +0x0000,0x0000,0x0000,0x07F0,0x1FFC,0x3E3E,0x7C1F,0x780F,0x780F,0xF80F,0xF80F,0xF80F,0xF80F,0xF80F,0xF80F,0x780F,0x780F,0x7C1F,0x3E3E,0x1FFC,0x07F0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [O] +0x0000,0x0000,0x0000,0x3FFC,0x3FFF,0x3E1F,0x3E0F,0x3E0F,0x3E0F,0x3E0F,0x3E1F,0x3E3F,0x3FFC,0x3FF0,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x3E00,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [P] +0x0000,0x0000,0x0000,0x07F0,0x1FFC,0x3E3E,0x7C1F,0x780F,0x780F,0xF80F,0xF80F,0xF80F,0xF80F,0xF80F,0xF80F,0x780F,0x780F,0x7C1F,0x3E3E,0x1FFC,0x07F8,0x007C,0x003F,0x000F,0x0003,0x0000, // Ascii = [Q] +0x0000,0x0000,0x0000,0x3FF0,0x3FFC,0x3C7E,0x3C3E,0x3C1E,0x3C1E,0x3C3E,0x3C3C,0x3CFC,0x3FF0,0x3FE0,0x3DF0,0x3CF8,0x3C7C,0x3C3E,0x3C1E,0x3C1F,0x3C0F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [R] +0x0000,0x0000,0x0000,0x07FC,0x1FFE,0x3E0E,0x3C00,0x3C00,0x3C00,0x3E00,0x1FC0,0x0FF8,0x03FE,0x007F,0x001F,0x000F,0x000F,0x201F,0x3C3E,0x3FFC,0x1FF0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [S] +0x0000,0x0000,0x0000,0xFFFF,0xFFFF,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [T] +0x0000,0x0000,0x0000,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x7C0F,0x3C1E,0x3C1E,0x3E3E,0x1FFC,0x07F0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [U] +0x0000,0x0000,0x0000,0xF007,0xF007,0xF807,0x780F,0x7C0F,0x3C1E,0x3C1E,0x3E1E,0x1E3C,0x1F3C,0x1F78,0x0F78,0x0FF8,0x07F0,0x07F0,0x07F0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [V] +0x0000,0x0000,0x0000,0xE003,0xF003,0xF003,0xF007,0xF3E7,0xF3E7,0xF3E7,0x73E7,0x7BF7,0x7FF7,0x7FFF,0x7F7F,0x7F7F,0x7F7E,0x3F7E,0x3E3E,0x3E3E,0x3E3E,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [W] +0x0000,0x0000,0x0000,0xF807,0x7C0F,0x3E1E,0x3E3E,0x1F3C,0x0FF8,0x07F0,0x07E0,0x03E0,0x03E0,0x07F0,0x0FF8,0x0F7C,0x1E7C,0x3C3E,0x781F,0x780F,0xF00F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [X] +0x0000,0x0000,0x0000,0xF807,0x7807,0x7C0F,0x3C1E,0x3E1E,0x1F3C,0x0F78,0x0FF8,0x07F0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [Y] +0x0000,0x0000,0x0000,0x7FFF,0x7FFF,0x000F,0x001F,0x003E,0x007C,0x00F8,0x00F0,0x01E0,0x03E0,0x07C0,0x0F80,0x0F00,0x1E00,0x3E00,0x7C00,0x7FFF,0x7FFF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [Z] +0x07FF,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x07FF,0x07FF,0x0000, // Ascii = [[] +0x7800,0x7800,0x3C00,0x3C00,0x1E00,0x1E00,0x0F00,0x0F00,0x0780,0x0780,0x03C0,0x03C0,0x01E0,0x01E0,0x00F0,0x00F0,0x0078,0x0078,0x003C,0x003C,0x001E,0x001E,0x000F,0x000F,0x0007,0x0000, // Ascii = [\] +0x7FF0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x00F0,0x7FF0,0x7FF0,0x0000, // Ascii = []] +0x00C0,0x01C0,0x01C0,0x03E0,0x03E0,0x07F0,0x07F0,0x0778,0x0F78,0x0F38,0x1E3C,0x1E3C,0x3C1E,0x3C1E,0x380F,0x780F,0x7807,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [^] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xFFFF,0xFFFF,0x0000,0x0000,0x0000, // Ascii = [_] +0x00F0,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [`] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0FF8,0x3FFC,0x3C7C,0x003E,0x003E,0x003E,0x07FE,0x1FFE,0x3E3E,0x7C3E,0x783E,0x7C3E,0x7C7E,0x3FFF,0x1FCF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [a] +0x3C00,0x3C00,0x3C00,0x3C00,0x3C00,0x3C00,0x3DF8,0x3FFE,0x3F3E,0x3E1F,0x3C0F,0x3C0F,0x3C0F,0x3C0F,0x3C0F,0x3C0F,0x3C1F,0x3C1E,0x3F3E,0x3FFC,0x3BF0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [b] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03FE,0x0FFF,0x1F87,0x3E00,0x3E00,0x3C00,0x7C00,0x7C00,0x7C00,0x3C00,0x3E00,0x3E00,0x1F87,0x0FFF,0x03FE,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [c] +0x001F,0x001F,0x001F,0x001F,0x001F,0x001F,0x07FF,0x1FFF,0x3E3F,0x3C1F,0x7C1F,0x7C1F,0x7C1F,0x781F,0x781F,0x7C1F,0x7C1F,0x3C3F,0x3E7F,0x1FFF,0x0FDF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [d] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x03F8,0x0FFC,0x1F3E,0x3E1E,0x3C1F,0x7C1F,0x7FFF,0x7FFF,0x7C00,0x7C00,0x3C00,0x3E00,0x1F07,0x0FFF,0x03FE,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [e] +0x01FF,0x03E1,0x03C0,0x07C0,0x07C0,0x07C0,0x7FFF,0x7FFF,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x07C0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [f] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07EF,0x1FFF,0x3E7F,0x3C1F,0x7C1F,0x7C1F,0x781F,0x781F,0x781F,0x7C1F,0x7C1F,0x3C3F,0x3E7F,0x1FFF,0x0FDF,0x001E,0x001E,0x001E,0x387C,0x3FF8, // Ascii = [g] +0x3C00,0x3C00,0x3C00,0x3C00,0x3C00,0x3C00,0x3DFC,0x3FFE,0x3F9E,0x3F1F,0x3E1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [h] +0x01F0,0x01F0,0x0000,0x0000,0x0000,0x0000,0x7FE0,0x7FE0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [i] +0x00F8,0x00F8,0x0000,0x0000,0x0000,0x0000,0x3FF8,0x3FF8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F8,0x00F0,0x71F0,0x7FE0, // Ascii = [j] +0x3C00,0x3C00,0x3C00,0x3C00,0x3C00,0x3C00,0x3C1F,0x3C3E,0x3C7C,0x3CF8,0x3DF0,0x3DE0,0x3FC0,0x3FC0,0x3FE0,0x3DF0,0x3CF8,0x3C7C,0x3C3E,0x3C1F,0x3C1F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [k] +0x7FF0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x01F0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [l] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xF79E,0xFFFF,0xFFFF,0xFFFF,0xFBE7,0xF9E7,0xF1C7,0xF1C7,0xF1C7,0xF1C7,0xF1C7,0xF1C7,0xF1C7,0xF1C7,0xF1C7,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [m] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3DFC,0x3FFE,0x3F9E,0x3F1F,0x3E1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x3C1F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [n] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07F0,0x1FFC,0x3E3E,0x3C1F,0x7C1F,0x780F,0x780F,0x780F,0x780F,0x780F,0x7C1F,0x3C1F,0x3E3E,0x1FFC,0x07F0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [o] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3DF8,0x3FFE,0x3F3E,0x3E1F,0x3C0F,0x3C0F,0x3C0F,0x3C0F,0x3C0F,0x3C0F,0x3C1F,0x3E1E,0x3F3E,0x3FFC,0x3FF8,0x3C00,0x3C00,0x3C00,0x3C00,0x3C00, // Ascii = [p] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07EE,0x1FFE,0x3E7E,0x3C1E,0x7C1E,0x781E,0x781E,0x781E,0x781E,0x781E,0x7C1E,0x7C3E,0x3E7E,0x1FFE,0x0FDE,0x001E,0x001E,0x001E,0x001E,0x001E, // Ascii = [q] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x1F7F,0x1FFF,0x1FE7,0x1FC7,0x1F87,0x1F00,0x1F00,0x1F00,0x1F00,0x1F00,0x1F00,0x1F00,0x1F00,0x1F00,0x1F00,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [r] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x07FC,0x1FFE,0x1E0E,0x3E00,0x3E00,0x3F00,0x1FE0,0x07FC,0x00FE,0x003E,0x001E,0x001E,0x3C3E,0x3FFC,0x1FF0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [s] +0x0000,0x0000,0x0000,0x0780,0x0780,0x0780,0x7FFF,0x7FFF,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x0780,0x07C0,0x03FF,0x01FF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [t] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3C1E,0x3C1E,0x3C1E,0x3C1E,0x3C1E,0x3C1E,0x3C1E,0x3C1E,0x3C1E,0x3C1E,0x3C3E,0x3C7E,0x3EFE,0x1FFE,0x0FDE,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [u] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xF007,0x780F,0x780F,0x3C1E,0x3C1E,0x3E1E,0x1E3C,0x1E3C,0x0F78,0x0F78,0x0FF0,0x07F0,0x07F0,0x03E0,0x03E0,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [v] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xF003,0xF1E3,0xF3E3,0xF3E7,0xF3F7,0xF3F7,0x7FF7,0x7F77,0x7F7F,0x7F7F,0x7F7F,0x3E3E,0x3E3E,0x3E3E,0x3E3E,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [w] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x7C0F,0x3E1E,0x3E3C,0x1F3C,0x0FF8,0x07F0,0x07F0,0x03E0,0x07F0,0x07F8,0x0FF8,0x1E7C,0x3E3E,0x3C1F,0x781F,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [x] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0xF807,0x780F,0x7C0F,0x3C1E,0x3C1E,0x1E3C,0x1E3C,0x1F3C,0x0F78,0x0FF8,0x07F0,0x07F0,0x03E0,0x03E0,0x03C0,0x03C0,0x03C0,0x0780,0x0F80,0x7F00, // Ascii = [y] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3FFF,0x3FFF,0x001F,0x003E,0x007C,0x00F8,0x01F0,0x03E0,0x07C0,0x0F80,0x1F00,0x1E00,0x3C00,0x7FFF,0x7FFF,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [z] +0x01FE,0x03E0,0x03C0,0x03C0,0x03C0,0x03C0,0x01E0,0x01E0,0x01E0,0x01C0,0x03C0,0x3F80,0x3F80,0x03C0,0x01C0,0x01E0,0x01E0,0x01E0,0x03C0,0x03C0,0x03C0,0x03C0,0x03E0,0x01FE,0x007E,0x0000, // Ascii = [{] +0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x01C0,0x0000, // Ascii = [|] +0x3FC0,0x03E0,0x01E0,0x01E0,0x01E0,0x01E0,0x01C0,0x03C0,0x03C0,0x01C0,0x01E0,0x00FE,0x00FE,0x01E0,0x01C0,0x03C0,0x03C0,0x01C0,0x01E0,0x01E0,0x01E0,0x01E0,0x03E0,0x3FC0,0x3F00,0x0000, // Ascii = [}] +0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x3F07,0x7FC7,0x73E7,0xF1FF,0xF07E,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000,0x0000, // Ascii = [~] +}; + + +FontDef Font_7x10 = {7,10,Font7x10}; +FontDef Font_11x18 = {11,18,Font11x18}; +FontDef Font_16x26 = {16,26,Font16x26}; diff --git a/STM32/Tcalc_screen/ssd1306_fonts.h b/STM32/Tcalc_screen/ssd1306_fonts.h new file mode 100644 index 0000000..34136ff --- /dev/null +++ b/STM32/Tcalc_screen/ssd1306_fonts.h @@ -0,0 +1,17 @@ +#include + +#ifndef __SSD1306_FONTS_H__ +#define __SSD1306_FONTS_H__ + +typedef struct { + const uint8_t FontWidth; /*!< Font width in pixels */ + uint8_t FontHeight; /*!< Font height in pixels */ + const uint16_t *data; /*!< Pointer to data font data array */ +} FontDef; + + +extern FontDef Font_7x10; +extern FontDef Font_11x18; +extern FontDef Font_16x26; + +#endif // __SSD1306_FONTS_H__ diff --git a/STM32/Tcalc_screen/tsys01.bin b/STM32/Tcalc_screen/tsys01.bin new file mode 100755 index 0000000000000000000000000000000000000000..e6af6cd92ea3ffd5430db8a4fbccb49a527f9c2e GIT binary patch literal 16192 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 ZN1q?Td+K_u2=s<*fcr1R|K~zE{~vg4B{Kj3 literal 0 HcmV?d00001 diff --git a/STM32/Tcalc_screen/tsys01.c.tags b/STM32/Tcalc_screen/tsys01.c.tags new file mode 100644 index 0000000..f5c01f2 --- /dev/null +++ b/STM32/Tcalc_screen/tsys01.c.tags @@ -0,0 +1,4560 @@ +# format=tagmanager +ADCÌ65536Ö0 +ADC1Ì65536Ö0 +ADC1_BASEÌ65536Ö0 +ADC1_COMP_IRQHandlerÌ65536Ö0 +ADC1_COMP_IRQnÌ65536Ö0 +ADC_BASEÌ65536Ö0 +ADC_CCR_TSENÌ65536Ö0 +ADC_CCR_VBATENÌ65536Ö0 +ADC_CCR_VREFENÌ65536Ö0 +ADC_CFGR1_ALIGNÌ65536Ö0 +ADC_CFGR1_AUTDLYÌ65536Ö0 +ADC_CFGR1_AUTOFFÌ65536Ö0 +ADC_CFGR1_AWDCHÌ65536Ö0 +ADC_CFGR1_AWDCH_0Ì65536Ö0 +ADC_CFGR1_AWDCH_1Ì65536Ö0 +ADC_CFGR1_AWDCH_2Ì65536Ö0 +ADC_CFGR1_AWDCH_3Ì65536Ö0 +ADC_CFGR1_AWDCH_4Ì65536Ö0 +ADC_CFGR1_AWDENÌ65536Ö0 +ADC_CFGR1_AWDSGLÌ65536Ö0 +ADC_CFGR1_CONTÌ65536Ö0 +ADC_CFGR1_DISCENÌ65536Ö0 +ADC_CFGR1_DMACFGÌ65536Ö0 +ADC_CFGR1_DMAENÌ65536Ö0 +ADC_CFGR1_EXTENÌ65536Ö0 +ADC_CFGR1_EXTEN_0Ì65536Ö0 +ADC_CFGR1_EXTEN_1Ì65536Ö0 +ADC_CFGR1_EXTSELÌ65536Ö0 +ADC_CFGR1_EXTSEL_0Ì65536Ö0 +ADC_CFGR1_EXTSEL_1Ì65536Ö0 +ADC_CFGR1_EXTSEL_2Ì65536Ö0 +ADC_CFGR1_OVRMODÌ65536Ö0 +ADC_CFGR1_RESÌ65536Ö0 +ADC_CFGR1_RES_0Ì65536Ö0 +ADC_CFGR1_RES_1Ì65536Ö0 +ADC_CFGR1_SCANDIRÌ65536Ö0 +ADC_CFGR1_WAITÌ65536Ö0 +ADC_CFGR2_CKMODEÌ65536Ö0 +ADC_CFGR2_CKMODE_0Ì65536Ö0 +ADC_CFGR2_CKMODE_1Ì65536Ö0 +ADC_CFGR2_JITOFFDIV2Ì65536Ö0 +ADC_CFGR2_JITOFFDIV4Ì65536Ö0 +ADC_CHSELR_CHSEL0Ì65536Ö0 +ADC_CHSELR_CHSEL1Ì65536Ö0 +ADC_CHSELR_CHSEL10Ì65536Ö0 +ADC_CHSELR_CHSEL11Ì65536Ö0 +ADC_CHSELR_CHSEL12Ì65536Ö0 +ADC_CHSELR_CHSEL13Ì65536Ö0 +ADC_CHSELR_CHSEL14Ì65536Ö0 +ADC_CHSELR_CHSEL15Ì65536Ö0 +ADC_CHSELR_CHSEL16Ì65536Ö0 +ADC_CHSELR_CHSEL17Ì65536Ö0 +ADC_CHSELR_CHSEL18Ì65536Ö0 +ADC_CHSELR_CHSEL2Ì65536Ö0 +ADC_CHSELR_CHSEL3Ì65536Ö0 +ADC_CHSELR_CHSEL4Ì65536Ö0 +ADC_CHSELR_CHSEL5Ì65536Ö0 +ADC_CHSELR_CHSEL6Ì65536Ö0 +ADC_CHSELR_CHSEL7Ì65536Ö0 +ADC_CHSELR_CHSEL8Ì65536Ö0 +ADC_CHSELR_CHSEL9Ì65536Ö0 +ADC_CR_ADCALÌ65536Ö0 +ADC_CR_ADDISÌ65536Ö0 +ADC_CR_ADENÌ65536Ö0 +ADC_CR_ADSTARTÌ65536Ö0 +ADC_CR_ADSTPÌ65536Ö0 +ADC_DR_DATAÌ65536Ö0 +ADC_HTR_HTÌ65536Ö0 +ADC_IER_ADRDYIEÌ65536Ö0 +ADC_IER_AWDIEÌ65536Ö0 +ADC_IER_EOCIEÌ65536Ö0 +ADC_IER_EOSEQIEÌ65536Ö0 +ADC_IER_EOSIEÌ65536Ö0 +ADC_IER_EOSMPIEÌ65536Ö0 +ADC_IER_OVRIEÌ65536Ö0 +ADC_ISR_ADRDYÌ65536Ö0 +ADC_ISR_AWDÌ65536Ö0 +ADC_ISR_EOCÌ65536Ö0 +ADC_ISR_EOSÌ65536Ö0 +ADC_ISR_EOSEQÌ65536Ö0 +ADC_ISR_EOSMPÌ65536Ö0 +ADC_ISR_OVRÌ65536Ö0 +ADC_LTR_LTÌ65536Ö0 +ADC_SMPR1_SMPRÌ65536Ö0 +ADC_SMPR1_SMPR_0Ì65536Ö0 +ADC_SMPR1_SMPR_1Ì65536Ö0 +ADC_SMPR1_SMPR_2Ì65536Ö0 +ADC_SMPR_SMPÌ65536Ö0 +ADC_SMPR_SMP_0Ì65536Ö0 +ADC_SMPR_SMP_1Ì65536Ö0 +ADC_SMPR_SMP_2Ì65536Ö0 +ADC_TR_HTÌ65536Ö0 +ADC_TR_LTÌ65536Ö0 +AHB2PERIPH_BASEÌ65536Ö0 +AHBPERIPH_BASEÌ65536Ö0 +ALL_OKÌ4Îanon_enum_3Ö0 +APBPERIPH_BASEÌ65536Ö0 +BOOT_PAUSEÌ65536Ö0 +CANÌ65536Ö0 +CAN_BASEÌ65536Ö0 +CAN_BTR_BRPÌ65536Ö0 +CAN_BTR_LBKMÌ65536Ö0 +CAN_BTR_SILMÌ65536Ö0 +CAN_BTR_SJWÌ65536Ö0 +CAN_BTR_SJW_0Ì65536Ö0 +CAN_BTR_SJW_1Ì65536Ö0 +CAN_BTR_TS1Ì65536Ö0 +CAN_BTR_TS1_0Ì65536Ö0 +CAN_BTR_TS1_1Ì65536Ö0 +CAN_BTR_TS1_2Ì65536Ö0 +CAN_BTR_TS1_3Ì65536Ö0 +CAN_BTR_TS2Ì65536Ö0 +CAN_BTR_TS2_0Ì65536Ö0 +CAN_BTR_TS2_1Ì65536Ö0 +CAN_BTR_TS2_2Ì65536Ö0 +CAN_ESR_BOFFÌ65536Ö0 +CAN_ESR_EPVFÌ65536Ö0 +CAN_ESR_EWGFÌ65536Ö0 +CAN_ESR_LECÌ65536Ö0 +CAN_ESR_LEC_0Ì65536Ö0 +CAN_ESR_LEC_1Ì65536Ö0 +CAN_ESR_LEC_2Ì65536Ö0 +CAN_ESR_RECÌ65536Ö0 +CAN_ESR_TECÌ65536Ö0 +CAN_F0R1_FB0Ì65536Ö0 +CAN_F0R1_FB1Ì65536Ö0 +CAN_F0R1_FB10Ì65536Ö0 +CAN_F0R1_FB11Ì65536Ö0 +CAN_F0R1_FB12Ì65536Ö0 +CAN_F0R1_FB13Ì65536Ö0 +CAN_F0R1_FB14Ì65536Ö0 +CAN_F0R1_FB15Ì65536Ö0 +CAN_F0R1_FB16Ì65536Ö0 +CAN_F0R1_FB17Ì65536Ö0 +CAN_F0R1_FB18Ì65536Ö0 +CAN_F0R1_FB19Ì65536Ö0 +CAN_F0R1_FB2Ì65536Ö0 +CAN_F0R1_FB20Ì65536Ö0 +CAN_F0R1_FB21Ì65536Ö0 +CAN_F0R1_FB22Ì65536Ö0 +CAN_F0R1_FB23Ì65536Ö0 +CAN_F0R1_FB24Ì65536Ö0 +CAN_F0R1_FB25Ì65536Ö0 +CAN_F0R1_FB26Ì65536Ö0 +CAN_F0R1_FB27Ì65536Ö0 +CAN_F0R1_FB28Ì65536Ö0 +CAN_F0R1_FB29Ì65536Ö0 +CAN_F0R1_FB3Ì65536Ö0 +CAN_F0R1_FB30Ì65536Ö0 +CAN_F0R1_FB31Ì65536Ö0 +CAN_F0R1_FB4Ì65536Ö0 +CAN_F0R1_FB5Ì65536Ö0 +CAN_F0R1_FB6Ì65536Ö0 +CAN_F0R1_FB7Ì65536Ö0 +CAN_F0R1_FB8Ì65536Ö0 +CAN_F0R1_FB9Ì65536Ö0 +CAN_F0R2_FB0Ì65536Ö0 +CAN_F0R2_FB1Ì65536Ö0 +CAN_F0R2_FB10Ì65536Ö0 +CAN_F0R2_FB11Ì65536Ö0 +CAN_F0R2_FB12Ì65536Ö0 +CAN_F0R2_FB13Ì65536Ö0 +CAN_F0R2_FB14Ì65536Ö0 +CAN_F0R2_FB15Ì65536Ö0 +CAN_F0R2_FB16Ì65536Ö0 +CAN_F0R2_FB17Ì65536Ö0 +CAN_F0R2_FB18Ì65536Ö0 +CAN_F0R2_FB19Ì65536Ö0 +CAN_F0R2_FB2Ì65536Ö0 +CAN_F0R2_FB20Ì65536Ö0 +CAN_F0R2_FB21Ì65536Ö0 +CAN_F0R2_FB22Ì65536Ö0 +CAN_F0R2_FB23Ì65536Ö0 +CAN_F0R2_FB24Ì65536Ö0 +CAN_F0R2_FB25Ì65536Ö0 +CAN_F0R2_FB26Ì65536Ö0 +CAN_F0R2_FB27Ì65536Ö0 +CAN_F0R2_FB28Ì65536Ö0 +CAN_F0R2_FB29Ì65536Ö0 +CAN_F0R2_FB3Ì65536Ö0 +CAN_F0R2_FB30Ì65536Ö0 +CAN_F0R2_FB31Ì65536Ö0 +CAN_F0R2_FB4Ì65536Ö0 +CAN_F0R2_FB5Ì65536Ö0 +CAN_F0R2_FB6Ì65536Ö0 +CAN_F0R2_FB7Ì65536Ö0 +CAN_F0R2_FB8Ì65536Ö0 +CAN_F0R2_FB9Ì65536Ö0 +CAN_F10R1_FB0Ì65536Ö0 +CAN_F10R1_FB1Ì65536Ö0 +CAN_F10R1_FB10Ì65536Ö0 +CAN_F10R1_FB11Ì65536Ö0 +CAN_F10R1_FB12Ì65536Ö0 +CAN_F10R1_FB13Ì65536Ö0 +CAN_F10R1_FB14Ì65536Ö0 +CAN_F10R1_FB15Ì65536Ö0 +CAN_F10R1_FB16Ì65536Ö0 +CAN_F10R1_FB17Ì65536Ö0 +CAN_F10R1_FB18Ì65536Ö0 +CAN_F10R1_FB19Ì65536Ö0 +CAN_F10R1_FB2Ì65536Ö0 +CAN_F10R1_FB20Ì65536Ö0 +CAN_F10R1_FB21Ì65536Ö0 +CAN_F10R1_FB22Ì65536Ö0 +CAN_F10R1_FB23Ì65536Ö0 +CAN_F10R1_FB24Ì65536Ö0 +CAN_F10R1_FB25Ì65536Ö0 +CAN_F10R1_FB26Ì65536Ö0 +CAN_F10R1_FB27Ì65536Ö0 +CAN_F10R1_FB28Ì65536Ö0 +CAN_F10R1_FB29Ì65536Ö0 +CAN_F10R1_FB3Ì65536Ö0 +CAN_F10R1_FB30Ì65536Ö0 +CAN_F10R1_FB31Ì65536Ö0 +CAN_F10R1_FB4Ì65536Ö0 +CAN_F10R1_FB5Ì65536Ö0 +CAN_F10R1_FB6Ì65536Ö0 +CAN_F10R1_FB7Ì65536Ö0 +CAN_F10R1_FB8Ì65536Ö0 +CAN_F10R1_FB9Ì65536Ö0 +CAN_F10R2_FB0Ì65536Ö0 +CAN_F10R2_FB1Ì65536Ö0 +CAN_F10R2_FB10Ì65536Ö0 +CAN_F10R2_FB11Ì65536Ö0 +CAN_F10R2_FB12Ì65536Ö0 +CAN_F10R2_FB13Ì65536Ö0 +CAN_F10R2_FB14Ì65536Ö0 +CAN_F10R2_FB15Ì65536Ö0 +CAN_F10R2_FB16Ì65536Ö0 +CAN_F10R2_FB17Ì65536Ö0 +CAN_F10R2_FB18Ì65536Ö0 +CAN_F10R2_FB19Ì65536Ö0 +CAN_F10R2_FB2Ì65536Ö0 +CAN_F10R2_FB20Ì65536Ö0 +CAN_F10R2_FB21Ì65536Ö0 +CAN_F10R2_FB22Ì65536Ö0 +CAN_F10R2_FB23Ì65536Ö0 +CAN_F10R2_FB24Ì65536Ö0 +CAN_F10R2_FB25Ì65536Ö0 +CAN_F10R2_FB26Ì65536Ö0 +CAN_F10R2_FB27Ì65536Ö0 +CAN_F10R2_FB28Ì65536Ö0 +CAN_F10R2_FB29Ì65536Ö0 +CAN_F10R2_FB3Ì65536Ö0 +CAN_F10R2_FB30Ì65536Ö0 +CAN_F10R2_FB31Ì65536Ö0 +CAN_F10R2_FB4Ì65536Ö0 +CAN_F10R2_FB5Ì65536Ö0 +CAN_F10R2_FB6Ì65536Ö0 +CAN_F10R2_FB7Ì65536Ö0 +CAN_F10R2_FB8Ì65536Ö0 +CAN_F10R2_FB9Ì65536Ö0 +CAN_F11R1_FB0Ì65536Ö0 +CAN_F11R1_FB1Ì65536Ö0 +CAN_F11R1_FB10Ì65536Ö0 +CAN_F11R1_FB11Ì65536Ö0 +CAN_F11R1_FB12Ì65536Ö0 +CAN_F11R1_FB13Ì65536Ö0 +CAN_F11R1_FB14Ì65536Ö0 +CAN_F11R1_FB15Ì65536Ö0 +CAN_F11R1_FB16Ì65536Ö0 +CAN_F11R1_FB17Ì65536Ö0 +CAN_F11R1_FB18Ì65536Ö0 +CAN_F11R1_FB19Ì65536Ö0 +CAN_F11R1_FB2Ì65536Ö0 +CAN_F11R1_FB20Ì65536Ö0 +CAN_F11R1_FB21Ì65536Ö0 +CAN_F11R1_FB22Ì65536Ö0 +CAN_F11R1_FB23Ì65536Ö0 +CAN_F11R1_FB24Ì65536Ö0 +CAN_F11R1_FB25Ì65536Ö0 +CAN_F11R1_FB26Ì65536Ö0 +CAN_F11R1_FB27Ì65536Ö0 +CAN_F11R1_FB28Ì65536Ö0 +CAN_F11R1_FB29Ì65536Ö0 +CAN_F11R1_FB3Ì65536Ö0 +CAN_F11R1_FB30Ì65536Ö0 +CAN_F11R1_FB31Ì65536Ö0 +CAN_F11R1_FB4Ì65536Ö0 +CAN_F11R1_FB5Ì65536Ö0 +CAN_F11R1_FB6Ì65536Ö0 +CAN_F11R1_FB7Ì65536Ö0 +CAN_F11R1_FB8Ì65536Ö0 +CAN_F11R1_FB9Ì65536Ö0 +CAN_F11R2_FB0Ì65536Ö0 +CAN_F11R2_FB1Ì65536Ö0 +CAN_F11R2_FB10Ì65536Ö0 +CAN_F11R2_FB11Ì65536Ö0 +CAN_F11R2_FB12Ì65536Ö0 +CAN_F11R2_FB13Ì65536Ö0 +CAN_F11R2_FB14Ì65536Ö0 +CAN_F11R2_FB15Ì65536Ö0 +CAN_F11R2_FB16Ì65536Ö0 +CAN_F11R2_FB17Ì65536Ö0 +CAN_F11R2_FB18Ì65536Ö0 +CAN_F11R2_FB19Ì65536Ö0 +CAN_F11R2_FB2Ì65536Ö0 +CAN_F11R2_FB20Ì65536Ö0 +CAN_F11R2_FB21Ì65536Ö0 +CAN_F11R2_FB22Ì65536Ö0 +CAN_F11R2_FB23Ì65536Ö0 +CAN_F11R2_FB24Ì65536Ö0 +CAN_F11R2_FB25Ì65536Ö0 +CAN_F11R2_FB26Ì65536Ö0 +CAN_F11R2_FB27Ì65536Ö0 +CAN_F11R2_FB28Ì65536Ö0 +CAN_F11R2_FB29Ì65536Ö0 +CAN_F11R2_FB3Ì65536Ö0 +CAN_F11R2_FB30Ì65536Ö0 +CAN_F11R2_FB31Ì65536Ö0 +CAN_F11R2_FB4Ì65536Ö0 +CAN_F11R2_FB5Ì65536Ö0 +CAN_F11R2_FB6Ì65536Ö0 +CAN_F11R2_FB7Ì65536Ö0 +CAN_F11R2_FB8Ì65536Ö0 +CAN_F11R2_FB9Ì65536Ö0 +CAN_F12R1_FB0Ì65536Ö0 +CAN_F12R1_FB1Ì65536Ö0 +CAN_F12R1_FB10Ì65536Ö0 +CAN_F12R1_FB11Ì65536Ö0 +CAN_F12R1_FB12Ì65536Ö0 +CAN_F12R1_FB13Ì65536Ö0 +CAN_F12R1_FB14Ì65536Ö0 +CAN_F12R1_FB15Ì65536Ö0 +CAN_F12R1_FB16Ì65536Ö0 +CAN_F12R1_FB17Ì65536Ö0 +CAN_F12R1_FB18Ì65536Ö0 +CAN_F12R1_FB19Ì65536Ö0 +CAN_F12R1_FB2Ì65536Ö0 +CAN_F12R1_FB20Ì65536Ö0 +CAN_F12R1_FB21Ì65536Ö0 +CAN_F12R1_FB22Ì65536Ö0 +CAN_F12R1_FB23Ì65536Ö0 +CAN_F12R1_FB24Ì65536Ö0 +CAN_F12R1_FB25Ì65536Ö0 +CAN_F12R1_FB26Ì65536Ö0 +CAN_F12R1_FB27Ì65536Ö0 +CAN_F12R1_FB28Ì65536Ö0 +CAN_F12R1_FB29Ì65536Ö0 +CAN_F12R1_FB3Ì65536Ö0 +CAN_F12R1_FB30Ì65536Ö0 +CAN_F12R1_FB31Ì65536Ö0 +CAN_F12R1_FB4Ì65536Ö0 +CAN_F12R1_FB5Ì65536Ö0 +CAN_F12R1_FB6Ì65536Ö0 +CAN_F12R1_FB7Ì65536Ö0 +CAN_F12R1_FB8Ì65536Ö0 +CAN_F12R1_FB9Ì65536Ö0 +CAN_F12R2_FB0Ì65536Ö0 +CAN_F12R2_FB1Ì65536Ö0 +CAN_F12R2_FB10Ì65536Ö0 +CAN_F12R2_FB11Ì65536Ö0 +CAN_F12R2_FB12Ì65536Ö0 +CAN_F12R2_FB13Ì65536Ö0 +CAN_F12R2_FB14Ì65536Ö0 +CAN_F12R2_FB15Ì65536Ö0 +CAN_F12R2_FB16Ì65536Ö0 +CAN_F12R2_FB17Ì65536Ö0 +CAN_F12R2_FB18Ì65536Ö0 +CAN_F12R2_FB19Ì65536Ö0 +CAN_F12R2_FB2Ì65536Ö0 +CAN_F12R2_FB20Ì65536Ö0 +CAN_F12R2_FB21Ì65536Ö0 +CAN_F12R2_FB22Ì65536Ö0 +CAN_F12R2_FB23Ì65536Ö0 +CAN_F12R2_FB24Ì65536Ö0 +CAN_F12R2_FB25Ì65536Ö0 +CAN_F12R2_FB26Ì65536Ö0 +CAN_F12R2_FB27Ì65536Ö0 +CAN_F12R2_FB28Ì65536Ö0 +CAN_F12R2_FB29Ì65536Ö0 +CAN_F12R2_FB3Ì65536Ö0 +CAN_F12R2_FB30Ì65536Ö0 +CAN_F12R2_FB31Ì65536Ö0 +CAN_F12R2_FB4Ì65536Ö0 +CAN_F12R2_FB5Ì65536Ö0 +CAN_F12R2_FB6Ì65536Ö0 +CAN_F12R2_FB7Ì65536Ö0 +CAN_F12R2_FB8Ì65536Ö0 +CAN_F12R2_FB9Ì65536Ö0 +CAN_F13R1_FB0Ì65536Ö0 +CAN_F13R1_FB1Ì65536Ö0 +CAN_F13R1_FB10Ì65536Ö0 +CAN_F13R1_FB11Ì65536Ö0 +CAN_F13R1_FB12Ì65536Ö0 +CAN_F13R1_FB13Ì65536Ö0 +CAN_F13R1_FB14Ì65536Ö0 +CAN_F13R1_FB15Ì65536Ö0 +CAN_F13R1_FB16Ì65536Ö0 +CAN_F13R1_FB17Ì65536Ö0 +CAN_F13R1_FB18Ì65536Ö0 +CAN_F13R1_FB19Ì65536Ö0 +CAN_F13R1_FB2Ì65536Ö0 +CAN_F13R1_FB20Ì65536Ö0 +CAN_F13R1_FB21Ì65536Ö0 +CAN_F13R1_FB22Ì65536Ö0 +CAN_F13R1_FB23Ì65536Ö0 +CAN_F13R1_FB24Ì65536Ö0 +CAN_F13R1_FB25Ì65536Ö0 +CAN_F13R1_FB26Ì65536Ö0 +CAN_F13R1_FB27Ì65536Ö0 +CAN_F13R1_FB28Ì65536Ö0 +CAN_F13R1_FB29Ì65536Ö0 +CAN_F13R1_FB3Ì65536Ö0 +CAN_F13R1_FB30Ì65536Ö0 +CAN_F13R1_FB31Ì65536Ö0 +CAN_F13R1_FB4Ì65536Ö0 +CAN_F13R1_FB5Ì65536Ö0 +CAN_F13R1_FB6Ì65536Ö0 +CAN_F13R1_FB7Ì65536Ö0 +CAN_F13R1_FB8Ì65536Ö0 +CAN_F13R1_FB9Ì65536Ö0 +CAN_F13R2_FB0Ì65536Ö0 +CAN_F13R2_FB1Ì65536Ö0 +CAN_F13R2_FB10Ì65536Ö0 +CAN_F13R2_FB11Ì65536Ö0 +CAN_F13R2_FB12Ì65536Ö0 +CAN_F13R2_FB13Ì65536Ö0 +CAN_F13R2_FB14Ì65536Ö0 +CAN_F13R2_FB15Ì65536Ö0 +CAN_F13R2_FB16Ì65536Ö0 +CAN_F13R2_FB17Ì65536Ö0 +CAN_F13R2_FB18Ì65536Ö0 +CAN_F13R2_FB19Ì65536Ö0 +CAN_F13R2_FB2Ì65536Ö0 +CAN_F13R2_FB20Ì65536Ö0 +CAN_F13R2_FB21Ì65536Ö0 +CAN_F13R2_FB22Ì65536Ö0 +CAN_F13R2_FB23Ì65536Ö0 +CAN_F13R2_FB24Ì65536Ö0 +CAN_F13R2_FB25Ì65536Ö0 +CAN_F13R2_FB26Ì65536Ö0 +CAN_F13R2_FB27Ì65536Ö0 +CAN_F13R2_FB28Ì65536Ö0 +CAN_F13R2_FB29Ì65536Ö0 +CAN_F13R2_FB3Ì65536Ö0 +CAN_F13R2_FB30Ì65536Ö0 +CAN_F13R2_FB31Ì65536Ö0 +CAN_F13R2_FB4Ì65536Ö0 +CAN_F13R2_FB5Ì65536Ö0 +CAN_F13R2_FB6Ì65536Ö0 +CAN_F13R2_FB7Ì65536Ö0 +CAN_F13R2_FB8Ì65536Ö0 +CAN_F13R2_FB9Ì65536Ö0 +CAN_F1R1_FB0Ì65536Ö0 +CAN_F1R1_FB1Ì65536Ö0 +CAN_F1R1_FB10Ì65536Ö0 +CAN_F1R1_FB11Ì65536Ö0 +CAN_F1R1_FB12Ì65536Ö0 +CAN_F1R1_FB13Ì65536Ö0 +CAN_F1R1_FB14Ì65536Ö0 +CAN_F1R1_FB15Ì65536Ö0 +CAN_F1R1_FB16Ì65536Ö0 +CAN_F1R1_FB17Ì65536Ö0 +CAN_F1R1_FB18Ì65536Ö0 +CAN_F1R1_FB19Ì65536Ö0 +CAN_F1R1_FB2Ì65536Ö0 +CAN_F1R1_FB20Ì65536Ö0 +CAN_F1R1_FB21Ì65536Ö0 +CAN_F1R1_FB22Ì65536Ö0 +CAN_F1R1_FB23Ì65536Ö0 +CAN_F1R1_FB24Ì65536Ö0 +CAN_F1R1_FB25Ì65536Ö0 +CAN_F1R1_FB26Ì65536Ö0 +CAN_F1R1_FB27Ì65536Ö0 +CAN_F1R1_FB28Ì65536Ö0 +CAN_F1R1_FB29Ì65536Ö0 +CAN_F1R1_FB3Ì65536Ö0 +CAN_F1R1_FB30Ì65536Ö0 +CAN_F1R1_FB31Ì65536Ö0 +CAN_F1R1_FB4Ì65536Ö0 +CAN_F1R1_FB5Ì65536Ö0 +CAN_F1R1_FB6Ì65536Ö0 +CAN_F1R1_FB7Ì65536Ö0 +CAN_F1R1_FB8Ì65536Ö0 +CAN_F1R1_FB9Ì65536Ö0 +CAN_F1R2_FB0Ì65536Ö0 +CAN_F1R2_FB1Ì65536Ö0 +CAN_F1R2_FB10Ì65536Ö0 +CAN_F1R2_FB11Ì65536Ö0 +CAN_F1R2_FB12Ì65536Ö0 +CAN_F1R2_FB13Ì65536Ö0 +CAN_F1R2_FB14Ì65536Ö0 +CAN_F1R2_FB15Ì65536Ö0 +CAN_F1R2_FB16Ì65536Ö0 +CAN_F1R2_FB17Ì65536Ö0 +CAN_F1R2_FB18Ì65536Ö0 +CAN_F1R2_FB19Ì65536Ö0 +CAN_F1R2_FB2Ì65536Ö0 +CAN_F1R2_FB20Ì65536Ö0 +CAN_F1R2_FB21Ì65536Ö0 +CAN_F1R2_FB22Ì65536Ö0 +CAN_F1R2_FB23Ì65536Ö0 +CAN_F1R2_FB24Ì65536Ö0 +CAN_F1R2_FB25Ì65536Ö0 +CAN_F1R2_FB26Ì65536Ö0 +CAN_F1R2_FB27Ì65536Ö0 +CAN_F1R2_FB28Ì65536Ö0 +CAN_F1R2_FB29Ì65536Ö0 +CAN_F1R2_FB3Ì65536Ö0 +CAN_F1R2_FB30Ì65536Ö0 +CAN_F1R2_FB31Ì65536Ö0 +CAN_F1R2_FB4Ì65536Ö0 +CAN_F1R2_FB5Ì65536Ö0 +CAN_F1R2_FB6Ì65536Ö0 +CAN_F1R2_FB7Ì65536Ö0 +CAN_F1R2_FB8Ì65536Ö0 +CAN_F1R2_FB9Ì65536Ö0 +CAN_F2R1_FB0Ì65536Ö0 +CAN_F2R1_FB1Ì65536Ö0 +CAN_F2R1_FB10Ì65536Ö0 +CAN_F2R1_FB11Ì65536Ö0 +CAN_F2R1_FB12Ì65536Ö0 +CAN_F2R1_FB13Ì65536Ö0 +CAN_F2R1_FB14Ì65536Ö0 +CAN_F2R1_FB15Ì65536Ö0 +CAN_F2R1_FB16Ì65536Ö0 +CAN_F2R1_FB17Ì65536Ö0 +CAN_F2R1_FB18Ì65536Ö0 +CAN_F2R1_FB19Ì65536Ö0 +CAN_F2R1_FB2Ì65536Ö0 +CAN_F2R1_FB20Ì65536Ö0 +CAN_F2R1_FB21Ì65536Ö0 +CAN_F2R1_FB22Ì65536Ö0 +CAN_F2R1_FB23Ì65536Ö0 +CAN_F2R1_FB24Ì65536Ö0 +CAN_F2R1_FB25Ì65536Ö0 +CAN_F2R1_FB26Ì65536Ö0 +CAN_F2R1_FB27Ì65536Ö0 +CAN_F2R1_FB28Ì65536Ö0 +CAN_F2R1_FB29Ì65536Ö0 +CAN_F2R1_FB3Ì65536Ö0 +CAN_F2R1_FB30Ì65536Ö0 +CAN_F2R1_FB31Ì65536Ö0 +CAN_F2R1_FB4Ì65536Ö0 +CAN_F2R1_FB5Ì65536Ö0 +CAN_F2R1_FB6Ì65536Ö0 +CAN_F2R1_FB7Ì65536Ö0 +CAN_F2R1_FB8Ì65536Ö0 +CAN_F2R1_FB9Ì65536Ö0 +CAN_F2R2_FB0Ì65536Ö0 +CAN_F2R2_FB1Ì65536Ö0 +CAN_F2R2_FB10Ì65536Ö0 +CAN_F2R2_FB11Ì65536Ö0 +CAN_F2R2_FB12Ì65536Ö0 +CAN_F2R2_FB13Ì65536Ö0 +CAN_F2R2_FB14Ì65536Ö0 +CAN_F2R2_FB15Ì65536Ö0 +CAN_F2R2_FB16Ì65536Ö0 +CAN_F2R2_FB17Ì65536Ö0 +CAN_F2R2_FB18Ì65536Ö0 +CAN_F2R2_FB19Ì65536Ö0 +CAN_F2R2_FB2Ì65536Ö0 +CAN_F2R2_FB20Ì65536Ö0 +CAN_F2R2_FB21Ì65536Ö0 +CAN_F2R2_FB22Ì65536Ö0 +CAN_F2R2_FB23Ì65536Ö0 +CAN_F2R2_FB24Ì65536Ö0 +CAN_F2R2_FB25Ì65536Ö0 +CAN_F2R2_FB26Ì65536Ö0 +CAN_F2R2_FB27Ì65536Ö0 +CAN_F2R2_FB28Ì65536Ö0 +CAN_F2R2_FB29Ì65536Ö0 +CAN_F2R2_FB3Ì65536Ö0 +CAN_F2R2_FB30Ì65536Ö0 +CAN_F2R2_FB31Ì65536Ö0 +CAN_F2R2_FB4Ì65536Ö0 +CAN_F2R2_FB5Ì65536Ö0 +CAN_F2R2_FB6Ì65536Ö0 +CAN_F2R2_FB7Ì65536Ö0 +CAN_F2R2_FB8Ì65536Ö0 +CAN_F2R2_FB9Ì65536Ö0 +CAN_F3R1_FB0Ì65536Ö0 +CAN_F3R1_FB1Ì65536Ö0 +CAN_F3R1_FB10Ì65536Ö0 +CAN_F3R1_FB11Ì65536Ö0 +CAN_F3R1_FB12Ì65536Ö0 +CAN_F3R1_FB13Ì65536Ö0 +CAN_F3R1_FB14Ì65536Ö0 +CAN_F3R1_FB15Ì65536Ö0 +CAN_F3R1_FB16Ì65536Ö0 +CAN_F3R1_FB17Ì65536Ö0 +CAN_F3R1_FB18Ì65536Ö0 +CAN_F3R1_FB19Ì65536Ö0 +CAN_F3R1_FB2Ì65536Ö0 +CAN_F3R1_FB20Ì65536Ö0 +CAN_F3R1_FB21Ì65536Ö0 +CAN_F3R1_FB22Ì65536Ö0 +CAN_F3R1_FB23Ì65536Ö0 +CAN_F3R1_FB24Ì65536Ö0 +CAN_F3R1_FB25Ì65536Ö0 +CAN_F3R1_FB26Ì65536Ö0 +CAN_F3R1_FB27Ì65536Ö0 +CAN_F3R1_FB28Ì65536Ö0 +CAN_F3R1_FB29Ì65536Ö0 +CAN_F3R1_FB3Ì65536Ö0 +CAN_F3R1_FB30Ì65536Ö0 +CAN_F3R1_FB31Ì65536Ö0 +CAN_F3R1_FB4Ì65536Ö0 +CAN_F3R1_FB5Ì65536Ö0 +CAN_F3R1_FB6Ì65536Ö0 +CAN_F3R1_FB7Ì65536Ö0 +CAN_F3R1_FB8Ì65536Ö0 +CAN_F3R1_FB9Ì65536Ö0 +CAN_F3R2_FB0Ì65536Ö0 +CAN_F3R2_FB1Ì65536Ö0 +CAN_F3R2_FB10Ì65536Ö0 +CAN_F3R2_FB11Ì65536Ö0 +CAN_F3R2_FB12Ì65536Ö0 +CAN_F3R2_FB13Ì65536Ö0 +CAN_F3R2_FB14Ì65536Ö0 +CAN_F3R2_FB15Ì65536Ö0 +CAN_F3R2_FB16Ì65536Ö0 +CAN_F3R2_FB17Ì65536Ö0 +CAN_F3R2_FB18Ì65536Ö0 +CAN_F3R2_FB19Ì65536Ö0 +CAN_F3R2_FB2Ì65536Ö0 +CAN_F3R2_FB20Ì65536Ö0 +CAN_F3R2_FB21Ì65536Ö0 +CAN_F3R2_FB22Ì65536Ö0 +CAN_F3R2_FB23Ì65536Ö0 +CAN_F3R2_FB24Ì65536Ö0 +CAN_F3R2_FB25Ì65536Ö0 +CAN_F3R2_FB26Ì65536Ö0 +CAN_F3R2_FB27Ì65536Ö0 +CAN_F3R2_FB28Ì65536Ö0 +CAN_F3R2_FB29Ì65536Ö0 +CAN_F3R2_FB3Ì65536Ö0 +CAN_F3R2_FB30Ì65536Ö0 +CAN_F3R2_FB31Ì65536Ö0 +CAN_F3R2_FB4Ì65536Ö0 +CAN_F3R2_FB5Ì65536Ö0 +CAN_F3R2_FB6Ì65536Ö0 +CAN_F3R2_FB7Ì65536Ö0 +CAN_F3R2_FB8Ì65536Ö0 +CAN_F3R2_FB9Ì65536Ö0 +CAN_F4R1_FB0Ì65536Ö0 +CAN_F4R1_FB1Ì65536Ö0 +CAN_F4R1_FB10Ì65536Ö0 +CAN_F4R1_FB11Ì65536Ö0 +CAN_F4R1_FB12Ì65536Ö0 +CAN_F4R1_FB13Ì65536Ö0 +CAN_F4R1_FB14Ì65536Ö0 +CAN_F4R1_FB15Ì65536Ö0 +CAN_F4R1_FB16Ì65536Ö0 +CAN_F4R1_FB17Ì65536Ö0 +CAN_F4R1_FB18Ì65536Ö0 +CAN_F4R1_FB19Ì65536Ö0 +CAN_F4R1_FB2Ì65536Ö0 +CAN_F4R1_FB20Ì65536Ö0 +CAN_F4R1_FB21Ì65536Ö0 +CAN_F4R1_FB22Ì65536Ö0 +CAN_F4R1_FB23Ì65536Ö0 +CAN_F4R1_FB24Ì65536Ö0 +CAN_F4R1_FB25Ì65536Ö0 +CAN_F4R1_FB26Ì65536Ö0 +CAN_F4R1_FB27Ì65536Ö0 +CAN_F4R1_FB28Ì65536Ö0 +CAN_F4R1_FB29Ì65536Ö0 +CAN_F4R1_FB3Ì65536Ö0 +CAN_F4R1_FB30Ì65536Ö0 +CAN_F4R1_FB31Ì65536Ö0 +CAN_F4R1_FB4Ì65536Ö0 +CAN_F4R1_FB5Ì65536Ö0 +CAN_F4R1_FB6Ì65536Ö0 +CAN_F4R1_FB7Ì65536Ö0 +CAN_F4R1_FB8Ì65536Ö0 +CAN_F4R1_FB9Ì65536Ö0 +CAN_F4R2_FB0Ì65536Ö0 +CAN_F4R2_FB1Ì65536Ö0 +CAN_F4R2_FB10Ì65536Ö0 +CAN_F4R2_FB11Ì65536Ö0 +CAN_F4R2_FB12Ì65536Ö0 +CAN_F4R2_FB13Ì65536Ö0 +CAN_F4R2_FB14Ì65536Ö0 +CAN_F4R2_FB15Ì65536Ö0 +CAN_F4R2_FB16Ì65536Ö0 +CAN_F4R2_FB17Ì65536Ö0 +CAN_F4R2_FB18Ì65536Ö0 +CAN_F4R2_FB19Ì65536Ö0 +CAN_F4R2_FB2Ì65536Ö0 +CAN_F4R2_FB20Ì65536Ö0 +CAN_F4R2_FB21Ì65536Ö0 +CAN_F4R2_FB22Ì65536Ö0 +CAN_F4R2_FB23Ì65536Ö0 +CAN_F4R2_FB24Ì65536Ö0 +CAN_F4R2_FB25Ì65536Ö0 +CAN_F4R2_FB26Ì65536Ö0 +CAN_F4R2_FB27Ì65536Ö0 +CAN_F4R2_FB28Ì65536Ö0 +CAN_F4R2_FB29Ì65536Ö0 +CAN_F4R2_FB3Ì65536Ö0 +CAN_F4R2_FB30Ì65536Ö0 +CAN_F4R2_FB31Ì65536Ö0 +CAN_F4R2_FB4Ì65536Ö0 +CAN_F4R2_FB5Ì65536Ö0 +CAN_F4R2_FB6Ì65536Ö0 +CAN_F4R2_FB7Ì65536Ö0 +CAN_F4R2_FB8Ì65536Ö0 +CAN_F4R2_FB9Ì65536Ö0 +CAN_F5R1_FB0Ì65536Ö0 +CAN_F5R1_FB1Ì65536Ö0 +CAN_F5R1_FB10Ì65536Ö0 +CAN_F5R1_FB11Ì65536Ö0 +CAN_F5R1_FB12Ì65536Ö0 +CAN_F5R1_FB13Ì65536Ö0 +CAN_F5R1_FB14Ì65536Ö0 +CAN_F5R1_FB15Ì65536Ö0 +CAN_F5R1_FB16Ì65536Ö0 +CAN_F5R1_FB17Ì65536Ö0 +CAN_F5R1_FB18Ì65536Ö0 +CAN_F5R1_FB19Ì65536Ö0 +CAN_F5R1_FB2Ì65536Ö0 +CAN_F5R1_FB20Ì65536Ö0 +CAN_F5R1_FB21Ì65536Ö0 +CAN_F5R1_FB22Ì65536Ö0 +CAN_F5R1_FB23Ì65536Ö0 +CAN_F5R1_FB24Ì65536Ö0 +CAN_F5R1_FB25Ì65536Ö0 +CAN_F5R1_FB26Ì65536Ö0 +CAN_F5R1_FB27Ì65536Ö0 +CAN_F5R1_FB28Ì65536Ö0 +CAN_F5R1_FB29Ì65536Ö0 +CAN_F5R1_FB3Ì65536Ö0 +CAN_F5R1_FB30Ì65536Ö0 +CAN_F5R1_FB31Ì65536Ö0 +CAN_F5R1_FB4Ì65536Ö0 +CAN_F5R1_FB5Ì65536Ö0 +CAN_F5R1_FB6Ì65536Ö0 +CAN_F5R1_FB7Ì65536Ö0 +CAN_F5R1_FB8Ì65536Ö0 +CAN_F5R1_FB9Ì65536Ö0 +CAN_F5R2_FB0Ì65536Ö0 +CAN_F5R2_FB1Ì65536Ö0 +CAN_F5R2_FB10Ì65536Ö0 +CAN_F5R2_FB11Ì65536Ö0 +CAN_F5R2_FB12Ì65536Ö0 +CAN_F5R2_FB13Ì65536Ö0 +CAN_F5R2_FB14Ì65536Ö0 +CAN_F5R2_FB15Ì65536Ö0 +CAN_F5R2_FB16Ì65536Ö0 +CAN_F5R2_FB17Ì65536Ö0 +CAN_F5R2_FB18Ì65536Ö0 +CAN_F5R2_FB19Ì65536Ö0 +CAN_F5R2_FB2Ì65536Ö0 +CAN_F5R2_FB20Ì65536Ö0 +CAN_F5R2_FB21Ì65536Ö0 +CAN_F5R2_FB22Ì65536Ö0 +CAN_F5R2_FB23Ì65536Ö0 +CAN_F5R2_FB24Ì65536Ö0 +CAN_F5R2_FB25Ì65536Ö0 +CAN_F5R2_FB26Ì65536Ö0 +CAN_F5R2_FB27Ì65536Ö0 +CAN_F5R2_FB28Ì65536Ö0 +CAN_F5R2_FB29Ì65536Ö0 +CAN_F5R2_FB3Ì65536Ö0 +CAN_F5R2_FB30Ì65536Ö0 +CAN_F5R2_FB31Ì65536Ö0 +CAN_F5R2_FB4Ì65536Ö0 +CAN_F5R2_FB5Ì65536Ö0 +CAN_F5R2_FB6Ì65536Ö0 +CAN_F5R2_FB7Ì65536Ö0 +CAN_F5R2_FB8Ì65536Ö0 +CAN_F5R2_FB9Ì65536Ö0 +CAN_F6R1_FB0Ì65536Ö0 +CAN_F6R1_FB1Ì65536Ö0 +CAN_F6R1_FB10Ì65536Ö0 +CAN_F6R1_FB11Ì65536Ö0 +CAN_F6R1_FB12Ì65536Ö0 +CAN_F6R1_FB13Ì65536Ö0 +CAN_F6R1_FB14Ì65536Ö0 +CAN_F6R1_FB15Ì65536Ö0 +CAN_F6R1_FB16Ì65536Ö0 +CAN_F6R1_FB17Ì65536Ö0 +CAN_F6R1_FB18Ì65536Ö0 +CAN_F6R1_FB19Ì65536Ö0 +CAN_F6R1_FB2Ì65536Ö0 +CAN_F6R1_FB20Ì65536Ö0 +CAN_F6R1_FB21Ì65536Ö0 +CAN_F6R1_FB22Ì65536Ö0 +CAN_F6R1_FB23Ì65536Ö0 +CAN_F6R1_FB24Ì65536Ö0 +CAN_F6R1_FB25Ì65536Ö0 +CAN_F6R1_FB26Ì65536Ö0 +CAN_F6R1_FB27Ì65536Ö0 +CAN_F6R1_FB28Ì65536Ö0 +CAN_F6R1_FB29Ì65536Ö0 +CAN_F6R1_FB3Ì65536Ö0 +CAN_F6R1_FB30Ì65536Ö0 +CAN_F6R1_FB31Ì65536Ö0 +CAN_F6R1_FB4Ì65536Ö0 +CAN_F6R1_FB5Ì65536Ö0 +CAN_F6R1_FB6Ì65536Ö0 +CAN_F6R1_FB7Ì65536Ö0 +CAN_F6R1_FB8Ì65536Ö0 +CAN_F6R1_FB9Ì65536Ö0 +CAN_F6R2_FB0Ì65536Ö0 +CAN_F6R2_FB1Ì65536Ö0 +CAN_F6R2_FB10Ì65536Ö0 +CAN_F6R2_FB11Ì65536Ö0 +CAN_F6R2_FB12Ì65536Ö0 +CAN_F6R2_FB13Ì65536Ö0 +CAN_F6R2_FB14Ì65536Ö0 +CAN_F6R2_FB15Ì65536Ö0 +CAN_F6R2_FB16Ì65536Ö0 +CAN_F6R2_FB17Ì65536Ö0 +CAN_F6R2_FB18Ì65536Ö0 +CAN_F6R2_FB19Ì65536Ö0 +CAN_F6R2_FB2Ì65536Ö0 +CAN_F6R2_FB20Ì65536Ö0 +CAN_F6R2_FB21Ì65536Ö0 +CAN_F6R2_FB22Ì65536Ö0 +CAN_F6R2_FB23Ì65536Ö0 +CAN_F6R2_FB24Ì65536Ö0 +CAN_F6R2_FB25Ì65536Ö0 +CAN_F6R2_FB26Ì65536Ö0 +CAN_F6R2_FB27Ì65536Ö0 +CAN_F6R2_FB28Ì65536Ö0 +CAN_F6R2_FB29Ì65536Ö0 +CAN_F6R2_FB3Ì65536Ö0 +CAN_F6R2_FB30Ì65536Ö0 +CAN_F6R2_FB31Ì65536Ö0 +CAN_F6R2_FB4Ì65536Ö0 +CAN_F6R2_FB5Ì65536Ö0 +CAN_F6R2_FB6Ì65536Ö0 +CAN_F6R2_FB7Ì65536Ö0 +CAN_F6R2_FB8Ì65536Ö0 +CAN_F6R2_FB9Ì65536Ö0 +CAN_F7R1_FB0Ì65536Ö0 +CAN_F7R1_FB1Ì65536Ö0 +CAN_F7R1_FB10Ì65536Ö0 +CAN_F7R1_FB11Ì65536Ö0 +CAN_F7R1_FB12Ì65536Ö0 +CAN_F7R1_FB13Ì65536Ö0 +CAN_F7R1_FB14Ì65536Ö0 +CAN_F7R1_FB15Ì65536Ö0 +CAN_F7R1_FB16Ì65536Ö0 +CAN_F7R1_FB17Ì65536Ö0 +CAN_F7R1_FB18Ì65536Ö0 +CAN_F7R1_FB19Ì65536Ö0 +CAN_F7R1_FB2Ì65536Ö0 +CAN_F7R1_FB20Ì65536Ö0 +CAN_F7R1_FB21Ì65536Ö0 +CAN_F7R1_FB22Ì65536Ö0 +CAN_F7R1_FB23Ì65536Ö0 +CAN_F7R1_FB24Ì65536Ö0 +CAN_F7R1_FB25Ì65536Ö0 +CAN_F7R1_FB26Ì65536Ö0 +CAN_F7R1_FB27Ì65536Ö0 +CAN_F7R1_FB28Ì65536Ö0 +CAN_F7R1_FB29Ì65536Ö0 +CAN_F7R1_FB3Ì65536Ö0 +CAN_F7R1_FB30Ì65536Ö0 +CAN_F7R1_FB31Ì65536Ö0 +CAN_F7R1_FB4Ì65536Ö0 +CAN_F7R1_FB5Ì65536Ö0 +CAN_F7R1_FB6Ì65536Ö0 +CAN_F7R1_FB7Ì65536Ö0 +CAN_F7R1_FB8Ì65536Ö0 +CAN_F7R1_FB9Ì65536Ö0 +CAN_F7R2_FB0Ì65536Ö0 +CAN_F7R2_FB1Ì65536Ö0 +CAN_F7R2_FB10Ì65536Ö0 +CAN_F7R2_FB11Ì65536Ö0 +CAN_F7R2_FB12Ì65536Ö0 +CAN_F7R2_FB13Ì65536Ö0 +CAN_F7R2_FB14Ì65536Ö0 +CAN_F7R2_FB15Ì65536Ö0 +CAN_F7R2_FB16Ì65536Ö0 +CAN_F7R2_FB17Ì65536Ö0 +CAN_F7R2_FB18Ì65536Ö0 +CAN_F7R2_FB19Ì65536Ö0 +CAN_F7R2_FB2Ì65536Ö0 +CAN_F7R2_FB20Ì65536Ö0 +CAN_F7R2_FB21Ì65536Ö0 +CAN_F7R2_FB22Ì65536Ö0 +CAN_F7R2_FB23Ì65536Ö0 +CAN_F7R2_FB24Ì65536Ö0 +CAN_F7R2_FB25Ì65536Ö0 +CAN_F7R2_FB26Ì65536Ö0 +CAN_F7R2_FB27Ì65536Ö0 +CAN_F7R2_FB28Ì65536Ö0 +CAN_F7R2_FB29Ì65536Ö0 +CAN_F7R2_FB3Ì65536Ö0 +CAN_F7R2_FB30Ì65536Ö0 +CAN_F7R2_FB31Ì65536Ö0 +CAN_F7R2_FB4Ì65536Ö0 +CAN_F7R2_FB5Ì65536Ö0 +CAN_F7R2_FB6Ì65536Ö0 +CAN_F7R2_FB7Ì65536Ö0 +CAN_F7R2_FB8Ì65536Ö0 +CAN_F7R2_FB9Ì65536Ö0 +CAN_F8R1_FB0Ì65536Ö0 +CAN_F8R1_FB1Ì65536Ö0 +CAN_F8R1_FB10Ì65536Ö0 +CAN_F8R1_FB11Ì65536Ö0 +CAN_F8R1_FB12Ì65536Ö0 +CAN_F8R1_FB13Ì65536Ö0 +CAN_F8R1_FB14Ì65536Ö0 +CAN_F8R1_FB15Ì65536Ö0 +CAN_F8R1_FB16Ì65536Ö0 +CAN_F8R1_FB17Ì65536Ö0 +CAN_F8R1_FB18Ì65536Ö0 +CAN_F8R1_FB19Ì65536Ö0 +CAN_F8R1_FB2Ì65536Ö0 +CAN_F8R1_FB20Ì65536Ö0 +CAN_F8R1_FB21Ì65536Ö0 +CAN_F8R1_FB22Ì65536Ö0 +CAN_F8R1_FB23Ì65536Ö0 +CAN_F8R1_FB24Ì65536Ö0 +CAN_F8R1_FB25Ì65536Ö0 +CAN_F8R1_FB26Ì65536Ö0 +CAN_F8R1_FB27Ì65536Ö0 +CAN_F8R1_FB28Ì65536Ö0 +CAN_F8R1_FB29Ì65536Ö0 +CAN_F8R1_FB3Ì65536Ö0 +CAN_F8R1_FB30Ì65536Ö0 +CAN_F8R1_FB31Ì65536Ö0 +CAN_F8R1_FB4Ì65536Ö0 +CAN_F8R1_FB5Ì65536Ö0 +CAN_F8R1_FB6Ì65536Ö0 +CAN_F8R1_FB7Ì65536Ö0 +CAN_F8R1_FB8Ì65536Ö0 +CAN_F8R1_FB9Ì65536Ö0 +CAN_F8R2_FB0Ì65536Ö0 +CAN_F8R2_FB1Ì65536Ö0 +CAN_F8R2_FB10Ì65536Ö0 +CAN_F8R2_FB11Ì65536Ö0 +CAN_F8R2_FB12Ì65536Ö0 +CAN_F8R2_FB13Ì65536Ö0 +CAN_F8R2_FB14Ì65536Ö0 +CAN_F8R2_FB15Ì65536Ö0 +CAN_F8R2_FB16Ì65536Ö0 +CAN_F8R2_FB17Ì65536Ö0 +CAN_F8R2_FB18Ì65536Ö0 +CAN_F8R2_FB19Ì65536Ö0 +CAN_F8R2_FB2Ì65536Ö0 +CAN_F8R2_FB20Ì65536Ö0 +CAN_F8R2_FB21Ì65536Ö0 +CAN_F8R2_FB22Ì65536Ö0 +CAN_F8R2_FB23Ì65536Ö0 +CAN_F8R2_FB24Ì65536Ö0 +CAN_F8R2_FB25Ì65536Ö0 +CAN_F8R2_FB26Ì65536Ö0 +CAN_F8R2_FB27Ì65536Ö0 +CAN_F8R2_FB28Ì65536Ö0 +CAN_F8R2_FB29Ì65536Ö0 +CAN_F8R2_FB3Ì65536Ö0 +CAN_F8R2_FB30Ì65536Ö0 +CAN_F8R2_FB31Ì65536Ö0 +CAN_F8R2_FB4Ì65536Ö0 +CAN_F8R2_FB5Ì65536Ö0 +CAN_F8R2_FB6Ì65536Ö0 +CAN_F8R2_FB7Ì65536Ö0 +CAN_F8R2_FB8Ì65536Ö0 +CAN_F8R2_FB9Ì65536Ö0 +CAN_F9R1_FB0Ì65536Ö0 +CAN_F9R1_FB1Ì65536Ö0 +CAN_F9R1_FB10Ì65536Ö0 +CAN_F9R1_FB11Ì65536Ö0 +CAN_F9R1_FB12Ì65536Ö0 +CAN_F9R1_FB13Ì65536Ö0 +CAN_F9R1_FB14Ì65536Ö0 +CAN_F9R1_FB15Ì65536Ö0 +CAN_F9R1_FB16Ì65536Ö0 +CAN_F9R1_FB17Ì65536Ö0 +CAN_F9R1_FB18Ì65536Ö0 +CAN_F9R1_FB19Ì65536Ö0 +CAN_F9R1_FB2Ì65536Ö0 +CAN_F9R1_FB20Ì65536Ö0 +CAN_F9R1_FB21Ì65536Ö0 +CAN_F9R1_FB22Ì65536Ö0 +CAN_F9R1_FB23Ì65536Ö0 +CAN_F9R1_FB24Ì65536Ö0 +CAN_F9R1_FB25Ì65536Ö0 +CAN_F9R1_FB26Ì65536Ö0 +CAN_F9R1_FB27Ì65536Ö0 +CAN_F9R1_FB28Ì65536Ö0 +CAN_F9R1_FB29Ì65536Ö0 +CAN_F9R1_FB3Ì65536Ö0 +CAN_F9R1_FB30Ì65536Ö0 +CAN_F9R1_FB31Ì65536Ö0 +CAN_F9R1_FB4Ì65536Ö0 +CAN_F9R1_FB5Ì65536Ö0 +CAN_F9R1_FB6Ì65536Ö0 +CAN_F9R1_FB7Ì65536Ö0 +CAN_F9R1_FB8Ì65536Ö0 +CAN_F9R1_FB9Ì65536Ö0 +CAN_F9R2_FB0Ì65536Ö0 +CAN_F9R2_FB1Ì65536Ö0 +CAN_F9R2_FB10Ì65536Ö0 +CAN_F9R2_FB11Ì65536Ö0 +CAN_F9R2_FB12Ì65536Ö0 +CAN_F9R2_FB13Ì65536Ö0 +CAN_F9R2_FB14Ì65536Ö0 +CAN_F9R2_FB15Ì65536Ö0 +CAN_F9R2_FB16Ì65536Ö0 +CAN_F9R2_FB17Ì65536Ö0 +CAN_F9R2_FB18Ì65536Ö0 +CAN_F9R2_FB19Ì65536Ö0 +CAN_F9R2_FB2Ì65536Ö0 +CAN_F9R2_FB20Ì65536Ö0 +CAN_F9R2_FB21Ì65536Ö0 +CAN_F9R2_FB22Ì65536Ö0 +CAN_F9R2_FB23Ì65536Ö0 +CAN_F9R2_FB24Ì65536Ö0 +CAN_F9R2_FB25Ì65536Ö0 +CAN_F9R2_FB26Ì65536Ö0 +CAN_F9R2_FB27Ì65536Ö0 +CAN_F9R2_FB28Ì65536Ö0 +CAN_F9R2_FB29Ì65536Ö0 +CAN_F9R2_FB3Ì65536Ö0 +CAN_F9R2_FB30Ì65536Ö0 +CAN_F9R2_FB31Ì65536Ö0 +CAN_F9R2_FB4Ì65536Ö0 +CAN_F9R2_FB5Ì65536Ö0 +CAN_F9R2_FB6Ì65536Ö0 +CAN_F9R2_FB7Ì65536Ö0 +CAN_F9R2_FB8Ì65536Ö0 +CAN_F9R2_FB9Ì65536Ö0 +CAN_FA1R_FACTÌ65536Ö0 +CAN_FA1R_FACT0Ì65536Ö0 +CAN_FA1R_FACT1Ì65536Ö0 +CAN_FA1R_FACT10Ì65536Ö0 +CAN_FA1R_FACT11Ì65536Ö0 +CAN_FA1R_FACT12Ì65536Ö0 +CAN_FA1R_FACT13Ì65536Ö0 +CAN_FA1R_FACT2Ì65536Ö0 +CAN_FA1R_FACT3Ì65536Ö0 +CAN_FA1R_FACT4Ì65536Ö0 +CAN_FA1R_FACT5Ì65536Ö0 +CAN_FA1R_FACT6Ì65536Ö0 +CAN_FA1R_FACT7Ì65536Ö0 +CAN_FA1R_FACT8Ì65536Ö0 +CAN_FA1R_FACT9Ì65536Ö0 +CAN_FFA1R_FFAÌ65536Ö0 +CAN_FFA1R_FFA0Ì65536Ö0 +CAN_FFA1R_FFA1Ì65536Ö0 +CAN_FFA1R_FFA10Ì65536Ö0 +CAN_FFA1R_FFA11Ì65536Ö0 +CAN_FFA1R_FFA12Ì65536Ö0 +CAN_FFA1R_FFA13Ì65536Ö0 +CAN_FFA1R_FFA2Ì65536Ö0 +CAN_FFA1R_FFA3Ì65536Ö0 +CAN_FFA1R_FFA4Ì65536Ö0 +CAN_FFA1R_FFA5Ì65536Ö0 +CAN_FFA1R_FFA6Ì65536Ö0 +CAN_FFA1R_FFA7Ì65536Ö0 +CAN_FFA1R_FFA8Ì65536Ö0 +CAN_FFA1R_FFA9Ì65536Ö0 +CAN_FM1R_FBMÌ65536Ö0 +CAN_FM1R_FBM0Ì65536Ö0 +CAN_FM1R_FBM1Ì65536Ö0 +CAN_FM1R_FBM10Ì65536Ö0 +CAN_FM1R_FBM11Ì65536Ö0 +CAN_FM1R_FBM12Ì65536Ö0 +CAN_FM1R_FBM13Ì65536Ö0 +CAN_FM1R_FBM2Ì65536Ö0 +CAN_FM1R_FBM3Ì65536Ö0 +CAN_FM1R_FBM4Ì65536Ö0 +CAN_FM1R_FBM5Ì65536Ö0 +CAN_FM1R_FBM6Ì65536Ö0 +CAN_FM1R_FBM7Ì65536Ö0 +CAN_FM1R_FBM8Ì65536Ö0 +CAN_FM1R_FBM9Ì65536Ö0 +CAN_FMR_FINITÌ65536Ö0 +CAN_FS1R_FSCÌ65536Ö0 +CAN_FS1R_FSC0Ì65536Ö0 +CAN_FS1R_FSC1Ì65536Ö0 +CAN_FS1R_FSC10Ì65536Ö0 +CAN_FS1R_FSC11Ì65536Ö0 +CAN_FS1R_FSC12Ì65536Ö0 +CAN_FS1R_FSC13Ì65536Ö0 +CAN_FS1R_FSC2Ì65536Ö0 +CAN_FS1R_FSC3Ì65536Ö0 +CAN_FS1R_FSC4Ì65536Ö0 +CAN_FS1R_FSC5Ì65536Ö0 +CAN_FS1R_FSC6Ì65536Ö0 +CAN_FS1R_FSC7Ì65536Ö0 +CAN_FS1R_FSC8Ì65536Ö0 +CAN_FS1R_FSC9Ì65536Ö0 +CAN_IER_BOFIEÌ65536Ö0 +CAN_IER_EPVIEÌ65536Ö0 +CAN_IER_ERRIEÌ65536Ö0 +CAN_IER_EWGIEÌ65536Ö0 +CAN_IER_FFIE0Ì65536Ö0 +CAN_IER_FFIE1Ì65536Ö0 +CAN_IER_FMPIE0Ì65536Ö0 +CAN_IER_FMPIE1Ì65536Ö0 +CAN_IER_FOVIE0Ì65536Ö0 +CAN_IER_FOVIE1Ì65536Ö0 +CAN_IER_LECIEÌ65536Ö0 +CAN_IER_SLKIEÌ65536Ö0 +CAN_IER_TMEIEÌ65536Ö0 +CAN_IER_WKUIEÌ65536Ö0 +CAN_MCR_ABOMÌ65536Ö0 +CAN_MCR_AWUMÌ65536Ö0 +CAN_MCR_INRQÌ65536Ö0 +CAN_MCR_NARTÌ65536Ö0 +CAN_MCR_RESETÌ65536Ö0 +CAN_MCR_RFLMÌ65536Ö0 +CAN_MCR_SLEEPÌ65536Ö0 +CAN_MCR_TTCMÌ65536Ö0 +CAN_MCR_TXFPÌ65536Ö0 +CAN_MSR_ERRIÌ65536Ö0 +CAN_MSR_INAKÌ65536Ö0 +CAN_MSR_RXÌ65536Ö0 +CAN_MSR_RXMÌ65536Ö0 +CAN_MSR_SAMPÌ65536Ö0 +CAN_MSR_SLAKÌ65536Ö0 +CAN_MSR_SLAKIÌ65536Ö0 +CAN_MSR_TXMÌ65536Ö0 +CAN_MSR_WKUIÌ65536Ö0 +CAN_RDH0R_DATA4Ì65536Ö0 +CAN_RDH0R_DATA5Ì65536Ö0 +CAN_RDH0R_DATA6Ì65536Ö0 +CAN_RDH0R_DATA7Ì65536Ö0 +CAN_RDH1R_DATA4Ì65536Ö0 +CAN_RDH1R_DATA5Ì65536Ö0 +CAN_RDH1R_DATA6Ì65536Ö0 +CAN_RDH1R_DATA7Ì65536Ö0 +CAN_RDL0R_DATA0Ì65536Ö0 +CAN_RDL0R_DATA1Ì65536Ö0 +CAN_RDL0R_DATA2Ì65536Ö0 +CAN_RDL0R_DATA3Ì65536Ö0 +CAN_RDL1R_DATA0Ì65536Ö0 +CAN_RDL1R_DATA1Ì65536Ö0 +CAN_RDL1R_DATA2Ì65536Ö0 +CAN_RDL1R_DATA3Ì65536Ö0 +CAN_RDT0R_DLCÌ65536Ö0 +CAN_RDT0R_FMIÌ65536Ö0 +CAN_RDT0R_TIMEÌ65536Ö0 +CAN_RDT1R_DLCÌ65536Ö0 +CAN_RDT1R_FMIÌ65536Ö0 +CAN_RDT1R_TIMEÌ65536Ö0 +CAN_RF0R_FMP0Ì65536Ö0 +CAN_RF0R_FOVR0Ì65536Ö0 +CAN_RF0R_FULL0Ì65536Ö0 +CAN_RF0R_RFOM0Ì65536Ö0 +CAN_RF1R_FMP1Ì65536Ö0 +CAN_RF1R_FOVR1Ì65536Ö0 +CAN_RF1R_FULL1Ì65536Ö0 +CAN_RF1R_RFOM1Ì65536Ö0 +CAN_RI0R_EXIDÌ65536Ö0 +CAN_RI0R_IDEÌ65536Ö0 +CAN_RI0R_RTRÌ65536Ö0 +CAN_RI0R_STIDÌ65536Ö0 +CAN_RI1R_EXIDÌ65536Ö0 +CAN_RI1R_IDEÌ65536Ö0 +CAN_RI1R_RTRÌ65536Ö0 +CAN_RI1R_STIDÌ65536Ö0 +CAN_TDH0R_DATA4Ì65536Ö0 +CAN_TDH0R_DATA5Ì65536Ö0 +CAN_TDH0R_DATA6Ì65536Ö0 +CAN_TDH0R_DATA7Ì65536Ö0 +CAN_TDH1R_DATA4Ì65536Ö0 +CAN_TDH1R_DATA5Ì65536Ö0 +CAN_TDH1R_DATA6Ì65536Ö0 +CAN_TDH1R_DATA7Ì65536Ö0 +CAN_TDH2R_DATA4Ì65536Ö0 +CAN_TDH2R_DATA5Ì65536Ö0 +CAN_TDH2R_DATA6Ì65536Ö0 +CAN_TDH2R_DATA7Ì65536Ö0 +CAN_TDL0R_DATA0Ì65536Ö0 +CAN_TDL0R_DATA1Ì65536Ö0 +CAN_TDL0R_DATA2Ì65536Ö0 +CAN_TDL0R_DATA3Ì65536Ö0 +CAN_TDL1R_DATA0Ì65536Ö0 +CAN_TDL1R_DATA1Ì65536Ö0 +CAN_TDL1R_DATA2Ì65536Ö0 +CAN_TDL1R_DATA3Ì65536Ö0 +CAN_TDL2R_DATA0Ì65536Ö0 +CAN_TDL2R_DATA1Ì65536Ö0 +CAN_TDL2R_DATA2Ì65536Ö0 +CAN_TDL2R_DATA3Ì65536Ö0 +CAN_TDT0R_DLCÌ65536Ö0 +CAN_TDT0R_TGTÌ65536Ö0 +CAN_TDT0R_TIMEÌ65536Ö0 +CAN_TDT1R_DLCÌ65536Ö0 +CAN_TDT1R_TGTÌ65536Ö0 +CAN_TDT1R_TIMEÌ65536Ö0 +CAN_TDT2R_DLCÌ65536Ö0 +CAN_TDT2R_TGTÌ65536Ö0 +CAN_TDT2R_TIMEÌ65536Ö0 +CAN_TI0R_EXIDÌ65536Ö0 +CAN_TI0R_IDEÌ65536Ö0 +CAN_TI0R_RTRÌ65536Ö0 +CAN_TI0R_STIDÌ65536Ö0 +CAN_TI0R_TXRQÌ65536Ö0 +CAN_TI1R_EXIDÌ65536Ö0 +CAN_TI1R_IDEÌ65536Ö0 +CAN_TI1R_RTRÌ65536Ö0 +CAN_TI1R_STIDÌ65536Ö0 +CAN_TI1R_TXRQÌ65536Ö0 +CAN_TI2R_EXIDÌ65536Ö0 +CAN_TI2R_IDEÌ65536Ö0 +CAN_TI2R_RTRÌ65536Ö0 +CAN_TI2R_STIDÌ65536Ö0 +CAN_TI2R_TXRQÌ65536Ö0 +CAN_TSR_ABRQ0Ì65536Ö0 +CAN_TSR_ABRQ1Ì65536Ö0 +CAN_TSR_ABRQ2Ì65536Ö0 +CAN_TSR_ALST0Ì65536Ö0 +CAN_TSR_ALST1Ì65536Ö0 +CAN_TSR_ALST2Ì65536Ö0 +CAN_TSR_CODEÌ65536Ö0 +CAN_TSR_LOWÌ65536Ö0 +CAN_TSR_LOW0Ì65536Ö0 +CAN_TSR_LOW1Ì65536Ö0 +CAN_TSR_LOW2Ì65536Ö0 +CAN_TSR_RQCP0Ì65536Ö0 +CAN_TSR_RQCP1Ì65536Ö0 +CAN_TSR_RQCP2Ì65536Ö0 +CAN_TSR_TERR0Ì65536Ö0 +CAN_TSR_TERR1Ì65536Ö0 +CAN_TSR_TERR2Ì65536Ö0 +CAN_TSR_TMEÌ65536Ö0 +CAN_TSR_TME0Ì65536Ö0 +CAN_TSR_TME1Ì65536Ö0 +CAN_TSR_TME2Ì65536Ö0 +CAN_TSR_TXOK0Ì65536Ö0 +CAN_TSR_TXOK1Ì65536Ö0 +CAN_TSR_TXOK2Ì65536Ö0 +CECÌ65536Ö0 +CEC_BASEÌ65536Ö0 +CEC_CFGR_BRDNOGENÌ65536Ö0 +CEC_CFGR_BREGENÌ65536Ö0 +CEC_CFGR_BRESTPÌ65536Ö0 +CEC_CFGR_LBPEGENÌ65536Ö0 +CEC_CFGR_LSTNÌ65536Ö0 +CEC_CFGR_OARÌ65536Ö0 +CEC_CFGR_RXTOLÌ65536Ö0 +CEC_CFGR_SFTÌ65536Ö0 +CEC_CFGR_SFTOPTÌ65536Ö0 +CEC_CR_CECENÌ65536Ö0 +CEC_CR_TXEOMÌ65536Ö0 +CEC_CR_TXSOMÌ65536Ö0 +CEC_IER_ARBLSTIEÌ65536Ö0 +CEC_IER_BREIEÌ65536Ö0 +CEC_IER_LBPEIEÌ65536Ö0 +CEC_IER_RXACKEIEÌ65536Ö0 +CEC_IER_RXBRIEÌ65536Ö0 +CEC_IER_RXENDIEÌ65536Ö0 +CEC_IER_RXOVRIEÌ65536Ö0 +CEC_IER_SBPEIEÌ65536Ö0 +CEC_IER_TXACKEIEÌ65536Ö0 +CEC_IER_TXBRIEÌ65536Ö0 +CEC_IER_TXENDIEÌ65536Ö0 +CEC_IER_TXERRIEÌ65536Ö0 +CEC_IER_TXUDRIEÌ65536Ö0 +CEC_ISR_ARBLSTÌ65536Ö0 +CEC_ISR_BREÌ65536Ö0 +CEC_ISR_LBPEÌ65536Ö0 +CEC_ISR_RXACKEÌ65536Ö0 +CEC_ISR_RXBRÌ65536Ö0 +CEC_ISR_RXENDÌ65536Ö0 +CEC_ISR_RXOVRÌ65536Ö0 +CEC_ISR_SBPEÌ65536Ö0 +CEC_ISR_TXACKEÌ65536Ö0 +CEC_ISR_TXBRÌ65536Ö0 +CEC_ISR_TXENDÌ65536Ö0 +CEC_ISR_TXERRÌ65536Ö0 +CEC_ISR_TXUDRÌ65536Ö0 +CEC_TXDR_RXDÌ65536Ö0 +CEC_TXDR_TXDÌ65536Ö0 +CHKÌ131072Í(x,msg)Ö0 +CLEAR_BITÌ131072Í(REG,BIT)Ö0 +CLEAR_REGÌ131072Í(REG)Ö0 +CONCATÌ131072Í(a,b)Ö0 +CONV_TIMEÌ65536Ö0 +CRCÌ65536Ö0 +CRC_BASEÌ65536Ö0 +CRC_CR_RESETÌ65536Ö0 +CRC_CR_REV_INÌ65536Ö0 +CRC_CR_REV_IN_0Ì65536Ö0 +CRC_CR_REV_IN_1Ì65536Ö0 +CRC_CR_REV_OUTÌ65536Ö0 +CRC_DR_DRÌ65536Ö0 +CRC_IDR_IDRÌ65536Ö0 +CRC_INIT_INITÌ65536Ö0 +CRSÌ65536Ö0 +CRS_BASEÌ65536Ö0 +CRS_CFGR_FELIMÌ65536Ö0 +CRS_CFGR_RELOADÌ65536Ö0 +CRS_CFGR_SYNCDIVÌ65536Ö0 +CRS_CFGR_SYNCDIV_0Ì65536Ö0 +CRS_CFGR_SYNCDIV_1Ì65536Ö0 +CRS_CFGR_SYNCDIV_2Ì65536Ö0 +CRS_CFGR_SYNCPOLÌ65536Ö0 +CRS_CFGR_SYNCSRCÌ65536Ö0 +CRS_CFGR_SYNCSRC_0Ì65536Ö0 +CRS_CFGR_SYNCSRC_1Ì65536Ö0 +CRS_CR_AUTOTRIMENÌ65536Ö0 +CRS_CR_CENÌ65536Ö0 +CRS_CR_ERRIEÌ65536Ö0 +CRS_CR_ESYNCIEÌ65536Ö0 +CRS_CR_SWSYNCÌ65536Ö0 +CRS_CR_SYNCOKIEÌ65536Ö0 +CRS_CR_SYNCWARNIEÌ65536Ö0 +CRS_CR_TRIMÌ65536Ö0 +CRS_ICR_ERRCÌ65536Ö0 +CRS_ICR_ESYNCCÌ65536Ö0 +CRS_ICR_SYNCOKCÌ65536Ö0 +CRS_ICR_SYNCWARNCÌ65536Ö0 +CRS_ISR_ERRFÌ65536Ö0 +CRS_ISR_ESYNCFÌ65536Ö0 +CRS_ISR_FECAPÌ65536Ö0 +CRS_ISR_FEDIRÌ65536Ö0 +CRS_ISR_SYNCERRÌ65536Ö0 +CRS_ISR_SYNCMISSÌ65536Ö0 +CRS_ISR_SYNCOKFÌ65536Ö0 +CRS_ISR_SYNCWARNFÌ65536Ö0 +CRS_ISR_TRIMOVFÌ65536Ö0 +CS_HIÌ131072Í()Ö0 +CS_LOÌ131072Í()Ö0 +CS_PINÌ65536Ö0 +CS_PORTÌ65536Ö0 +DBGMCUÌ65536Ö0 +DBGMCU_APB1_FZ_DBG_CAN_STOPÌ65536Ö0 +DBGMCU_APB1_FZ_DBG_I2C1_SMBUS_TIMEOUTÌ65536Ö0 +DBGMCU_APB1_FZ_DBG_IWDG_STOPÌ65536Ö0 +DBGMCU_APB1_FZ_DBG_RTC_STOPÌ65536Ö0 +DBGMCU_APB1_FZ_DBG_TIM14_STOPÌ65536Ö0 +DBGMCU_APB1_FZ_DBG_TIM2_STOPÌ65536Ö0 +DBGMCU_APB1_FZ_DBG_TIM3_STOPÌ65536Ö0 +DBGMCU_APB1_FZ_DBG_WWDG_STOPÌ65536Ö0 +DBGMCU_APB2_FZ_DBG_TIM16_STOPÌ65536Ö0 +DBGMCU_APB2_FZ_DBG_TIM17_STOPÌ65536Ö0 +DBGMCU_APB2_FZ_DBG_TIM1_STOPÌ65536Ö0 +DBGMCU_BASEÌ65536Ö0 +DBGMCU_CR_DBG_STANDBYÌ65536Ö0 +DBGMCU_CR_DBG_STOPÌ65536Ö0 +DBGMCU_IDCODE_DEV_IDÌ65536Ö0 +DBGMCU_IDCODE_REV_IDÌ65536Ö0 +DBGMCU_IDCODE_REV_ID_0Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_1Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_10Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_11Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_12Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_13Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_14Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_15Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_2Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_3Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_4Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_5Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_6Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_7Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_8Ì65536Ö0 +DBGMCU_IDCODE_REV_ID_9Ì65536Ö0 +DC_HIÌ131072Í()Ö0 +DC_LOÌ131072Í()Ö0 +DC_PINÌ65536Ö0 +DC_PORTÌ65536Ö0 +DMA1Ì65536Ö0 +DMA1_BASEÌ65536Ö0 +DMA1_Channel1Ì65536Ö0 +DMA1_Channel1_BASEÌ65536Ö0 +DMA1_Channel2Ì65536Ö0 +DMA1_Channel2_BASEÌ65536Ö0 +DMA1_Channel3Ì65536Ö0 +DMA1_Channel3_BASEÌ65536Ö0 +DMA1_Channel4Ì65536Ö0 +DMA1_Channel4_5_6_7_IRQHandlerÌ65536Ö0 +DMA1_Channel4_5_6_7_IRQnÌ65536Ö0 +DMA1_Channel4_BASEÌ65536Ö0 +DMA1_Channel5Ì65536Ö0 +DMA1_Channel5_BASEÌ65536Ö0 +DMA1_Channel6Ì65536Ö0 +DMA1_Channel6_BASEÌ65536Ö0 +DMA1_Channel7Ì65536Ö0 +DMA1_Channel7_BASEÌ65536Ö0 +DMA_CCR_CIRCÌ65536Ö0 +DMA_CCR_DIRÌ65536Ö0 +DMA_CCR_ENÌ65536Ö0 +DMA_CCR_HTIEÌ65536Ö0 +DMA_CCR_MEM2MEMÌ65536Ö0 +DMA_CCR_MINCÌ65536Ö0 +DMA_CCR_MSIZEÌ65536Ö0 +DMA_CCR_MSIZE_0Ì65536Ö0 +DMA_CCR_MSIZE_1Ì65536Ö0 +DMA_CCR_PINCÌ65536Ö0 +DMA_CCR_PLÌ65536Ö0 +DMA_CCR_PL_0Ì65536Ö0 +DMA_CCR_PL_1Ì65536Ö0 +DMA_CCR_PSIZEÌ65536Ö0 +DMA_CCR_PSIZE_0Ì65536Ö0 +DMA_CCR_PSIZE_1Ì65536Ö0 +DMA_CCR_TCIEÌ65536Ö0 +DMA_CCR_TEIEÌ65536Ö0 +DMA_CMAR_MAÌ65536Ö0 +DMA_CNDTR_NDTÌ65536Ö0 +DMA_CPAR_PAÌ65536Ö0 +DMA_IFCR_CGIF1Ì65536Ö0 +DMA_IFCR_CGIF2Ì65536Ö0 +DMA_IFCR_CGIF3Ì65536Ö0 +DMA_IFCR_CGIF4Ì65536Ö0 +DMA_IFCR_CGIF5Ì65536Ö0 +DMA_IFCR_CGIF6Ì65536Ö0 +DMA_IFCR_CGIF7Ì65536Ö0 +DMA_IFCR_CHTIF1Ì65536Ö0 +DMA_IFCR_CHTIF2Ì65536Ö0 +DMA_IFCR_CHTIF3Ì65536Ö0 +DMA_IFCR_CHTIF4Ì65536Ö0 +DMA_IFCR_CHTIF5Ì65536Ö0 +DMA_IFCR_CHTIF6Ì65536Ö0 +DMA_IFCR_CHTIF7Ì65536Ö0 +DMA_IFCR_CTCIF1Ì65536Ö0 +DMA_IFCR_CTCIF2Ì65536Ö0 +DMA_IFCR_CTCIF3Ì65536Ö0 +DMA_IFCR_CTCIF4Ì65536Ö0 +DMA_IFCR_CTCIF5Ì65536Ö0 +DMA_IFCR_CTCIF6Ì65536Ö0 +DMA_IFCR_CTCIF7Ì65536Ö0 +DMA_IFCR_CTEIF1Ì65536Ö0 +DMA_IFCR_CTEIF2Ì65536Ö0 +DMA_IFCR_CTEIF3Ì65536Ö0 +DMA_IFCR_CTEIF4Ì65536Ö0 +DMA_IFCR_CTEIF5Ì65536Ö0 +DMA_IFCR_CTEIF6Ì65536Ö0 +DMA_IFCR_CTEIF7Ì65536Ö0 +DMA_ISR_GIF1Ì65536Ö0 +DMA_ISR_GIF2Ì65536Ö0 +DMA_ISR_GIF3Ì65536Ö0 +DMA_ISR_GIF4Ì65536Ö0 +DMA_ISR_GIF5Ì65536Ö0 +DMA_ISR_GIF6Ì65536Ö0 +DMA_ISR_GIF7Ì65536Ö0 +DMA_ISR_HTIF1Ì65536Ö0 +DMA_ISR_HTIF2Ì65536Ö0 +DMA_ISR_HTIF3Ì65536Ö0 +DMA_ISR_HTIF4Ì65536Ö0 +DMA_ISR_HTIF5Ì65536Ö0 +DMA_ISR_HTIF6Ì65536Ö0 +DMA_ISR_HTIF7Ì65536Ö0 +DMA_ISR_TCIF1Ì65536Ö0 +DMA_ISR_TCIF2Ì65536Ö0 +DMA_ISR_TCIF3Ì65536Ö0 +DMA_ISR_TCIF4Ì65536Ö0 +DMA_ISR_TCIF5Ì65536Ö0 +DMA_ISR_TCIF6Ì65536Ö0 +DMA_ISR_TCIF7Ì65536Ö0 +DMA_ISR_TEIF1Ì65536Ö0 +DMA_ISR_TEIF2Ì65536Ö0 +DMA_ISR_TEIF3Ì65536Ö0 +DMA_ISR_TEIF4Ì65536Ö0 +DMA_ISR_TEIF5Ì65536Ö0 +DMA_ISR_TEIF6Ì65536Ö0 +DMA_ISR_TEIF7Ì65536Ö0 +EBUGÌ65536Ö0 +EXTIÌ65536Ö0 +EXTI_BASEÌ65536Ö0 +EXTI_EMR_MR0Ì65536Ö0 +EXTI_EMR_MR1Ì65536Ö0 +EXTI_EMR_MR10Ì65536Ö0 +EXTI_EMR_MR11Ì65536Ö0 +EXTI_EMR_MR12Ì65536Ö0 +EXTI_EMR_MR13Ì65536Ö0 +EXTI_EMR_MR14Ì65536Ö0 +EXTI_EMR_MR15Ì65536Ö0 +EXTI_EMR_MR16Ì65536Ö0 +EXTI_EMR_MR17Ì65536Ö0 +EXTI_EMR_MR19Ì65536Ö0 +EXTI_EMR_MR2Ì65536Ö0 +EXTI_EMR_MR21Ì65536Ö0 +EXTI_EMR_MR22Ì65536Ö0 +EXTI_EMR_MR23Ì65536Ö0 +EXTI_EMR_MR25Ì65536Ö0 +EXTI_EMR_MR27Ì65536Ö0 +EXTI_EMR_MR3Ì65536Ö0 +EXTI_EMR_MR4Ì65536Ö0 +EXTI_EMR_MR5Ì65536Ö0 +EXTI_EMR_MR6Ì65536Ö0 +EXTI_EMR_MR7Ì65536Ö0 +EXTI_EMR_MR8Ì65536Ö0 +EXTI_EMR_MR9Ì65536Ö0 +EXTI_FTSR_TR0Ì65536Ö0 +EXTI_FTSR_TR1Ì65536Ö0 +EXTI_FTSR_TR10Ì65536Ö0 +EXTI_FTSR_TR11Ì65536Ö0 +EXTI_FTSR_TR12Ì65536Ö0 +EXTI_FTSR_TR13Ì65536Ö0 +EXTI_FTSR_TR14Ì65536Ö0 +EXTI_FTSR_TR15Ì65536Ö0 +EXTI_FTSR_TR16Ì65536Ö0 +EXTI_FTSR_TR17Ì65536Ö0 +EXTI_FTSR_TR19Ì65536Ö0 +EXTI_FTSR_TR2Ì65536Ö0 +EXTI_FTSR_TR3Ì65536Ö0 +EXTI_FTSR_TR4Ì65536Ö0 +EXTI_FTSR_TR5Ì65536Ö0 +EXTI_FTSR_TR6Ì65536Ö0 +EXTI_FTSR_TR7Ì65536Ö0 +EXTI_FTSR_TR8Ì65536Ö0 +EXTI_FTSR_TR9Ì65536Ö0 +EXTI_IMR_MR0Ì65536Ö0 +EXTI_IMR_MR1Ì65536Ö0 +EXTI_IMR_MR10Ì65536Ö0 +EXTI_IMR_MR11Ì65536Ö0 +EXTI_IMR_MR12Ì65536Ö0 +EXTI_IMR_MR13Ì65536Ö0 +EXTI_IMR_MR14Ì65536Ö0 +EXTI_IMR_MR15Ì65536Ö0 +EXTI_IMR_MR16Ì65536Ö0 +EXTI_IMR_MR17Ì65536Ö0 +EXTI_IMR_MR19Ì65536Ö0 +EXTI_IMR_MR2Ì65536Ö0 +EXTI_IMR_MR21Ì65536Ö0 +EXTI_IMR_MR22Ì65536Ö0 +EXTI_IMR_MR23Ì65536Ö0 +EXTI_IMR_MR25Ì65536Ö0 +EXTI_IMR_MR27Ì65536Ö0 +EXTI_IMR_MR3Ì65536Ö0 +EXTI_IMR_MR4Ì65536Ö0 +EXTI_IMR_MR5Ì65536Ö0 +EXTI_IMR_MR6Ì65536Ö0 +EXTI_IMR_MR7Ì65536Ö0 +EXTI_IMR_MR8Ì65536Ö0 +EXTI_IMR_MR9Ì65536Ö0 +EXTI_PR_PR0Ì65536Ö0 +EXTI_PR_PR1Ì65536Ö0 +EXTI_PR_PR10Ì65536Ö0 +EXTI_PR_PR11Ì65536Ö0 +EXTI_PR_PR12Ì65536Ö0 +EXTI_PR_PR13Ì65536Ö0 +EXTI_PR_PR14Ì65536Ö0 +EXTI_PR_PR15Ì65536Ö0 +EXTI_PR_PR16Ì65536Ö0 +EXTI_PR_PR17Ì65536Ö0 +EXTI_PR_PR19Ì65536Ö0 +EXTI_PR_PR2Ì65536Ö0 +EXTI_PR_PR3Ì65536Ö0 +EXTI_PR_PR4Ì65536Ö0 +EXTI_PR_PR5Ì65536Ö0 +EXTI_PR_PR6Ì65536Ö0 +EXTI_PR_PR7Ì65536Ö0 +EXTI_PR_PR8Ì65536Ö0 +EXTI_PR_PR9Ì65536Ö0 +EXTI_RTSR_TR0Ì65536Ö0 +EXTI_RTSR_TR1Ì65536Ö0 +EXTI_RTSR_TR10Ì65536Ö0 +EXTI_RTSR_TR11Ì65536Ö0 +EXTI_RTSR_TR12Ì65536Ö0 +EXTI_RTSR_TR13Ì65536Ö0 +EXTI_RTSR_TR14Ì65536Ö0 +EXTI_RTSR_TR15Ì65536Ö0 +EXTI_RTSR_TR16Ì65536Ö0 +EXTI_RTSR_TR17Ì65536Ö0 +EXTI_RTSR_TR19Ì65536Ö0 +EXTI_RTSR_TR2Ì65536Ö0 +EXTI_RTSR_TR3Ì65536Ö0 +EXTI_RTSR_TR4Ì65536Ö0 +EXTI_RTSR_TR5Ì65536Ö0 +EXTI_RTSR_TR6Ì65536Ö0 +EXTI_RTSR_TR7Ì65536Ö0 +EXTI_RTSR_TR8Ì65536Ö0 +EXTI_RTSR_TR9Ì65536Ö0 +EXTI_SWIER_SWIER0Ì65536Ö0 +EXTI_SWIER_SWIER1Ì65536Ö0 +EXTI_SWIER_SWIER10Ì65536Ö0 +EXTI_SWIER_SWIER11Ì65536Ö0 +EXTI_SWIER_SWIER12Ì65536Ö0 +EXTI_SWIER_SWIER13Ì65536Ö0 +EXTI_SWIER_SWIER14Ì65536Ö0 +EXTI_SWIER_SWIER15Ì65536Ö0 +EXTI_SWIER_SWIER16Ì65536Ö0 +EXTI_SWIER_SWIER17Ì65536Ö0 +EXTI_SWIER_SWIER19Ì65536Ö0 +EXTI_SWIER_SWIER2Ì65536Ö0 +EXTI_SWIER_SWIER3Ì65536Ö0 +EXTI_SWIER_SWIER4Ì65536Ö0 +EXTI_SWIER_SWIER5Ì65536Ö0 +EXTI_SWIER_SWIER6Ì65536Ö0 +EXTI_SWIER_SWIER7Ì65536Ö0 +EXTI_SWIER_SWIER8Ì65536Ö0 +EXTI_SWIER_SWIER9Ì65536Ö0 +FLASHÌ65536Ö0 +FLASH_ACR_LATENCYÌ65536Ö0 +FLASH_ACR_PRFTBEÌ65536Ö0 +FLASH_ACR_PRFTBSÌ65536Ö0 +FLASH_AR_FARÌ65536Ö0 +FLASH_BASEÌ65536Ö0 +FLASH_CR_EOPIEÌ65536Ö0 +FLASH_CR_ERRIEÌ65536Ö0 +FLASH_CR_LOCKÌ65536Ö0 +FLASH_CR_MERÌ65536Ö0 +FLASH_CR_OBL_LAUNCHÌ65536Ö0 +FLASH_CR_OPTERÌ65536Ö0 +FLASH_CR_OPTPGÌ65536Ö0 +FLASH_CR_OPTWREÌ65536Ö0 +FLASH_CR_PERÌ65536Ö0 +FLASH_CR_PGÌ65536Ö0 +FLASH_CR_STRTÌ65536Ö0 +FLASH_FKEY1Ì65536Ö0 +FLASH_FKEY2Ì65536Ö0 +FLASH_KEYR_FKEYRÌ65536Ö0 +FLASH_OBR_BOOT1Ì65536Ö0 +FLASH_OBR_IWDG_SWÌ65536Ö0 +FLASH_OBR_OPTERRÌ65536Ö0 +FLASH_OBR_RDPRT1Ì65536Ö0 +FLASH_OBR_RDPRT2Ì65536Ö0 +FLASH_OBR_USERÌ65536Ö0 +FLASH_OBR_VDDA_ANALOGÌ65536Ö0 +FLASH_OBR_VDDA_MONITORÌ65536Ö0 +FLASH_OBR_nBOOT1Ì65536Ö0 +FLASH_OBR_nRST_STDBYÌ65536Ö0 +FLASH_OBR_nRST_STOPÌ65536Ö0 +FLASH_OPTKEY1Ì65536Ö0 +FLASH_OPTKEY2Ì65536Ö0 +FLASH_OPTKEYR_OPTKEYRÌ65536Ö0 +FLASH_R_BASEÌ65536Ö0 +FLASH_SR_BSYÌ65536Ö0 +FLASH_SR_EOPÌ65536Ö0 +FLASH_SR_PGERRÌ65536Ö0 +FLASH_SR_WRPERRÌ65536Ö0 +FLASH_SR_WRPRTERRÌ65536Ö0 +FLASH_WRPR_WRPÌ65536Ö0 +FORMUSARTÌ131072Í(X)Ö0 +Font11x18Ì16384Ö0Ïconst uint16_t +Font16x26Ì16384Ö0Ïconst uint16_t +Font7x10Ì16384Ö0Ïconst uint16_t +FontDefÌ4096Ö0Ïanon_struct_1 +FontHeightÌ64Îanon_struct_1Ö0Ïuint8_t +FontWidthÌ64Îanon_struct_1Ö0Ïconst uint8_t +Font_11x18Ì16384Ö0ÏFontDef +Font_11x18Ì32768Ö0ÏFontDef +Font_16x26Ì16384Ö0ÏFontDef +Font_16x26Ì32768Ö0ÏFontDef +Font_7x10Ì16384Ö0ÏFontDef +Font_7x10Ì32768Ö0ÏFontDef +GPIOAÌ65536Ö0 +GPIOA_BASEÌ65536Ö0 +GPIOBÌ65536Ö0 +GPIOB_BASEÌ65536Ö0 +GPIOCÌ65536Ö0 +GPIOC_BASEÌ65536Ö0 +GPIOFÌ65536Ö0 +GPIOF_BASEÌ65536Ö0 +GPIO_AFRH_AFRH0Ì65536Ö0 +GPIO_AFRH_AFRH1Ì65536Ö0 +GPIO_AFRH_AFRH2Ì65536Ö0 +GPIO_AFRH_AFRH3Ì65536Ö0 +GPIO_AFRH_AFRH4Ì65536Ö0 +GPIO_AFRH_AFRH5Ì65536Ö0 +GPIO_AFRH_AFRH6Ì65536Ö0 +GPIO_AFRH_AFRH7Ì65536Ö0 +GPIO_AFRL_AFRL0Ì65536Ö0 +GPIO_AFRL_AFRL1Ì65536Ö0 +GPIO_AFRL_AFRL2Ì65536Ö0 +GPIO_AFRL_AFRL3Ì65536Ö0 +GPIO_AFRL_AFRL4Ì65536Ö0 +GPIO_AFRL_AFRL5Ì65536Ö0 +GPIO_AFRL_AFRL6Ì65536Ö0 +GPIO_AFRL_AFRL7Ì65536Ö0 +GPIO_BRR_BR_0Ì65536Ö0 +GPIO_BRR_BR_1Ì65536Ö0 +GPIO_BRR_BR_10Ì65536Ö0 +GPIO_BRR_BR_11Ì65536Ö0 +GPIO_BRR_BR_12Ì65536Ö0 +GPIO_BRR_BR_13Ì65536Ö0 +GPIO_BRR_BR_14Ì65536Ö0 +GPIO_BRR_BR_15Ì65536Ö0 +GPIO_BRR_BR_2Ì65536Ö0 +GPIO_BRR_BR_3Ì65536Ö0 +GPIO_BRR_BR_4Ì65536Ö0 +GPIO_BRR_BR_5Ì65536Ö0 +GPIO_BRR_BR_6Ì65536Ö0 +GPIO_BRR_BR_7Ì65536Ö0 +GPIO_BRR_BR_8Ì65536Ö0 +GPIO_BRR_BR_9Ì65536Ö0 +GPIO_BSRR_BR_0Ì65536Ö0 +GPIO_BSRR_BR_1Ì65536Ö0 +GPIO_BSRR_BR_10Ì65536Ö0 +GPIO_BSRR_BR_11Ì65536Ö0 +GPIO_BSRR_BR_12Ì65536Ö0 +GPIO_BSRR_BR_13Ì65536Ö0 +GPIO_BSRR_BR_14Ì65536Ö0 +GPIO_BSRR_BR_15Ì65536Ö0 +GPIO_BSRR_BR_2Ì65536Ö0 +GPIO_BSRR_BR_3Ì65536Ö0 +GPIO_BSRR_BR_4Ì65536Ö0 +GPIO_BSRR_BR_5Ì65536Ö0 +GPIO_BSRR_BR_6Ì65536Ö0 +GPIO_BSRR_BR_7Ì65536Ö0 +GPIO_BSRR_BR_8Ì65536Ö0 +GPIO_BSRR_BR_9Ì65536Ö0 +GPIO_BSRR_BS_0Ì65536Ö0 +GPIO_BSRR_BS_1Ì65536Ö0 +GPIO_BSRR_BS_10Ì65536Ö0 +GPIO_BSRR_BS_11Ì65536Ö0 +GPIO_BSRR_BS_12Ì65536Ö0 +GPIO_BSRR_BS_13Ì65536Ö0 +GPIO_BSRR_BS_14Ì65536Ö0 +GPIO_BSRR_BS_15Ì65536Ö0 +GPIO_BSRR_BS_2Ì65536Ö0 +GPIO_BSRR_BS_3Ì65536Ö0 +GPIO_BSRR_BS_4Ì65536Ö0 +GPIO_BSRR_BS_5Ì65536Ö0 +GPIO_BSRR_BS_6Ì65536Ö0 +GPIO_BSRR_BS_7Ì65536Ö0 +GPIO_BSRR_BS_8Ì65536Ö0 +GPIO_BSRR_BS_9Ì65536Ö0 +GPIO_IDR_0Ì65536Ö0 +GPIO_IDR_1Ì65536Ö0 +GPIO_IDR_10Ì65536Ö0 +GPIO_IDR_11Ì65536Ö0 +GPIO_IDR_12Ì65536Ö0 +GPIO_IDR_13Ì65536Ö0 +GPIO_IDR_14Ì65536Ö0 +GPIO_IDR_15Ì65536Ö0 +GPIO_IDR_2Ì65536Ö0 +GPIO_IDR_3Ì65536Ö0 +GPIO_IDR_4Ì65536Ö0 +GPIO_IDR_5Ì65536Ö0 +GPIO_IDR_6Ì65536Ö0 +GPIO_IDR_7Ì65536Ö0 +GPIO_IDR_8Ì65536Ö0 +GPIO_IDR_9Ì65536Ö0 +GPIO_LCKR_LCK0Ì65536Ö0 +GPIO_LCKR_LCK1Ì65536Ö0 +GPIO_LCKR_LCK10Ì65536Ö0 +GPIO_LCKR_LCK11Ì65536Ö0 +GPIO_LCKR_LCK12Ì65536Ö0 +GPIO_LCKR_LCK13Ì65536Ö0 +GPIO_LCKR_LCK14Ì65536Ö0 +GPIO_LCKR_LCK15Ì65536Ö0 +GPIO_LCKR_LCK2Ì65536Ö0 +GPIO_LCKR_LCK3Ì65536Ö0 +GPIO_LCKR_LCK4Ì65536Ö0 +GPIO_LCKR_LCK5Ì65536Ö0 +GPIO_LCKR_LCK6Ì65536Ö0 +GPIO_LCKR_LCK7Ì65536Ö0 +GPIO_LCKR_LCK8Ì65536Ö0 +GPIO_LCKR_LCK9Ì65536Ö0 +GPIO_LCKR_LCKKÌ65536Ö0 +GPIO_MODER_MODER0Ì65536Ö0 +GPIO_MODER_MODER0_0Ì65536Ö0 +GPIO_MODER_MODER0_1Ì65536Ö0 +GPIO_MODER_MODER0_AFÌ65536Ö0 +GPIO_MODER_MODER0_AIÌ65536Ö0 +GPIO_MODER_MODER0_OÌ65536Ö0 +GPIO_MODER_MODER1Ì65536Ö0 +GPIO_MODER_MODER10Ì65536Ö0 +GPIO_MODER_MODER10_0Ì65536Ö0 +GPIO_MODER_MODER10_1Ì65536Ö0 +GPIO_MODER_MODER10_AFÌ65536Ö0 +GPIO_MODER_MODER10_AIÌ65536Ö0 +GPIO_MODER_MODER10_OÌ65536Ö0 +GPIO_MODER_MODER11Ì65536Ö0 +GPIO_MODER_MODER11_0Ì65536Ö0 +GPIO_MODER_MODER11_1Ì65536Ö0 +GPIO_MODER_MODER11_AFÌ65536Ö0 +GPIO_MODER_MODER11_AIÌ65536Ö0 +GPIO_MODER_MODER11_OÌ65536Ö0 +GPIO_MODER_MODER12Ì65536Ö0 +GPIO_MODER_MODER12_0Ì65536Ö0 +GPIO_MODER_MODER12_1Ì65536Ö0 +GPIO_MODER_MODER12_AFÌ65536Ö0 +GPIO_MODER_MODER12_AIÌ65536Ö0 +GPIO_MODER_MODER12_OÌ65536Ö0 +GPIO_MODER_MODER13Ì65536Ö0 +GPIO_MODER_MODER13_0Ì65536Ö0 +GPIO_MODER_MODER13_1Ì65536Ö0 +GPIO_MODER_MODER13_AFÌ65536Ö0 +GPIO_MODER_MODER13_AIÌ65536Ö0 +GPIO_MODER_MODER13_OÌ65536Ö0 +GPIO_MODER_MODER14Ì65536Ö0 +GPIO_MODER_MODER14_0Ì65536Ö0 +GPIO_MODER_MODER14_1Ì65536Ö0 +GPIO_MODER_MODER14_AFÌ65536Ö0 +GPIO_MODER_MODER14_AIÌ65536Ö0 +GPIO_MODER_MODER14_OÌ65536Ö0 +GPIO_MODER_MODER15Ì65536Ö0 +GPIO_MODER_MODER15_0Ì65536Ö0 +GPIO_MODER_MODER15_1Ì65536Ö0 +GPIO_MODER_MODER15_AFÌ65536Ö0 +GPIO_MODER_MODER15_AIÌ65536Ö0 +GPIO_MODER_MODER15_OÌ65536Ö0 +GPIO_MODER_MODER1_0Ì65536Ö0 +GPIO_MODER_MODER1_1Ì65536Ö0 +GPIO_MODER_MODER1_AFÌ65536Ö0 +GPIO_MODER_MODER1_AIÌ65536Ö0 +GPIO_MODER_MODER1_OÌ65536Ö0 +GPIO_MODER_MODER2Ì65536Ö0 +GPIO_MODER_MODER2_0Ì65536Ö0 +GPIO_MODER_MODER2_1Ì65536Ö0 +GPIO_MODER_MODER2_AFÌ65536Ö0 +GPIO_MODER_MODER2_AIÌ65536Ö0 +GPIO_MODER_MODER2_OÌ65536Ö0 +GPIO_MODER_MODER3Ì65536Ö0 +GPIO_MODER_MODER3_0Ì65536Ö0 +GPIO_MODER_MODER3_1Ì65536Ö0 +GPIO_MODER_MODER3_AFÌ65536Ö0 +GPIO_MODER_MODER3_AIÌ65536Ö0 +GPIO_MODER_MODER3_OÌ65536Ö0 +GPIO_MODER_MODER4Ì65536Ö0 +GPIO_MODER_MODER4_0Ì65536Ö0 +GPIO_MODER_MODER4_1Ì65536Ö0 +GPIO_MODER_MODER4_AFÌ65536Ö0 +GPIO_MODER_MODER4_AIÌ65536Ö0 +GPIO_MODER_MODER4_OÌ65536Ö0 +GPIO_MODER_MODER5Ì65536Ö0 +GPIO_MODER_MODER5_0Ì65536Ö0 +GPIO_MODER_MODER5_1Ì65536Ö0 +GPIO_MODER_MODER5_AFÌ65536Ö0 +GPIO_MODER_MODER5_AIÌ65536Ö0 +GPIO_MODER_MODER5_OÌ65536Ö0 +GPIO_MODER_MODER6Ì65536Ö0 +GPIO_MODER_MODER6_0Ì65536Ö0 +GPIO_MODER_MODER6_1Ì65536Ö0 +GPIO_MODER_MODER6_AFÌ65536Ö0 +GPIO_MODER_MODER6_AIÌ65536Ö0 +GPIO_MODER_MODER6_OÌ65536Ö0 +GPIO_MODER_MODER7Ì65536Ö0 +GPIO_MODER_MODER7_0Ì65536Ö0 +GPIO_MODER_MODER7_1Ì65536Ö0 +GPIO_MODER_MODER7_AFÌ65536Ö0 +GPIO_MODER_MODER7_AIÌ65536Ö0 +GPIO_MODER_MODER7_OÌ65536Ö0 +GPIO_MODER_MODER8Ì65536Ö0 +GPIO_MODER_MODER8_0Ì65536Ö0 +GPIO_MODER_MODER8_1Ì65536Ö0 +GPIO_MODER_MODER8_AFÌ65536Ö0 +GPIO_MODER_MODER8_AIÌ65536Ö0 +GPIO_MODER_MODER8_OÌ65536Ö0 +GPIO_MODER_MODER9Ì65536Ö0 +GPIO_MODER_MODER9_0Ì65536Ö0 +GPIO_MODER_MODER9_1Ì65536Ö0 +GPIO_MODER_MODER9_AFÌ65536Ö0 +GPIO_MODER_MODER9_AIÌ65536Ö0 +GPIO_MODER_MODER9_OÌ65536Ö0 +GPIO_ODR_0Ì65536Ö0 +GPIO_ODR_1Ì65536Ö0 +GPIO_ODR_10Ì65536Ö0 +GPIO_ODR_11Ì65536Ö0 +GPIO_ODR_12Ì65536Ö0 +GPIO_ODR_13Ì65536Ö0 +GPIO_ODR_14Ì65536Ö0 +GPIO_ODR_15Ì65536Ö0 +GPIO_ODR_2Ì65536Ö0 +GPIO_ODR_3Ì65536Ö0 +GPIO_ODR_4Ì65536Ö0 +GPIO_ODR_5Ì65536Ö0 +GPIO_ODR_6Ì65536Ö0 +GPIO_ODR_7Ì65536Ö0 +GPIO_ODR_8Ì65536Ö0 +GPIO_ODR_9Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR0_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR0_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR10Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR10_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR10_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR11Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR11_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR11_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR12Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR12_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR12_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR13Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR13_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR13_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR14Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR14_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR14_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR15Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR15_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR15_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR1_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR1_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR2Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR2_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR2_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR3Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR3_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR3_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR4Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR4_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR4_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR5Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR5_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR5_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR6Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR6_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR6_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR7Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR7_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR7_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR8Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR8_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR8_1Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR9Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR9_0Ì65536Ö0 +GPIO_OSPEEDER_OSPEEDR9_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR0_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR0_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR10Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR10_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR10_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR11Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR11_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR11_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR12Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR12_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR12_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR13Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR13_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR13_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR14Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR14_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR14_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR15Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR15_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR15_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR1_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR1_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR2Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR2_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR2_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR3Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR3_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR3_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR4Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR4_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR4_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR5Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR5_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR5_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR6Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR6_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR6_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR7Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR7_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR7_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR8Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR8_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR8_1Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR9Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR9_0Ì65536Ö0 +GPIO_OSPEEDR_OSPEEDR9_1Ì65536Ö0 +GPIO_OTYPER_OT_0Ì65536Ö0 +GPIO_OTYPER_OT_1Ì65536Ö0 +GPIO_OTYPER_OT_10Ì65536Ö0 +GPIO_OTYPER_OT_11Ì65536Ö0 +GPIO_OTYPER_OT_12Ì65536Ö0 +GPIO_OTYPER_OT_13Ì65536Ö0 +GPIO_OTYPER_OT_14Ì65536Ö0 +GPIO_OTYPER_OT_15Ì65536Ö0 +GPIO_OTYPER_OT_2Ì65536Ö0 +GPIO_OTYPER_OT_3Ì65536Ö0 +GPIO_OTYPER_OT_4Ì65536Ö0 +GPIO_OTYPER_OT_5Ì65536Ö0 +GPIO_OTYPER_OT_6Ì65536Ö0 +GPIO_OTYPER_OT_7Ì65536Ö0 +GPIO_OTYPER_OT_8Ì65536Ö0 +GPIO_OTYPER_OT_9Ì65536Ö0 +GPIO_PUPDR_PUPDR0Ì65536Ö0 +GPIO_PUPDR_PUPDR0_0Ì65536Ö0 +GPIO_PUPDR_PUPDR0_1Ì65536Ö0 +GPIO_PUPDR_PUPDR1Ì65536Ö0 +GPIO_PUPDR_PUPDR10Ì65536Ö0 +GPIO_PUPDR_PUPDR10_0Ì65536Ö0 +GPIO_PUPDR_PUPDR10_1Ì65536Ö0 +GPIO_PUPDR_PUPDR11Ì65536Ö0 +GPIO_PUPDR_PUPDR11_0Ì65536Ö0 +GPIO_PUPDR_PUPDR11_1Ì65536Ö0 +GPIO_PUPDR_PUPDR12Ì65536Ö0 +GPIO_PUPDR_PUPDR12_0Ì65536Ö0 +GPIO_PUPDR_PUPDR12_1Ì65536Ö0 +GPIO_PUPDR_PUPDR13Ì65536Ö0 +GPIO_PUPDR_PUPDR13_0Ì65536Ö0 +GPIO_PUPDR_PUPDR13_1Ì65536Ö0 +GPIO_PUPDR_PUPDR14Ì65536Ö0 +GPIO_PUPDR_PUPDR14_0Ì65536Ö0 +GPIO_PUPDR_PUPDR14_1Ì65536Ö0 +GPIO_PUPDR_PUPDR15Ì65536Ö0 +GPIO_PUPDR_PUPDR15_0Ì65536Ö0 +GPIO_PUPDR_PUPDR15_1Ì65536Ö0 +GPIO_PUPDR_PUPDR1_0Ì65536Ö0 +GPIO_PUPDR_PUPDR1_1Ì65536Ö0 +GPIO_PUPDR_PUPDR2Ì65536Ö0 +GPIO_PUPDR_PUPDR2_0Ì65536Ö0 +GPIO_PUPDR_PUPDR2_1Ì65536Ö0 +GPIO_PUPDR_PUPDR3Ì65536Ö0 +GPIO_PUPDR_PUPDR3_0Ì65536Ö0 +GPIO_PUPDR_PUPDR3_1Ì65536Ö0 +GPIO_PUPDR_PUPDR4Ì65536Ö0 +GPIO_PUPDR_PUPDR4_0Ì65536Ö0 +GPIO_PUPDR_PUPDR4_1Ì65536Ö0 +GPIO_PUPDR_PUPDR5Ì65536Ö0 +GPIO_PUPDR_PUPDR5_0Ì65536Ö0 +GPIO_PUPDR_PUPDR5_1Ì65536Ö0 +GPIO_PUPDR_PUPDR6Ì65536Ö0 +GPIO_PUPDR_PUPDR6_0Ì65536Ö0 +GPIO_PUPDR_PUPDR6_1Ì65536Ö0 +GPIO_PUPDR_PUPDR7Ì65536Ö0 +GPIO_PUPDR_PUPDR7_0Ì65536Ö0 +GPIO_PUPDR_PUPDR7_1Ì65536Ö0 +GPIO_PUPDR_PUPDR8Ì65536Ö0 +GPIO_PUPDR_PUPDR8_0Ì65536Ö0 +GPIO_PUPDR_PUPDR8_1Ì65536Ö0 +GPIO_PUPDR_PUPDR9Ì65536Ö0 +GPIO_PUPDR_PUPDR9_0Ì65536Ö0 +GPIO_PUPDR_PUPDR9_1Ì65536Ö0 +HIGH_SPEEDÌ4Îanon_enum_2Ö0 +I2C1Ì65536Ö0 +I2C1_BASEÌ65536Ö0 +I2CPINSÌ65536Ö0 +I2C_CR1_ADDRIEÌ65536Ö0 +I2C_CR1_ALERTENÌ65536Ö0 +I2C_CR1_ANFOFFÌ65536Ö0 +I2C_CR1_DFNÌ65536Ö0 +I2C_CR1_ERRIEÌ65536Ö0 +I2C_CR1_GCENÌ65536Ö0 +I2C_CR1_NACKIEÌ65536Ö0 +I2C_CR1_NOSTRETCHÌ65536Ö0 +I2C_CR1_PEÌ65536Ö0 +I2C_CR1_PECENÌ65536Ö0 +I2C_CR1_RXDMAENÌ65536Ö0 +I2C_CR1_RXIEÌ65536Ö0 +I2C_CR1_SBCÌ65536Ö0 +I2C_CR1_SMBDENÌ65536Ö0 +I2C_CR1_SMBHENÌ65536Ö0 +I2C_CR1_STOPIEÌ65536Ö0 +I2C_CR1_SWRSTÌ65536Ö0 +I2C_CR1_TCIEÌ65536Ö0 +I2C_CR1_TXDMAENÌ65536Ö0 +I2C_CR1_TXIEÌ65536Ö0 +I2C_CR1_WUPENÌ65536Ö0 +I2C_CR2_ADD10Ì65536Ö0 +I2C_CR2_AUTOENDÌ65536Ö0 +I2C_CR2_HEAD10RÌ65536Ö0 +I2C_CR2_NACKÌ65536Ö0 +I2C_CR2_NBYTESÌ65536Ö0 +I2C_CR2_PECBYTEÌ65536Ö0 +I2C_CR2_RD_WRNÌ65536Ö0 +I2C_CR2_RELOADÌ65536Ö0 +I2C_CR2_SADDÌ65536Ö0 +I2C_CR2_STARTÌ65536Ö0 +I2C_CR2_STOPÌ65536Ö0 +I2C_ICR_ADDRCFÌ65536Ö0 +I2C_ICR_ALERTCFÌ65536Ö0 +I2C_ICR_ARLOCFÌ65536Ö0 +I2C_ICR_BERRCFÌ65536Ö0 +I2C_ICR_NACKCFÌ65536Ö0 +I2C_ICR_OVRCFÌ65536Ö0 +I2C_ICR_PECCFÌ65536Ö0 +I2C_ICR_STOPCFÌ65536Ö0 +I2C_ICR_TIMOUTCFÌ65536Ö0 +I2C_ISR_ADDCODEÌ65536Ö0 +I2C_ISR_ADDRÌ65536Ö0 +I2C_ISR_ALERTÌ65536Ö0 +I2C_ISR_ARLOÌ65536Ö0 +I2C_ISR_BERRÌ65536Ö0 +I2C_ISR_BUSYÌ65536Ö0 +I2C_ISR_DIRÌ65536Ö0 +I2C_ISR_NACKFÌ65536Ö0 +I2C_ISR_OVRÌ65536Ö0 +I2C_ISR_PECERRÌ65536Ö0 +I2C_ISR_RXNEÌ65536Ö0 +I2C_ISR_STOPFÌ65536Ö0 +I2C_ISR_TCÌ65536Ö0 +I2C_ISR_TCRÌ65536Ö0 +I2C_ISR_TIMEOUTÌ65536Ö0 +I2C_ISR_TXEÌ65536Ö0 +I2C_ISR_TXISÌ65536Ö0 +I2C_OAR1_OA1Ì65536Ö0 +I2C_OAR1_OA1ENÌ65536Ö0 +I2C_OAR1_OA1MODEÌ65536Ö0 +I2C_OAR2_OA2Ì65536Ö0 +I2C_OAR2_OA2ENÌ65536Ö0 +I2C_OAR2_OA2MSKÌ65536Ö0 +I2C_PECR_PECÌ65536Ö0 +I2C_RXDR_RXDATAÌ65536Ö0 +I2C_SPEEDÌ4096Ö0Ïanon_enum_2 +I2C_TIMEOUTÌ65536Ö0 +I2C_TIMEOUTR_TEXTENÌ65536Ö0 +I2C_TIMEOUTR_TIDLEÌ65536Ö0 +I2C_TIMEOUTR_TIMEOUTAÌ65536Ö0 +I2C_TIMEOUTR_TIMEOUTBÌ65536Ö0 +I2C_TIMEOUTR_TIMOUTENÌ65536Ö0 +I2C_TIMINGR_PRESCÌ65536Ö0 +I2C_TIMINGR_SCLDELÌ65536Ö0 +I2C_TIMINGR_SCLHÌ65536Ö0 +I2C_TIMINGR_SCLLÌ65536Ö0 +I2C_TIMINGR_SDADELÌ65536Ö0 +I2C_TXDR_TXDATAÌ65536Ö0 +INT16_CÌ131072Í(c)Ö0 +INT16_MAXÌ65536Ö0 +INT16_MINÌ65536Ö0 +INT16_WIDTHÌ65536Ö0 +INT32_CÌ131072Í(c)Ö0 +INT32_MAXÌ65536Ö0 +INT32_MINÌ65536Ö0 +INT32_WIDTHÌ65536Ö0 +INT64_CÌ131072Í(c)Ö0 +INT64_MAXÌ65536Ö0 +INT64_MINÌ65536Ö0 +INT64_WIDTHÌ65536Ö0 +INT8_CÌ131072Í(c)Ö0 +INT8_MAXÌ65536Ö0 +INT8_MINÌ65536Ö0 +INT8_WIDTHÌ65536Ö0 +INTMAX_CÌ131072Í(c)Ö0 +INTMAX_MAXÌ65536Ö0 +INTMAX_MINÌ65536Ö0 +INTMAX_WIDTHÌ65536Ö0 +INTPTR_MAXÌ65536Ö0 +INTPTR_MINÌ65536Ö0 +INTPTR_WIDTHÌ65536Ö0 +INT_FAST16_MAXÌ65536Ö0 +INT_FAST16_MINÌ65536Ö0 +INT_FAST16_WIDTHÌ65536Ö0 +INT_FAST32_MAXÌ65536Ö0 +INT_FAST32_MINÌ65536Ö0 +INT_FAST32_WIDTHÌ65536Ö0 +INT_FAST64_MAXÌ65536Ö0 +INT_FAST64_MINÌ65536Ö0 +INT_FAST64_WIDTHÌ65536Ö0 +INT_FAST8_MAXÌ65536Ö0 +INT_FAST8_MINÌ65536Ö0 +INT_FAST8_WIDTHÌ65536Ö0 +INT_LEAST16_MAXÌ65536Ö0 +INT_LEAST16_MINÌ65536Ö0 +INT_LEAST16_WIDTHÌ65536Ö0 +INT_LEAST32_MAXÌ65536Ö0 +INT_LEAST32_MINÌ65536Ö0 +INT_LEAST32_WIDTHÌ65536Ö0 +INT_LEAST64_MAXÌ65536Ö0 +INT_LEAST64_MINÌ65536Ö0 +INT_LEAST64_WIDTHÌ65536Ö0 +INT_LEAST8_MAXÌ65536Ö0 +INT_LEAST8_MINÌ65536Ö0 +INT_LEAST8_WIDTHÌ65536Ö0 +IS_ADC_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_ADC_COMMON_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_CAN_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_CEC_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_CRC_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_DMA_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_FUNCTIONAL_STATEÌ131072Í(STATE)Ö0 +IS_GPIO_AF_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_GPIO_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_GPIO_LOCK_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_I2C_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_I2S_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_IRDA_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_IWDG_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_RTC_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_SMARTCARD_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_SMBUS_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_SPI_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_32B_COUNTER_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_BKIN2_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_BREAK_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CC1_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CC2_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CC3_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CC4_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CC5_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CC6_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CCXN_INSTANCEÌ131072Í(INSTANCE,CHANNEL)Ö0 +IS_TIM_CCX_INSTANCEÌ131072Í(INSTANCE,CHANNEL)Ö0 +IS_TIM_CLOCKSOURCE_ETRMODE1_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CLOCKSOURCE_ETRMODE2_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CLOCKSOURCE_ITRX_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CLOCKSOURCE_TIX_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CLOCK_DIVISION_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_CLOCK_SELECT_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_COMMUTATION_EVENT_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_COUNTER_MODE_SELECT_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_DMABURST_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_DMA_CC_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_DMA_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_ENCODER_INTERFACE_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_HALL_INTERFACE_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_MASTER_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_OCXREF_CLEAR_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_REMAP_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_REPETITION_COUNTER_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_SLAVE_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_SYNCHRO_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_TRGO2_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TIM_XOR_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_TSC_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_UART_AUTOBAUDRATE_DETECTION_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_UART_DRIVER_ENABLE_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_UART_HALFDUPLEX_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_UART_HWFLOW_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_UART_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_UART_LIN_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_UART_WAKEUP_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_USART_AUTOBAUDRATE_DETECTION_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_USART_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_USB_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IS_WWDG_ALL_INSTANCEÌ131072Í(INSTANCE)Ö0 +IWDGÌ65536Ö0 +IWDG_BASEÌ65536Ö0 +IWDG_KR_KEYÌ65536Ö0 +IWDG_PR_PRÌ65536Ö0 +IWDG_PR_PR_0Ì65536Ö0 +IWDG_PR_PR_1Ì65536Ö0 +IWDG_PR_PR_2Ì65536Ö0 +IWDG_RLR_RLÌ65536Ö0 +IWDG_SR_PVUÌ65536Ö0 +IWDG_SR_RVUÌ65536Ö0 +IWDG_SR_WVUÌ65536Ö0 +IWDG_WINR_WINÌ65536Ö0 +LED0_pinÌ65536Ö0 +LED0_portÌ65536Ö0 +LED1_pinÌ65536Ö0 +LED1_portÌ65536Ö0 +LED_blinkÌ131072Í(x)Ö0 +LINE_BUSYÌ4Îanon_enum_3Ö0 +LOW_SPEEDÌ4Îanon_enum_2Ö0 +MODIFY_REGÌ131072Í(REG,CLEARMASK,SETMASK)Ö0 +NEWLINEÌ131072Í()Ö0 +NULLÌ65536Ö0 +NVICÌ65536Ö0 +NVIC_BASEÌ65536Ö0 +OBÌ65536Ö0 +OB_BASEÌ65536Ö0 +OB_RDP_RDPÌ65536Ö0 +OB_RDP_nRDPÌ65536Ö0 +OB_USER_USERÌ65536Ö0 +OB_USER_nUSERÌ65536Ö0 +OB_WRP0_WRP0Ì65536Ö0 +OB_WRP0_nWRP0Ì65536Ö0 +OB_WRP1_WRP1Ì65536Ö0 +OB_WRP1_nWRP1Ì65536Ö0 +OB_WRP2_WRP2Ì65536Ö0 +OB_WRP2_nWRP2Ì65536Ö0 +OB_WRP3_WRP3Ì65536Ö0 +OB_WRP3_nWRP3Ì65536Ö0 +PERIPH_BASEÌ65536Ö0 +PTRDIFF_MAXÌ65536Ö0 +PTRDIFF_MINÌ65536Ö0 +PTRDIFF_WIDTHÌ65536Ö0 +PVD_IRQHandlerÌ65536Ö0 +PVD_IRQnÌ65536Ö0 +PWRÌ65536Ö0 +PWR_BASEÌ65536Ö0 +PWR_CR_CSBFÌ65536Ö0 +PWR_CR_CWUFÌ65536Ö0 +PWR_CR_DBPÌ65536Ö0 +PWR_CR_LPDSÌ65536Ö0 +PWR_CR_PDDSÌ65536Ö0 +PWR_CR_PLSÌ65536Ö0 +PWR_CR_PLS_0Ì65536Ö0 +PWR_CR_PLS_1Ì65536Ö0 +PWR_CR_PLS_2Ì65536Ö0 +PWR_CR_PLS_LEV0Ì65536Ö0 +PWR_CR_PLS_LEV1Ì65536Ö0 +PWR_CR_PLS_LEV2Ì65536Ö0 +PWR_CR_PLS_LEV3Ì65536Ö0 +PWR_CR_PLS_LEV4Ì65536Ö0 +PWR_CR_PLS_LEV5Ì65536Ö0 +PWR_CR_PLS_LEV6Ì65536Ö0 +PWR_CR_PLS_LEV7Ì65536Ö0 +PWR_CR_PVDEÌ65536Ö0 +PWR_CSR_EWUP1Ì65536Ö0 +PWR_CSR_EWUP2Ì65536Ö0 +PWR_CSR_EWUP3Ì65536Ö0 +PWR_CSR_EWUP4Ì65536Ö0 +PWR_CSR_EWUP5Ì65536Ö0 +PWR_CSR_EWUP6Ì65536Ö0 +PWR_CSR_EWUP7Ì65536Ö0 +PWR_CSR_EWUP8Ì65536Ö0 +PWR_CSR_PVDOÌ65536Ö0 +PWR_CSR_SBFÌ65536Ö0 +PWR_CSR_VREFINTRDYFÌ65536Ö0 +PWR_CSR_WUFÌ65536Ö0 +RCCÌ65536Ö0 +RCC_AHBENR_CRCENÌ65536Ö0 +RCC_AHBENR_DMA1ENÌ65536Ö0 +RCC_AHBENR_DMAENÌ65536Ö0 +RCC_AHBENR_FLITFENÌ65536Ö0 +RCC_AHBENR_GPIOAENÌ65536Ö0 +RCC_AHBENR_GPIOBENÌ65536Ö0 +RCC_AHBENR_GPIOCENÌ65536Ö0 +RCC_AHBENR_GPIOFENÌ65536Ö0 +RCC_AHBENR_SRAMENÌ65536Ö0 +RCC_AHBENR_TSCENÌ65536Ö0 +RCC_AHBENR_TSENÌ65536Ö0 +RCC_AHBRSTR_GPIOARSTÌ65536Ö0 +RCC_AHBRSTR_GPIOBRSTÌ65536Ö0 +RCC_AHBRSTR_GPIOCRSTÌ65536Ö0 +RCC_AHBRSTR_GPIOFRSTÌ65536Ö0 +RCC_AHBRSTR_TSCRSTÌ65536Ö0 +RCC_AHBRSTR_TSRSTÌ65536Ö0 +RCC_APB1ENR_CANENÌ65536Ö0 +RCC_APB1ENR_CECENÌ65536Ö0 +RCC_APB1ENR_CRSENÌ65536Ö0 +RCC_APB1ENR_DACENÌ65536Ö0 +RCC_APB1ENR_I2C1ENÌ65536Ö0 +RCC_APB1ENR_I2C2ENÌ65536Ö0 +RCC_APB1ENR_PWRENÌ65536Ö0 +RCC_APB1ENR_SPI2ENÌ65536Ö0 +RCC_APB1ENR_TIM14ENÌ65536Ö0 +RCC_APB1ENR_TIM2ENÌ65536Ö0 +RCC_APB1ENR_TIM3ENÌ65536Ö0 +RCC_APB1ENR_USART2ENÌ65536Ö0 +RCC_APB1ENR_USART3ENÌ65536Ö0 +RCC_APB1ENR_USART4ENÌ65536Ö0 +RCC_APB1ENR_USBENÌ65536Ö0 +RCC_APB1ENR_WWDGENÌ65536Ö0 +RCC_APB1RSTR_CANRSTÌ65536Ö0 +RCC_APB1RSTR_CECRSTÌ65536Ö0 +RCC_APB1RSTR_CRSRSTÌ65536Ö0 +RCC_APB1RSTR_DACRSTÌ65536Ö0 +RCC_APB1RSTR_I2C1RSTÌ65536Ö0 +RCC_APB1RSTR_I2C2RSTÌ65536Ö0 +RCC_APB1RSTR_PWRRSTÌ65536Ö0 +RCC_APB1RSTR_SPI2RSTÌ65536Ö0 +RCC_APB1RSTR_TIM14RSTÌ65536Ö0 +RCC_APB1RSTR_TIM2RSTÌ65536Ö0 +RCC_APB1RSTR_TIM3RSTÌ65536Ö0 +RCC_APB1RSTR_USART2RSTÌ65536Ö0 +RCC_APB1RSTR_USART3RSTÌ65536Ö0 +RCC_APB1RSTR_USART4RSTÌ65536Ö0 +RCC_APB1RSTR_USBRSTÌ65536Ö0 +RCC_APB1RSTR_WWDGRSTÌ65536Ö0 +RCC_APB2ENR_ADC1ENÌ65536Ö0 +RCC_APB2ENR_ADCENÌ65536Ö0 +RCC_APB2ENR_DBGMCUENÌ65536Ö0 +RCC_APB2ENR_SPI1ENÌ65536Ö0 +RCC_APB2ENR_SYSCFGCOMPENÌ65536Ö0 +RCC_APB2ENR_SYSCFGENÌ65536Ö0 +RCC_APB2ENR_TIM16ENÌ65536Ö0 +RCC_APB2ENR_TIM17ENÌ65536Ö0 +RCC_APB2ENR_TIM1ENÌ65536Ö0 +RCC_APB2ENR_USART1ENÌ65536Ö0 +RCC_APB2RSTR_ADC1RSTÌ65536Ö0 +RCC_APB2RSTR_ADCRSTÌ65536Ö0 +RCC_APB2RSTR_DBGMCURSTÌ65536Ö0 +RCC_APB2RSTR_SPI1RSTÌ65536Ö0 +RCC_APB2RSTR_SYSCFGRSTÌ65536Ö0 +RCC_APB2RSTR_TIM16RSTÌ65536Ö0 +RCC_APB2RSTR_TIM17RSTÌ65536Ö0 +RCC_APB2RSTR_TIM1RSTÌ65536Ö0 +RCC_APB2RSTR_USART1RSTÌ65536Ö0 +RCC_BASEÌ65536Ö0 +RCC_BDCR_BDRSTÌ65536Ö0 +RCC_BDCR_LSEBYPÌ65536Ö0 +RCC_BDCR_LSEDRVÌ65536Ö0 +RCC_BDCR_LSEDRV_0Ì65536Ö0 +RCC_BDCR_LSEDRV_1Ì65536Ö0 +RCC_BDCR_LSEONÌ65536Ö0 +RCC_BDCR_LSERDYÌ65536Ö0 +RCC_BDCR_RTCENÌ65536Ö0 +RCC_BDCR_RTCSELÌ65536Ö0 +RCC_BDCR_RTCSEL_0Ì65536Ö0 +RCC_BDCR_RTCSEL_1Ì65536Ö0 +RCC_BDCR_RTCSEL_HSEÌ65536Ö0 +RCC_BDCR_RTCSEL_LSEÌ65536Ö0 +RCC_BDCR_RTCSEL_LSIÌ65536Ö0 +RCC_BDCR_RTCSEL_NOCLOCKÌ65536Ö0 +RCC_CFGR2_PREDIVÌ65536Ö0 +RCC_CFGR2_PREDIV_0Ì65536Ö0 +RCC_CFGR2_PREDIV_1Ì65536Ö0 +RCC_CFGR2_PREDIV_2Ì65536Ö0 +RCC_CFGR2_PREDIV_3Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV1Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV10Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV11Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV12Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV13Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV14Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV15Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV16Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV2Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV3Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV4Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV5Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV6Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV7Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV8Ì65536Ö0 +RCC_CFGR2_PREDIV_DIV9Ì65536Ö0 +RCC_CFGR3_CECSWÌ65536Ö0 +RCC_CFGR3_CECSW_HSI_DIV244Ì65536Ö0 +RCC_CFGR3_CECSW_LSEÌ65536Ö0 +RCC_CFGR3_I2C1SWÌ65536Ö0 +RCC_CFGR3_I2C1SW_HSIÌ65536Ö0 +RCC_CFGR3_I2C1SW_SYSCLKÌ65536Ö0 +RCC_CFGR3_USART1SWÌ65536Ö0 +RCC_CFGR3_USART1SW_0Ì65536Ö0 +RCC_CFGR3_USART1SW_1Ì65536Ö0 +RCC_CFGR3_USART1SW_HSIÌ65536Ö0 +RCC_CFGR3_USART1SW_LSEÌ65536Ö0 +RCC_CFGR3_USART1SW_PCLKÌ65536Ö0 +RCC_CFGR3_USART1SW_SYSCLKÌ65536Ö0 +RCC_CFGR3_USART2SWÌ65536Ö0 +RCC_CFGR3_USART2SW_0Ì65536Ö0 +RCC_CFGR3_USART2SW_1Ì65536Ö0 +RCC_CFGR3_USART2SW_HSIÌ65536Ö0 +RCC_CFGR3_USART2SW_LSEÌ65536Ö0 +RCC_CFGR3_USART2SW_PCLKÌ65536Ö0 +RCC_CFGR3_USART2SW_SYSCLKÌ65536Ö0 +RCC_CFGR3_USBSWÌ65536Ö0 +RCC_CFGR3_USBSW_HSI48Ì65536Ö0 +RCC_CFGR3_USBSW_PLLCLKÌ65536Ö0 +RCC_CFGR_ADCPREÌ65536Ö0 +RCC_CFGR_ADCPRE_DIV2Ì65536Ö0 +RCC_CFGR_ADCPRE_DIV4Ì65536Ö0 +RCC_CFGR_HPREÌ65536Ö0 +RCC_CFGR_HPRE_0Ì65536Ö0 +RCC_CFGR_HPRE_1Ì65536Ö0 +RCC_CFGR_HPRE_2Ì65536Ö0 +RCC_CFGR_HPRE_3Ì65536Ö0 +RCC_CFGR_HPRE_DIV1Ì65536Ö0 +RCC_CFGR_HPRE_DIV128Ì65536Ö0 +RCC_CFGR_HPRE_DIV16Ì65536Ö0 +RCC_CFGR_HPRE_DIV2Ì65536Ö0 +RCC_CFGR_HPRE_DIV256Ì65536Ö0 +RCC_CFGR_HPRE_DIV4Ì65536Ö0 +RCC_CFGR_HPRE_DIV512Ì65536Ö0 +RCC_CFGR_HPRE_DIV64Ì65536Ö0 +RCC_CFGR_HPRE_DIV8Ì65536Ö0 +RCC_CFGR_MCOÌ65536Ö0 +RCC_CFGR_MCOPREÌ65536Ö0 +RCC_CFGR_MCOPRE_DIV1Ì65536Ö0 +RCC_CFGR_MCOPRE_DIV128Ì65536Ö0 +RCC_CFGR_MCOPRE_DIV16Ì65536Ö0 +RCC_CFGR_MCOPRE_DIV2Ì65536Ö0 +RCC_CFGR_MCOPRE_DIV32Ì65536Ö0 +RCC_CFGR_MCOPRE_DIV4Ì65536Ö0 +RCC_CFGR_MCOPRE_DIV64Ì65536Ö0 +RCC_CFGR_MCOPRE_DIV8Ì65536Ö0 +RCC_CFGR_MCO_0Ì65536Ö0 +RCC_CFGR_MCO_1Ì65536Ö0 +RCC_CFGR_MCO_2Ì65536Ö0 +RCC_CFGR_MCO_3Ì65536Ö0 +RCC_CFGR_MCO_HSEÌ65536Ö0 +RCC_CFGR_MCO_HSIÌ65536Ö0 +RCC_CFGR_MCO_HSI14Ì65536Ö0 +RCC_CFGR_MCO_HSI48Ì65536Ö0 +RCC_CFGR_MCO_LSEÌ65536Ö0 +RCC_CFGR_MCO_LSIÌ65536Ö0 +RCC_CFGR_MCO_NOCLOCKÌ65536Ö0 +RCC_CFGR_MCO_PLLÌ65536Ö0 +RCC_CFGR_MCO_SYSCLKÌ65536Ö0 +RCC_CFGR_PLLMULÌ65536Ö0 +RCC_CFGR_PLLMUL10Ì65536Ö0 +RCC_CFGR_PLLMUL11Ì65536Ö0 +RCC_CFGR_PLLMUL12Ì65536Ö0 +RCC_CFGR_PLLMUL13Ì65536Ö0 +RCC_CFGR_PLLMUL14Ì65536Ö0 +RCC_CFGR_PLLMUL15Ì65536Ö0 +RCC_CFGR_PLLMUL16Ì65536Ö0 +RCC_CFGR_PLLMUL2Ì65536Ö0 +RCC_CFGR_PLLMUL3Ì65536Ö0 +RCC_CFGR_PLLMUL4Ì65536Ö0 +RCC_CFGR_PLLMUL5Ì65536Ö0 +RCC_CFGR_PLLMUL6Ì65536Ö0 +RCC_CFGR_PLLMUL7Ì65536Ö0 +RCC_CFGR_PLLMUL8Ì65536Ö0 +RCC_CFGR_PLLMUL9Ì65536Ö0 +RCC_CFGR_PLLMUL_0Ì65536Ö0 +RCC_CFGR_PLLMUL_1Ì65536Ö0 +RCC_CFGR_PLLMUL_2Ì65536Ö0 +RCC_CFGR_PLLMUL_3Ì65536Ö0 +RCC_CFGR_PLLNODIVÌ65536Ö0 +RCC_CFGR_PLLSRCÌ65536Ö0 +RCC_CFGR_PLLSRC_HSE_PREDIVÌ65536Ö0 +RCC_CFGR_PLLSRC_HSI48_PREDIVÌ65536Ö0 +RCC_CFGR_PLLSRC_HSI_DIV2Ì65536Ö0 +RCC_CFGR_PLLSRC_HSI_PREDIVÌ65536Ö0 +RCC_CFGR_PLLXTPREÌ65536Ö0 +RCC_CFGR_PLLXTPRE_HSE_PREDIV_DIV1Ì65536Ö0 +RCC_CFGR_PLLXTPRE_HSE_PREDIV_DIV2Ì65536Ö0 +RCC_CFGR_PPREÌ65536Ö0 +RCC_CFGR_PPRE_0Ì65536Ö0 +RCC_CFGR_PPRE_1Ì65536Ö0 +RCC_CFGR_PPRE_2Ì65536Ö0 +RCC_CFGR_PPRE_DIV1Ì65536Ö0 +RCC_CFGR_PPRE_DIV16Ì65536Ö0 +RCC_CFGR_PPRE_DIV2Ì65536Ö0 +RCC_CFGR_PPRE_DIV4Ì65536Ö0 +RCC_CFGR_PPRE_DIV8Ì65536Ö0 +RCC_CFGR_SWÌ65536Ö0 +RCC_CFGR_SWSÌ65536Ö0 +RCC_CFGR_SWS_0Ì65536Ö0 +RCC_CFGR_SWS_1Ì65536Ö0 +RCC_CFGR_SWS_HSEÌ65536Ö0 +RCC_CFGR_SWS_HSIÌ65536Ö0 +RCC_CFGR_SWS_HSI48Ì65536Ö0 +RCC_CFGR_SWS_PLLÌ65536Ö0 +RCC_CFGR_SW_0Ì65536Ö0 +RCC_CFGR_SW_1Ì65536Ö0 +RCC_CFGR_SW_HSEÌ65536Ö0 +RCC_CFGR_SW_HSIÌ65536Ö0 +RCC_CFGR_SW_HSI48Ì65536Ö0 +RCC_CFGR_SW_PLLÌ65536Ö0 +RCC_CFGR_USBPREÌ65536Ö0 +RCC_CIR_CSSCÌ65536Ö0 +RCC_CIR_CSSFÌ65536Ö0 +RCC_CIR_HSERDYCÌ65536Ö0 +RCC_CIR_HSERDYFÌ65536Ö0 +RCC_CIR_HSERDYIEÌ65536Ö0 +RCC_CIR_HSI14RDYCÌ65536Ö0 +RCC_CIR_HSI14RDYFÌ65536Ö0 +RCC_CIR_HSI14RDYIEÌ65536Ö0 +RCC_CIR_HSI48RDYCÌ65536Ö0 +RCC_CIR_HSI48RDYFÌ65536Ö0 +RCC_CIR_HSI48RDYIEÌ65536Ö0 +RCC_CIR_HSIRDYCÌ65536Ö0 +RCC_CIR_HSIRDYFÌ65536Ö0 +RCC_CIR_HSIRDYIEÌ65536Ö0 +RCC_CIR_LSERDYCÌ65536Ö0 +RCC_CIR_LSERDYFÌ65536Ö0 +RCC_CIR_LSERDYIEÌ65536Ö0 +RCC_CIR_LSIRDYCÌ65536Ö0 +RCC_CIR_LSIRDYFÌ65536Ö0 +RCC_CIR_LSIRDYIEÌ65536Ö0 +RCC_CIR_PLLRDYCÌ65536Ö0 +RCC_CIR_PLLRDYFÌ65536Ö0 +RCC_CIR_PLLRDYIEÌ65536Ö0 +RCC_CR2_HSI14CALÌ65536Ö0 +RCC_CR2_HSI14DISÌ65536Ö0 +RCC_CR2_HSI14ONÌ65536Ö0 +RCC_CR2_HSI14RDYÌ65536Ö0 +RCC_CR2_HSI14TRIMÌ65536Ö0 +RCC_CR2_HSI48CALÌ65536Ö0 +RCC_CR2_HSI48ONÌ65536Ö0 +RCC_CR2_HSI48RDYÌ65536Ö0 +RCC_CR_CSSONÌ65536Ö0 +RCC_CR_HSEBYPÌ65536Ö0 +RCC_CR_HSEONÌ65536Ö0 +RCC_CR_HSERDYÌ65536Ö0 +RCC_CR_HSICALÌ65536Ö0 +RCC_CR_HSICAL_0Ì65536Ö0 +RCC_CR_HSICAL_1Ì65536Ö0 +RCC_CR_HSICAL_2Ì65536Ö0 +RCC_CR_HSICAL_3Ì65536Ö0 +RCC_CR_HSICAL_4Ì65536Ö0 +RCC_CR_HSICAL_5Ì65536Ö0 +RCC_CR_HSICAL_6Ì65536Ö0 +RCC_CR_HSICAL_7Ì65536Ö0 +RCC_CR_HSIONÌ65536Ö0 +RCC_CR_HSIRDYÌ65536Ö0 +RCC_CR_HSITRIMÌ65536Ö0 +RCC_CR_HSITRIM_0Ì65536Ö0 +RCC_CR_HSITRIM_1Ì65536Ö0 +RCC_CR_HSITRIM_2Ì65536Ö0 +RCC_CR_HSITRIM_3Ì65536Ö0 +RCC_CR_HSITRIM_4Ì65536Ö0 +RCC_CR_PLLONÌ65536Ö0 +RCC_CR_PLLRDYÌ65536Ö0 +RCC_CSR_IWDGRSTFÌ65536Ö0 +RCC_CSR_LPWRRSTFÌ65536Ö0 +RCC_CSR_LSIONÌ65536Ö0 +RCC_CSR_LSIRDYÌ65536Ö0 +RCC_CSR_OBLÌ65536Ö0 +RCC_CSR_OBLRSTFÌ65536Ö0 +RCC_CSR_PINRSTFÌ65536Ö0 +RCC_CSR_PORRSTFÌ65536Ö0 +RCC_CSR_RMVFÌ65536Ö0 +RCC_CSR_SFTRSTFÌ65536Ö0 +RCC_CSR_V18PWRRSTFÌ65536Ö0 +RCC_CSR_WWDGRSTFÌ65536Ö0 +RCC_IRQHandlerÌ65536Ö0 +RCC_IRQnÌ65536Ö0 +READ_BITÌ131072Í(REG,BIT)Ö0 +READ_REGÌ131072Í(REG)Ö0 +RST_HIÌ131072Í()Ö0 +RST_LOÌ131072Í()Ö0 +RST_PAUSEÌ65536Ö0 +RST_PINÌ65536Ö0 +RST_PORTÌ65536Ö0 +RTCÌ65536Ö0 +RTC_ALRMAR_DTÌ65536Ö0 +RTC_ALRMAR_DT_0Ì65536Ö0 +RTC_ALRMAR_DT_1Ì65536Ö0 +RTC_ALRMAR_DUÌ65536Ö0 +RTC_ALRMAR_DU_0Ì65536Ö0 +RTC_ALRMAR_DU_1Ì65536Ö0 +RTC_ALRMAR_DU_2Ì65536Ö0 +RTC_ALRMAR_DU_3Ì65536Ö0 +RTC_ALRMAR_HTÌ65536Ö0 +RTC_ALRMAR_HT_0Ì65536Ö0 +RTC_ALRMAR_HT_1Ì65536Ö0 +RTC_ALRMAR_HUÌ65536Ö0 +RTC_ALRMAR_HU_0Ì65536Ö0 +RTC_ALRMAR_HU_1Ì65536Ö0 +RTC_ALRMAR_HU_2Ì65536Ö0 +RTC_ALRMAR_HU_3Ì65536Ö0 +RTC_ALRMAR_MNTÌ65536Ö0 +RTC_ALRMAR_MNT_0Ì65536Ö0 +RTC_ALRMAR_MNT_1Ì65536Ö0 +RTC_ALRMAR_MNT_2Ì65536Ö0 +RTC_ALRMAR_MNUÌ65536Ö0 +RTC_ALRMAR_MNU_0Ì65536Ö0 +RTC_ALRMAR_MNU_1Ì65536Ö0 +RTC_ALRMAR_MNU_2Ì65536Ö0 +RTC_ALRMAR_MNU_3Ì65536Ö0 +RTC_ALRMAR_MSK1Ì65536Ö0 +RTC_ALRMAR_MSK2Ì65536Ö0 +RTC_ALRMAR_MSK3Ì65536Ö0 +RTC_ALRMAR_MSK4Ì65536Ö0 +RTC_ALRMAR_PMÌ65536Ö0 +RTC_ALRMAR_STÌ65536Ö0 +RTC_ALRMAR_ST_0Ì65536Ö0 +RTC_ALRMAR_ST_1Ì65536Ö0 +RTC_ALRMAR_ST_2Ì65536Ö0 +RTC_ALRMAR_SUÌ65536Ö0 +RTC_ALRMAR_SU_0Ì65536Ö0 +RTC_ALRMAR_SU_1Ì65536Ö0 +RTC_ALRMAR_SU_2Ì65536Ö0 +RTC_ALRMAR_SU_3Ì65536Ö0 +RTC_ALRMAR_WDSELÌ65536Ö0 +RTC_ALRMASSR_MASKSSÌ65536Ö0 +RTC_ALRMASSR_MASKSS_0Ì65536Ö0 +RTC_ALRMASSR_MASKSS_1Ì65536Ö0 +RTC_ALRMASSR_MASKSS_2Ì65536Ö0 +RTC_ALRMASSR_MASKSS_3Ì65536Ö0 +RTC_ALRMASSR_SSÌ65536Ö0 +RTC_BASEÌ65536Ö0 +RTC_BKP0RÌ65536Ö0 +RTC_BKP1RÌ65536Ö0 +RTC_BKP2RÌ65536Ö0 +RTC_BKP3RÌ65536Ö0 +RTC_BKP4RÌ65536Ö0 +RTC_BKP_NUMBERÌ65536Ö0 +RTC_CALR_CALMÌ65536Ö0 +RTC_CALR_CALM_0Ì65536Ö0 +RTC_CALR_CALM_1Ì65536Ö0 +RTC_CALR_CALM_2Ì65536Ö0 +RTC_CALR_CALM_3Ì65536Ö0 +RTC_CALR_CALM_4Ì65536Ö0 +RTC_CALR_CALM_5Ì65536Ö0 +RTC_CALR_CALM_6Ì65536Ö0 +RTC_CALR_CALM_7Ì65536Ö0 +RTC_CALR_CALM_8Ì65536Ö0 +RTC_CALR_CALPÌ65536Ö0 +RTC_CALR_CALW16Ì65536Ö0 +RTC_CALR_CALW8Ì65536Ö0 +RTC_CR_ADD1HÌ65536Ö0 +RTC_CR_ALRAEÌ65536Ö0 +RTC_CR_ALRAIEÌ65536Ö0 +RTC_CR_BCKÌ65536Ö0 +RTC_CR_BYPSHADÌ65536Ö0 +RTC_CR_COEÌ65536Ö0 +RTC_CR_COSELÌ65536Ö0 +RTC_CR_FMTÌ65536Ö0 +RTC_CR_OSELÌ65536Ö0 +RTC_CR_OSEL_0Ì65536Ö0 +RTC_CR_OSEL_1Ì65536Ö0 +RTC_CR_POLÌ65536Ö0 +RTC_CR_REFCKONÌ65536Ö0 +RTC_CR_SUB1HÌ65536Ö0 +RTC_CR_TSEÌ65536Ö0 +RTC_CR_TSEDGEÌ65536Ö0 +RTC_CR_TSIEÌ65536Ö0 +RTC_DR_DTÌ65536Ö0 +RTC_DR_DT_0Ì65536Ö0 +RTC_DR_DT_1Ì65536Ö0 +RTC_DR_DUÌ65536Ö0 +RTC_DR_DU_0Ì65536Ö0 +RTC_DR_DU_1Ì65536Ö0 +RTC_DR_DU_2Ì65536Ö0 +RTC_DR_DU_3Ì65536Ö0 +RTC_DR_MTÌ65536Ö0 +RTC_DR_MUÌ65536Ö0 +RTC_DR_MU_0Ì65536Ö0 +RTC_DR_MU_1Ì65536Ö0 +RTC_DR_MU_2Ì65536Ö0 +RTC_DR_MU_3Ì65536Ö0 +RTC_DR_WDUÌ65536Ö0 +RTC_DR_WDU_0Ì65536Ö0 +RTC_DR_WDU_1Ì65536Ö0 +RTC_DR_WDU_2Ì65536Ö0 +RTC_DR_YTÌ65536Ö0 +RTC_DR_YT_0Ì65536Ö0 +RTC_DR_YT_1Ì65536Ö0 +RTC_DR_YT_2Ì65536Ö0 +RTC_DR_YT_3Ì65536Ö0 +RTC_DR_YUÌ65536Ö0 +RTC_DR_YU_0Ì65536Ö0 +RTC_DR_YU_1Ì65536Ö0 +RTC_DR_YU_2Ì65536Ö0 +RTC_DR_YU_3Ì65536Ö0 +RTC_ISR_ALRAFÌ65536Ö0 +RTC_ISR_ALRAWFÌ65536Ö0 +RTC_ISR_INITÌ65536Ö0 +RTC_ISR_INITFÌ65536Ö0 +RTC_ISR_INITSÌ65536Ö0 +RTC_ISR_RECALPFÌ65536Ö0 +RTC_ISR_RSFÌ65536Ö0 +RTC_ISR_SHPFÌ65536Ö0 +RTC_ISR_TAMP1FÌ65536Ö0 +RTC_ISR_TAMP2FÌ65536Ö0 +RTC_ISR_TSFÌ65536Ö0 +RTC_ISR_TSOVFÌ65536Ö0 +RTC_PRER_PREDIV_AÌ65536Ö0 +RTC_PRER_PREDIV_SÌ65536Ö0 +RTC_SHIFTR_ADD1SÌ65536Ö0 +RTC_SHIFTR_SUBFSÌ65536Ö0 +RTC_SSR_SSÌ65536Ö0 +RTC_TAFCR_ALARMOUTTYPEÌ65536Ö0 +RTC_TAFCR_TAMP1EÌ65536Ö0 +RTC_TAFCR_TAMP1TRGÌ65536Ö0 +RTC_TAFCR_TAMP2EÌ65536Ö0 +RTC_TAFCR_TAMP2TRGÌ65536Ö0 +RTC_TAFCR_TAMPFLTÌ65536Ö0 +RTC_TAFCR_TAMPFLT_0Ì65536Ö0 +RTC_TAFCR_TAMPFLT_1Ì65536Ö0 +RTC_TAFCR_TAMPFREQÌ65536Ö0 +RTC_TAFCR_TAMPFREQ_0Ì65536Ö0 +RTC_TAFCR_TAMPFREQ_1Ì65536Ö0 +RTC_TAFCR_TAMPFREQ_2Ì65536Ö0 +RTC_TAFCR_TAMPIEÌ65536Ö0 +RTC_TAFCR_TAMPPRCHÌ65536Ö0 +RTC_TAFCR_TAMPPRCH_0Ì65536Ö0 +RTC_TAFCR_TAMPPRCH_1Ì65536Ö0 +RTC_TAFCR_TAMPPUDISÌ65536Ö0 +RTC_TAFCR_TAMPTSÌ65536Ö0 +RTC_TR_HTÌ65536Ö0 +RTC_TR_HT_0Ì65536Ö0 +RTC_TR_HT_1Ì65536Ö0 +RTC_TR_HUÌ65536Ö0 +RTC_TR_HU_0Ì65536Ö0 +RTC_TR_HU_1Ì65536Ö0 +RTC_TR_HU_2Ì65536Ö0 +RTC_TR_HU_3Ì65536Ö0 +RTC_TR_MNTÌ65536Ö0 +RTC_TR_MNT_0Ì65536Ö0 +RTC_TR_MNT_1Ì65536Ö0 +RTC_TR_MNT_2Ì65536Ö0 +RTC_TR_MNUÌ65536Ö0 +RTC_TR_MNU_0Ì65536Ö0 +RTC_TR_MNU_1Ì65536Ö0 +RTC_TR_MNU_2Ì65536Ö0 +RTC_TR_MNU_3Ì65536Ö0 +RTC_TR_PMÌ65536Ö0 +RTC_TR_STÌ65536Ö0 +RTC_TR_ST_0Ì65536Ö0 +RTC_TR_ST_1Ì65536Ö0 +RTC_TR_ST_2Ì65536Ö0 +RTC_TR_SUÌ65536Ö0 +RTC_TR_SU_0Ì65536Ö0 +RTC_TR_SU_1Ì65536Ö0 +RTC_TR_SU_2Ì65536Ö0 +RTC_TR_SU_3Ì65536Ö0 +RTC_TSDR_DTÌ65536Ö0 +RTC_TSDR_DT_0Ì65536Ö0 +RTC_TSDR_DT_1Ì65536Ö0 +RTC_TSDR_DUÌ65536Ö0 +RTC_TSDR_DU_0Ì65536Ö0 +RTC_TSDR_DU_1Ì65536Ö0 +RTC_TSDR_DU_2Ì65536Ö0 +RTC_TSDR_DU_3Ì65536Ö0 +RTC_TSDR_MTÌ65536Ö0 +RTC_TSDR_MUÌ65536Ö0 +RTC_TSDR_MU_0Ì65536Ö0 +RTC_TSDR_MU_1Ì65536Ö0 +RTC_TSDR_MU_2Ì65536Ö0 +RTC_TSDR_MU_3Ì65536Ö0 +RTC_TSDR_WDUÌ65536Ö0 +RTC_TSDR_WDU_0Ì65536Ö0 +RTC_TSDR_WDU_1Ì65536Ö0 +RTC_TSDR_WDU_2Ì65536Ö0 +RTC_TSSSR_SSÌ65536Ö0 +RTC_TSTR_HTÌ65536Ö0 +RTC_TSTR_HT_0Ì65536Ö0 +RTC_TSTR_HT_1Ì65536Ö0 +RTC_TSTR_HUÌ65536Ö0 +RTC_TSTR_HU_0Ì65536Ö0 +RTC_TSTR_HU_1Ì65536Ö0 +RTC_TSTR_HU_2Ì65536Ö0 +RTC_TSTR_HU_3Ì65536Ö0 +RTC_TSTR_MNTÌ65536Ö0 +RTC_TSTR_MNT_0Ì65536Ö0 +RTC_TSTR_MNT_1Ì65536Ö0 +RTC_TSTR_MNT_2Ì65536Ö0 +RTC_TSTR_MNUÌ65536Ö0 +RTC_TSTR_MNU_0Ì65536Ö0 +RTC_TSTR_MNU_1Ì65536Ö0 +RTC_TSTR_MNU_2Ì65536Ö0 +RTC_TSTR_MNU_3Ì65536Ö0 +RTC_TSTR_PMÌ65536Ö0 +RTC_TSTR_STÌ65536Ö0 +RTC_TSTR_ST_0Ì65536Ö0 +RTC_TSTR_ST_1Ì65536Ö0 +RTC_TSTR_ST_2Ì65536Ö0 +RTC_TSTR_SUÌ65536Ö0 +RTC_TSTR_SU_0Ì65536Ö0 +RTC_TSTR_SU_1Ì65536Ö0 +RTC_TSTR_SU_2Ì65536Ö0 +RTC_TSTR_SU_3Ì65536Ö0 +RTC_WPR_KEYÌ65536Ö0 +SCBÌ65536Ö0 +SCB_AIRCR_ENDIANESS_MskÌ65536Ö0 +SCB_AIRCR_ENDIANESS_PosÌ65536Ö0 +SCB_AIRCR_SYSRESETREQ_MskÌ65536Ö0 +SCB_AIRCR_SYSRESETREQ_PosÌ65536Ö0 +SCB_AIRCR_VECTCLRACTIVE_MskÌ65536Ö0 +SCB_AIRCR_VECTCLRACTIVE_PosÌ65536Ö0 +SCB_AIRCR_VECTKEYSTAT_MskÌ65536Ö0 +SCB_AIRCR_VECTKEYSTAT_PosÌ65536Ö0 +SCB_AIRCR_VECTKEY_MskÌ65536Ö0 +SCB_AIRCR_VECTKEY_PosÌ65536Ö0 +SCB_BASEÌ65536Ö0 +SCB_CCR_STKALIGN_MskÌ65536Ö0 +SCB_CCR_STKALIGN_PosÌ65536Ö0 +SCB_CCR_UNALIGN_TRP_MskÌ65536Ö0 +SCB_CCR_UNALIGN_TRP_PosÌ65536Ö0 +SCB_CPUID_ARCHITECTURE_MskÌ65536Ö0 +SCB_CPUID_ARCHITECTURE_PosÌ65536Ö0 +SCB_CPUID_IMPLEMENTER_MskÌ65536Ö0 +SCB_CPUID_IMPLEMENTER_PosÌ65536Ö0 +SCB_CPUID_PARTNO_MskÌ65536Ö0 +SCB_CPUID_PARTNO_PosÌ65536Ö0 +SCB_CPUID_REVISION_MskÌ65536Ö0 +SCB_CPUID_REVISION_PosÌ65536Ö0 +SCB_CPUID_VARIANT_MskÌ65536Ö0 +SCB_CPUID_VARIANT_PosÌ65536Ö0 +SCB_ICSR_ISRPENDING_MskÌ65536Ö0 +SCB_ICSR_ISRPENDING_PosÌ65536Ö0 +SCB_ICSR_ISRPREEMPT_MskÌ65536Ö0 +SCB_ICSR_ISRPREEMPT_PosÌ65536Ö0 +SCB_ICSR_NMIPENDSET_MskÌ65536Ö0 +SCB_ICSR_NMIPENDSET_PosÌ65536Ö0 +SCB_ICSR_PENDSTCLR_MskÌ65536Ö0 +SCB_ICSR_PENDSTCLR_PosÌ65536Ö0 +SCB_ICSR_PENDSTSET_MskÌ65536Ö0 +SCB_ICSR_PENDSTSET_PosÌ65536Ö0 +SCB_ICSR_PENDSVCLR_MskÌ65536Ö0 +SCB_ICSR_PENDSVCLR_PosÌ65536Ö0 +SCB_ICSR_PENDSVSET_MskÌ65536Ö0 +SCB_ICSR_PENDSVSET_PosÌ65536Ö0 +SCB_ICSR_VECTACTIVE_MskÌ65536Ö0 +SCB_ICSR_VECTACTIVE_PosÌ65536Ö0 +SCB_ICSR_VECTPENDING_MskÌ65536Ö0 +SCB_ICSR_VECTPENDING_PosÌ65536Ö0 +SCB_SCR_SEVONPEND_MskÌ65536Ö0 +SCB_SCR_SEVONPEND_PosÌ65536Ö0 +SCB_SCR_SLEEPDEEP_MskÌ65536Ö0 +SCB_SCR_SLEEPDEEP_PosÌ65536Ö0 +SCB_SCR_SLEEPONEXIT_MskÌ65536Ö0 +SCB_SCR_SLEEPONEXIT_PosÌ65536Ö0 +SCB_SHCSR_SVCALLPENDED_MskÌ65536Ö0 +SCB_SHCSR_SVCALLPENDED_PosÌ65536Ö0 +SCS_BASEÌ65536Ö0 +SENDÌ131072Í(str)Ö0 +SET_BITÌ131072Í(REG,BIT)Ö0 +SIG_ATOMIC_MAXÌ65536Ö0 +SIG_ATOMIC_MINÌ65536Ö0 +SIG_ATOMIC_WIDTHÌ65536Ö0 +SIZE_MAXÌ65536Ö0 +SIZE_WIDTHÌ65536Ö0 +SPI1Ì65536Ö0 +SPI1_BASEÌ65536Ö0 +SPI2Ì65536Ö0 +SPI2_BASEÌ65536Ö0 +SPI_CR1_BIDIMODEÌ65536Ö0 +SPI_CR1_BIDIOEÌ65536Ö0 +SPI_CR1_BRÌ65536Ö0 +SPI_CR1_BR_0Ì65536Ö0 +SPI_CR1_BR_1Ì65536Ö0 +SPI_CR1_BR_2Ì65536Ö0 +SPI_CR1_CPHAÌ65536Ö0 +SPI_CR1_CPOLÌ65536Ö0 +SPI_CR1_CRCENÌ65536Ö0 +SPI_CR1_CRCLÌ65536Ö0 +SPI_CR1_CRCNEXTÌ65536Ö0 +SPI_CR1_LSBFIRSTÌ65536Ö0 +SPI_CR1_MSTRÌ65536Ö0 +SPI_CR1_RXONLYÌ65536Ö0 +SPI_CR1_SPEÌ65536Ö0 +SPI_CR1_SSIÌ65536Ö0 +SPI_CR1_SSMÌ65536Ö0 +SPI_CR2_DSÌ65536Ö0 +SPI_CR2_DS_0Ì65536Ö0 +SPI_CR2_DS_1Ì65536Ö0 +SPI_CR2_DS_2Ì65536Ö0 +SPI_CR2_DS_3Ì65536Ö0 +SPI_CR2_ERRIEÌ65536Ö0 +SPI_CR2_FRFÌ65536Ö0 +SPI_CR2_FRXTHÌ65536Ö0 +SPI_CR2_LDMARXÌ65536Ö0 +SPI_CR2_LDMATXÌ65536Ö0 +SPI_CR2_NSSPÌ65536Ö0 +SPI_CR2_RXDMAENÌ65536Ö0 +SPI_CR2_RXNEIEÌ65536Ö0 +SPI_CR2_SSOEÌ65536Ö0 +SPI_CR2_TXDMAENÌ65536Ö0 +SPI_CR2_TXEIEÌ65536Ö0 +SPI_CRCPR_CRCPOLYÌ65536Ö0 +SPI_DR_DRÌ65536Ö0 +SPI_I2SCFGR_CHLENÌ65536Ö0 +SPI_I2SCFGR_CKPOLÌ65536Ö0 +SPI_I2SCFGR_DATLENÌ65536Ö0 +SPI_I2SCFGR_DATLEN_0Ì65536Ö0 +SPI_I2SCFGR_DATLEN_1Ì65536Ö0 +SPI_I2SCFGR_I2SCFGÌ65536Ö0 +SPI_I2SCFGR_I2SCFG_0Ì65536Ö0 +SPI_I2SCFGR_I2SCFG_1Ì65536Ö0 +SPI_I2SCFGR_I2SEÌ65536Ö0 +SPI_I2SCFGR_I2SMODÌ65536Ö0 +SPI_I2SCFGR_I2SSTDÌ65536Ö0 +SPI_I2SCFGR_I2SSTD_0Ì65536Ö0 +SPI_I2SCFGR_I2SSTD_1Ì65536Ö0 +SPI_I2SCFGR_PCMSYNCÌ65536Ö0 +SPI_I2SPR_I2SDIVÌ65536Ö0 +SPI_I2SPR_MCKOEÌ65536Ö0 +SPI_I2SPR_ODDÌ65536Ö0 +SPI_RXCRCR_RXCRCÌ65536Ö0 +SPI_SR_BSYÌ65536Ö0 +SPI_SR_CHSIDEÌ65536Ö0 +SPI_SR_CRCERRÌ65536Ö0 +SPI_SR_FREÌ65536Ö0 +SPI_SR_FRLVLÌ65536Ö0 +SPI_SR_FRLVL_0Ì65536Ö0 +SPI_SR_FRLVL_1Ì65536Ö0 +SPI_SR_FTLVLÌ65536Ö0 +SPI_SR_FTLVL_0Ì65536Ö0 +SPI_SR_FTLVL_1Ì65536Ö0 +SPI_SR_MODFÌ65536Ö0 +SPI_SR_OVRÌ65536Ö0 +SPI_SR_RXNEÌ65536Ö0 +SPI_SR_TXEÌ65536Ö0 +SPI_SR_UDRÌ65536Ö0 +SPI_TXCRCR_TXCRCÌ65536Ö0 +SRAM_BASEÌ65536Ö0 +SSD1306_BufferÌ16384Ö0Ïuint8_t +SSD1306_HEIGHTÌ65536Ö0 +SSD1306_STATEÌ4096Ö0Ïanon_enum_4 +SSD1306_WIDTHÌ65536Ö0 +STM32F0Ì65536Ö0 +STM32F042x6Ì65536Ö0 +STRÌ131072Í(s)Ö0 +STR_HELPERÌ131072Í(s)Ö0 +STR_TOO_LONGÌ4Îanon_enum_3Ö0 +ST_IDLEÌ4Îanon_enum_4Ö0 +ST_NEED4UPDATEÌ4Îanon_enum_4Ö0 +ST_RESETEDÌ4Îanon_enum_4Ö0 +ST_RSTSTARTÌ4Îanon_enum_4Ö0 +ST_UNINITIALIZEDÌ4Îanon_enum_4Ö0 +SYSCFGÌ65536Ö0 +SYSCFG_BASEÌ65536Ö0 +SYSCFG_CFGR1_ADC_DMA_RMPÌ65536Ö0 +SYSCFG_CFGR1_DMA_RMPÌ65536Ö0 +SYSCFG_CFGR1_I2C_FMP_I2C1Ì65536Ö0 +SYSCFG_CFGR1_I2C_FMP_I2C2Ì65536Ö0 +SYSCFG_CFGR1_I2C_FMP_PA10Ì65536Ö0 +SYSCFG_CFGR1_I2C_FMP_PA9Ì65536Ö0 +SYSCFG_CFGR1_I2C_FMP_PB6Ì65536Ö0 +SYSCFG_CFGR1_I2C_FMP_PB7Ì65536Ö0 +SYSCFG_CFGR1_I2C_FMP_PB8Ì65536Ö0 +SYSCFG_CFGR1_I2C_FMP_PB9Ì65536Ö0 +SYSCFG_CFGR1_MEM_MODEÌ65536Ö0 +SYSCFG_CFGR1_MEM_MODE_0Ì65536Ö0 +SYSCFG_CFGR1_MEM_MODE_1Ì65536Ö0 +SYSCFG_CFGR1_PA11_PA12_RMPÌ65536Ö0 +SYSCFG_CFGR1_TIM16_DMA_RMPÌ65536Ö0 +SYSCFG_CFGR1_TIM17_DMA_RMPÌ65536Ö0 +SYSCFG_CFGR1_USART1RX_DMA_RMPÌ65536Ö0 +SYSCFG_CFGR1_USART1TX_DMA_RMPÌ65536Ö0 +SYSCFG_CFGR2_LOCKUP_LOCKÌ65536Ö0 +SYSCFG_CFGR2_PVD_LOCKÌ65536Ö0 +SYSCFG_CFGR2_SRAM_PARITY_LOCKÌ65536Ö0 +SYSCFG_CFGR2_SRAM_PEÌ65536Ö0 +SYSCFG_CFGR2_SRAM_PEFÌ65536Ö0 +SYSCFG_EXTICR1_EXTI0Ì65536Ö0 +SYSCFG_EXTICR1_EXTI0_PAÌ65536Ö0 +SYSCFG_EXTICR1_EXTI0_PBÌ65536Ö0 +SYSCFG_EXTICR1_EXTI0_PCÌ65536Ö0 +SYSCFG_EXTICR1_EXTI0_PDÌ65536Ö0 +SYSCFG_EXTICR1_EXTI0_PEÌ65536Ö0 +SYSCFG_EXTICR1_EXTI0_PFÌ65536Ö0 +SYSCFG_EXTICR1_EXTI1Ì65536Ö0 +SYSCFG_EXTICR1_EXTI1_PAÌ65536Ö0 +SYSCFG_EXTICR1_EXTI1_PBÌ65536Ö0 +SYSCFG_EXTICR1_EXTI1_PCÌ65536Ö0 +SYSCFG_EXTICR1_EXTI1_PDÌ65536Ö0 +SYSCFG_EXTICR1_EXTI1_PEÌ65536Ö0 +SYSCFG_EXTICR1_EXTI1_PFÌ65536Ö0 +SYSCFG_EXTICR1_EXTI2Ì65536Ö0 +SYSCFG_EXTICR1_EXTI2_PAÌ65536Ö0 +SYSCFG_EXTICR1_EXTI2_PBÌ65536Ö0 +SYSCFG_EXTICR1_EXTI2_PCÌ65536Ö0 +SYSCFG_EXTICR1_EXTI2_PDÌ65536Ö0 +SYSCFG_EXTICR1_EXTI2_PEÌ65536Ö0 +SYSCFG_EXTICR1_EXTI2_PFÌ65536Ö0 +SYSCFG_EXTICR1_EXTI3Ì65536Ö0 +SYSCFG_EXTICR1_EXTI3_PAÌ65536Ö0 +SYSCFG_EXTICR1_EXTI3_PBÌ65536Ö0 +SYSCFG_EXTICR1_EXTI3_PCÌ65536Ö0 +SYSCFG_EXTICR1_EXTI3_PDÌ65536Ö0 +SYSCFG_EXTICR1_EXTI3_PEÌ65536Ö0 +SYSCFG_EXTICR1_EXTI3_PFÌ65536Ö0 +SYSCFG_EXTICR2_EXTI4Ì65536Ö0 +SYSCFG_EXTICR2_EXTI4_PAÌ65536Ö0 +SYSCFG_EXTICR2_EXTI4_PBÌ65536Ö0 +SYSCFG_EXTICR2_EXTI4_PCÌ65536Ö0 +SYSCFG_EXTICR2_EXTI4_PDÌ65536Ö0 +SYSCFG_EXTICR2_EXTI4_PEÌ65536Ö0 +SYSCFG_EXTICR2_EXTI4_PFÌ65536Ö0 +SYSCFG_EXTICR2_EXTI5Ì65536Ö0 +SYSCFG_EXTICR2_EXTI5_PAÌ65536Ö0 +SYSCFG_EXTICR2_EXTI5_PBÌ65536Ö0 +SYSCFG_EXTICR2_EXTI5_PCÌ65536Ö0 +SYSCFG_EXTICR2_EXTI5_PDÌ65536Ö0 +SYSCFG_EXTICR2_EXTI5_PEÌ65536Ö0 +SYSCFG_EXTICR2_EXTI5_PFÌ65536Ö0 +SYSCFG_EXTICR2_EXTI6Ì65536Ö0 +SYSCFG_EXTICR2_EXTI6_PAÌ65536Ö0 +SYSCFG_EXTICR2_EXTI6_PBÌ65536Ö0 +SYSCFG_EXTICR2_EXTI6_PCÌ65536Ö0 +SYSCFG_EXTICR2_EXTI6_PDÌ65536Ö0 +SYSCFG_EXTICR2_EXTI6_PEÌ65536Ö0 +SYSCFG_EXTICR2_EXTI6_PFÌ65536Ö0 +SYSCFG_EXTICR2_EXTI7Ì65536Ö0 +SYSCFG_EXTICR2_EXTI7_PAÌ65536Ö0 +SYSCFG_EXTICR2_EXTI7_PBÌ65536Ö0 +SYSCFG_EXTICR2_EXTI7_PCÌ65536Ö0 +SYSCFG_EXTICR2_EXTI7_PDÌ65536Ö0 +SYSCFG_EXTICR2_EXTI7_PEÌ65536Ö0 +SYSCFG_EXTICR2_EXTI7_PFÌ65536Ö0 +SYSCFG_EXTICR3_EXTI10Ì65536Ö0 +SYSCFG_EXTICR3_EXTI10_PAÌ65536Ö0 +SYSCFG_EXTICR3_EXTI10_PBÌ65536Ö0 +SYSCFG_EXTICR3_EXTI10_PCÌ65536Ö0 +SYSCFG_EXTICR3_EXTI10_PDÌ65536Ö0 +SYSCFG_EXTICR3_EXTI10_PEÌ65536Ö0 +SYSCFG_EXTICR3_EXTI10_PFÌ65536Ö0 +SYSCFG_EXTICR3_EXTI11Ì65536Ö0 +SYSCFG_EXTICR3_EXTI11_PAÌ65536Ö0 +SYSCFG_EXTICR3_EXTI11_PBÌ65536Ö0 +SYSCFG_EXTICR3_EXTI11_PCÌ65536Ö0 +SYSCFG_EXTICR3_EXTI11_PDÌ65536Ö0 +SYSCFG_EXTICR3_EXTI11_PEÌ65536Ö0 +SYSCFG_EXTICR3_EXTI8Ì65536Ö0 +SYSCFG_EXTICR3_EXTI8_PAÌ65536Ö0 +SYSCFG_EXTICR3_EXTI8_PBÌ65536Ö0 +SYSCFG_EXTICR3_EXTI8_PCÌ65536Ö0 +SYSCFG_EXTICR3_EXTI8_PDÌ65536Ö0 +SYSCFG_EXTICR3_EXTI8_PEÌ65536Ö0 +SYSCFG_EXTICR3_EXTI9Ì65536Ö0 +SYSCFG_EXTICR3_EXTI9_PAÌ65536Ö0 +SYSCFG_EXTICR3_EXTI9_PBÌ65536Ö0 +SYSCFG_EXTICR3_EXTI9_PCÌ65536Ö0 +SYSCFG_EXTICR3_EXTI9_PDÌ65536Ö0 +SYSCFG_EXTICR3_EXTI9_PEÌ65536Ö0 +SYSCFG_EXTICR3_EXTI9_PFÌ65536Ö0 +SYSCFG_EXTICR4_EXTI12Ì65536Ö0 +SYSCFG_EXTICR4_EXTI12_PAÌ65536Ö0 +SYSCFG_EXTICR4_EXTI12_PBÌ65536Ö0 +SYSCFG_EXTICR4_EXTI12_PCÌ65536Ö0 +SYSCFG_EXTICR4_EXTI12_PDÌ65536Ö0 +SYSCFG_EXTICR4_EXTI12_PEÌ65536Ö0 +SYSCFG_EXTICR4_EXTI13Ì65536Ö0 +SYSCFG_EXTICR4_EXTI13_PAÌ65536Ö0 +SYSCFG_EXTICR4_EXTI13_PBÌ65536Ö0 +SYSCFG_EXTICR4_EXTI13_PCÌ65536Ö0 +SYSCFG_EXTICR4_EXTI13_PDÌ65536Ö0 +SYSCFG_EXTICR4_EXTI13_PEÌ65536Ö0 +SYSCFG_EXTICR4_EXTI14Ì65536Ö0 +SYSCFG_EXTICR4_EXTI14_PAÌ65536Ö0 +SYSCFG_EXTICR4_EXTI14_PBÌ65536Ö0 +SYSCFG_EXTICR4_EXTI14_PCÌ65536Ö0 +SYSCFG_EXTICR4_EXTI14_PDÌ65536Ö0 +SYSCFG_EXTICR4_EXTI14_PEÌ65536Ö0 +SYSCFG_EXTICR4_EXTI15Ì65536Ö0 +SYSCFG_EXTICR4_EXTI15_PAÌ65536Ö0 +SYSCFG_EXTICR4_EXTI15_PBÌ65536Ö0 +SYSCFG_EXTICR4_EXTI15_PCÌ65536Ö0 +SYSCFG_EXTICR4_EXTI15_PDÌ65536Ö0 +SYSCFG_EXTICR4_EXTI15_PEÌ65536Ö0 +StartHSEÌ16Í()Ö0Ïinline void +StartHSI48Ì16Í()Ö0Ïinline void +SysTickÌ65536Ö0 +SysTick_BASEÌ65536Ö0 +SysTick_CALIB_NOREF_MskÌ65536Ö0 +SysTick_CALIB_NOREF_PosÌ65536Ö0 +SysTick_CALIB_SKEW_MskÌ65536Ö0 +SysTick_CALIB_SKEW_PosÌ65536Ö0 +SysTick_CALIB_TENMS_MskÌ65536Ö0 +SysTick_CALIB_TENMS_PosÌ65536Ö0 +SysTick_CTRL_CLKSOURCE_MskÌ65536Ö0 +SysTick_CTRL_CLKSOURCE_PosÌ65536Ö0 +SysTick_CTRL_COUNTFLAG_MskÌ65536Ö0 +SysTick_CTRL_COUNTFLAG_PosÌ65536Ö0 +SysTick_CTRL_ENABLE_MskÌ65536Ö0 +SysTick_CTRL_ENABLE_PosÌ65536Ö0 +SysTick_CTRL_TICKINT_MskÌ65536Ö0 +SysTick_CTRL_TICKINT_PosÌ65536Ö0 +SysTick_LOAD_RELOAD_MskÌ65536Ö0 +SysTick_LOAD_RELOAD_PosÌ65536Ö0 +SysTick_VAL_CURRENT_MskÌ65536Ö0 +SysTick_VAL_CURRENT_PosÌ65536Ö0 +TBUFLENÌ65536Ö0 +TEMP110_CAL_ADDRÌ65536Ö0 +TEMP30_CAL_ADDRÌ65536Ö0 +TIM1Ì65536Ö0 +TIM14Ì65536Ö0 +TIM14_BASEÌ65536Ö0 +TIM14_OR_TI1_RMPÌ65536Ö0 +TIM14_OR_TI1_RMP_0Ì65536Ö0 +TIM14_OR_TI1_RMP_1Ì65536Ö0 +TIM16Ì65536Ö0 +TIM16_BASEÌ65536Ö0 +TIM17Ì65536Ö0 +TIM17_BASEÌ65536Ö0 +TIM1_BASEÌ65536Ö0 +TIM2Ì65536Ö0 +TIM2_BASEÌ65536Ö0 +TIM3Ì65536Ö0 +TIM3_BASEÌ65536Ö0 +TIMEOUT_MSÌ65536Ö0 +TIM_ARR_ARRÌ65536Ö0 +TIM_BDTR_AOEÌ65536Ö0 +TIM_BDTR_BKEÌ65536Ö0 +TIM_BDTR_BKPÌ65536Ö0 +TIM_BDTR_DTGÌ65536Ö0 +TIM_BDTR_DTG_0Ì65536Ö0 +TIM_BDTR_DTG_1Ì65536Ö0 +TIM_BDTR_DTG_2Ì65536Ö0 +TIM_BDTR_DTG_3Ì65536Ö0 +TIM_BDTR_DTG_4Ì65536Ö0 +TIM_BDTR_DTG_5Ì65536Ö0 +TIM_BDTR_DTG_6Ì65536Ö0 +TIM_BDTR_DTG_7Ì65536Ö0 +TIM_BDTR_LOCKÌ65536Ö0 +TIM_BDTR_LOCK_0Ì65536Ö0 +TIM_BDTR_LOCK_1Ì65536Ö0 +TIM_BDTR_MOEÌ65536Ö0 +TIM_BDTR_OSSIÌ65536Ö0 +TIM_BDTR_OSSRÌ65536Ö0 +TIM_CCER_CC1EÌ65536Ö0 +TIM_CCER_CC1NEÌ65536Ö0 +TIM_CCER_CC1NPÌ65536Ö0 +TIM_CCER_CC1PÌ65536Ö0 +TIM_CCER_CC2EÌ65536Ö0 +TIM_CCER_CC2NEÌ65536Ö0 +TIM_CCER_CC2NPÌ65536Ö0 +TIM_CCER_CC2PÌ65536Ö0 +TIM_CCER_CC3EÌ65536Ö0 +TIM_CCER_CC3NEÌ65536Ö0 +TIM_CCER_CC3NPÌ65536Ö0 +TIM_CCER_CC3PÌ65536Ö0 +TIM_CCER_CC4EÌ65536Ö0 +TIM_CCER_CC4NPÌ65536Ö0 +TIM_CCER_CC4PÌ65536Ö0 +TIM_CCMR1_CC1SÌ65536Ö0 +TIM_CCMR1_CC1S_0Ì65536Ö0 +TIM_CCMR1_CC1S_1Ì65536Ö0 +TIM_CCMR1_CC2SÌ65536Ö0 +TIM_CCMR1_CC2S_0Ì65536Ö0 +TIM_CCMR1_CC2S_1Ì65536Ö0 +TIM_CCMR1_IC1FÌ65536Ö0 +TIM_CCMR1_IC1F_0Ì65536Ö0 +TIM_CCMR1_IC1F_1Ì65536Ö0 +TIM_CCMR1_IC1F_2Ì65536Ö0 +TIM_CCMR1_IC1F_3Ì65536Ö0 +TIM_CCMR1_IC1PSCÌ65536Ö0 +TIM_CCMR1_IC1PSC_0Ì65536Ö0 +TIM_CCMR1_IC1PSC_1Ì65536Ö0 +TIM_CCMR1_IC2FÌ65536Ö0 +TIM_CCMR1_IC2F_0Ì65536Ö0 +TIM_CCMR1_IC2F_1Ì65536Ö0 +TIM_CCMR1_IC2F_2Ì65536Ö0 +TIM_CCMR1_IC2F_3Ì65536Ö0 +TIM_CCMR1_IC2PSCÌ65536Ö0 +TIM_CCMR1_IC2PSC_0Ì65536Ö0 +TIM_CCMR1_IC2PSC_1Ì65536Ö0 +TIM_CCMR1_OC1CEÌ65536Ö0 +TIM_CCMR1_OC1FEÌ65536Ö0 +TIM_CCMR1_OC1MÌ65536Ö0 +TIM_CCMR1_OC1M_0Ì65536Ö0 +TIM_CCMR1_OC1M_1Ì65536Ö0 +TIM_CCMR1_OC1M_2Ì65536Ö0 +TIM_CCMR1_OC1PEÌ65536Ö0 +TIM_CCMR1_OC2CEÌ65536Ö0 +TIM_CCMR1_OC2FEÌ65536Ö0 +TIM_CCMR1_OC2MÌ65536Ö0 +TIM_CCMR1_OC2M_0Ì65536Ö0 +TIM_CCMR1_OC2M_1Ì65536Ö0 +TIM_CCMR1_OC2M_2Ì65536Ö0 +TIM_CCMR1_OC2PEÌ65536Ö0 +TIM_CCMR2_CC3SÌ65536Ö0 +TIM_CCMR2_CC3S_0Ì65536Ö0 +TIM_CCMR2_CC3S_1Ì65536Ö0 +TIM_CCMR2_CC4SÌ65536Ö0 +TIM_CCMR2_CC4S_0Ì65536Ö0 +TIM_CCMR2_CC4S_1Ì65536Ö0 +TIM_CCMR2_IC3FÌ65536Ö0 +TIM_CCMR2_IC3F_0Ì65536Ö0 +TIM_CCMR2_IC3F_1Ì65536Ö0 +TIM_CCMR2_IC3F_2Ì65536Ö0 +TIM_CCMR2_IC3F_3Ì65536Ö0 +TIM_CCMR2_IC3PSCÌ65536Ö0 +TIM_CCMR2_IC3PSC_0Ì65536Ö0 +TIM_CCMR2_IC3PSC_1Ì65536Ö0 +TIM_CCMR2_IC4FÌ65536Ö0 +TIM_CCMR2_IC4F_0Ì65536Ö0 +TIM_CCMR2_IC4F_1Ì65536Ö0 +TIM_CCMR2_IC4F_2Ì65536Ö0 +TIM_CCMR2_IC4F_3Ì65536Ö0 +TIM_CCMR2_IC4PSCÌ65536Ö0 +TIM_CCMR2_IC4PSC_0Ì65536Ö0 +TIM_CCMR2_IC4PSC_1Ì65536Ö0 +TIM_CCMR2_OC3CEÌ65536Ö0 +TIM_CCMR2_OC3FEÌ65536Ö0 +TIM_CCMR2_OC3MÌ65536Ö0 +TIM_CCMR2_OC3M_0Ì65536Ö0 +TIM_CCMR2_OC3M_1Ì65536Ö0 +TIM_CCMR2_OC3M_2Ì65536Ö0 +TIM_CCMR2_OC3PEÌ65536Ö0 +TIM_CCMR2_OC4CEÌ65536Ö0 +TIM_CCMR2_OC4FEÌ65536Ö0 +TIM_CCMR2_OC4MÌ65536Ö0 +TIM_CCMR2_OC4M_0Ì65536Ö0 +TIM_CCMR2_OC4M_1Ì65536Ö0 +TIM_CCMR2_OC4M_2Ì65536Ö0 +TIM_CCMR2_OC4PEÌ65536Ö0 +TIM_CCR1_CCR1Ì65536Ö0 +TIM_CCR2_CCR2Ì65536Ö0 +TIM_CCR3_CCR3Ì65536Ö0 +TIM_CCR4_CCR4Ì65536Ö0 +TIM_CNT_CNTÌ65536Ö0 +TIM_CR1_ARPEÌ65536Ö0 +TIM_CR1_CENÌ65536Ö0 +TIM_CR1_CKDÌ65536Ö0 +TIM_CR1_CKD_0Ì65536Ö0 +TIM_CR1_CKD_1Ì65536Ö0 +TIM_CR1_CMSÌ65536Ö0 +TIM_CR1_CMS_0Ì65536Ö0 +TIM_CR1_CMS_1Ì65536Ö0 +TIM_CR1_DIRÌ65536Ö0 +TIM_CR1_OPMÌ65536Ö0 +TIM_CR1_UDISÌ65536Ö0 +TIM_CR1_URSÌ65536Ö0 +TIM_CR2_CCDSÌ65536Ö0 +TIM_CR2_CCPCÌ65536Ö0 +TIM_CR2_CCUSÌ65536Ö0 +TIM_CR2_MMSÌ65536Ö0 +TIM_CR2_MMS_0Ì65536Ö0 +TIM_CR2_MMS_1Ì65536Ö0 +TIM_CR2_MMS_2Ì65536Ö0 +TIM_CR2_OIS1Ì65536Ö0 +TIM_CR2_OIS1NÌ65536Ö0 +TIM_CR2_OIS2Ì65536Ö0 +TIM_CR2_OIS2NÌ65536Ö0 +TIM_CR2_OIS3Ì65536Ö0 +TIM_CR2_OIS3NÌ65536Ö0 +TIM_CR2_OIS4Ì65536Ö0 +TIM_CR2_TI1SÌ65536Ö0 +TIM_DCR_DBAÌ65536Ö0 +TIM_DCR_DBA_0Ì65536Ö0 +TIM_DCR_DBA_1Ì65536Ö0 +TIM_DCR_DBA_2Ì65536Ö0 +TIM_DCR_DBA_3Ì65536Ö0 +TIM_DCR_DBA_4Ì65536Ö0 +TIM_DCR_DBLÌ65536Ö0 +TIM_DCR_DBL_0Ì65536Ö0 +TIM_DCR_DBL_1Ì65536Ö0 +TIM_DCR_DBL_2Ì65536Ö0 +TIM_DCR_DBL_3Ì65536Ö0 +TIM_DCR_DBL_4Ì65536Ö0 +TIM_DIER_BIEÌ65536Ö0 +TIM_DIER_CC1DEÌ65536Ö0 +TIM_DIER_CC1IEÌ65536Ö0 +TIM_DIER_CC2DEÌ65536Ö0 +TIM_DIER_CC2IEÌ65536Ö0 +TIM_DIER_CC3DEÌ65536Ö0 +TIM_DIER_CC3IEÌ65536Ö0 +TIM_DIER_CC4DEÌ65536Ö0 +TIM_DIER_CC4IEÌ65536Ö0 +TIM_DIER_COMDEÌ65536Ö0 +TIM_DIER_COMIEÌ65536Ö0 +TIM_DIER_TDEÌ65536Ö0 +TIM_DIER_TIEÌ65536Ö0 +TIM_DIER_UDEÌ65536Ö0 +TIM_DIER_UIEÌ65536Ö0 +TIM_DMAR_DMABÌ65536Ö0 +TIM_EGR_BGÌ65536Ö0 +TIM_EGR_CC1GÌ65536Ö0 +TIM_EGR_CC2GÌ65536Ö0 +TIM_EGR_CC3GÌ65536Ö0 +TIM_EGR_CC4GÌ65536Ö0 +TIM_EGR_COMGÌ65536Ö0 +TIM_EGR_TGÌ65536Ö0 +TIM_EGR_UGÌ65536Ö0 +TIM_PSC_PSCÌ65536Ö0 +TIM_RCR_REPÌ65536Ö0 +TIM_SMCR_ECEÌ65536Ö0 +TIM_SMCR_ETFÌ65536Ö0 +TIM_SMCR_ETF_0Ì65536Ö0 +TIM_SMCR_ETF_1Ì65536Ö0 +TIM_SMCR_ETF_2Ì65536Ö0 +TIM_SMCR_ETF_3Ì65536Ö0 +TIM_SMCR_ETPÌ65536Ö0 +TIM_SMCR_ETPSÌ65536Ö0 +TIM_SMCR_ETPS_0Ì65536Ö0 +TIM_SMCR_ETPS_1Ì65536Ö0 +TIM_SMCR_MSMÌ65536Ö0 +TIM_SMCR_OCCSÌ65536Ö0 +TIM_SMCR_SMSÌ65536Ö0 +TIM_SMCR_SMS_0Ì65536Ö0 +TIM_SMCR_SMS_1Ì65536Ö0 +TIM_SMCR_SMS_2Ì65536Ö0 +TIM_SMCR_TSÌ65536Ö0 +TIM_SMCR_TS_0Ì65536Ö0 +TIM_SMCR_TS_1Ì65536Ö0 +TIM_SMCR_TS_2Ì65536Ö0 +TIM_SR_BIFÌ65536Ö0 +TIM_SR_CC1IFÌ65536Ö0 +TIM_SR_CC1OFÌ65536Ö0 +TIM_SR_CC2IFÌ65536Ö0 +TIM_SR_CC2OFÌ65536Ö0 +TIM_SR_CC3IFÌ65536Ö0 +TIM_SR_CC3OFÌ65536Ö0 +TIM_SR_CC4IFÌ65536Ö0 +TIM_SR_CC4OFÌ65536Ö0 +TIM_SR_COMIFÌ65536Ö0 +TIM_SR_TIFÌ65536Ö0 +TIM_SR_UIFÌ65536Ö0 +TRUE_INLINEÌ65536Ö0 +TSCÌ65536Ö0 +TSC_BASEÌ65536Ö0 +TSC_CR_AMÌ65536Ö0 +TSC_CR_CTPHÌ65536Ö0 +TSC_CR_CTPH_0Ì65536Ö0 +TSC_CR_CTPH_1Ì65536Ö0 +TSC_CR_CTPH_2Ì65536Ö0 +TSC_CR_CTPH_3Ì65536Ö0 +TSC_CR_CTPLÌ65536Ö0 +TSC_CR_CTPL_0Ì65536Ö0 +TSC_CR_CTPL_1Ì65536Ö0 +TSC_CR_CTPL_2Ì65536Ö0 +TSC_CR_CTPL_3Ì65536Ö0 +TSC_CR_IODEFÌ65536Ö0 +TSC_CR_MCVÌ65536Ö0 +TSC_CR_MCV_0Ì65536Ö0 +TSC_CR_MCV_1Ì65536Ö0 +TSC_CR_MCV_2Ì65536Ö0 +TSC_CR_PGPSCÌ65536Ö0 +TSC_CR_PGPSC_0Ì65536Ö0 +TSC_CR_PGPSC_1Ì65536Ö0 +TSC_CR_PGPSC_2Ì65536Ö0 +TSC_CR_SSDÌ65536Ö0 +TSC_CR_SSD_0Ì65536Ö0 +TSC_CR_SSD_1Ì65536Ö0 +TSC_CR_SSD_2Ì65536Ö0 +TSC_CR_SSD_3Ì65536Ö0 +TSC_CR_SSD_4Ì65536Ö0 +TSC_CR_SSD_5Ì65536Ö0 +TSC_CR_SSD_6Ì65536Ö0 +TSC_CR_SSEÌ65536Ö0 +TSC_CR_SSPSCÌ65536Ö0 +TSC_CR_STARTÌ65536Ö0 +TSC_CR_SYNCPOLÌ65536Ö0 +TSC_CR_TSCEÌ65536Ö0 +TSC_ICR_EOAICÌ65536Ö0 +TSC_ICR_MCEICÌ65536Ö0 +TSC_IER_EOAIEÌ65536Ö0 +TSC_IER_MCEIEÌ65536Ö0 +TSC_IOASCR_G1_IO1Ì65536Ö0 +TSC_IOASCR_G1_IO2Ì65536Ö0 +TSC_IOASCR_G1_IO3Ì65536Ö0 +TSC_IOASCR_G1_IO4Ì65536Ö0 +TSC_IOASCR_G2_IO1Ì65536Ö0 +TSC_IOASCR_G2_IO2Ì65536Ö0 +TSC_IOASCR_G2_IO3Ì65536Ö0 +TSC_IOASCR_G2_IO4Ì65536Ö0 +TSC_IOASCR_G3_IO1Ì65536Ö0 +TSC_IOASCR_G3_IO2Ì65536Ö0 +TSC_IOASCR_G3_IO3Ì65536Ö0 +TSC_IOASCR_G3_IO4Ì65536Ö0 +TSC_IOASCR_G4_IO1Ì65536Ö0 +TSC_IOASCR_G4_IO2Ì65536Ö0 +TSC_IOASCR_G4_IO3Ì65536Ö0 +TSC_IOASCR_G4_IO4Ì65536Ö0 +TSC_IOASCR_G5_IO1Ì65536Ö0 +TSC_IOASCR_G5_IO2Ì65536Ö0 +TSC_IOASCR_G5_IO3Ì65536Ö0 +TSC_IOASCR_G5_IO4Ì65536Ö0 +TSC_IOASCR_G6_IO1Ì65536Ö0 +TSC_IOASCR_G6_IO2Ì65536Ö0 +TSC_IOASCR_G6_IO3Ì65536Ö0 +TSC_IOASCR_G6_IO4Ì65536Ö0 +TSC_IOASCR_G7_IO1Ì65536Ö0 +TSC_IOASCR_G7_IO2Ì65536Ö0 +TSC_IOASCR_G7_IO3Ì65536Ö0 +TSC_IOASCR_G7_IO4Ì65536Ö0 +TSC_IOASCR_G8_IO1Ì65536Ö0 +TSC_IOASCR_G8_IO2Ì65536Ö0 +TSC_IOASCR_G8_IO3Ì65536Ö0 +TSC_IOASCR_G8_IO4Ì65536Ö0 +TSC_IOCCR_G1_IO1Ì65536Ö0 +TSC_IOCCR_G1_IO2Ì65536Ö0 +TSC_IOCCR_G1_IO3Ì65536Ö0 +TSC_IOCCR_G1_IO4Ì65536Ö0 +TSC_IOCCR_G2_IO1Ì65536Ö0 +TSC_IOCCR_G2_IO2Ì65536Ö0 +TSC_IOCCR_G2_IO3Ì65536Ö0 +TSC_IOCCR_G2_IO4Ì65536Ö0 +TSC_IOCCR_G3_IO1Ì65536Ö0 +TSC_IOCCR_G3_IO2Ì65536Ö0 +TSC_IOCCR_G3_IO3Ì65536Ö0 +TSC_IOCCR_G3_IO4Ì65536Ö0 +TSC_IOCCR_G4_IO1Ì65536Ö0 +TSC_IOCCR_G4_IO2Ì65536Ö0 +TSC_IOCCR_G4_IO3Ì65536Ö0 +TSC_IOCCR_G4_IO4Ì65536Ö0 +TSC_IOCCR_G5_IO1Ì65536Ö0 +TSC_IOCCR_G5_IO2Ì65536Ö0 +TSC_IOCCR_G5_IO3Ì65536Ö0 +TSC_IOCCR_G5_IO4Ì65536Ö0 +TSC_IOCCR_G6_IO1Ì65536Ö0 +TSC_IOCCR_G6_IO2Ì65536Ö0 +TSC_IOCCR_G6_IO3Ì65536Ö0 +TSC_IOCCR_G6_IO4Ì65536Ö0 +TSC_IOCCR_G7_IO1Ì65536Ö0 +TSC_IOCCR_G7_IO2Ì65536Ö0 +TSC_IOCCR_G7_IO3Ì65536Ö0 +TSC_IOCCR_G7_IO4Ì65536Ö0 +TSC_IOCCR_G8_IO1Ì65536Ö0 +TSC_IOCCR_G8_IO2Ì65536Ö0 +TSC_IOCCR_G8_IO3Ì65536Ö0 +TSC_IOCCR_G8_IO4Ì65536Ö0 +TSC_IOGCSR_G1EÌ65536Ö0 +TSC_IOGCSR_G1SÌ65536Ö0 +TSC_IOGCSR_G2EÌ65536Ö0 +TSC_IOGCSR_G2SÌ65536Ö0 +TSC_IOGCSR_G3EÌ65536Ö0 +TSC_IOGCSR_G3SÌ65536Ö0 +TSC_IOGCSR_G4EÌ65536Ö0 +TSC_IOGCSR_G4SÌ65536Ö0 +TSC_IOGCSR_G5EÌ65536Ö0 +TSC_IOGCSR_G5SÌ65536Ö0 +TSC_IOGCSR_G6EÌ65536Ö0 +TSC_IOGCSR_G6SÌ65536Ö0 +TSC_IOGCSR_G7EÌ65536Ö0 +TSC_IOGCSR_G7SÌ65536Ö0 +TSC_IOGCSR_G8EÌ65536Ö0 +TSC_IOGCSR_G8SÌ65536Ö0 +TSC_IOGXCR_CNTÌ65536Ö0 +TSC_IOHCR_G1_IO1Ì65536Ö0 +TSC_IOHCR_G1_IO2Ì65536Ö0 +TSC_IOHCR_G1_IO3Ì65536Ö0 +TSC_IOHCR_G1_IO4Ì65536Ö0 +TSC_IOHCR_G2_IO1Ì65536Ö0 +TSC_IOHCR_G2_IO2Ì65536Ö0 +TSC_IOHCR_G2_IO3Ì65536Ö0 +TSC_IOHCR_G2_IO4Ì65536Ö0 +TSC_IOHCR_G3_IO1Ì65536Ö0 +TSC_IOHCR_G3_IO2Ì65536Ö0 +TSC_IOHCR_G3_IO3Ì65536Ö0 +TSC_IOHCR_G3_IO4Ì65536Ö0 +TSC_IOHCR_G4_IO1Ì65536Ö0 +TSC_IOHCR_G4_IO2Ì65536Ö0 +TSC_IOHCR_G4_IO3Ì65536Ö0 +TSC_IOHCR_G4_IO4Ì65536Ö0 +TSC_IOHCR_G5_IO1Ì65536Ö0 +TSC_IOHCR_G5_IO2Ì65536Ö0 +TSC_IOHCR_G5_IO3Ì65536Ö0 +TSC_IOHCR_G5_IO4Ì65536Ö0 +TSC_IOHCR_G6_IO1Ì65536Ö0 +TSC_IOHCR_G6_IO2Ì65536Ö0 +TSC_IOHCR_G6_IO3Ì65536Ö0 +TSC_IOHCR_G6_IO4Ì65536Ö0 +TSC_IOHCR_G7_IO1Ì65536Ö0 +TSC_IOHCR_G7_IO2Ì65536Ö0 +TSC_IOHCR_G7_IO3Ì65536Ö0 +TSC_IOHCR_G7_IO4Ì65536Ö0 +TSC_IOHCR_G8_IO1Ì65536Ö0 +TSC_IOHCR_G8_IO2Ì65536Ö0 +TSC_IOHCR_G8_IO3Ì65536Ö0 +TSC_IOHCR_G8_IO4Ì65536Ö0 +TSC_IOSCR_G1_IO1Ì65536Ö0 +TSC_IOSCR_G1_IO2Ì65536Ö0 +TSC_IOSCR_G1_IO3Ì65536Ö0 +TSC_IOSCR_G1_IO4Ì65536Ö0 +TSC_IOSCR_G2_IO1Ì65536Ö0 +TSC_IOSCR_G2_IO2Ì65536Ö0 +TSC_IOSCR_G2_IO3Ì65536Ö0 +TSC_IOSCR_G2_IO4Ì65536Ö0 +TSC_IOSCR_G3_IO1Ì65536Ö0 +TSC_IOSCR_G3_IO2Ì65536Ö0 +TSC_IOSCR_G3_IO3Ì65536Ö0 +TSC_IOSCR_G3_IO4Ì65536Ö0 +TSC_IOSCR_G4_IO1Ì65536Ö0 +TSC_IOSCR_G4_IO2Ì65536Ö0 +TSC_IOSCR_G4_IO3Ì65536Ö0 +TSC_IOSCR_G4_IO4Ì65536Ö0 +TSC_IOSCR_G5_IO1Ì65536Ö0 +TSC_IOSCR_G5_IO2Ì65536Ö0 +TSC_IOSCR_G5_IO3Ì65536Ö0 +TSC_IOSCR_G5_IO4Ì65536Ö0 +TSC_IOSCR_G6_IO1Ì65536Ö0 +TSC_IOSCR_G6_IO2Ì65536Ö0 +TSC_IOSCR_G6_IO3Ì65536Ö0 +TSC_IOSCR_G6_IO4Ì65536Ö0 +TSC_IOSCR_G7_IO1Ì65536Ö0 +TSC_IOSCR_G7_IO2Ì65536Ö0 +TSC_IOSCR_G7_IO3Ì65536Ö0 +TSC_IOSCR_G7_IO4Ì65536Ö0 +TSC_IOSCR_G8_IO1Ì65536Ö0 +TSC_IOSCR_G8_IO2Ì65536Ö0 +TSC_IOSCR_G8_IO3Ì65536Ö0 +TSC_IOSCR_G8_IO4Ì65536Ö0 +TSC_ISR_EOAFÌ65536Ö0 +TSC_ISR_MCEFÌ65536Ö0 +TSYS01_ADC_READÌ65536Ö0 +TSYS01_ADDR0Ì65536Ö0 +TSYS01_ADDR1Ì65536Ö0 +TSYS01_PROM_ADDR0Ì65536Ö0 +TSYS01_RESETÌ65536Ö0 +TSYS01_START_CONVÌ65536Ö0 +TXstatusÌ4096Ö0Ïanon_enum_3 +TaddrÌ16384Ö0Ïconst uint8_t +TbufÌ16384Ö0Ïchar +TlocÌ16384Ö0Ïuint32_t +TmsÌ16384Ö0Ïvolatile uint32_t +TmsÌ32768Ö0Ïvolatile uint32_t +UARTBUFSZÌ65536Ö0 +UINT16_CÌ131072Í(c)Ö0 +UINT16_MAXÌ65536Ö0 +UINT16_WIDTHÌ65536Ö0 +UINT32_CÌ131072Í(c)Ö0 +UINT32_MAXÌ65536Ö0 +UINT32_WIDTHÌ65536Ö0 +UINT64_CÌ131072Í(c)Ö0 +UINT64_MAXÌ65536Ö0 +UINT64_WIDTHÌ65536Ö0 +UINT8_CÌ131072Í(c)Ö0 +UINT8_MAXÌ65536Ö0 +UINT8_WIDTHÌ65536Ö0 +UINTMAX_CÌ131072Í(c)Ö0 +UINTMAX_MAXÌ65536Ö0 +UINTMAX_WIDTHÌ65536Ö0 +UINTPTR_MAXÌ65536Ö0 +UINTPTR_WIDTHÌ65536Ö0 +UINT_FAST16_MAXÌ65536Ö0 +UINT_FAST16_WIDTHÌ65536Ö0 +UINT_FAST32_MAXÌ65536Ö0 +UINT_FAST32_WIDTHÌ65536Ö0 +UINT_FAST64_MAXÌ65536Ö0 +UINT_FAST64_WIDTHÌ65536Ö0 +UINT_FAST8_MAXÌ65536Ö0 +UINT_FAST8_WIDTHÌ65536Ö0 +UINT_LEAST16_MAXÌ65536Ö0 +UINT_LEAST16_WIDTHÌ65536Ö0 +UINT_LEAST32_MAXÌ65536Ö0 +UINT_LEAST32_WIDTHÌ65536Ö0 +UINT_LEAST64_MAXÌ65536Ö0 +UINT_LEAST64_WIDTHÌ65536Ö0 +UINT_LEAST8_MAXÌ65536Ö0 +UINT_LEAST8_WIDTHÌ65536Ö0 +USART1Ì65536Ö0 +USART1_BASEÌ65536Ö0 +USART2Ì65536Ö0 +USART2_BASEÌ65536Ö0 +USARTNUMÌ65536Ö0 +USARTXÌ65536Ö0 +USART_BRR_DIV_FRACTIONÌ65536Ö0 +USART_BRR_DIV_MANTISSAÌ65536Ö0 +USART_CR1_CMIEÌ65536Ö0 +USART_CR1_DEATÌ65536Ö0 +USART_CR1_DEAT_0Ì65536Ö0 +USART_CR1_DEAT_1Ì65536Ö0 +USART_CR1_DEAT_2Ì65536Ö0 +USART_CR1_DEAT_3Ì65536Ö0 +USART_CR1_DEAT_4Ì65536Ö0 +USART_CR1_DEDTÌ65536Ö0 +USART_CR1_DEDT_0Ì65536Ö0 +USART_CR1_DEDT_1Ì65536Ö0 +USART_CR1_DEDT_2Ì65536Ö0 +USART_CR1_DEDT_3Ì65536Ö0 +USART_CR1_DEDT_4Ì65536Ö0 +USART_CR1_EOBIEÌ65536Ö0 +USART_CR1_IDLEIEÌ65536Ö0 +USART_CR1_MÌ65536Ö0 +USART_CR1_M0Ì65536Ö0 +USART_CR1_M1Ì65536Ö0 +USART_CR1_MMEÌ65536Ö0 +USART_CR1_OVER8Ì65536Ö0 +USART_CR1_PCEÌ65536Ö0 +USART_CR1_PEIEÌ65536Ö0 +USART_CR1_PSÌ65536Ö0 +USART_CR1_REÌ65536Ö0 +USART_CR1_RTOIEÌ65536Ö0 +USART_CR1_RXNEIEÌ65536Ö0 +USART_CR1_TCIEÌ65536Ö0 +USART_CR1_TEÌ65536Ö0 +USART_CR1_TXEIEÌ65536Ö0 +USART_CR1_UEÌ65536Ö0 +USART_CR1_UESMÌ65536Ö0 +USART_CR1_WAKEÌ65536Ö0 +USART_CR2_ABRENÌ65536Ö0 +USART_CR2_ABRMODEÌ65536Ö0 +USART_CR2_ABRMODE_0Ì65536Ö0 +USART_CR2_ABRMODE_1Ì65536Ö0 +USART_CR2_ADDÌ65536Ö0 +USART_CR2_ADDM7Ì65536Ö0 +USART_CR2_ADD_SHIFTÌ65536Ö0 +USART_CR2_ADD_VALÌ131072Í(x)Ö0 +USART_CR2_CLKENÌ65536Ö0 +USART_CR2_CPHAÌ65536Ö0 +USART_CR2_CPOLÌ65536Ö0 +USART_CR2_DATAINVÌ65536Ö0 +USART_CR2_LBCLÌ65536Ö0 +USART_CR2_LBDIEÌ65536Ö0 +USART_CR2_LBDLÌ65536Ö0 +USART_CR2_LINENÌ65536Ö0 +USART_CR2_MSBFIRSTÌ65536Ö0 +USART_CR2_RTOENÌ65536Ö0 +USART_CR2_RXINVÌ65536Ö0 +USART_CR2_STOPÌ65536Ö0 +USART_CR2_STOP_0Ì65536Ö0 +USART_CR2_STOP_1Ì65536Ö0 +USART_CR2_SWAPÌ65536Ö0 +USART_CR2_TXINVÌ65536Ö0 +USART_CR3_CTSEÌ65536Ö0 +USART_CR3_CTSIEÌ65536Ö0 +USART_CR3_DDREÌ65536Ö0 +USART_CR3_DEMÌ65536Ö0 +USART_CR3_DEPÌ65536Ö0 +USART_CR3_DMARÌ65536Ö0 +USART_CR3_DMATÌ65536Ö0 +USART_CR3_EIEÌ65536Ö0 +USART_CR3_HDSELÌ65536Ö0 +USART_CR3_IRENÌ65536Ö0 +USART_CR3_IRLPÌ65536Ö0 +USART_CR3_NACKÌ65536Ö0 +USART_CR3_ONEBITÌ65536Ö0 +USART_CR3_OVRDISÌ65536Ö0 +USART_CR3_RTSEÌ65536Ö0 +USART_CR3_SCARCNTÌ65536Ö0 +USART_CR3_SCARCNT_0Ì65536Ö0 +USART_CR3_SCARCNT_1Ì65536Ö0 +USART_CR3_SCARCNT_2Ì65536Ö0 +USART_CR3_SCENÌ65536Ö0 +USART_CR3_WUFIEÌ65536Ö0 +USART_CR3_WUSÌ65536Ö0 +USART_CR3_WUS_0Ì65536Ö0 +USART_CR3_WUS_1Ì65536Ö0 +USART_GTPR_GTÌ65536Ö0 +USART_GTPR_PSCÌ65536Ö0 +USART_ICR_CMCFÌ65536Ö0 +USART_ICR_CTSCFÌ65536Ö0 +USART_ICR_EOBCFÌ65536Ö0 +USART_ICR_FECFÌ65536Ö0 +USART_ICR_IDLECFÌ65536Ö0 +USART_ICR_LBDCFÌ65536Ö0 +USART_ICR_NCFÌ65536Ö0 +USART_ICR_ORECFÌ65536Ö0 +USART_ICR_PECFÌ65536Ö0 +USART_ICR_RTOCFÌ65536Ö0 +USART_ICR_TCCFÌ65536Ö0 +USART_ICR_WUCFÌ65536Ö0 +USART_ISR_ABREÌ65536Ö0 +USART_ISR_ABRFÌ65536Ö0 +USART_ISR_BUSYÌ65536Ö0 +USART_ISR_CMFÌ65536Ö0 +USART_ISR_CTSÌ65536Ö0 +USART_ISR_CTSIFÌ65536Ö0 +USART_ISR_EOBFÌ65536Ö0 +USART_ISR_FEÌ65536Ö0 +USART_ISR_IDLEÌ65536Ö0 +USART_ISR_LBDFÌ65536Ö0 +USART_ISR_NEÌ65536Ö0 +USART_ISR_OREÌ65536Ö0 +USART_ISR_PEÌ65536Ö0 +USART_ISR_REACKÌ65536Ö0 +USART_ISR_RTOFÌ65536Ö0 +USART_ISR_RWUÌ65536Ö0 +USART_ISR_RXNEÌ65536Ö0 +USART_ISR_SBKFÌ65536Ö0 +USART_ISR_TCÌ65536Ö0 +USART_ISR_TEACKÌ65536Ö0 +USART_ISR_TXEÌ65536Ö0 +USART_ISR_WUFÌ65536Ö0 +USART_RDR_RDRÌ65536Ö0 +USART_RQR_ABRRQÌ65536Ö0 +USART_RQR_MMRQÌ65536Ö0 +USART_RQR_RXFRQÌ65536Ö0 +USART_RQR_SBKRQÌ65536Ö0 +USART_RQR_TXFRQÌ65536Ö0 +USART_RTOR_BLENÌ65536Ö0 +USART_RTOR_RTOÌ65536Ö0 +USART_TDR_TDRÌ65536Ö0 +USBÌ65536Ö0 +USB_BASEÌ65536Ö0 +USB_BCDRÌ65536Ö0 +USB_BCDR_BCDENÌ65536Ö0 +USB_BCDR_DCDENÌ65536Ö0 +USB_BCDR_DCDETÌ65536Ö0 +USB_BCDR_DPPUÌ65536Ö0 +USB_BCDR_PDENÌ65536Ö0 +USB_BCDR_PDETÌ65536Ö0 +USB_BCDR_PS2DETÌ65536Ö0 +USB_BCDR_SDENÌ65536Ö0 +USB_BCDR_SDETÌ65536Ö0 +USB_BTABLEÌ65536Ö0 +USB_CLR_CTRÌ65536Ö0 +USB_CLR_ERRÌ65536Ö0 +USB_CLR_ESOFÌ65536Ö0 +USB_CLR_L1REQÌ65536Ö0 +USB_CLR_PMAOVRÌ65536Ö0 +USB_CLR_RESETÌ65536Ö0 +USB_CLR_SOFÌ65536Ö0 +USB_CLR_SUSPÌ65536Ö0 +USB_CLR_WKUPÌ65536Ö0 +USB_CNTRÌ65536Ö0 +USB_CNTR_CTRMÌ65536Ö0 +USB_CNTR_ERRMÌ65536Ö0 +USB_CNTR_ESOFMÌ65536Ö0 +USB_CNTR_FRESÌ65536Ö0 +USB_CNTR_FSUSPÌ65536Ö0 +USB_CNTR_L1REQMÌ65536Ö0 +USB_CNTR_L1RESUMEÌ65536Ö0 +USB_CNTR_LPMODEÌ65536Ö0 +USB_CNTR_PDWNÌ65536Ö0 +USB_CNTR_PMAOVRMÌ65536Ö0 +USB_CNTR_RESETMÌ65536Ö0 +USB_CNTR_RESUMEÌ65536Ö0 +USB_CNTR_SOFMÌ65536Ö0 +USB_CNTR_SUSPMÌ65536Ö0 +USB_CNTR_WKUPMÌ65536Ö0 +USB_DADDRÌ65536Ö0 +USB_DADDR_ADDÌ65536Ö0 +USB_DADDR_EFÌ65536Ö0 +USB_EP0RÌ65536Ö0 +USB_EP1RÌ65536Ö0 +USB_EP2RÌ65536Ö0 +USB_EP3RÌ65536Ö0 +USB_EP4RÌ65536Ö0 +USB_EP5RÌ65536Ö0 +USB_EP6RÌ65536Ö0 +USB_EP7RÌ65536Ö0 +USB_EPADDR_FIELDÌ65536Ö0 +USB_EPKIND_MASKÌ65536Ö0 +USB_EPREG_MASKÌ65536Ö0 +USB_EPRX_DTOG1Ì65536Ö0 +USB_EPRX_DTOG2Ì65536Ö0 +USB_EPRX_DTOGMASKÌ65536Ö0 +USB_EPRX_STATÌ65536Ö0 +USB_EPTX_DTOG1Ì65536Ö0 +USB_EPTX_DTOG2Ì65536Ö0 +USB_EPTX_DTOGMASKÌ65536Ö0 +USB_EPTX_STATÌ65536Ö0 +USB_EP_BULKÌ65536Ö0 +USB_EP_CONTROLÌ65536Ö0 +USB_EP_CTR_RXÌ65536Ö0 +USB_EP_CTR_TXÌ65536Ö0 +USB_EP_DTOG_RXÌ65536Ö0 +USB_EP_DTOG_TXÌ65536Ö0 +USB_EP_INTERRUPTÌ65536Ö0 +USB_EP_ISOCHRONOUSÌ65536Ö0 +USB_EP_KINDÌ65536Ö0 +USB_EP_RX_DISÌ65536Ö0 +USB_EP_RX_NAKÌ65536Ö0 +USB_EP_RX_STALLÌ65536Ö0 +USB_EP_RX_VALIDÌ65536Ö0 +USB_EP_SETUPÌ65536Ö0 +USB_EP_TX_DISÌ65536Ö0 +USB_EP_TX_NAKÌ65536Ö0 +USB_EP_TX_STALLÌ65536Ö0 +USB_EP_TX_VALIDÌ65536Ö0 +USB_EP_TYPE_MASKÌ65536Ö0 +USB_EP_T_FIELDÌ65536Ö0 +USB_EP_T_MASKÌ65536Ö0 +USB_FNRÌ65536Ö0 +USB_FNR_FNÌ65536Ö0 +USB_FNR_LCKÌ65536Ö0 +USB_FNR_LSOFÌ65536Ö0 +USB_FNR_RXDMÌ65536Ö0 +USB_FNR_RXDPÌ65536Ö0 +USB_ISTRÌ65536Ö0 +USB_ISTR_CTRÌ65536Ö0 +USB_ISTR_DIRÌ65536Ö0 +USB_ISTR_EP_IDÌ65536Ö0 +USB_ISTR_ERRÌ65536Ö0 +USB_ISTR_ESOFÌ65536Ö0 +USB_ISTR_L1REQÌ65536Ö0 +USB_ISTR_PMAOVRÌ65536Ö0 +USB_ISTR_RESETÌ65536Ö0 +USB_ISTR_SOFÌ65536Ö0 +USB_ISTR_SUSPÌ65536Ö0 +USB_ISTR_WKUPÌ65536Ö0 +USB_LPMCSRÌ65536Ö0 +USB_LPMCSR_BESLÌ65536Ö0 +USB_LPMCSR_LMPENÌ65536Ö0 +USB_LPMCSR_LPMACKÌ65536Ö0 +USB_LPMCSR_REMWAKEÌ65536Ö0 +USB_PMAADDRÌ65536Ö0 +VDDIO2_IRQHandlerÌ65536Ö0 +VDDIO2_IRQnÌ65536Ö0 +VREFINT_CAL_ADDRÌ65536Ö0 +WAIT_TIMEÌ65536Ö0 +WCHAR_MAXÌ65536Ö0 +WCHAR_MINÌ65536Ö0 +WCHAR_WIDTHÌ65536Ö0 +WEAKÌ65536Ö0 +WINT_MAXÌ65536Ö0 +WINT_MINÌ65536Ö0 +WINT_WIDTHÌ65536Ö0 +WRITE_REGÌ131072Í(REG,VAL)Ö0 +WWDGÌ65536Ö0 +WWDG_BASEÌ65536Ö0 +WWDG_CFR_EWIÌ65536Ö0 +WWDG_CFR_WÌ65536Ö0 +WWDG_CFR_W0Ì65536Ö0 +WWDG_CFR_W1Ì65536Ö0 +WWDG_CFR_W2Ì65536Ö0 +WWDG_CFR_W3Ì65536Ö0 +WWDG_CFR_W4Ì65536Ö0 +WWDG_CFR_W5Ì65536Ö0 +WWDG_CFR_W6Ì65536Ö0 +WWDG_CFR_WDGTBÌ65536Ö0 +WWDG_CFR_WDGTB0Ì65536Ö0 +WWDG_CFR_WDGTB1Ì65536Ö0 +WWDG_CR_TÌ65536Ö0 +WWDG_CR_T0Ì65536Ö0 +WWDG_CR_T1Ì65536Ö0 +WWDG_CR_T2Ì65536Ö0 +WWDG_CR_T3Ì65536Ö0 +WWDG_CR_T4Ì65536Ö0 +WWDG_CR_T5Ì65536Ö0 +WWDG_CR_T6Ì65536Ö0 +WWDG_CR_WDGAÌ65536Ö0 +WWDG_SR_EWIFÌ65536Ö0 +_ATFILE_SOURCEÌ65536Ö0 +_BITS_STDINT_INTN_HÌ65536Ö0 +_BITS_STDINT_UINTN_HÌ65536Ö0 +_BITS_STRING_FORTIFIED_HÌ65536Ö0 +_BITS_TYPESIZES_HÌ65536Ö0 +_BITS_TYPES_HÌ65536Ö0 +_BITS_TYPES_LOCALE_T_HÌ65536Ö0 +_BITS_TYPES___LOCALE_T_HÌ65536Ö0 +_BITS_WCHAR_HÌ65536Ö0 +_BIT_SHIFTÌ131072Í(IRQn)Ö0 +_BSD_SIZE_T_Ì65536Ö0 +_BSD_SIZE_T_DEFINED_Ì65536Ö0 +_DEFAULT_SOURCEÌ65536Ö0 +_FEATURES_HÌ65536Ö0 +_FORTIFY_SOURCEÌ65536Ö0 +_GCC_SIZE_TÌ65536Ö0 +_GCC_WRAP_STDINT_HÌ65536Ö0 +_GNU_SOURCEÌ65536Ö0 +_IP_IDXÌ131072Í(IRQn)Ö0 +_ISOC11_SOURCEÌ65536Ö0 +_ISOC95_SOURCEÌ65536Ö0 +_ISOC99_SOURCEÌ65536Ö0 +_LARGEFILE64_SOURCEÌ65536Ö0 +_LARGEFILE_SOURCEÌ65536Ö0 +_LP64Ì65536Ö0 +_POSIX_C_SOURCEÌ65536Ö0 +_POSIX_SOURCEÌ65536Ö0 +_SHP_IDXÌ131072Í(IRQn)Ö0 +_SIZET_Ì65536Ö0 +_SIZE_TÌ65536Ö0 +_SIZE_T_Ì65536Ö0 +_SIZE_T_DECLAREDÌ65536Ö0 +_SIZE_T_DEFINEDÌ65536Ö0 +_SIZE_T_DEFINED_Ì65536Ö0 +_STDC_PREDEF_HÌ65536Ö0 +_STDINT_HÌ65536Ö0 +_STRINGS_HÌ65536Ö0 +_STRING_HÌ65536Ö0 +_SYS_CDEFS_HÌ65536Ö0 +_SYS_SIZE_T_HÌ65536Ö0 +_T_SIZEÌ65536Ö0 +_T_SIZE_Ì65536Ö0 +_XOPEN_SOURCEÌ65536Ö0 +_XOPEN_SOURCE_EXTENDEDÌ65536Ö0 +__ASMÌ65536Ö0 +__ASMNAMEÌ131072Í(cname)Ö0 +__ASMNAME2Ì131072Í(prefix,cname)Ö0 +__ATOMIC_ACQUIREÌ65536Ö0 +__ATOMIC_ACQ_RELÌ65536Ö0 +__ATOMIC_CONSUMEÌ65536Ö0 +__ATOMIC_HLE_ACQUIREÌ65536Ö0 +__ATOMIC_HLE_RELEASEÌ65536Ö0 +__ATOMIC_RELAXEDÌ65536Ö0 +__ATOMIC_RELEASEÌ65536Ö0 +__ATOMIC_SEQ_CSTÌ65536Ö0 +__BEGIN_DECLSÌ65536Ö0 +__BIGGEST_ALIGNMENT__Ì65536Ö0 +__BKPTÌ131072Í(value)Ö0 +__BLKCNT64_T_TYPEÌ65536Ö0 +__BLKCNT_T_TYPEÌ65536Ö0 +__BLKSIZE_T_TYPEÌ65536Ö0 +__BYTE_ORDER__Ì65536Ö0 +__CHAR16_TYPE__Ì65536Ö0 +__CHAR32_TYPE__Ì65536Ö0 +__CHAR_BIT__Ì65536Ö0 +__CLOCKID_T_TYPEÌ65536Ö0 +__CLOCK_T_TYPEÌ65536Ö0 +__CM0_CMSIS_VERSIONÌ65536Ö0 +__CM0_CMSIS_VERSION_MAINÌ65536Ö0 +__CM0_CMSIS_VERSION_SUBÌ65536Ö0 +__CM0_REVÌ65536Ö0 +__CMSIS_GCC_OUT_REGÌ131072Í(r)Ö0 +__CMSIS_GCC_USE_REGÌ131072Í(r)Ö0 +__CONCATÌ131072Í(x,y)Ö0 +__CORE_CM0_H_DEPENDANTÌ65536Ö0 +__CORE_CM0_H_GENERICÌ65536Ö0 +__CORE_CMFUNC_HÌ65536Ö0 +__CORE_CMINSTR_HÌ65536Ö0 +__CORRECT_ISO_CPP_STRINGS_H_PROTOÌ65536Ö0 +__CORRECT_ISO_CPP_STRING_H_PROTOÌ65536Ö0 +__CORTEX_MÌ65536Ö0 +__CPU_MASK_TYPEÌ65536Ö0 +__DADDR_T_TYPEÌ65536Ö0 +__DBL_DECIMAL_DIG__Ì65536Ö0 +__DBL_DENORM_MIN__Ì65536Ö0 +__DBL_DIG__Ì65536Ö0 +__DBL_EPSILON__Ì65536Ö0 +__DBL_HAS_DENORM__Ì65536Ö0 +__DBL_HAS_INFINITY__Ì65536Ö0 +__DBL_HAS_QUIET_NAN__Ì65536Ö0 +__DBL_MANT_DIG__Ì65536Ö0 +__DBL_MAX_10_EXP__Ì65536Ö0 +__DBL_MAX_EXP__Ì65536Ö0 +__DBL_MAX__Ì65536Ö0 +__DBL_MIN_10_EXP__Ì65536Ö0 +__DBL_MIN_EXP__Ì65536Ö0 +__DBL_MIN__Ì65536Ö0 +__DEC128_EPSILON__Ì65536Ö0 +__DEC128_MANT_DIG__Ì65536Ö0 +__DEC128_MAX_EXP__Ì65536Ö0 +__DEC128_MAX__Ì65536Ö0 +__DEC128_MIN_EXP__Ì65536Ö0 +__DEC128_MIN__Ì65536Ö0 +__DEC128_SUBNORMAL_MIN__Ì65536Ö0 +__DEC32_EPSILON__Ì65536Ö0 +__DEC32_MANT_DIG__Ì65536Ö0 +__DEC32_MAX_EXP__Ì65536Ö0 +__DEC32_MAX__Ì65536Ö0 +__DEC32_MIN_EXP__Ì65536Ö0 +__DEC32_MIN__Ì65536Ö0 +__DEC32_SUBNORMAL_MIN__Ì65536Ö0 +__DEC64_EPSILON__Ì65536Ö0 +__DEC64_MANT_DIG__Ì65536Ö0 +__DEC64_MAX_EXP__Ì65536Ö0 +__DEC64_MAX__Ì65536Ö0 +__DEC64_MIN_EXP__Ì65536Ö0 +__DEC64_MIN__Ì65536Ö0 +__DEC64_SUBNORMAL_MIN__Ì65536Ö0 +__DECIMAL_BID_FORMAT__Ì65536Ö0 +__DECIMAL_DIG__Ì65536Ö0 +__DEC_EVAL_METHOD__Ì65536Ö0 +__DEPRECATEDÌ65536Ö0 +__DEV_T_TYPEÌ65536Ö0 +__ELF__Ì65536Ö0 +__END_DECLSÌ65536Ö0 +__EXCEPTIONSÌ65536Ö0 +__FD_SETSIZEÌ65536Ö0 +__FINITE_MATH_ONLY__Ì65536Ö0 +__FLOAT_WORD_ORDER__Ì65536Ö0 +__FLT_DECIMAL_DIG__Ì65536Ö0 +__FLT_DENORM_MIN__Ì65536Ö0 +__FLT_DIG__Ì65536Ö0 +__FLT_EPSILON__Ì65536Ö0 +__FLT_EVAL_METHOD__Ì65536Ö0 +__FLT_HAS_DENORM__Ì65536Ö0 +__FLT_HAS_INFINITY__Ì65536Ö0 +__FLT_HAS_QUIET_NAN__Ì65536Ö0 +__FLT_MANT_DIG__Ì65536Ö0 +__FLT_MAX_10_EXP__Ì65536Ö0 +__FLT_MAX_EXP__Ì65536Ö0 +__FLT_MAX__Ì65536Ö0 +__FLT_MIN_10_EXP__Ì65536Ö0 +__FLT_MIN_EXP__Ì65536Ö0 +__FLT_MIN__Ì65536Ö0 +__FLT_RADIX__Ì65536Ö0 +__FPU_USEDÌ65536Ö0 +__FSBLKCNT64_T_TYPEÌ65536Ö0 +__FSBLKCNT_T_TYPEÌ65536Ö0 +__FSFILCNT64_T_TYPEÌ65536Ö0 +__FSFILCNT_T_TYPEÌ65536Ö0 +__FSID_T_TYPEÌ65536Ö0 +__FSWORD_T_TYPEÌ65536Ö0 +__FXSR__Ì65536Ö0 +__GCC_ASM_FLAG_OUTPUTS__Ì65536Ö0 +__GCC_ATOMIC_BOOL_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_CHAR16_T_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_CHAR32_T_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_CHAR_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_INT_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_LLONG_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_LONG_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_POINTER_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_SHORT_LOCK_FREEÌ65536Ö0 +__GCC_ATOMIC_TEST_AND_SET_TRUEVALÌ65536Ö0 +__GCC_ATOMIC_WCHAR_T_LOCK_FREEÌ65536Ö0 +__GCC_HAVE_DWARF2_CFI_ASMÌ65536Ö0 +__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1Ì65536Ö0 +__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2Ì65536Ö0 +__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4Ì65536Ö0 +__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8Ì65536Ö0 +__GCC_IEC_559Ì65536Ö0 +__GCC_IEC_559_COMPLEXÌ65536Ö0 +__GID_T_TYPEÌ65536Ö0 +__GLIBCXX_BITSIZE_INT_N_0Ì65536Ö0 +__GLIBCXX_TYPE_INT_N_0Ì65536Ö0 +__GLIBC_INTERNAL_STARTING_HEADER_IMPLEMENTATIONÌ65536Ö0 +__GLIBC_MINOR__Ì65536Ö0 +__GLIBC_PREREQÌ131072Í(maj,min)Ö0 +__GLIBC_USEÌ131072Í(F)Ö0 +__GLIBC_USE_DEPRECATED_GETSÌ65536Ö0 +__GLIBC_USE_IEC_60559_BFP_EXTÌ65536Ö0 +__GLIBC_USE_IEC_60559_FUNCS_EXTÌ65536Ö0 +__GLIBC_USE_IEC_60559_TYPES_EXTÌ65536Ö0 +__GLIBC_USE_LIB_EXT2Ì65536Ö0 +__GLIBC__Ì65536Ö0 +__GNUC_MINOR__Ì65536Ö0 +__GNUC_PATCHLEVEL__Ì65536Ö0 +__GNUC_PREREQÌ131072Í(maj,min)Ö0 +__GNUC_STDC_INLINE__Ì65536Ö0 +__GNUC__Ì65536Ö0 +__GNUG__Ì65536Ö0 +__GNU_LIBRARY__Ì65536Ö0 +__GXX_ABI_VERSIONÌ65536Ö0 +__GXX_EXPERIMENTAL_CXX0X__Ì65536Ö0 +__GXX_RTTIÌ65536Ö0 +__GXX_WEAK__Ì65536Ö0 +__HARDWARE_H__Ì65536Ö0 +__HAVE_GENERIC_SELECTIONÌ65536Ö0 +__IÌ65536Ö0 +__ID_T_TYPEÌ65536Ö0 +__INLINEÌ65536Ö0 +__INO64_T_TYPEÌ65536Ö0 +__INO_T_MATCHES_INO64_TÌ65536Ö0 +__INO_T_TYPEÌ65536Ö0 +__INT16_CÌ131072Í(c)Ö0 +__INT16_MAX__Ì65536Ö0 +__INT16_TYPE__Ì65536Ö0 +__INT32_CÌ131072Í(c)Ö0 +__INT32_MAX__Ì65536Ö0 +__INT32_TYPE__Ì65536Ö0 +__INT64_CÌ131072Í(c)Ö0 +__INT64_MAX__Ì65536Ö0 +__INT64_TYPE__Ì65536Ö0 +__INT8_CÌ131072Í(c)Ö0 +__INT8_MAX__Ì65536Ö0 +__INT8_TYPE__Ì65536Ö0 +__INTMAX_CÌ131072Í(c)Ö0 +__INTMAX_MAX__Ì65536Ö0 +__INTMAX_TYPE__Ì65536Ö0 +__INTPTR_MAX__Ì65536Ö0 +__INTPTR_TYPE__Ì65536Ö0 +__INT_FAST16_MAX__Ì65536Ö0 +__INT_FAST16_TYPE__Ì65536Ö0 +__INT_FAST32_MAX__Ì65536Ö0 +__INT_FAST32_TYPE__Ì65536Ö0 +__INT_FAST64_MAX__Ì65536Ö0 +__INT_FAST64_TYPE__Ì65536Ö0 +__INT_FAST8_MAX__Ì65536Ö0 +__INT_FAST8_TYPE__Ì65536Ö0 +__INT_LEAST16_MAX__Ì65536Ö0 +__INT_LEAST16_TYPE__Ì65536Ö0 +__INT_LEAST32_MAX__Ì65536Ö0 +__INT_LEAST32_TYPE__Ì65536Ö0 +__INT_LEAST64_MAX__Ì65536Ö0 +__INT_LEAST64_TYPE__Ì65536Ö0 +__INT_LEAST8_MAX__Ì65536Ö0 +__INT_LEAST8_TYPE__Ì65536Ö0 +__INT_MAX__Ì65536Ö0 +__IOÌ65536Ö0 +__KERNEL_STRICT_NAMESÌ65536Ö0 +__KEY_T_TYPEÌ65536Ö0 +__LDBL_DENORM_MIN__Ì65536Ö0 +__LDBL_DIG__Ì65536Ö0 +__LDBL_EPSILON__Ì65536Ö0 +__LDBL_HAS_DENORM__Ì65536Ö0 +__LDBL_HAS_INFINITY__Ì65536Ö0 +__LDBL_HAS_QUIET_NAN__Ì65536Ö0 +__LDBL_MANT_DIG__Ì65536Ö0 +__LDBL_MAX_10_EXP__Ì65536Ö0 +__LDBL_MAX_EXP__Ì65536Ö0 +__LDBL_MAX__Ì65536Ö0 +__LDBL_MIN_10_EXP__Ì65536Ö0 +__LDBL_MIN_EXP__Ì65536Ö0 +__LDBL_MIN__Ì65536Ö0 +__LDBL_REDIRÌ131072Í(name,proto)Ö0 +__LDBL_REDIR1Ì131072Í(name,proto,alias)Ö0 +__LDBL_REDIR1_NTHÌ131072Í(name,proto,alias)Ö0 +__LDBL_REDIR_DECLÌ131072Í(name)Ö0 +__LDBL_REDIR_NTHÌ131072Í(name,proto)Ö0 +__LEAFÌ65536Ö0 +__LEAF_ATTRÌ65536Ö0 +__LONG_LONG_MAX__Ì65536Ö0 +__LONG_MAX__Ì65536Ö0 +__LP64__Ì65536Ö0 +__MMX__Ì65536Ö0 +__MODE_T_TYPEÌ65536Ö0 +__MPU_PRESENTÌ65536Ö0 +__NLINK_T_TYPEÌ65536Ö0 +__NTHÌ131072Í(fct)Ö0 +__NTHNLÌ131072Í(fct)Ö0 +__NVIC_PRIO_BITSÌ65536Ö0 +__OÌ65536Ö0 +__OFF64_T_TYPEÌ65536Ö0 +__OFF_T_MATCHES_OFF64_TÌ65536Ö0 +__OFF_T_TYPEÌ65536Ö0 +__OPTIMIZE__Ì65536Ö0 +__ORDER_BIG_ENDIAN__Ì65536Ö0 +__ORDER_LITTLE_ENDIAN__Ì65536Ö0 +__ORDER_PDP_ENDIAN__Ì65536Ö0 +__PÌ65536Ö0 +__PÌ131072Í(args)Ö0 +__PIC__Ì65536Ö0 +__PID_T_TYPEÌ65536Ö0 +__PIE__Ì65536Ö0 +__PMTÌ65536Ö0 +__PMTÌ131072Í(args)Ö0 +__PRAGMA_REDEFINE_EXTNAMEÌ65536Ö0 +__PTRDIFF_MAX__Ì65536Ö0 +__PTRDIFF_TYPE__Ì65536Ö0 +__REDIRECTÌ131072Í(name,proto,alias)Ö0 +__REDIRECT_LDBLÌ131072Í(name,proto,alias)Ö0 +__REDIRECT_NTHÌ131072Í(name,proto,alias)Ö0 +__REDIRECT_NTHNLÌ131072Í(name,proto,alias)Ö0 +__REDIRECT_NTH_LDBLÌ131072Í(name,proto,alias)Ö0 +__REGISTER_PREFIX__Ì65536Ö0 +__RLIM64_T_TYPEÌ65536Ö0 +__RLIM_T_MATCHES_RLIM64_TÌ65536Ö0 +__RLIM_T_TYPEÌ65536Ö0 +__S16_TYPEÌ65536Ö0 +__S32_TYPEÌ65536Ö0 +__S64_TYPEÌ65536Ö0 +__SCHAR_MAX__Ì65536Ö0 +__SEG_FSÌ65536Ö0 +__SEG_GSÌ65536Ö0 +__SHRT_MAX__Ì65536Ö0 +__SIG_ATOMIC_MAX__Ì65536Ö0 +__SIG_ATOMIC_MIN__Ì65536Ö0 +__SIG_ATOMIC_TYPE__Ì65536Ö0 +__SIZEOF_DOUBLE__Ì65536Ö0 +__SIZEOF_FLOAT128__Ì65536Ö0 +__SIZEOF_FLOAT80__Ì65536Ö0 +__SIZEOF_FLOAT__Ì65536Ö0 +__SIZEOF_INT128__Ì65536Ö0 +__SIZEOF_INT__Ì65536Ö0 +__SIZEOF_LONG_DOUBLE__Ì65536Ö0 +__SIZEOF_LONG_LONG__Ì65536Ö0 +__SIZEOF_LONG__Ì65536Ö0 +__SIZEOF_POINTER__Ì65536Ö0 +__SIZEOF_PTRDIFF_T__Ì65536Ö0 +__SIZEOF_SHORT__Ì65536Ö0 +__SIZEOF_SIZE_T__Ì65536Ö0 +__SIZEOF_WCHAR_T__Ì65536Ö0 +__SIZEOF_WINT_T__Ì65536Ö0 +__SIZE_MAX__Ì65536Ö0 +__SIZE_TÌ65536Ö0 +__SIZE_TYPE__Ì65536Ö0 +__SIZE_T__Ì65536Ö0 +__SLONG32_TYPEÌ65536Ö0 +__SLONGWORD_TYPEÌ65536Ö0 +__SPI_H__Ì65536Ö0 +__SQUAD_TYPEÌ65536Ö0 +__SSD1306_FONTS_H__Ì65536Ö0 +__SSD1306_H__Ì65536Ö0 +__SSE2_MATH__Ì65536Ö0 +__SSE2__Ì65536Ö0 +__SSE_MATH__Ì65536Ö0 +__SSE__Ì65536Ö0 +__SSIZE_T_TYPEÌ65536Ö0 +__SSP_STRONG__Ì65536Ö0 +__STATIC_INLINEÌ65536Ö0 +__STDC_CONSTANT_MACROSÌ65536Ö0 +__STDC_HOSTED__Ì65536Ö0 +__STDC_IEC_559_COMPLEX__Ì65536Ö0 +__STDC_IEC_559__Ì65536Ö0 +__STDC_ISO_10646__Ì65536Ö0 +__STDC_LIMIT_MACROSÌ65536Ö0 +__STDC_NO_THREADS__Ì65536Ö0 +__STDC_UTF_16__Ì65536Ö0 +__STDC_UTF_32__Ì65536Ö0 +__STDC__Ì65536Ö0 +__STD_TYPEÌ65536Ö0 +__STM32F042x6_HÌ65536Ö0 +__STM32F0_H__Ì65536Ö0 +__STM32F0xx_CMSIS_DEVICE_VERSIONÌ65536Ö0 +__STM32F0xx_CMSIS_DEVICE_VERSION_MAINÌ65536Ö0 +__STM32F0xx_CMSIS_DEVICE_VERSION_RCÌ65536Ö0 +__STM32F0xx_CMSIS_DEVICE_VERSION_SUB1Ì65536Ö0 +__STM32F0xx_CMSIS_DEVICE_VERSION_SUB2Ì65536Ö0 +__STM32F0xx_HÌ65536Ö0 +__STRINGÌ131072Í(x)Ö0 +__STRINGS_FORTIFIEDÌ65536Ö0 +__SUSECONDS_T_TYPEÌ65536Ö0 +__SWORD_TYPEÌ65536Ö0 +__SYSCALL_SLONG_TYPEÌ65536Ö0 +__SYSCALL_ULONG_TYPEÌ65536Ö0 +__SYSCALL_WORDSIZEÌ65536Ö0 +__THROWÌ65536Ö0 +__THROWNLÌ65536Ö0 +__TIMER_T_TYPEÌ65536Ö0 +__TIME_T_TYPEÌ65536Ö0 +__U16_TYPEÌ65536Ö0 +__U32_TYPEÌ65536Ö0 +__U64_TYPEÌ65536Ö0 +__UID_T_TYPEÌ65536Ö0 +__UINT16_CÌ131072Í(c)Ö0 +__UINT16_MAX__Ì65536Ö0 +__UINT16_TYPE__Ì65536Ö0 +__UINT32_CÌ131072Í(c)Ö0 +__UINT32_MAX__Ì65536Ö0 +__UINT32_TYPE__Ì65536Ö0 +__UINT64_CÌ131072Í(c)Ö0 +__UINT64_MAX__Ì65536Ö0 +__UINT64_TYPE__Ì65536Ö0 +__UINT8_CÌ131072Í(c)Ö0 +__UINT8_MAX__Ì65536Ö0 +__UINT8_TYPE__Ì65536Ö0 +__UINTMAX_CÌ131072Í(c)Ö0 +__UINTMAX_MAX__Ì65536Ö0 +__UINTMAX_TYPE__Ì65536Ö0 +__UINTPTR_MAX__Ì65536Ö0 +__UINTPTR_TYPE__Ì65536Ö0 +__UINT_FAST16_MAX__Ì65536Ö0 +__UINT_FAST16_TYPE__Ì65536Ö0 +__UINT_FAST32_MAX__Ì65536Ö0 +__UINT_FAST32_TYPE__Ì65536Ö0 +__UINT_FAST64_MAX__Ì65536Ö0 +__UINT_FAST64_TYPE__Ì65536Ö0 +__UINT_FAST8_MAX__Ì65536Ö0 +__UINT_FAST8_TYPE__Ì65536Ö0 +__UINT_LEAST16_MAX__Ì65536Ö0 +__UINT_LEAST16_TYPE__Ì65536Ö0 +__UINT_LEAST32_MAX__Ì65536Ö0 +__UINT_LEAST32_TYPE__Ì65536Ö0 +__UINT_LEAST64_MAX__Ì65536Ö0 +__UINT_LEAST64_TYPE__Ì65536Ö0 +__UINT_LEAST8_MAX__Ì65536Ö0 +__UINT_LEAST8_TYPE__Ì65536Ö0 +__ULONG32_TYPEÌ65536Ö0 +__ULONGWORD_TYPEÌ65536Ö0 +__UQUAD_TYPEÌ65536Ö0 +__USART_H__Ì65536Ö0 +__USECONDS_T_TYPEÌ65536Ö0 +__USER_LABEL_PREFIX__Ì65536Ö0 +__USE_ATFILEÌ65536Ö0 +__USE_EXTERN_INLINESÌ65536Ö0 +__USE_FILE_OFFSET64Ì65536Ö0 +__USE_FORTIFY_LEVELÌ65536Ö0 +__USE_GNUÌ65536Ö0 +__USE_ISOC11Ì65536Ö0 +__USE_ISOC95Ì65536Ö0 +__USE_ISOC99Ì65536Ö0 +__USE_ISOCXX11Ì65536Ö0 +__USE_LARGEFILEÌ65536Ö0 +__USE_LARGEFILE64Ì65536Ö0 +__USE_MISCÌ65536Ö0 +__USE_POSIXÌ65536Ö0 +__USE_POSIX199309Ì65536Ö0 +__USE_POSIX199506Ì65536Ö0 +__USE_POSIX2Ì65536Ö0 +__USE_UNIX98Ì65536Ö0 +__USE_XOPENÌ65536Ö0 +__USE_XOPEN2KÌ65536Ö0 +__USE_XOPEN2K8Ì65536Ö0 +__USE_XOPEN2K8XSIÌ65536Ö0 +__USE_XOPEN2KXSIÌ65536Ö0 +__USE_XOPEN_EXTENDEDÌ65536Ö0 +__UWORD_TYPEÌ65536Ö0 +__VERSION__Ì65536Ö0 +__Vendor_SysTickConfigÌ65536Ö0 +__WCHAR_MAXÌ65536Ö0 +__WCHAR_MAX__Ì65536Ö0 +__WCHAR_MINÌ65536Ö0 +__WCHAR_MIN__Ì65536Ö0 +__WCHAR_TYPE__Ì65536Ö0 +__WINT_MAX__Ì65536Ö0 +__WINT_MIN__Ì65536Ö0 +__WINT_TYPE__Ì65536Ö0 +__WORDSIZEÌ65536Ö0 +__WORDSIZE_TIME64_COMPAT32Ì65536Ö0 +___int_size_t_hÌ65536Ö0 +__always_inlineÌ65536Ö0 +__amd64Ì65536Ö0 +__amd64__Ì65536Ö0 +__attribute_alloc_size__Ì131072Í(params)Ö0 +__attribute_artificial__Ì65536Ö0 +__attribute_const__Ì65536Ö0 +__attribute_deprecated__Ì65536Ö0 +__attribute_deprecated_msg__Ì131072Í(msg)Ö0 +__attribute_format_arg__Ì131072Í(x)Ö0 +__attribute_format_strfmon__Ì131072Í(a,b)Ö0 +__attribute_malloc__Ì65536Ö0 +__attribute_noinline__Ì65536Ö0 +__attribute_pure__Ì65536Ö0 +__attribute_used__Ì65536Ö0 +__attribute_warn_unused_result__Ì65536Ö0 +__blkcnt64_tÌ4096Ö0Ïlong int +__blkcnt_tÌ4096Ö0Ïlong int +__blksize_tÌ4096Ö0Ïlong int +__bosÌ131072Í(ptr)Ö0 +__bos0Ì131072Í(ptr)Ö0 +__caddr_tÌ4096Ö0Ïchar * +__clock_tÌ4096Ö0Ïlong int +__clockid_tÌ4096Ö0Ïint +__code_model_small__Ì65536Ö0 +__cplusplusÌ65536Ö0 +__cpp_aggregate_nsdmiÌ65536Ö0 +__cpp_alias_templatesÌ65536Ö0 +__cpp_attributesÌ65536Ö0 +__cpp_binary_literalsÌ65536Ö0 +__cpp_constexprÌ65536Ö0 +__cpp_decltypeÌ65536Ö0 +__cpp_decltype_autoÌ65536Ö0 +__cpp_delegating_constructorsÌ65536Ö0 +__cpp_digit_separatorsÌ65536Ö0 +__cpp_exceptionsÌ65536Ö0 +__cpp_generic_lambdasÌ65536Ö0 +__cpp_hex_floatÌ65536Ö0 +__cpp_inheriting_constructorsÌ65536Ö0 +__cpp_init_capturesÌ65536Ö0 +__cpp_initializer_listsÌ65536Ö0 +__cpp_lambdasÌ65536Ö0 +__cpp_nsdmiÌ65536Ö0 +__cpp_range_based_forÌ65536Ö0 +__cpp_raw_stringsÌ65536Ö0 +__cpp_ref_qualifiersÌ65536Ö0 +__cpp_return_type_deductionÌ65536Ö0 +__cpp_rttiÌ65536Ö0 +__cpp_runtime_arraysÌ65536Ö0 +__cpp_rvalue_referenceÌ65536Ö0 +__cpp_rvalue_referencesÌ65536Ö0 +__cpp_sized_deallocationÌ65536Ö0 +__cpp_static_assertÌ65536Ö0 +__cpp_unicode_charactersÌ65536Ö0 +__cpp_unicode_literalsÌ65536Ö0 +__cpp_user_defined_literalsÌ65536Ö0 +__cpp_variable_templatesÌ65536Ö0 +__cpp_variadic_templatesÌ65536Ö0 +__daddr_tÌ4096Ö0Ïint +__dev_tÌ4096Ö0Ïunsigned long int +__errordeclÌ131072Í(name,msg)Ö0 +__extern_always_inlineÌ65536Ö0 +__extern_inlineÌ65536Ö0 +__flexarrÌ65536Ö0 +__fortify_functionÌ65536Ö0 +__fsblkcnt64_tÌ4096Ö0Ïunsigned long int +__fsblkcnt_tÌ4096Ö0Ïunsigned long int +__fsfilcnt64_tÌ4096Ö0Ïunsigned long int +__fsfilcnt_tÌ4096Ö0Ïunsigned long int +__fsid_tÌ4096Ö0Ïanon_struct_0 +__fsword_tÌ4096Ö0Ïlong int +__gid_tÌ4096Ö0Ïunsigned int +__glibc_c99_flexarr_availableÌ65536Ö0 +__glibc_clang_has_extensionÌ131072Í(ext)Ö0 +__glibc_clang_prereqÌ131072Í(maj,min)Ö0 +__glibc_likelyÌ131072Í(cond)Ö0 +__glibc_macro_warningÌ131072Í(message)Ö0 +__glibc_macro_warning1Ì131072Í(message)Ö0 +__glibc_unlikelyÌ131072Í(cond)Ö0 +__gnu_linux__Ì65536Ö0 +__has_includeÌ131072Í(STR)Ö0 +__has_include_nextÌ131072Í(STR)Ö0 +__id_tÌ4096Ö0Ïunsigned int +__ino64_tÌ4096Ö0Ïunsigned long int +__ino_tÌ4096Ö0Ïunsigned long int +__int16_tÌ4096Ö0Ïsigned short int +__int32_tÌ4096Ö0Ïsigned int +__int64_tÌ4096Ö0Ïsigned long int +__int8_tÌ4096Ö0Ïsigned char +__intmax_tÌ4096Ö0Ïlong int +__intptr_tÌ4096Ö0Ïlong int +__intptr_t_definedÌ65536Ö0 +__k8Ì65536Ö0 +__k8__Ì65536Ö0 +__key_tÌ4096Ö0Ïint +__linuxÌ65536Ö0 +__linux__Ì65536Ö0 +__loff_tÌ4096Ö0Ï__off64_t +__long_double_tÌ65536Ö0 +__mode_tÌ4096Ö0Ïunsigned int +__need_NULLÌ65536Ö0 +__need_size_tÌ65536Ö0 +__nlink_tÌ4096Ö0Ïunsigned long int +__nonnullÌ131072Í(params)Ö0 +__off64_tÌ4096Ö0Ïlong int +__off_tÌ4096Ö0Ïlong int +__pic__Ì65536Ö0 +__pid_tÌ4096Ö0Ïint +__pie__Ì65536Ö0 +__ptr_tÌ65536Ö0 +__qaddr_tÌ4096Ö0Ï__quad_t * +__quad_tÌ4096Ö0Ïlong int +__restrict_arrÌ65536Ö0 +__rlim64_tÌ4096Ö0Ïunsigned long int +__rlim_tÌ4096Ö0Ïunsigned long int +__sig_atomic_tÌ4096Ö0Ïint +__size_tÌ65536Ö0 +__size_t__Ì65536Ö0 +__socklen_tÌ4096Ö0Ïunsigned int +__ssize_tÌ4096Ö0Ïlong int +__stub___compat_bdflushÌ65536Ö0 +__stub_chflagsÌ65536Ö0 +__stub_fattachÌ65536Ö0 +__stub_fchflagsÌ65536Ö0 +__stub_fdetachÌ65536Ö0 +__stub_getmsgÌ65536Ö0 +__stub_gttyÌ65536Ö0 +__stub_lchmodÌ65536Ö0 +__stub_putmsgÌ65536Ö0 +__stub_revokeÌ65536Ö0 +__stub_setloginÌ65536Ö0 +__stub_sigreturnÌ65536Ö0 +__stub_sstkÌ65536Ö0 +__stub_sttyÌ65536Ö0 +__suseconds_tÌ4096Ö0Ïlong int +__syscall_slong_tÌ4096Ö0Ïlong int +__syscall_ulong_tÌ4096Ö0Ïunsigned long int +__thumb2__Ì65536Ö0 +__time_tÌ4096Ö0Ïlong int +__timer_tÌ4096Ö0Ïvoid * +__u_charÌ4096Ö0Ïunsigned char +__u_intÌ4096Ö0Ïunsigned int +__u_longÌ4096Ö0Ïunsigned long int +__u_quad_tÌ4096Ö0Ïunsigned long int +__u_shortÌ4096Ö0Ïunsigned short int +__uid_tÌ4096Ö0Ïunsigned int +__uint16_tÌ4096Ö0Ïunsigned short int +__uint32_tÌ4096Ö0Ïunsigned int +__uint64_tÌ4096Ö0Ïunsigned long int +__uint8_tÌ4096Ö0Ïunsigned char +__uintmax_tÌ4096Ö0Ïunsigned long int +__unixÌ65536Ö0 +__unix__Ì65536Ö0 +__useconds_tÌ4096Ö0Ïunsigned int +__va_arg_packÌ131072Í()Ö0 +__va_arg_pack_lenÌ131072Í()Ö0 +__valÌ64Îanon_struct_0Ö0Ïint +__warnattrÌ131072Í(msg)Ö0 +__warndeclÌ131072Í(name,msg)Ö0 +__wurÌ65536Ö0 +__x86_64Ì65536Ö0 +__x86_64__Ì65536Ö0 +anon_enum_2Ì2Ö0 +anon_enum_3Ì2Ö0 +anon_enum_4Ì2Ö0 +anon_struct_0Ì2048Ö0 +anon_struct_1Ì2048Ö0 +bufovrÌ16384Ö0Ïint +bufovrÌ32768Ö0Ïint +calc_tÌ16Í(uint32_t t, int i)Ö0Ïuint8_t +cntrÌ16384Ö0Ïuint32_t +coefficientsÌ16384Ö0Ïuint16_t +curxÌ16384Ö0Ïuint8_t +curyÌ16384Ö0Ïuint8_t +dataÌ64Îanon_struct_1Ö0Ïconst uint16_t * +datalenÌ16384Ö0Ïint +dlenÌ16384Ö0Ïint +dma1_channel4_5_isrÌ16Í()Ö0Ïvoid +getcoeffsÌ16Í(uint8_t addr)Ö0Ïvoid +gpio_setupÌ16Í(void)Ö0Ïvoid +gpio_setupÌ1024Í(void)Ö0Ïvoid +i2c_setupÌ16Í(I2C_SPEED speed)Ö0Ïvoid +i2c_setupÌ1024Í(I2C_SPEED speed)Ö0Ïvoid +int16_tÌ4096Ö0Ï__int16_t +int32_tÌ4096Ö0Ï__int32_t +int64_tÌ4096Ö0Ï__int64_t +int8_tÌ4096Ö0Ï__int8_t +int_fast16_tÌ4096Ö0Ïlong int +int_fast32_tÌ4096Ö0Ïlong int +int_fast64_tÌ4096Ö0Ïlong int +int_fast8_tÌ4096Ö0Ïsigned char +int_least16_tÌ4096Ö0Ïshort int +int_least32_tÌ4096Ö0Ïint +int_least64_tÌ4096Ö0Ïlong int +int_least8_tÌ4096Ö0Ïsigned char +intmax_tÌ4096Ö0Ï__intmax_t +intptr_tÌ4096Ö0Ïlong int +linerdyÌ16384Ö0Ïint +linerdyÌ32768Ö0Ïint +linuxÌ65536Ö0 +mainÌ16Í(void)Ö0Ïint +newlineÌ16Í()Ö0Ïvoid +newlineÌ1024Í()Ö0Ïvoid +nopÌ131072Í()Ö0 +pin_clearÌ131072Í(gpioport,gpios)Ö0 +pin_readÌ131072Í(gpioport,gpios)Ö0 +pin_setÌ131072Í(gpioport,gpios)Ö0 +pin_toggleÌ131072Í(gpioport,gpios)Ö0 +pin_writeÌ131072Í(gpioport,gpios)Ö0 +printuÌ16Í(uint32_t val)Ö0Ïvoid +printuÌ1024Í(uint32_t val)Ö0Ïvoid +rbufÌ16384Ö0Ïchar +rbufnoÌ16384Ö0Ïint +read_i2cÌ16Í(uint8_t addr, uint32_t *data, uint8_t nbytes)Ö0Ïuint8_t +read_i2cÌ1024Í(uint8_t addr, uint32_t *data, uint8_t nbytes)Ö0Ïuint8_t +recvdataÌ16384Ö0Ïchar * +refreshdisplayÌ16384Ö0Ïuint8_t +spiWriteÌ16Í(uint8_t *data, uint16_t len)Ö0Ïvoid +spiWriteÌ1024Í(uint8_t *data, uint16_t len)Ö0Ïvoid +spi_setupÌ16Í()Ö0Ïvoid +spi_setupÌ1024Í()Ö0Ïvoid +spi_write_byteÌ16Í(uint8_t data)Ö0Ïvoid +spi_write_byteÌ1024Í(uint8_t data)Ö0Ïvoid +sprintuÌ16Í(char *buf, uint8_t buflen, uint32_t val)Ö0Ïuint8_t +ssd1306_DrawPixelÌ16Í(uint8_t x, uint8_t y, uint8_t color)Ö0Ïvoid +ssd1306_DrawPixelÌ1024Í(uint8_t x, uint8_t y, uint8_t color)Ö0Ïvoid +ssd1306_FillÌ16Í(uint8_t colr)Ö0Ïvoid +ssd1306_FillÌ1024Í(uint8_t colr)Ö0Ïvoid +ssd1306_ResetÌ16Í()Ö0Ïvoid +ssd1306_ResetÌ1024Í()Ö0Ïvoid +ssd1306_SetCursorÌ16Í(uint8_t x, uint8_t y)Ö0Ïvoid +ssd1306_SetCursorÌ1024Í(uint8_t x, uint8_t y)Ö0Ïvoid +ssd1306_UpdateScreenÌ16Í()Ö0Ïuint8_t +ssd1306_UpdateScreenÌ1024Í()Ö0Ïuint8_t +ssd1306_UpdateScreen_Ì16Í()Ö0Ïvoid +ssd1306_WriteCharÌ16Í(char ch, FontDef Font, uint8_t color)Ö0Ïchar +ssd1306_WriteCharÌ1024Í(char ch, FontDef Font, uint8_t color)Ö0Ïchar +ssd1306_WriteCommandÌ16Í(uint8_t byte)Ö0Ïvoid +ssd1306_WriteDataÌ16Í(uint8_t* buffer, uint16_t len)Ö0Ïvoid +ssd1306_WriteStringÌ16Í(char* str, FontDef Font, uint8_t color)Ö0Ïchar +ssd1306_WriteStringÌ1024Í(char* str, FontDef Font, uint8_t color)Ö0Ïchar +ssd1306_initÌ16Í()Ö0Ïvoid +ssd1306_processÌ16Í()Ö0Ïvoid +ssd1306_processÌ1024Í()Ö0Ïvoid +stateÌ16384Ö0ÏSSD1306_STATE +strdupaÌ131072Í(s)Ö0 +strndupaÌ131072Í(s,n)Ö0 +sys_tick_handlerÌ16Í(void)Ö0Ïvoid +sysresetÌ16Í(void)Ö0Ïinline void +tbufÌ16384Ö0Ïchar +tstartÌ16384Ö0Ïuint32_t +txrdyÌ16384Ö0Ïint +txrdyÌ32768Ö0Ïint +uint16_tÌ4096Ö0Ï__uint16_t +uint32_tÌ4096Ö0Ï__uint32_t +uint64_tÌ4096Ö0Ï__uint64_t +uint8_tÌ4096Ö0Ï__uint8_t +uint_fast16_tÌ4096Ö0Ïunsigned long int +uint_fast32_tÌ4096Ö0Ïunsigned long int +uint_fast64_tÌ4096Ö0Ïunsigned long int +uint_fast8_tÌ4096Ö0Ïunsigned char +uint_least16_tÌ4096Ö0Ïunsigned short int +uint_least32_tÌ4096Ö0Ïunsigned int +uint_least64_tÌ4096Ö0Ïunsigned long int +uint_least8_tÌ4096Ö0Ïunsigned char +uintmax_tÌ4096Ö0Ï__uintmax_t +uintptr_tÌ4096Ö0Ïunsigned long int +unixÌ65536Ö0 +usart2_isrÌ16Í()Ö0Ïvoid +usart_getlineÌ16Í(char **line)Ö0Ïint +usart_getlineÌ1024Í(char **line)Ö0Ïint +usart_sendÌ16Í(const char *str, int len)Ö0ÏTXstatus +usart_sendÌ1024Í(const char *str, int len)Ö0ÏTXstatus +usart_send_blockingÌ16Í(const char *str, int len)Ö0ÏTXstatus +usart_send_blockingÌ1024Í(const char *str, int len)Ö0ÏTXstatus +usart_setupÌ16Í()Ö0Ïvoid +usart_setupÌ1024Í()Ö0Ïvoid +usartovrÌ131072Í()Ö0 +usartrxÌ131072Í()Ö0 +write_i2cÌ16Í(uint8_t addr, uint8_t data)Ö0Ïuint8_t +write_i2cÌ1024Í(uint8_t addr, uint8_t data)Ö0Ïuint8_t diff --git a/STM32/Tcalc_screen/tsys01.geany b/STM32/Tcalc_screen/tsys01.geany new file mode 100644 index 0000000..26dbd9d --- /dev/null +++ b/STM32/Tcalc_screen/tsys01.geany @@ -0,0 +1,43 @@ +[editor] +line_wrapping=false +line_break_column=100 +auto_continue_multiline=true + +[file_prefs] +final_new_line=true +ensure_convert_new_lines=true +strip_trailing_spaces=true +replace_tabs=true + +[indentation] +indent_width=4 +indent_type=0 +indent_hard_tab_width=4 +detect_indent=false +detect_indent_width=false +indent_mode=3 + +[project] +name=tsys01 +base_path=/home/eddy/Docs/SAO/BTA/Зеркало_контроль/Project/STM32src/Tcalc_screen +description= + +[long line marker] +long_line_behaviour=1 +long_line_column=100 + +[files] +current_page=0 +FILE_NAME_0=2812;C;0;EUTF-8;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fmain.c;0;4 +FILE_NAME_1=1695;C;0;EKOI8-R;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fi2c.c;0;4 +FILE_NAME_2=1517;C;0;EKOI8-R;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fi2c.h;0;4 +FILE_NAME_3=2333;C;0;EKOI8-R;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fhardware.c;0;4 +FILE_NAME_4=1830;C;0;EKOI8-R;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fhardware.h;0;4 +FILE_NAME_5=1262;C;0;EUTF-8;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fssd1306.h;0;4 +FILE_NAME_6=6708;C;0;EUTF-8;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fssd1306.c;0;4 +FILE_NAME_7=307;C;0;EUTF-8;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fssd1306_fonts.h;0;4 +FILE_NAME_8=41491;C;0;EUTF-8;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fssd1306_fonts.c;0;4 +FILE_NAME_9=1076;C;0;EKOI8-R;0;1;0;%2Fhome%2Feddy%2FDocs%2FSAO%2FBTA%2FMIRROR_CONTROL_termo%2FProject%2FSTM32src%2FTcalc_screen%2Fspi.c;0;4 + +[VTE] +last_dir=/home/eddy diff --git a/STM32/Tcalc_screen/usart.c b/STM32/Tcalc_screen/usart.c new file mode 100644 index 0000000..f221bd2 --- /dev/null +++ b/STM32/Tcalc_screen/usart.c @@ -0,0 +1,173 @@ +/*us + * usart.c + * + * Copyright 2017 Edward V. Emelianoff + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ +#include "stm32f0.h" +#include "hardware.h" +#include "usart.h" +#include + +extern volatile uint32_t Tms; +static int datalen[2] = {0,0}; // received data line length (including '\n') + +int linerdy = 0, // received data ready + dlen = 0, // length of data (including '\n') in current buffer + bufovr = 0, // input buffer overfull + txrdy = 1 // transmission done +; + + +int rbufno = 0; // current rbuf number +static char rbuf[UARTBUFSZ][2], tbuf[UARTBUFSZ]; // receive & transmit buffers +static char *recvdata = NULL; + +/** + * return length of received data (without trailing zero + */ +int usart_getline(char **line){ + if(bufovr){ + bufovr = 0; + linerdy = 0; + return 0; + } + *line = recvdata; + linerdy = 0; + return dlen; +} + +TXstatus usart_send(const char *str, int len){ + if(!txrdy) return LINE_BUSY; + if(len > UARTBUFSZ) return STR_TOO_LONG; + txrdy = 0; + memcpy(tbuf, str, len); +#if USARTNUM == 2 + DMA1_Channel4->CCR &= ~DMA_CCR_EN; + DMA1_Channel4->CNDTR = len; + DMA1_Channel4->CCR |= DMA_CCR_EN; // start transmission +#else // USART1 +#error "Not implemented" +#endif + return ALL_OK; +} + +TXstatus usart_send_blocking(const char *str, int len){ + if(!txrdy) return LINE_BUSY; + int i; + bufovr = 0; + for(i = 0; i < len; ++i){ + USARTX -> TDR = *str++; + while(!(USARTX->ISR & USART_ISR_TXE)); + } + return ALL_OK; +} + +void newline(){ + while(!txrdy); + USARTX -> TDR = '\n'; + while(!(USARTX->ISR & USART_ISR_TXE)); +} + + +// Nucleo's USART2 connected to VCP proxy of st-link +void usart_setup(){ +#if USARTNUM == 2 + // setup pins: PA2 (Tx - AF1), PA15 (Rx - AF1) + RCC->AHBENR |= RCC_AHBENR_GPIOAEN | RCC_AHBENR_DMAEN; + // AF mode (AF1) + GPIOA->MODER = (GPIOA->MODER & ~(GPIO_MODER_MODER2|GPIO_MODER_MODER15))\ + | (GPIO_MODER_MODER2_1 | GPIO_MODER_MODER15_1); + GPIOA->AFR[0] = (GPIOA->AFR[0] &~GPIO_AFRH_AFRH2) | 1 << (2 * 4); // PA2 + GPIOA->AFR[1] = (GPIOA->AFR[1] &~GPIO_AFRH_AFRH7) | 1 << (7 * 4); // PA15 + // DMA: Tx - Ch4 + DMA1_Channel4->CPAR = (uint32_t) &USART2->TDR; // periph + DMA1_Channel4->CMAR = (uint32_t) tbuf; // mem + DMA1_Channel4->CCR |= DMA_CCR_MINC | DMA_CCR_DIR | DMA_CCR_TCIE; // 8bit, mem++, mem->per, transcompl irq + // Tx CNDTR set @ each transmission due to data size + NVIC_SetPriority(DMA1_Channel4_5_IRQn, 3); + NVIC_EnableIRQ(DMA1_Channel4_5_IRQn); + NVIC_SetPriority(USART2_IRQn, 0); + // setup usart2 + RCC->APB1ENR |= RCC_APB1ENR_USART2EN; // clock + // oversampling by16, 115200bps (fck=48mHz) + //USART2_BRR = 0x1a1; // 48000000 / 115200 + USART2->BRR = 480000 / 1152; + USART2->CR3 = USART_CR3_DMAT; // enable DMA Tx + USART2->CR1 = USART_CR1_TE | USART_CR1_RE | USART_CR1_UE; // 1start,8data,nstop; enable Rx,Tx,USART + while(!(USART2->ISR & USART_ISR_TC)); // polling idle frame Transmission + USART2->ICR |= USART_ICR_TCCF; // clear TC flag + USART2->CR1 |= USART_CR1_RXNEIE; + NVIC_EnableIRQ(USART2_IRQn); +#else // USART1 +#error "Not implemented" +#endif +} + +#if USARTNUM == 2 +void usart2_isr(){ +#else // USART1 +#error "Not implemented" +#endif + #ifdef CHECK_TMOUT + static uint32_t tmout = 0; + #endif + if(USARTX->ISR & USART_ISR_RXNE){ // RX not emty - receive next char + #ifdef CHECK_TMOUT + if(tmout && Tms >= tmout){ // set overflow flag + bufovr = 1; + datalen[rbufno] = 0; + } + tmout = Tms + TIMEOUT_MS; + if(!tmout) tmout = 1; // prevent 0 + #endif + // read RDR clears flag + uint8_t rb = USARTX->RDR; + if(datalen[rbufno] < UARTBUFSZ){ // put next char into buf + rbuf[rbufno][datalen[rbufno]++] = rb; + if(rb == '\n'){ // got newline - line ready + linerdy = 1; + dlen = datalen[rbufno]; + recvdata = rbuf[rbufno]; + // prepare other buffer + rbufno = !rbufno; + datalen[rbufno] = 0; + #ifdef CHECK_TMOUT + // clear timeout at line end + tmout = 0; + #endif + } + }else{ // buffer overrun + bufovr = 1; + datalen[rbufno] = 0; + #ifdef CHECK_TMOUT + tmout = 0; + #endif + } + } +} + +#if USARTNUM == 2 +void dma1_channel4_5_isr(){ + if(DMA1->ISR & DMA_ISR_TCIF4){ // Tx + DMA1->IFCR |= DMA_IFCR_CTCIF4; // clear TC flag + txrdy = 1; + } +} +#else // USART1 +#error "Not implemented" +#endif diff --git a/STM32/Tcalc_screen/usart.h b/STM32/Tcalc_screen/usart.h new file mode 100644 index 0000000..677dd1c --- /dev/null +++ b/STM32/Tcalc_screen/usart.h @@ -0,0 +1,53 @@ +/* + * usart.h + * + * Copyright 2017 Edward V. Emelianoff + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, + * MA 02110-1301, USA. + */ +#pragma once +#ifndef __USART_H__ +#define __USART_H__ + +// input and output buffers size +#define UARTBUFSZ (64) +// timeout between data bytes +#ifndef TIMEOUT_MS +#define TIMEOUT_MS (1500) +#endif + +// macro for static strings +#define SEND(str) do{}while(LINE_BUSY == usart_send_blocking(str, sizeof(str)-1)) +#define NEWLINE() do{}while(LINE_BUSY == usart_send_blocking('\n', 1)) + +typedef enum{ + ALL_OK, + LINE_BUSY, + STR_TOO_LONG +} TXstatus; + +#define usartrx() (linerdy) +#define usartovr() (bufovr) + +extern int linerdy, bufovr, txrdy; + +void usart_setup(); +int usart_getline(char **line); +TXstatus usart_send(const char *str, int len); +TXstatus usart_send_blocking(const char *str, int len); +void newline(); + +#endif // __USART_H__