18085 lines
244 KiB
OpenEdge ABL
18085 lines
244 KiB
OpenEdge ABL
#line 1 "..\\user\\src\\Flash.c"
|
|
#line 1 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 75 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 107 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 122 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 143 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 162 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum IRQn
|
|
{
|
|
|
|
NonMaskableInt_IRQn = -14,
|
|
MemoryManagement_IRQn = -12,
|
|
BusFault_IRQn = -11,
|
|
UsageFault_IRQn = -10,
|
|
SVCall_IRQn = -5,
|
|
DebugMonitor_IRQn = -4,
|
|
PendSV_IRQn = -2,
|
|
SysTick_IRQn = -1,
|
|
|
|
|
|
WWDG_IRQn = 0,
|
|
PVD_IRQn = 1,
|
|
TAMPER_IRQn = 2,
|
|
RTC_IRQn = 3,
|
|
FLASH_IRQn = 4,
|
|
RCC_IRQn = 5,
|
|
EXTI0_IRQn = 6,
|
|
EXTI1_IRQn = 7,
|
|
EXTI2_IRQn = 8,
|
|
EXTI3_IRQn = 9,
|
|
EXTI4_IRQn = 10,
|
|
DMA1_Channel1_IRQn = 11,
|
|
DMA1_Channel2_IRQn = 12,
|
|
DMA1_Channel3_IRQn = 13,
|
|
DMA1_Channel4_IRQn = 14,
|
|
DMA1_Channel5_IRQn = 15,
|
|
DMA1_Channel6_IRQn = 16,
|
|
DMA1_Channel7_IRQn = 17,
|
|
|
|
#line 221 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 242 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
ADC1_2_IRQn = 18,
|
|
USB_HP_CAN1_TX_IRQn = 19,
|
|
USB_LP_CAN1_RX0_IRQn = 20,
|
|
CAN1_RX1_IRQn = 21,
|
|
CAN1_SCE_IRQn = 22,
|
|
EXTI9_5_IRQn = 23,
|
|
TIM1_BRK_IRQn = 24,
|
|
TIM1_UP_IRQn = 25,
|
|
TIM1_TRG_COM_IRQn = 26,
|
|
TIM1_CC_IRQn = 27,
|
|
TIM2_IRQn = 28,
|
|
TIM3_IRQn = 29,
|
|
TIM4_IRQn = 30,
|
|
I2C1_EV_IRQn = 31,
|
|
I2C1_ER_IRQn = 32,
|
|
I2C2_EV_IRQn = 33,
|
|
I2C2_ER_IRQn = 34,
|
|
SPI1_IRQn = 35,
|
|
SPI2_IRQn = 36,
|
|
USART1_IRQn = 37,
|
|
USART2_IRQn = 38,
|
|
USART3_IRQn = 39,
|
|
EXTI15_10_IRQn = 40,
|
|
RTCAlarm_IRQn = 41,
|
|
USBWakeUp_IRQn = 42
|
|
|
|
|
|
#line 296 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 341 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 381 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 426 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 472 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
} IRQn_Type;
|
|
|
|
|
|
|
|
|
|
|
|
#line 1 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 27 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 46 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef signed char int8_t;
|
|
typedef signed short int int16_t;
|
|
typedef signed int int32_t;
|
|
typedef signed __int64 int64_t;
|
|
|
|
|
|
typedef unsigned char uint8_t;
|
|
typedef unsigned short int uint16_t;
|
|
typedef unsigned int uint32_t;
|
|
typedef unsigned __int64 uint64_t;
|
|
|
|
|
|
|
|
|
|
|
|
typedef signed char int_least8_t;
|
|
typedef signed short int int_least16_t;
|
|
typedef signed int int_least32_t;
|
|
typedef signed __int64 int_least64_t;
|
|
|
|
|
|
typedef unsigned char uint_least8_t;
|
|
typedef unsigned short int uint_least16_t;
|
|
typedef unsigned int uint_least32_t;
|
|
typedef unsigned __int64 uint_least64_t;
|
|
|
|
|
|
|
|
|
|
typedef signed int int_fast8_t;
|
|
typedef signed int int_fast16_t;
|
|
typedef signed int int_fast32_t;
|
|
typedef signed __int64 int_fast64_t;
|
|
|
|
|
|
typedef unsigned int uint_fast8_t;
|
|
typedef unsigned int uint_fast16_t;
|
|
typedef unsigned int uint_fast32_t;
|
|
typedef unsigned __int64 uint_fast64_t;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef signed int intptr_t;
|
|
typedef unsigned int uintptr_t;
|
|
|
|
|
|
|
|
typedef signed long long intmax_t;
|
|
typedef unsigned long long uintmax_t;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 216 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 241 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 305 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdint.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 91 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 117 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t ISER[8];
|
|
uint32_t RESERVED0[24];
|
|
volatile uint32_t ICER[8];
|
|
uint32_t RSERVED1[24];
|
|
volatile uint32_t ISPR[8];
|
|
uint32_t RESERVED2[24];
|
|
volatile uint32_t ICPR[8];
|
|
uint32_t RESERVED3[24];
|
|
volatile uint32_t IABR[8];
|
|
uint32_t RESERVED4[56];
|
|
volatile uint8_t IP[240];
|
|
uint32_t RESERVED5[644];
|
|
volatile uint32_t STIR;
|
|
} NVIC_Type;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile const uint32_t CPUID;
|
|
volatile uint32_t ICSR;
|
|
volatile uint32_t VTOR;
|
|
volatile uint32_t AIRCR;
|
|
volatile uint32_t SCR;
|
|
volatile uint32_t CCR;
|
|
volatile uint8_t SHP[12];
|
|
volatile uint32_t SHCSR;
|
|
volatile uint32_t CFSR;
|
|
volatile uint32_t HFSR;
|
|
volatile uint32_t DFSR;
|
|
volatile uint32_t MMFAR;
|
|
volatile uint32_t BFAR;
|
|
volatile uint32_t AFSR;
|
|
volatile const uint32_t PFR[2];
|
|
volatile const uint32_t DFR;
|
|
volatile const uint32_t ADR;
|
|
volatile const uint32_t MMFR[4];
|
|
volatile const uint32_t ISAR[5];
|
|
} SCB_Type;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t CTRL;
|
|
volatile uint32_t LOAD;
|
|
volatile uint32_t VAL;
|
|
volatile const uint32_t CALIB;
|
|
} SysTick_Type;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile union
|
|
{
|
|
volatile uint8_t u8;
|
|
volatile uint16_t u16;
|
|
volatile uint32_t u32;
|
|
} PORT [32];
|
|
uint32_t RESERVED0[864];
|
|
volatile uint32_t TER;
|
|
uint32_t RESERVED1[15];
|
|
volatile uint32_t TPR;
|
|
uint32_t RESERVED2[15];
|
|
volatile uint32_t TCR;
|
|
uint32_t RESERVED3[29];
|
|
volatile uint32_t IWR;
|
|
volatile uint32_t IRR;
|
|
volatile uint32_t IMCR;
|
|
uint32_t RESERVED4[43];
|
|
volatile uint32_t LAR;
|
|
volatile uint32_t LSR;
|
|
uint32_t RESERVED5[6];
|
|
volatile const uint32_t PID4;
|
|
volatile const uint32_t PID5;
|
|
volatile const uint32_t PID6;
|
|
volatile const uint32_t PID7;
|
|
volatile const uint32_t PID0;
|
|
volatile const uint32_t PID1;
|
|
volatile const uint32_t PID2;
|
|
volatile const uint32_t PID3;
|
|
volatile const uint32_t CID0;
|
|
volatile const uint32_t CID1;
|
|
volatile const uint32_t CID2;
|
|
volatile const uint32_t CID3;
|
|
} ITM_Type;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t RESERVED0;
|
|
volatile const uint32_t ICTR;
|
|
|
|
|
|
|
|
uint32_t RESERVED1;
|
|
|
|
} InterruptType_Type;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 614 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t DHCSR;
|
|
volatile uint32_t DCRSR;
|
|
volatile uint32_t DCRDR;
|
|
volatile uint32_t DEMCR;
|
|
} CoreDebug_Type;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 721 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
#line 728 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 758 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 783 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern uint32_t __get_PSP(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern void __set_PSP(uint32_t topOfProcStack);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern uint32_t __get_MSP(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern void __set_MSP(uint32_t topOfMainStack);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern uint32_t __REV16(uint16_t value);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern int32_t __REVSH(int16_t value);
|
|
|
|
|
|
#line 933 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t __get_BASEPRI(void)
|
|
{
|
|
register uint32_t __regBasePri __asm("basepri");
|
|
return(__regBasePri);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void __set_BASEPRI(uint32_t basePri)
|
|
{
|
|
register uint32_t __regBasePri __asm("basepri");
|
|
__regBasePri = (basePri & 0xff);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t __get_PRIMASK(void)
|
|
{
|
|
register uint32_t __regPriMask __asm("primask");
|
|
return(__regPriMask);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void __set_PRIMASK(uint32_t priMask)
|
|
{
|
|
register uint32_t __regPriMask __asm("primask");
|
|
__regPriMask = (priMask);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t __get_FAULTMASK(void)
|
|
{
|
|
register uint32_t __regFaultMask __asm("faultmask");
|
|
return(__regFaultMask);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void __set_FAULTMASK(uint32_t faultMask)
|
|
{
|
|
register uint32_t __regFaultMask __asm("faultmask");
|
|
__regFaultMask = (faultMask & 1);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t __get_CONTROL(void)
|
|
{
|
|
register uint32_t __regControl __asm("control");
|
|
return(__regControl);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void __set_CONTROL(uint32_t control)
|
|
{
|
|
register uint32_t __regControl __asm("control");
|
|
__regControl = control;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
#line 1445 "..\\..\\template\\Libraries\\CMSIS\\core_cm3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void NVIC_SetPriorityGrouping(uint32_t PriorityGroup)
|
|
{
|
|
uint32_t reg_value;
|
|
uint32_t PriorityGroupTmp = (PriorityGroup & 0x07);
|
|
|
|
reg_value = ((SCB_Type *) ((0xE000E000) + 0x0D00))->AIRCR;
|
|
reg_value &= ~((0xFFFFul << 16) | (7ul << 8));
|
|
reg_value = (reg_value |
|
|
(0x5FA << 16) |
|
|
(PriorityGroupTmp << 8));
|
|
((SCB_Type *) ((0xE000E000) + 0x0D00))->AIRCR = reg_value;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t NVIC_GetPriorityGrouping(void)
|
|
{
|
|
return ((((SCB_Type *) ((0xE000E000) + 0x0D00))->AIRCR & (7ul << 8)) >> 8);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void NVIC_EnableIRQ(IRQn_Type IRQn)
|
|
{
|
|
((NVIC_Type *) ((0xE000E000) + 0x0100))->ISER[((uint32_t)(IRQn) >> 5)] = (1 << ((uint32_t)(IRQn) & 0x1F));
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void NVIC_DisableIRQ(IRQn_Type IRQn)
|
|
{
|
|
((NVIC_Type *) ((0xE000E000) + 0x0100))->ICER[((uint32_t)(IRQn) >> 5)] = (1 << ((uint32_t)(IRQn) & 0x1F));
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t NVIC_GetPendingIRQ(IRQn_Type IRQn)
|
|
{
|
|
return((uint32_t) ((((NVIC_Type *) ((0xE000E000) + 0x0100))->ISPR[(uint32_t)(IRQn) >> 5] & (1 << ((uint32_t)(IRQn) & 0x1F)))?1:0));
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void NVIC_SetPendingIRQ(IRQn_Type IRQn)
|
|
{
|
|
((NVIC_Type *) ((0xE000E000) + 0x0100))->ISPR[((uint32_t)(IRQn) >> 5)] = (1 << ((uint32_t)(IRQn) & 0x1F));
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void NVIC_ClearPendingIRQ(IRQn_Type IRQn)
|
|
{
|
|
((NVIC_Type *) ((0xE000E000) + 0x0100))->ICPR[((uint32_t)(IRQn) >> 5)] = (1 << ((uint32_t)(IRQn) & 0x1F));
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t NVIC_GetActive(IRQn_Type IRQn)
|
|
{
|
|
return((uint32_t)((((NVIC_Type *) ((0xE000E000) + 0x0100))->IABR[(uint32_t)(IRQn) >> 5] & (1 << ((uint32_t)(IRQn) & 0x1F)))?1:0));
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void NVIC_SetPriority(IRQn_Type IRQn, uint32_t priority)
|
|
{
|
|
if(IRQn < 0) {
|
|
((SCB_Type *) ((0xE000E000) + 0x0D00))->SHP[((uint32_t)(IRQn) & 0xF)-4] = ((priority << (8 - 4)) & 0xff); }
|
|
else {
|
|
((NVIC_Type *) ((0xE000E000) + 0x0100))->IP[(uint32_t)(IRQn)] = ((priority << (8 - 4)) & 0xff); }
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t NVIC_GetPriority(IRQn_Type IRQn)
|
|
{
|
|
|
|
if(IRQn < 0) {
|
|
return((uint32_t)(((SCB_Type *) ((0xE000E000) + 0x0D00))->SHP[((uint32_t)(IRQn) & 0xF)-4] >> (8 - 4))); }
|
|
else {
|
|
return((uint32_t)(((NVIC_Type *) ((0xE000E000) + 0x0100))->IP[(uint32_t)(IRQn)] >> (8 - 4))); }
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t NVIC_EncodePriority (uint32_t PriorityGroup, uint32_t PreemptPriority, uint32_t SubPriority)
|
|
{
|
|
uint32_t PriorityGroupTmp = (PriorityGroup & 0x07);
|
|
uint32_t PreemptPriorityBits;
|
|
uint32_t SubPriorityBits;
|
|
|
|
PreemptPriorityBits = ((7 - PriorityGroupTmp) > 4) ? 4 : 7 - PriorityGroupTmp;
|
|
SubPriorityBits = ((PriorityGroupTmp + 4) < 7) ? 0 : PriorityGroupTmp - 7 + 4;
|
|
|
|
return (
|
|
((PreemptPriority & ((1 << (PreemptPriorityBits)) - 1)) << SubPriorityBits) |
|
|
((SubPriority & ((1 << (SubPriorityBits )) - 1)))
|
|
);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void NVIC_DecodePriority (uint32_t Priority, uint32_t PriorityGroup, uint32_t* pPreemptPriority, uint32_t* pSubPriority)
|
|
{
|
|
uint32_t PriorityGroupTmp = (PriorityGroup & 0x07);
|
|
uint32_t PreemptPriorityBits;
|
|
uint32_t SubPriorityBits;
|
|
|
|
PreemptPriorityBits = ((7 - PriorityGroupTmp) > 4) ? 4 : 7 - PriorityGroupTmp;
|
|
SubPriorityBits = ((PriorityGroupTmp + 4) < 7) ? 0 : PriorityGroupTmp - 7 + 4;
|
|
|
|
*pPreemptPriority = (Priority >> SubPriorityBits) & ((1 << (PreemptPriorityBits)) - 1);
|
|
*pSubPriority = (Priority ) & ((1 << (SubPriorityBits )) - 1);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t SysTick_Config(uint32_t ticks)
|
|
{
|
|
if (ticks > (0xFFFFFFul << 0)) return (1);
|
|
|
|
((SysTick_Type *) ((0xE000E000) + 0x0010))->LOAD = (ticks & (0xFFFFFFul << 0)) - 1;
|
|
NVIC_SetPriority (SysTick_IRQn, (1<<4) - 1);
|
|
((SysTick_Type *) ((0xE000E000) + 0x0010))->VAL = 0;
|
|
((SysTick_Type *) ((0xE000E000) + 0x0010))->CTRL = (1ul << 2) |
|
|
(1ul << 1) |
|
|
(1ul << 0);
|
|
return (0);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline void NVIC_SystemReset(void)
|
|
{
|
|
((SCB_Type *) ((0xE000E000) + 0x0D00))->AIRCR = ((0x5FA << 16) |
|
|
(((SCB_Type *) ((0xE000E000) + 0x0D00))->AIRCR & (7ul << 8)) |
|
|
(1ul << 2));
|
|
__dsb(0);
|
|
while(1);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern volatile int ITM_RxBuffer;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline uint32_t ITM_SendChar (uint32_t ch)
|
|
{
|
|
if ((((CoreDebug_Type *) (0xE000EDF0))->DEMCR & (1ul << 24)) &&
|
|
(((ITM_Type *) (0xE0000000))->TCR & (1ul << 0)) &&
|
|
(((ITM_Type *) (0xE0000000))->TER & (1ul << 0) ) )
|
|
{
|
|
while (((ITM_Type *) (0xE0000000))->PORT[0].u32 == 0);
|
|
((ITM_Type *) (0xE0000000))->PORT[0].u8 = (uint8_t) ch;
|
|
}
|
|
return (ch);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline int ITM_ReceiveChar (void) {
|
|
int ch = -1;
|
|
|
|
if (ITM_RxBuffer != 0x5AA55AA5) {
|
|
ch = ITM_RxBuffer;
|
|
ITM_RxBuffer = 0x5AA55AA5;
|
|
}
|
|
|
|
return (ch);
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
static __inline int ITM_CheckChar (void) {
|
|
|
|
if (ITM_RxBuffer == 0x5AA55AA5) {
|
|
return (0);
|
|
} else {
|
|
return (1);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 479 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
#line 1 "..\\..\\template\\Libraries\\CMSIS\\system_stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern uint32_t SystemCoreClock;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern void SystemInit(void);
|
|
extern void SystemCoreClockUpdate(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 480 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
#line 481 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef int32_t s32;
|
|
typedef int16_t s16;
|
|
typedef int8_t s8;
|
|
|
|
typedef const int32_t sc32;
|
|
typedef const int16_t sc16;
|
|
typedef const int8_t sc8;
|
|
|
|
typedef volatile int32_t vs32;
|
|
typedef volatile int16_t vs16;
|
|
typedef volatile int8_t vs8;
|
|
|
|
typedef volatile const int32_t vsc32;
|
|
typedef volatile const int16_t vsc16;
|
|
typedef volatile const int8_t vsc8;
|
|
|
|
typedef uint32_t u32;
|
|
typedef uint16_t u16;
|
|
typedef uint8_t u8;
|
|
|
|
typedef const uint32_t uc32;
|
|
typedef const uint16_t uc16;
|
|
typedef const uint8_t uc8;
|
|
|
|
typedef volatile uint32_t vu32;
|
|
typedef volatile uint16_t vu16;
|
|
typedef volatile uint8_t vu8;
|
|
|
|
typedef volatile const uint32_t vuc32;
|
|
typedef volatile const uint16_t vuc16;
|
|
typedef volatile const uint8_t vuc8;
|
|
|
|
typedef enum {RESET = 0, SET = !RESET} FlagStatus, ITStatus;
|
|
|
|
typedef enum {DISABLE = 0, ENABLE = !DISABLE} FunctionalState;
|
|
|
|
|
|
typedef enum {ERROR = 0, SUCCESS = !ERROR} ErrorStatus;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t SR;
|
|
volatile uint32_t CR1;
|
|
volatile uint32_t CR2;
|
|
volatile uint32_t SMPR1;
|
|
volatile uint32_t SMPR2;
|
|
volatile uint32_t JOFR1;
|
|
volatile uint32_t JOFR2;
|
|
volatile uint32_t JOFR3;
|
|
volatile uint32_t JOFR4;
|
|
volatile uint32_t HTR;
|
|
volatile uint32_t LTR;
|
|
volatile uint32_t SQR1;
|
|
volatile uint32_t SQR2;
|
|
volatile uint32_t SQR3;
|
|
volatile uint32_t JSQR;
|
|
volatile uint32_t JDR1;
|
|
volatile uint32_t JDR2;
|
|
volatile uint32_t JDR3;
|
|
volatile uint32_t JDR4;
|
|
volatile uint32_t DR;
|
|
} ADC_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t RESERVED0;
|
|
volatile uint16_t DR1;
|
|
uint16_t RESERVED1;
|
|
volatile uint16_t DR2;
|
|
uint16_t RESERVED2;
|
|
volatile uint16_t DR3;
|
|
uint16_t RESERVED3;
|
|
volatile uint16_t DR4;
|
|
uint16_t RESERVED4;
|
|
volatile uint16_t DR5;
|
|
uint16_t RESERVED5;
|
|
volatile uint16_t DR6;
|
|
uint16_t RESERVED6;
|
|
volatile uint16_t DR7;
|
|
uint16_t RESERVED7;
|
|
volatile uint16_t DR8;
|
|
uint16_t RESERVED8;
|
|
volatile uint16_t DR9;
|
|
uint16_t RESERVED9;
|
|
volatile uint16_t DR10;
|
|
uint16_t RESERVED10;
|
|
volatile uint16_t RTCCR;
|
|
uint16_t RESERVED11;
|
|
volatile uint16_t CR;
|
|
uint16_t RESERVED12;
|
|
volatile uint16_t CSR;
|
|
uint16_t RESERVED13[5];
|
|
volatile uint16_t DR11;
|
|
uint16_t RESERVED14;
|
|
volatile uint16_t DR12;
|
|
uint16_t RESERVED15;
|
|
volatile uint16_t DR13;
|
|
uint16_t RESERVED16;
|
|
volatile uint16_t DR14;
|
|
uint16_t RESERVED17;
|
|
volatile uint16_t DR15;
|
|
uint16_t RESERVED18;
|
|
volatile uint16_t DR16;
|
|
uint16_t RESERVED19;
|
|
volatile uint16_t DR17;
|
|
uint16_t RESERVED20;
|
|
volatile uint16_t DR18;
|
|
uint16_t RESERVED21;
|
|
volatile uint16_t DR19;
|
|
uint16_t RESERVED22;
|
|
volatile uint16_t DR20;
|
|
uint16_t RESERVED23;
|
|
volatile uint16_t DR21;
|
|
uint16_t RESERVED24;
|
|
volatile uint16_t DR22;
|
|
uint16_t RESERVED25;
|
|
volatile uint16_t DR23;
|
|
uint16_t RESERVED26;
|
|
volatile uint16_t DR24;
|
|
uint16_t RESERVED27;
|
|
volatile uint16_t DR25;
|
|
uint16_t RESERVED28;
|
|
volatile uint16_t DR26;
|
|
uint16_t RESERVED29;
|
|
volatile uint16_t DR27;
|
|
uint16_t RESERVED30;
|
|
volatile uint16_t DR28;
|
|
uint16_t RESERVED31;
|
|
volatile uint16_t DR29;
|
|
uint16_t RESERVED32;
|
|
volatile uint16_t DR30;
|
|
uint16_t RESERVED33;
|
|
volatile uint16_t DR31;
|
|
uint16_t RESERVED34;
|
|
volatile uint16_t DR32;
|
|
uint16_t RESERVED35;
|
|
volatile uint16_t DR33;
|
|
uint16_t RESERVED36;
|
|
volatile uint16_t DR34;
|
|
uint16_t RESERVED37;
|
|
volatile uint16_t DR35;
|
|
uint16_t RESERVED38;
|
|
volatile uint16_t DR36;
|
|
uint16_t RESERVED39;
|
|
volatile uint16_t DR37;
|
|
uint16_t RESERVED40;
|
|
volatile uint16_t DR38;
|
|
uint16_t RESERVED41;
|
|
volatile uint16_t DR39;
|
|
uint16_t RESERVED42;
|
|
volatile uint16_t DR40;
|
|
uint16_t RESERVED43;
|
|
volatile uint16_t DR41;
|
|
uint16_t RESERVED44;
|
|
volatile uint16_t DR42;
|
|
uint16_t RESERVED45;
|
|
} BKP_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t TIR;
|
|
volatile uint32_t TDTR;
|
|
volatile uint32_t TDLR;
|
|
volatile uint32_t TDHR;
|
|
} CAN_TxMailBox_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t RIR;
|
|
volatile uint32_t RDTR;
|
|
volatile uint32_t RDLR;
|
|
volatile uint32_t RDHR;
|
|
} CAN_FIFOMailBox_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t FR1;
|
|
volatile uint32_t FR2;
|
|
} CAN_FilterRegister_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t MCR;
|
|
volatile uint32_t MSR;
|
|
volatile uint32_t TSR;
|
|
volatile uint32_t RF0R;
|
|
volatile uint32_t RF1R;
|
|
volatile uint32_t IER;
|
|
volatile uint32_t ESR;
|
|
volatile uint32_t BTR;
|
|
uint32_t RESERVED0[88];
|
|
CAN_TxMailBox_TypeDef sTxMailBox[3];
|
|
CAN_FIFOMailBox_TypeDef sFIFOMailBox[2];
|
|
uint32_t RESERVED1[12];
|
|
volatile uint32_t FMR;
|
|
volatile uint32_t FM1R;
|
|
uint32_t RESERVED2;
|
|
volatile uint32_t FS1R;
|
|
uint32_t RESERVED3;
|
|
volatile uint32_t FFA1R;
|
|
uint32_t RESERVED4;
|
|
volatile uint32_t FA1R;
|
|
uint32_t RESERVED5[8];
|
|
|
|
CAN_FilterRegister_TypeDef sFilterRegister[14];
|
|
|
|
|
|
|
|
} CAN_TypeDef;
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t CFGR;
|
|
volatile uint32_t OAR;
|
|
volatile uint32_t PRES;
|
|
volatile uint32_t ESR;
|
|
volatile uint32_t CSR;
|
|
volatile uint32_t TXD;
|
|
volatile uint32_t RXD;
|
|
} CEC_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t DR;
|
|
volatile uint8_t IDR;
|
|
uint8_t RESERVED0;
|
|
uint16_t RESERVED1;
|
|
volatile uint32_t CR;
|
|
} CRC_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t CR;
|
|
volatile uint32_t SWTRIGR;
|
|
volatile uint32_t DHR12R1;
|
|
volatile uint32_t DHR12L1;
|
|
volatile uint32_t DHR8R1;
|
|
volatile uint32_t DHR12R2;
|
|
volatile uint32_t DHR12L2;
|
|
volatile uint32_t DHR8R2;
|
|
volatile uint32_t DHR12RD;
|
|
volatile uint32_t DHR12LD;
|
|
volatile uint32_t DHR8RD;
|
|
volatile uint32_t DOR1;
|
|
volatile uint32_t DOR2;
|
|
|
|
|
|
|
|
} DAC_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t IDCODE;
|
|
volatile uint32_t CR;
|
|
}DBGMCU_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t CCR;
|
|
volatile uint32_t CNDTR;
|
|
volatile uint32_t CPAR;
|
|
volatile uint32_t CMAR;
|
|
} DMA_Channel_TypeDef;
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t ISR;
|
|
volatile uint32_t IFCR;
|
|
} DMA_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t MACCR;
|
|
volatile uint32_t MACFFR;
|
|
volatile uint32_t MACHTHR;
|
|
volatile uint32_t MACHTLR;
|
|
volatile uint32_t MACMIIAR;
|
|
volatile uint32_t MACMIIDR;
|
|
volatile uint32_t MACFCR;
|
|
volatile uint32_t MACVLANTR;
|
|
uint32_t RESERVED0[2];
|
|
volatile uint32_t MACRWUFFR;
|
|
volatile uint32_t MACPMTCSR;
|
|
uint32_t RESERVED1[2];
|
|
volatile uint32_t MACSR;
|
|
volatile uint32_t MACIMR;
|
|
volatile uint32_t MACA0HR;
|
|
volatile uint32_t MACA0LR;
|
|
volatile uint32_t MACA1HR;
|
|
volatile uint32_t MACA1LR;
|
|
volatile uint32_t MACA2HR;
|
|
volatile uint32_t MACA2LR;
|
|
volatile uint32_t MACA3HR;
|
|
volatile uint32_t MACA3LR;
|
|
uint32_t RESERVED2[40];
|
|
volatile uint32_t MMCCR;
|
|
volatile uint32_t MMCRIR;
|
|
volatile uint32_t MMCTIR;
|
|
volatile uint32_t MMCRIMR;
|
|
volatile uint32_t MMCTIMR;
|
|
uint32_t RESERVED3[14];
|
|
volatile uint32_t MMCTGFSCCR;
|
|
volatile uint32_t MMCTGFMSCCR;
|
|
uint32_t RESERVED4[5];
|
|
volatile uint32_t MMCTGFCR;
|
|
uint32_t RESERVED5[10];
|
|
volatile uint32_t MMCRFCECR;
|
|
volatile uint32_t MMCRFAECR;
|
|
uint32_t RESERVED6[10];
|
|
volatile uint32_t MMCRGUFCR;
|
|
uint32_t RESERVED7[334];
|
|
volatile uint32_t PTPTSCR;
|
|
volatile uint32_t PTPSSIR;
|
|
volatile uint32_t PTPTSHR;
|
|
volatile uint32_t PTPTSLR;
|
|
volatile uint32_t PTPTSHUR;
|
|
volatile uint32_t PTPTSLUR;
|
|
volatile uint32_t PTPTSAR;
|
|
volatile uint32_t PTPTTHR;
|
|
volatile uint32_t PTPTTLR;
|
|
uint32_t RESERVED8[567];
|
|
volatile uint32_t DMABMR;
|
|
volatile uint32_t DMATPDR;
|
|
volatile uint32_t DMARPDR;
|
|
volatile uint32_t DMARDLAR;
|
|
volatile uint32_t DMATDLAR;
|
|
volatile uint32_t DMASR;
|
|
volatile uint32_t DMAOMR;
|
|
volatile uint32_t DMAIER;
|
|
volatile uint32_t DMAMFBOCR;
|
|
uint32_t RESERVED9[9];
|
|
volatile uint32_t DMACHTDR;
|
|
volatile uint32_t DMACHRDR;
|
|
volatile uint32_t DMACHTBAR;
|
|
volatile uint32_t DMACHRBAR;
|
|
} ETH_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t IMR;
|
|
volatile uint32_t EMR;
|
|
volatile uint32_t RTSR;
|
|
volatile uint32_t FTSR;
|
|
volatile uint32_t SWIER;
|
|
volatile uint32_t PR;
|
|
} EXTI_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t ACR;
|
|
volatile uint32_t KEYR;
|
|
volatile uint32_t OPTKEYR;
|
|
volatile uint32_t SR;
|
|
volatile uint32_t CR;
|
|
volatile uint32_t AR;
|
|
volatile uint32_t RESERVED;
|
|
volatile uint32_t OBR;
|
|
volatile uint32_t WRPR;
|
|
#line 920 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
} FLASH_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint16_t RDP;
|
|
volatile uint16_t USER;
|
|
volatile uint16_t Data0;
|
|
volatile uint16_t Data1;
|
|
volatile uint16_t WRP0;
|
|
volatile uint16_t WRP1;
|
|
volatile uint16_t WRP2;
|
|
volatile uint16_t WRP3;
|
|
} OB_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t BTCR[8];
|
|
} FSMC_Bank1_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t BWTR[7];
|
|
} FSMC_Bank1E_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t PCR2;
|
|
volatile uint32_t SR2;
|
|
volatile uint32_t PMEM2;
|
|
volatile uint32_t PATT2;
|
|
uint32_t RESERVED0;
|
|
volatile uint32_t ECCR2;
|
|
} FSMC_Bank2_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t PCR3;
|
|
volatile uint32_t SR3;
|
|
volatile uint32_t PMEM3;
|
|
volatile uint32_t PATT3;
|
|
uint32_t RESERVED0;
|
|
volatile uint32_t ECCR3;
|
|
} FSMC_Bank3_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t PCR4;
|
|
volatile uint32_t SR4;
|
|
volatile uint32_t PMEM4;
|
|
volatile uint32_t PATT4;
|
|
volatile uint32_t PIO4;
|
|
} FSMC_Bank4_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t CRL;
|
|
volatile uint32_t CRH;
|
|
volatile uint32_t IDR;
|
|
volatile uint32_t ODR;
|
|
volatile uint32_t BSRR;
|
|
volatile uint32_t BRR;
|
|
volatile uint32_t LCKR;
|
|
} GPIO_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t EVCR;
|
|
volatile uint32_t MAPR;
|
|
volatile uint32_t EXTICR[4];
|
|
uint32_t RESERVED0;
|
|
volatile uint32_t MAPR2;
|
|
} AFIO_TypeDef;
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint16_t CR1;
|
|
uint16_t RESERVED0;
|
|
volatile uint16_t CR2;
|
|
uint16_t RESERVED1;
|
|
volatile uint16_t OAR1;
|
|
uint16_t RESERVED2;
|
|
volatile uint16_t OAR2;
|
|
uint16_t RESERVED3;
|
|
volatile uint16_t DR;
|
|
uint16_t RESERVED4;
|
|
volatile uint16_t SR1;
|
|
uint16_t RESERVED5;
|
|
volatile uint16_t SR2;
|
|
uint16_t RESERVED6;
|
|
volatile uint16_t CCR;
|
|
uint16_t RESERVED7;
|
|
volatile uint16_t TRISE;
|
|
uint16_t RESERVED8;
|
|
} I2C_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t KR;
|
|
volatile uint32_t PR;
|
|
volatile uint32_t RLR;
|
|
volatile uint32_t SR;
|
|
} IWDG_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t CR;
|
|
volatile uint32_t CSR;
|
|
} PWR_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t CR;
|
|
volatile uint32_t CFGR;
|
|
volatile uint32_t CIR;
|
|
volatile uint32_t APB2RSTR;
|
|
volatile uint32_t APB1RSTR;
|
|
volatile uint32_t AHBENR;
|
|
volatile uint32_t APB2ENR;
|
|
volatile uint32_t APB1ENR;
|
|
volatile uint32_t BDCR;
|
|
volatile uint32_t CSR;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} RCC_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint16_t CRH;
|
|
uint16_t RESERVED0;
|
|
volatile uint16_t CRL;
|
|
uint16_t RESERVED1;
|
|
volatile uint16_t PRLH;
|
|
uint16_t RESERVED2;
|
|
volatile uint16_t PRLL;
|
|
uint16_t RESERVED3;
|
|
volatile uint16_t DIVH;
|
|
uint16_t RESERVED4;
|
|
volatile uint16_t DIVL;
|
|
uint16_t RESERVED5;
|
|
volatile uint16_t CNTH;
|
|
uint16_t RESERVED6;
|
|
volatile uint16_t CNTL;
|
|
uint16_t RESERVED7;
|
|
volatile uint16_t ALRH;
|
|
uint16_t RESERVED8;
|
|
volatile uint16_t ALRL;
|
|
uint16_t RESERVED9;
|
|
} RTC_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t POWER;
|
|
volatile uint32_t CLKCR;
|
|
volatile uint32_t ARG;
|
|
volatile uint32_t CMD;
|
|
volatile const uint32_t RESPCMD;
|
|
volatile const uint32_t RESP1;
|
|
volatile const uint32_t RESP2;
|
|
volatile const uint32_t RESP3;
|
|
volatile const uint32_t RESP4;
|
|
volatile uint32_t DTIMER;
|
|
volatile uint32_t DLEN;
|
|
volatile uint32_t DCTRL;
|
|
volatile const uint32_t DCOUNT;
|
|
volatile const uint32_t STA;
|
|
volatile uint32_t ICR;
|
|
volatile uint32_t MASK;
|
|
uint32_t RESERVED0[2];
|
|
volatile const uint32_t FIFOCNT;
|
|
uint32_t RESERVED1[13];
|
|
volatile uint32_t FIFO;
|
|
} SDIO_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint16_t CR1;
|
|
uint16_t RESERVED0;
|
|
volatile uint16_t CR2;
|
|
uint16_t RESERVED1;
|
|
volatile uint16_t SR;
|
|
uint16_t RESERVED2;
|
|
volatile uint16_t DR;
|
|
uint16_t RESERVED3;
|
|
volatile uint16_t CRCPR;
|
|
uint16_t RESERVED4;
|
|
volatile uint16_t RXCRCR;
|
|
uint16_t RESERVED5;
|
|
volatile uint16_t TXCRCR;
|
|
uint16_t RESERVED6;
|
|
volatile uint16_t I2SCFGR;
|
|
uint16_t RESERVED7;
|
|
volatile uint16_t I2SPR;
|
|
uint16_t RESERVED8;
|
|
} SPI_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint16_t CR1;
|
|
uint16_t RESERVED0;
|
|
volatile uint16_t CR2;
|
|
uint16_t RESERVED1;
|
|
volatile uint16_t SMCR;
|
|
uint16_t RESERVED2;
|
|
volatile uint16_t DIER;
|
|
uint16_t RESERVED3;
|
|
volatile uint16_t SR;
|
|
uint16_t RESERVED4;
|
|
volatile uint16_t EGR;
|
|
uint16_t RESERVED5;
|
|
volatile uint16_t CCMR1;
|
|
uint16_t RESERVED6;
|
|
volatile uint16_t CCMR2;
|
|
uint16_t RESERVED7;
|
|
volatile uint16_t CCER;
|
|
uint16_t RESERVED8;
|
|
volatile uint16_t CNT;
|
|
uint16_t RESERVED9;
|
|
volatile uint16_t PSC;
|
|
uint16_t RESERVED10;
|
|
volatile uint16_t ARR;
|
|
uint16_t RESERVED11;
|
|
volatile uint16_t RCR;
|
|
uint16_t RESERVED12;
|
|
volatile uint16_t CCR1;
|
|
uint16_t RESERVED13;
|
|
volatile uint16_t CCR2;
|
|
uint16_t RESERVED14;
|
|
volatile uint16_t CCR3;
|
|
uint16_t RESERVED15;
|
|
volatile uint16_t CCR4;
|
|
uint16_t RESERVED16;
|
|
volatile uint16_t BDTR;
|
|
uint16_t RESERVED17;
|
|
volatile uint16_t DCR;
|
|
uint16_t RESERVED18;
|
|
volatile uint16_t DMAR;
|
|
uint16_t RESERVED19;
|
|
} TIM_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint16_t SR;
|
|
uint16_t RESERVED0;
|
|
volatile uint16_t DR;
|
|
uint16_t RESERVED1;
|
|
volatile uint16_t BRR;
|
|
uint16_t RESERVED2;
|
|
volatile uint16_t CR1;
|
|
uint16_t RESERVED3;
|
|
volatile uint16_t CR2;
|
|
uint16_t RESERVED4;
|
|
volatile uint16_t CR3;
|
|
uint16_t RESERVED5;
|
|
volatile uint16_t GTPR;
|
|
uint16_t RESERVED6;
|
|
} USART_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile uint32_t CR;
|
|
volatile uint32_t CFR;
|
|
volatile uint32_t SR;
|
|
} WWDG_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1312 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 1335 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
#line 1354 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1454 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1515 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1691 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 1698 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1734 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1850 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
#line 1870 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1883 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 1902 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 1911 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 1919 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1944 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1976 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
#line 1990 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 1997 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2007 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2043 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2051 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2076 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2108 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
#line 2122 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2129 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2139 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2178 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2273 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2300 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2462 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2480 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2498 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2515 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2533 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2552 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2579 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2654 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2685 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2700 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2709 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2718 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2727 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2742 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2751 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2760 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2769 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2784 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2793 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2802 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2811 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2826 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2835 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2844 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2853 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2862 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2871 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 2881 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2945 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 2980 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3015 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3050 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3085 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3152 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3176 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3192 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3214 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3229 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3236 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3285 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3307 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3329 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3351 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3373 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3395 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3431 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3461 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3471 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3495 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3519 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3543 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3567 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3591 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3615 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3716 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3725 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3748 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3883 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3890 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3897 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3904 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 3918 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3925 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3932 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3939 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3946 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3953 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 3961 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3968 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3975 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3982 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3989 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 3996 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 4004 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 4011 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 4018 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 4025 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4167 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 4177 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4225 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4268 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 4282 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 4292 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4411 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4446 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
#line 4457 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 4465 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 4472 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4494 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4556 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
#line 4568 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4606 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4629 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4652 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 4675 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5072 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5081 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5090 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5101 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5111 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5121 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5131 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5142 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5152 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5162 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5172 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5183 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5193 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5203 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5213 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5224 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5234 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5244 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5254 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5265 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5275 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5285 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5295 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5306 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5316 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5326 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5336 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5347 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5357 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5367 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
#line 5377 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5425 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5495 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5510 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5536 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5757 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 5769 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5786 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5930 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5942 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5954 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5966 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5978 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 5990 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6002 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6014 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6028 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6040 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6052 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6064 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6076 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6088 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6100 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6112 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6124 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6136 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6148 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6160 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6172 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6184 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6196 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6208 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6228 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6239 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6257 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6295 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6316 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 6456 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6473 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6490 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6507 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6541 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6575 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6609 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6643 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6677 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6711 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6745 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6779 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6813 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6847 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6881 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6915 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6949 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 6983 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7017 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7051 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7085 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7119 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7153 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7187 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7221 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7255 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7289 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7323 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7357 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7391 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7425 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7459 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7486 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7494 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7504 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7565 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7574 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7595 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7620 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7630 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7656 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7680 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7689 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7709 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
#line 7720 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7749 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7783 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 7823 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 8287 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 8327 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t ADC_Mode;
|
|
|
|
|
|
|
|
FunctionalState ADC_ScanConvMode;
|
|
|
|
|
|
|
|
FunctionalState ADC_ContinuousConvMode;
|
|
|
|
|
|
|
|
uint32_t ADC_ExternalTrigConv;
|
|
|
|
|
|
|
|
uint32_t ADC_DataAlign;
|
|
|
|
|
|
uint8_t ADC_NbrOfChannel;
|
|
|
|
|
|
}ADC_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 104 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
#line 115 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 129 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
#line 139 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
#line 154 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 192 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
#line 205 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 229 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 266 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 282 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 297 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
#line 305 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 338 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_adc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void ADC_DeInit(ADC_TypeDef* ADCx);
|
|
void ADC_Init(ADC_TypeDef* ADCx, ADC_InitTypeDef* ADC_InitStruct);
|
|
void ADC_StructInit(ADC_InitTypeDef* ADC_InitStruct);
|
|
void ADC_Cmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
void ADC_DMACmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
void ADC_ITConfig(ADC_TypeDef* ADCx, uint16_t ADC_IT, FunctionalState NewState);
|
|
void ADC_ResetCalibration(ADC_TypeDef* ADCx);
|
|
FlagStatus ADC_GetResetCalibrationStatus(ADC_TypeDef* ADCx);
|
|
void ADC_StartCalibration(ADC_TypeDef* ADCx);
|
|
FlagStatus ADC_GetCalibrationStatus(ADC_TypeDef* ADCx);
|
|
void ADC_SoftwareStartConvCmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
FlagStatus ADC_GetSoftwareStartConvStatus(ADC_TypeDef* ADCx);
|
|
void ADC_DiscModeChannelCountConfig(ADC_TypeDef* ADCx, uint8_t Number);
|
|
void ADC_DiscModeCmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
void ADC_RegularChannelConfig(ADC_TypeDef* ADCx, uint8_t ADC_Channel, uint8_t Rank, uint8_t ADC_SampleTime);
|
|
void ADC_ExternalTrigConvCmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
uint16_t ADC_GetConversionValue(ADC_TypeDef* ADCx);
|
|
uint32_t ADC_GetDualModeConversionValue(void);
|
|
void ADC_AutoInjectedConvCmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
void ADC_InjectedDiscModeCmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
void ADC_ExternalTrigInjectedConvConfig(ADC_TypeDef* ADCx, uint32_t ADC_ExternalTrigInjecConv);
|
|
void ADC_ExternalTrigInjectedConvCmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
void ADC_SoftwareStartInjectedConvCmd(ADC_TypeDef* ADCx, FunctionalState NewState);
|
|
FlagStatus ADC_GetSoftwareStartInjectedConvCmdStatus(ADC_TypeDef* ADCx);
|
|
void ADC_InjectedChannelConfig(ADC_TypeDef* ADCx, uint8_t ADC_Channel, uint8_t Rank, uint8_t ADC_SampleTime);
|
|
void ADC_InjectedSequencerLengthConfig(ADC_TypeDef* ADCx, uint8_t Length);
|
|
void ADC_SetInjectedOffset(ADC_TypeDef* ADCx, uint8_t ADC_InjectedChannel, uint16_t Offset);
|
|
uint16_t ADC_GetInjectedConversionValue(ADC_TypeDef* ADCx, uint8_t ADC_InjectedChannel);
|
|
void ADC_AnalogWatchdogCmd(ADC_TypeDef* ADCx, uint32_t ADC_AnalogWatchdog);
|
|
void ADC_AnalogWatchdogThresholdsConfig(ADC_TypeDef* ADCx, uint16_t HighThreshold, uint16_t LowThreshold);
|
|
void ADC_AnalogWatchdogSingleChannelConfig(ADC_TypeDef* ADCx, uint8_t ADC_Channel);
|
|
void ADC_TempSensorVrefintCmd(FunctionalState NewState);
|
|
FlagStatus ADC_GetFlagStatus(ADC_TypeDef* ADCx, uint8_t ADC_FLAG);
|
|
void ADC_ClearFlag(ADC_TypeDef* ADCx, uint8_t ADC_FLAG);
|
|
ITStatus ADC_GetITStatus(ADC_TypeDef* ADCx, uint16_t ADC_IT);
|
|
void ADC_ClearITPendingBit(ADC_TypeDef* ADCx, uint16_t ADC_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 29 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_bkp.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_bkp.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 78 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_bkp.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 128 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_bkp.h"
|
|
|
|
#line 143 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_bkp.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void BKP_DeInit(void);
|
|
void BKP_TamperPinLevelConfig(uint16_t BKP_TamperPinLevel);
|
|
void BKP_TamperPinCmd(FunctionalState NewState);
|
|
void BKP_ITConfig(FunctionalState NewState);
|
|
void BKP_RTCOutputConfig(uint16_t BKP_RTCOutputSource);
|
|
void BKP_SetRTCCalibrationValue(uint8_t CalibrationValue);
|
|
void BKP_WriteBackupRegister(uint16_t BKP_DR, uint16_t Data);
|
|
uint16_t BKP_ReadBackupRegister(uint16_t BKP_DR);
|
|
FlagStatus BKP_GetFlagStatus(void);
|
|
void BKP_ClearFlag(void);
|
|
ITStatus BKP_GetITStatus(void);
|
|
void BKP_ClearITPendingBit(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 30 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint16_t CAN_Prescaler;
|
|
|
|
|
|
uint8_t CAN_Mode;
|
|
|
|
|
|
|
|
uint8_t CAN_SJW;
|
|
|
|
|
|
|
|
|
|
|
|
uint8_t CAN_BS1;
|
|
|
|
|
|
|
|
uint8_t CAN_BS2;
|
|
|
|
|
|
|
|
|
|
FunctionalState CAN_TTCM;
|
|
|
|
|
|
|
|
FunctionalState CAN_ABOM;
|
|
|
|
|
|
|
|
FunctionalState CAN_AWUM;
|
|
|
|
|
|
|
|
FunctionalState CAN_NART;
|
|
|
|
|
|
|
|
FunctionalState CAN_RFLM;
|
|
|
|
|
|
|
|
FunctionalState CAN_TXFP;
|
|
|
|
|
|
} CAN_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint16_t CAN_FilterIdHigh;
|
|
|
|
|
|
|
|
uint16_t CAN_FilterIdLow;
|
|
|
|
|
|
|
|
uint16_t CAN_FilterMaskIdHigh;
|
|
|
|
|
|
|
|
|
|
uint16_t CAN_FilterMaskIdLow;
|
|
|
|
|
|
|
|
|
|
uint16_t CAN_FilterFIFOAssignment;
|
|
|
|
|
|
uint8_t CAN_FilterNumber;
|
|
|
|
uint8_t CAN_FilterMode;
|
|
|
|
|
|
uint8_t CAN_FilterScale;
|
|
|
|
|
|
FunctionalState CAN_FilterActivation;
|
|
|
|
} CAN_FilterInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t StdId;
|
|
|
|
|
|
uint32_t ExtId;
|
|
|
|
|
|
uint8_t IDE;
|
|
|
|
|
|
|
|
uint8_t RTR;
|
|
|
|
|
|
|
|
uint8_t DLC;
|
|
|
|
|
|
|
|
uint8_t Data[8];
|
|
|
|
} CanTxMsg;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t StdId;
|
|
|
|
|
|
uint32_t ExtId;
|
|
|
|
|
|
uint8_t IDE;
|
|
|
|
|
|
|
|
uint8_t RTR;
|
|
|
|
|
|
|
|
uint8_t DLC;
|
|
|
|
|
|
uint8_t Data[8];
|
|
|
|
|
|
uint8_t FMI;
|
|
|
|
|
|
} CanRxMsg;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 301 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 319 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 493 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 518 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 539 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 565 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 590 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
#line 597 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 621 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_can.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void CAN_DeInit(CAN_TypeDef* CANx);
|
|
|
|
|
|
uint8_t CAN_Init(CAN_TypeDef* CANx, CAN_InitTypeDef* CAN_InitStruct);
|
|
void CAN_FilterInit(CAN_FilterInitTypeDef* CAN_FilterInitStruct);
|
|
void CAN_StructInit(CAN_InitTypeDef* CAN_InitStruct);
|
|
void CAN_SlaveStartBank(uint8_t CAN_BankNumber);
|
|
void CAN_DBGFreeze(CAN_TypeDef* CANx, FunctionalState NewState);
|
|
void CAN_TTComModeCmd(CAN_TypeDef* CANx, FunctionalState NewState);
|
|
|
|
|
|
uint8_t CAN_Transmit(CAN_TypeDef* CANx, CanTxMsg* TxMessage);
|
|
uint8_t CAN_TransmitStatus(CAN_TypeDef* CANx, uint8_t TransmitMailbox);
|
|
void CAN_CancelTransmit(CAN_TypeDef* CANx, uint8_t Mailbox);
|
|
|
|
|
|
void CAN_Receive(CAN_TypeDef* CANx, uint8_t FIFONumber, CanRxMsg* RxMessage);
|
|
void CAN_FIFORelease(CAN_TypeDef* CANx, uint8_t FIFONumber);
|
|
uint8_t CAN_MessagePending(CAN_TypeDef* CANx, uint8_t FIFONumber);
|
|
|
|
|
|
|
|
uint8_t CAN_OperatingModeRequest(CAN_TypeDef* CANx, uint8_t CAN_OperatingMode);
|
|
uint8_t CAN_Sleep(CAN_TypeDef* CANx);
|
|
uint8_t CAN_WakeUp(CAN_TypeDef* CANx);
|
|
|
|
|
|
uint8_t CAN_GetLastErrorCode(CAN_TypeDef* CANx);
|
|
uint8_t CAN_GetReceiveErrorCounter(CAN_TypeDef* CANx);
|
|
uint8_t CAN_GetLSBTransmitErrorCounter(CAN_TypeDef* CANx);
|
|
|
|
|
|
void CAN_ITConfig(CAN_TypeDef* CANx, uint32_t CAN_IT, FunctionalState NewState);
|
|
FlagStatus CAN_GetFlagStatus(CAN_TypeDef* CANx, uint32_t CAN_FLAG);
|
|
void CAN_ClearFlag(CAN_TypeDef* CANx, uint32_t CAN_FLAG);
|
|
ITStatus CAN_GetITStatus(CAN_TypeDef* CANx, uint32_t CAN_IT);
|
|
void CAN_ClearITPendingBit(CAN_TypeDef* CANx, uint32_t CAN_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 31 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_cec.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_cec.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint16_t CEC_BitTimingMode;
|
|
|
|
uint16_t CEC_BitPeriodMode;
|
|
|
|
}CEC_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 100 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_cec.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 136 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_cec.h"
|
|
|
|
|
|
|
|
|
|
#line 147 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_cec.h"
|
|
|
|
|
|
|
|
#line 157 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_cec.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void CEC_DeInit(void);
|
|
void CEC_Init(CEC_InitTypeDef* CEC_InitStruct);
|
|
void CEC_Cmd(FunctionalState NewState);
|
|
void CEC_ITConfig(FunctionalState NewState);
|
|
void CEC_OwnAddressConfig(uint8_t CEC_OwnAddress);
|
|
void CEC_SetPrescaler(uint16_t CEC_Prescaler);
|
|
void CEC_SendDataByte(uint8_t Data);
|
|
uint8_t CEC_ReceiveDataByte(void);
|
|
void CEC_StartOfMessage(void);
|
|
void CEC_EndOfMessageCmd(FunctionalState NewState);
|
|
FlagStatus CEC_GetFlagStatus(uint32_t CEC_FLAG);
|
|
void CEC_ClearFlag(uint32_t CEC_FLAG);
|
|
ITStatus CEC_GetITStatus(uint8_t CEC_IT);
|
|
void CEC_ClearITPendingBit(uint16_t CEC_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 32 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_crc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_crc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void CRC_ResetDR(void);
|
|
uint32_t CRC_CalcCRC(uint32_t Data);
|
|
uint32_t CRC_CalcBlockCRC(uint32_t pBuffer[], uint32_t BufferLength);
|
|
uint32_t CRC_GetCRC(void);
|
|
void CRC_SetIDRegister(uint8_t IDValue);
|
|
uint8_t CRC_GetIDRegister(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t DAC_Trigger;
|
|
|
|
|
|
uint32_t DAC_WaveGeneration;
|
|
|
|
|
|
|
|
uint32_t DAC_LFSRUnmask_TriangleAmplitude;
|
|
|
|
|
|
|
|
uint32_t DAC_OutputBuffer;
|
|
|
|
}DAC_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 94 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
#line 104 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 119 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 151 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
#line 176 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 214 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 261 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void DAC_DeInit(void);
|
|
void DAC_Init(uint32_t DAC_Channel, DAC_InitTypeDef* DAC_InitStruct);
|
|
void DAC_StructInit(DAC_InitTypeDef* DAC_InitStruct);
|
|
void DAC_Cmd(uint32_t DAC_Channel, FunctionalState NewState);
|
|
|
|
|
|
|
|
void DAC_DMACmd(uint32_t DAC_Channel, FunctionalState NewState);
|
|
void DAC_SoftwareTriggerCmd(uint32_t DAC_Channel, FunctionalState NewState);
|
|
void DAC_DualSoftwareTriggerCmd(FunctionalState NewState);
|
|
void DAC_WaveGenerationCmd(uint32_t DAC_Channel, uint32_t DAC_Wave, FunctionalState NewState);
|
|
void DAC_SetChannel1Data(uint32_t DAC_Align, uint16_t Data);
|
|
void DAC_SetChannel2Data(uint32_t DAC_Align, uint16_t Data);
|
|
void DAC_SetDualChannelData(uint32_t DAC_Align, uint16_t Data2, uint16_t Data1);
|
|
uint16_t DAC_GetDataOutputValue(uint32_t DAC_Channel);
|
|
#line 299 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dac.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 34 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dbgmcu.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dbgmcu.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 80 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dbgmcu.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t DBGMCU_GetREVID(void);
|
|
uint32_t DBGMCU_GetDEVID(void);
|
|
void DBGMCU_Config(uint32_t DBGMCU_Periph, FunctionalState NewState);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 35 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t DMA_PeripheralBaseAddr;
|
|
|
|
uint32_t DMA_MemoryBaseAddr;
|
|
|
|
uint32_t DMA_DIR;
|
|
|
|
|
|
uint32_t DMA_BufferSize;
|
|
|
|
|
|
|
|
uint32_t DMA_PeripheralInc;
|
|
|
|
|
|
uint32_t DMA_MemoryInc;
|
|
|
|
|
|
uint32_t DMA_PeripheralDataSize;
|
|
|
|
|
|
uint32_t DMA_MemoryDataSize;
|
|
|
|
|
|
uint32_t DMA_Mode;
|
|
|
|
|
|
|
|
|
|
uint32_t DMA_Priority;
|
|
|
|
|
|
uint32_t DMA_M2M;
|
|
|
|
}DMA_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 107 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 154 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 168 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 195 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 248 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
#line 269 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
#line 296 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 332 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
#line 353 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
#line 380 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_dma.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void DMA_DeInit(DMA_Channel_TypeDef* DMAy_Channelx);
|
|
void DMA_Init(DMA_Channel_TypeDef* DMAy_Channelx, DMA_InitTypeDef* DMA_InitStruct);
|
|
void DMA_StructInit(DMA_InitTypeDef* DMA_InitStruct);
|
|
void DMA_Cmd(DMA_Channel_TypeDef* DMAy_Channelx, FunctionalState NewState);
|
|
void DMA_ITConfig(DMA_Channel_TypeDef* DMAy_Channelx, uint32_t DMA_IT, FunctionalState NewState);
|
|
void DMA_SetCurrDataCounter(DMA_Channel_TypeDef* DMAy_Channelx, uint16_t DataNumber);
|
|
uint16_t DMA_GetCurrDataCounter(DMA_Channel_TypeDef* DMAy_Channelx);
|
|
FlagStatus DMA_GetFlagStatus(uint32_t DMAy_FLAG);
|
|
void DMA_ClearFlag(uint32_t DMAy_FLAG);
|
|
ITStatus DMA_GetITStatus(uint32_t DMAy_IT);
|
|
void DMA_ClearITPendingBit(uint32_t DMAy_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 36 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_exti.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_exti.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum
|
|
{
|
|
EXTI_Mode_Interrupt = 0x00,
|
|
EXTI_Mode_Event = 0x04
|
|
}EXTIMode_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum
|
|
{
|
|
EXTI_Trigger_Rising = 0x08,
|
|
EXTI_Trigger_Falling = 0x0C,
|
|
EXTI_Trigger_Rising_Falling = 0x10
|
|
}EXTITrigger_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t EXTI_Line;
|
|
|
|
|
|
EXTIMode_TypeDef EXTI_Mode;
|
|
|
|
|
|
EXTITrigger_TypeDef EXTI_Trigger;
|
|
|
|
|
|
FunctionalState EXTI_LineCmd;
|
|
|
|
}EXTI_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 124 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_exti.h"
|
|
|
|
#line 136 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_exti.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void EXTI_DeInit(void);
|
|
void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct);
|
|
void EXTI_StructInit(EXTI_InitTypeDef* EXTI_InitStruct);
|
|
void EXTI_GenerateSWInterrupt(uint32_t EXTI_Line);
|
|
FlagStatus EXTI_GetFlagStatus(uint32_t EXTI_Line);
|
|
void EXTI_ClearFlag(uint32_t EXTI_Line);
|
|
ITStatus EXTI_GetITStatus(uint32_t EXTI_Line);
|
|
void EXTI_ClearITPendingBit(uint32_t EXTI_Line);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 37 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum
|
|
{
|
|
FLASH_BUSY = 1,
|
|
FLASH_ERROR_PG,
|
|
FLASH_ERROR_WRP,
|
|
FLASH_COMPLETE,
|
|
FLASH_TIMEOUT
|
|
}FLASH_Status;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 77 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 118 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
#line 144 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
#line 211 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 270 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 291 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 333 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 346 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void FLASH_SetLatency(uint32_t FLASH_Latency);
|
|
void FLASH_HalfCycleAccessCmd(uint32_t FLASH_HalfCycleAccess);
|
|
void FLASH_PrefetchBufferCmd(uint32_t FLASH_PrefetchBuffer);
|
|
void FLASH_Unlock(void);
|
|
void FLASH_Lock(void);
|
|
FLASH_Status FLASH_ErasePage(uint32_t Page_Address);
|
|
FLASH_Status FLASH_EraseAllPages(void);
|
|
FLASH_Status FLASH_EraseOptionBytes(void);
|
|
FLASH_Status FLASH_ProgramWord(uint32_t Address, uint32_t Data);
|
|
FLASH_Status FLASH_ProgramHalfWord(uint32_t Address, uint16_t Data);
|
|
FLASH_Status FLASH_ProgramOptionByteData(uint32_t Address, uint8_t Data);
|
|
FLASH_Status FLASH_EnableWriteProtection(uint32_t FLASH_Pages);
|
|
FLASH_Status FLASH_ReadOutProtection(FunctionalState NewState);
|
|
FLASH_Status FLASH_UserOptionByteConfig(uint16_t OB_IWDG, uint16_t OB_STOP, uint16_t OB_STDBY);
|
|
uint32_t FLASH_GetUserOptionByte(void);
|
|
uint32_t FLASH_GetWriteProtectionOptionByte(void);
|
|
FlagStatus FLASH_GetReadOutProtectionStatus(void);
|
|
FlagStatus FLASH_GetPrefetchBufferStatus(void);
|
|
void FLASH_ITConfig(uint32_t FLASH_IT, FunctionalState NewState);
|
|
FlagStatus FLASH_GetFlagStatus(uint32_t FLASH_FLAG);
|
|
void FLASH_ClearFlag(uint32_t FLASH_FLAG);
|
|
FLASH_Status FLASH_GetStatus(void);
|
|
FLASH_Status FLASH_WaitForLastOperation(uint32_t Timeout);
|
|
|
|
|
|
void FLASH_UnlockBank1(void);
|
|
void FLASH_LockBank1(void);
|
|
FLASH_Status FLASH_EraseAllBank1Pages(void);
|
|
FLASH_Status FLASH_GetBank1Status(void);
|
|
FLASH_Status FLASH_WaitForLastBank1Operation(uint32_t Timeout);
|
|
|
|
#line 408 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 38 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_fsmc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_fsmc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t FSMC_AddressSetupTime;
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_AddressHoldTime;
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_DataSetupTime;
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_BusTurnAroundDuration;
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_CLKDivision;
|
|
|
|
|
|
|
|
uint32_t FSMC_DataLatency;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_AccessMode;
|
|
|
|
}FSMC_NORSRAMTimingInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t FSMC_Bank;
|
|
|
|
|
|
uint32_t FSMC_DataAddressMux;
|
|
|
|
|
|
|
|
uint32_t FSMC_MemoryType;
|
|
|
|
|
|
|
|
uint32_t FSMC_MemoryDataWidth;
|
|
|
|
|
|
uint32_t FSMC_BurstAccessMode;
|
|
|
|
|
|
|
|
uint32_t FSMC_AsynchronousWait;
|
|
|
|
|
|
|
|
uint32_t FSMC_WaitSignalPolarity;
|
|
|
|
|
|
|
|
uint32_t FSMC_WrapMode;
|
|
|
|
|
|
|
|
uint32_t FSMC_WaitSignalActive;
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_WriteOperation;
|
|
|
|
|
|
uint32_t FSMC_WaitSignal;
|
|
|
|
|
|
|
|
uint32_t FSMC_ExtendedMode;
|
|
|
|
|
|
uint32_t FSMC_WriteBurst;
|
|
|
|
|
|
FSMC_NORSRAMTimingInitTypeDef* FSMC_ReadWriteTimingStruct;
|
|
|
|
FSMC_NORSRAMTimingInitTypeDef* FSMC_WriteTimingStruct;
|
|
}FSMC_NORSRAMInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t FSMC_SetupTime;
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_WaitSetupTime;
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_HoldSetupTime;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t FSMC_HiZSetupTime;
|
|
|
|
|
|
|
|
|
|
}FSMC_NAND_PCCARDTimingInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t FSMC_Bank;
|
|
|
|
|
|
uint32_t FSMC_Waitfeature;
|
|
|
|
|
|
uint32_t FSMC_MemoryDataWidth;
|
|
|
|
|
|
uint32_t FSMC_ECC;
|
|
|
|
|
|
uint32_t FSMC_ECCPageSize;
|
|
|
|
|
|
uint32_t FSMC_TCLRSetupTime;
|
|
|
|
|
|
|
|
uint32_t FSMC_TARSetupTime;
|
|
|
|
|
|
|
|
FSMC_NAND_PCCARDTimingInitTypeDef* FSMC_CommonSpaceTimingStruct;
|
|
|
|
FSMC_NAND_PCCARDTimingInitTypeDef* FSMC_AttributeSpaceTimingStruct;
|
|
}FSMC_NANDInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t FSMC_Waitfeature;
|
|
|
|
|
|
uint32_t FSMC_TCLRSetupTime;
|
|
|
|
|
|
|
|
uint32_t FSMC_TARSetupTime;
|
|
|
|
|
|
|
|
|
|
FSMC_NAND_PCCARDTimingInitTypeDef* FSMC_CommonSpaceTimingStruct;
|
|
|
|
FSMC_NAND_PCCARDTimingInitTypeDef* FSMC_AttributeSpaceTimingStruct;
|
|
|
|
FSMC_NAND_PCCARDTimingInitTypeDef* FSMC_IOSpaceTimingStruct;
|
|
}FSMC_PCCARDInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 317 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_fsmc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 521 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_fsmc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 577 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_fsmc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 653 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_fsmc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 669 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_fsmc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void FSMC_NORSRAMDeInit(uint32_t FSMC_Bank);
|
|
void FSMC_NANDDeInit(uint32_t FSMC_Bank);
|
|
void FSMC_PCCARDDeInit(void);
|
|
void FSMC_NORSRAMInit(FSMC_NORSRAMInitTypeDef* FSMC_NORSRAMInitStruct);
|
|
void FSMC_NANDInit(FSMC_NANDInitTypeDef* FSMC_NANDInitStruct);
|
|
void FSMC_PCCARDInit(FSMC_PCCARDInitTypeDef* FSMC_PCCARDInitStruct);
|
|
void FSMC_NORSRAMStructInit(FSMC_NORSRAMInitTypeDef* FSMC_NORSRAMInitStruct);
|
|
void FSMC_NANDStructInit(FSMC_NANDInitTypeDef* FSMC_NANDInitStruct);
|
|
void FSMC_PCCARDStructInit(FSMC_PCCARDInitTypeDef* FSMC_PCCARDInitStruct);
|
|
void FSMC_NORSRAMCmd(uint32_t FSMC_Bank, FunctionalState NewState);
|
|
void FSMC_NANDCmd(uint32_t FSMC_Bank, FunctionalState NewState);
|
|
void FSMC_PCCARDCmd(FunctionalState NewState);
|
|
void FSMC_NANDECCCmd(uint32_t FSMC_Bank, FunctionalState NewState);
|
|
uint32_t FSMC_GetECC(uint32_t FSMC_Bank);
|
|
void FSMC_ITConfig(uint32_t FSMC_Bank, uint32_t FSMC_IT, FunctionalState NewState);
|
|
FlagStatus FSMC_GetFlagStatus(uint32_t FSMC_Bank, uint32_t FSMC_FLAG);
|
|
void FSMC_ClearFlag(uint32_t FSMC_Bank, uint32_t FSMC_FLAG);
|
|
ITStatus FSMC_GetITStatus(uint32_t FSMC_Bank, uint32_t FSMC_IT);
|
|
void FSMC_ClearITPendingBit(uint32_t FSMC_Bank, uint32_t FSMC_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 39 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 53 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum
|
|
{
|
|
GPIO_Speed_10MHz = 1,
|
|
GPIO_Speed_2MHz,
|
|
GPIO_Speed_50MHz
|
|
}GPIOSpeed_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum
|
|
{ GPIO_Mode_AIN = 0x0,
|
|
GPIO_Mode_IN_FLOATING = 0x04,
|
|
GPIO_Mode_IPD = 0x28,
|
|
GPIO_Mode_IPU = 0x48,
|
|
GPIO_Mode_Out_OD = 0x14,
|
|
GPIO_Mode_Out_PP = 0x10,
|
|
GPIO_Mode_AF_OD = 0x1C,
|
|
GPIO_Mode_AF_PP = 0x18
|
|
}GPIOMode_TypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint16_t GPIO_Pin;
|
|
|
|
|
|
GPIOSpeed_TypeDef GPIO_Speed;
|
|
|
|
|
|
GPIOMode_TypeDef GPIO_Mode;
|
|
|
|
}GPIO_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum
|
|
{ Bit_RESET = 0,
|
|
Bit_SET
|
|
}BitAction;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 144 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
#line 163 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 204 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 217 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 245 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 266 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
#line 274 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 299 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
#line 316 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_gpio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void GPIO_DeInit(GPIO_TypeDef* GPIOx);
|
|
void GPIO_AFIODeInit(void);
|
|
void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct);
|
|
void GPIO_StructInit(GPIO_InitTypeDef* GPIO_InitStruct);
|
|
uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
|
|
uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx);
|
|
uint8_t GPIO_ReadOutputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
|
|
uint16_t GPIO_ReadOutputData(GPIO_TypeDef* GPIOx);
|
|
void GPIO_SetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
|
|
void GPIO_ResetBits(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
|
|
void GPIO_WriteBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, BitAction BitVal);
|
|
void GPIO_Write(GPIO_TypeDef* GPIOx, uint16_t PortVal);
|
|
void GPIO_PinLockConfig(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);
|
|
void GPIO_EventOutputConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);
|
|
void GPIO_EventOutputCmd(FunctionalState NewState);
|
|
void GPIO_PinRemapConfig(uint32_t GPIO_Remap, FunctionalState NewState);
|
|
void GPIO_EXTILineConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);
|
|
void GPIO_ETH_MediaInterfaceConfig(uint32_t GPIO_ETH_MediaInterface);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 40 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t I2C_ClockSpeed;
|
|
|
|
|
|
uint16_t I2C_Mode;
|
|
|
|
|
|
uint16_t I2C_DutyCycle;
|
|
|
|
|
|
uint16_t I2C_OwnAddress1;
|
|
|
|
|
|
uint16_t I2C_Ack;
|
|
|
|
|
|
uint16_t I2C_AcknowledgedAddress;
|
|
|
|
}I2C_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 92 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 166 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 236 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
#line 246 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 265 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
|
|
|
|
#line 284 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
#line 298 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 496 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_i2c.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void I2C_DeInit(I2C_TypeDef* I2Cx);
|
|
void I2C_Init(I2C_TypeDef* I2Cx, I2C_InitTypeDef* I2C_InitStruct);
|
|
void I2C_StructInit(I2C_InitTypeDef* I2C_InitStruct);
|
|
void I2C_Cmd(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_DMACmd(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_DMALastTransferCmd(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_GenerateSTART(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_GenerateSTOP(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_AcknowledgeConfig(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_OwnAddress2Config(I2C_TypeDef* I2Cx, uint8_t Address);
|
|
void I2C_DualAddressCmd(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_GeneralCallCmd(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_ITConfig(I2C_TypeDef* I2Cx, uint16_t I2C_IT, FunctionalState NewState);
|
|
void I2C_SendData(I2C_TypeDef* I2Cx, uint8_t Data);
|
|
uint8_t I2C_ReceiveData(I2C_TypeDef* I2Cx);
|
|
void I2C_Send7bitAddress(I2C_TypeDef* I2Cx, uint8_t Address, uint8_t I2C_Direction);
|
|
uint16_t I2C_ReadRegister(I2C_TypeDef* I2Cx, uint8_t I2C_Register);
|
|
void I2C_SoftwareResetCmd(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_NACKPositionConfig(I2C_TypeDef* I2Cx, uint16_t I2C_NACKPosition);
|
|
void I2C_SMBusAlertConfig(I2C_TypeDef* I2Cx, uint16_t I2C_SMBusAlert);
|
|
void I2C_TransmitPEC(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_PECPositionConfig(I2C_TypeDef* I2Cx, uint16_t I2C_PECPosition);
|
|
void I2C_CalculatePEC(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
uint8_t I2C_GetPEC(I2C_TypeDef* I2Cx);
|
|
void I2C_ARPCmd(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_StretchClockCmd(I2C_TypeDef* I2Cx, FunctionalState NewState);
|
|
void I2C_FastModeDutyCycleConfig(I2C_TypeDef* I2Cx, uint16_t I2C_DutyCycle);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ErrorStatus I2C_CheckEvent(I2C_TypeDef* I2Cx, uint32_t I2C_EVENT);
|
|
|
|
|
|
|
|
|
|
|
|
uint32_t I2C_GetLastEvent(I2C_TypeDef* I2Cx);
|
|
|
|
|
|
|
|
|
|
|
|
FlagStatus I2C_GetFlagStatus(I2C_TypeDef* I2Cx, uint32_t I2C_FLAG);
|
|
|
|
|
|
|
|
|
|
|
|
void I2C_ClearFlag(I2C_TypeDef* I2Cx, uint32_t I2C_FLAG);
|
|
ITStatus I2C_GetITStatus(I2C_TypeDef* I2Cx, uint32_t I2C_IT);
|
|
void I2C_ClearITPendingBit(I2C_TypeDef* I2Cx, uint32_t I2C_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 41 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_iwdg.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_iwdg.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 84 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_iwdg.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void IWDG_WriteAccessCmd(uint16_t IWDG_WriteAccess);
|
|
void IWDG_SetPrescaler(uint8_t IWDG_Prescaler);
|
|
void IWDG_SetReload(uint16_t Reload);
|
|
void IWDG_ReloadCounter(void);
|
|
void IWDG_Enable(void);
|
|
FlagStatus IWDG_GetFlagStatus(uint16_t IWDG_FLAG);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 42 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_pwr.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_pwr.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 70 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_pwr.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void PWR_DeInit(void);
|
|
void PWR_BackupAccessCmd(FunctionalState NewState);
|
|
void PWR_PVDCmd(FunctionalState NewState);
|
|
void PWR_PVDLevelConfig(uint32_t PWR_PVDLevel);
|
|
void PWR_WakeUpPinCmd(FunctionalState NewState);
|
|
void PWR_EnterSTOPMode(uint32_t PWR_Regulator, uint8_t PWR_STOPEntry);
|
|
void PWR_EnterSTANDBYMode(void);
|
|
FlagStatus PWR_GetFlagStatus(uint32_t PWR_FLAG);
|
|
void PWR_ClearFlag(uint32_t PWR_FLAG);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 43 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t SYSCLK_Frequency;
|
|
uint32_t HCLK_Frequency;
|
|
uint32_t PCLK1_Frequency;
|
|
uint32_t PCLK2_Frequency;
|
|
uint32_t ADCCLK_Frequency;
|
|
}RCC_ClocksTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 94 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 126 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
#line 141 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 175 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 196 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
#line 283 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 295 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 317 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 333 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 347 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
#line 364 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 396 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
#line 423 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 435 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 462 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 489 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 518 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 553 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 586 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 606 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
#line 625 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void RCC_DeInit(void);
|
|
void RCC_HSEConfig(uint32_t RCC_HSE);
|
|
ErrorStatus RCC_WaitForHSEStartUp(void);
|
|
void RCC_AdjustHSICalibrationValue(uint8_t HSICalibrationValue);
|
|
void RCC_HSICmd(FunctionalState NewState);
|
|
void RCC_PLLConfig(uint32_t RCC_PLLSource, uint32_t RCC_PLLMul);
|
|
void RCC_PLLCmd(FunctionalState NewState);
|
|
|
|
|
|
|
|
|
|
|
|
#line 666 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rcc.h"
|
|
|
|
void RCC_SYSCLKConfig(uint32_t RCC_SYSCLKSource);
|
|
uint8_t RCC_GetSYSCLKSource(void);
|
|
void RCC_HCLKConfig(uint32_t RCC_SYSCLK);
|
|
void RCC_PCLK1Config(uint32_t RCC_HCLK);
|
|
void RCC_PCLK2Config(uint32_t RCC_HCLK);
|
|
void RCC_ITConfig(uint8_t RCC_IT, FunctionalState NewState);
|
|
|
|
|
|
void RCC_USBCLKConfig(uint32_t RCC_USBCLKSource);
|
|
|
|
|
|
|
|
|
|
void RCC_ADCCLKConfig(uint32_t RCC_PCLK2);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void RCC_LSEConfig(uint8_t RCC_LSE);
|
|
void RCC_LSICmd(FunctionalState NewState);
|
|
void RCC_RTCCLKConfig(uint32_t RCC_RTCCLKSource);
|
|
void RCC_RTCCLKCmd(FunctionalState NewState);
|
|
void RCC_GetClocksFreq(RCC_ClocksTypeDef* RCC_Clocks);
|
|
void RCC_AHBPeriphClockCmd(uint32_t RCC_AHBPeriph, FunctionalState NewState);
|
|
void RCC_APB2PeriphClockCmd(uint32_t RCC_APB2Periph, FunctionalState NewState);
|
|
void RCC_APB1PeriphClockCmd(uint32_t RCC_APB1Periph, FunctionalState NewState);
|
|
|
|
|
|
|
|
|
|
|
|
void RCC_APB2PeriphResetCmd(uint32_t RCC_APB2Periph, FunctionalState NewState);
|
|
void RCC_APB1PeriphResetCmd(uint32_t RCC_APB1Periph, FunctionalState NewState);
|
|
void RCC_BackupResetCmd(FunctionalState NewState);
|
|
void RCC_ClockSecuritySystemCmd(FunctionalState NewState);
|
|
void RCC_MCOConfig(uint8_t RCC_MCO);
|
|
FlagStatus RCC_GetFlagStatus(uint8_t RCC_FLAG);
|
|
void RCC_ClearFlag(void);
|
|
ITStatus RCC_GetITStatus(uint8_t RCC_IT);
|
|
void RCC_ClearITPendingBit(uint8_t RCC_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 44 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rtc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rtc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 64 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rtc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 82 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_rtc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void RTC_ITConfig(uint16_t RTC_IT, FunctionalState NewState);
|
|
void RTC_EnterConfigMode(void);
|
|
void RTC_ExitConfigMode(void);
|
|
uint32_t RTC_GetCounter(void);
|
|
void RTC_SetCounter(uint32_t CounterValue);
|
|
void RTC_SetPrescaler(uint32_t PrescalerValue);
|
|
void RTC_SetAlarm(uint32_t AlarmValue);
|
|
uint32_t RTC_GetDivider(void);
|
|
void RTC_WaitForLastTask(void);
|
|
void RTC_WaitForSynchro(void);
|
|
FlagStatus RTC_GetFlagStatus(uint16_t RTC_FLAG);
|
|
void RTC_ClearFlag(uint16_t RTC_FLAG);
|
|
ITStatus RTC_GetITStatus(uint16_t RTC_IT);
|
|
void RTC_ClearITPendingBit(uint16_t RTC_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 45 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_sdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_sdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t SDIO_ClockEdge;
|
|
|
|
|
|
uint32_t SDIO_ClockBypass;
|
|
|
|
|
|
|
|
uint32_t SDIO_ClockPowerSave;
|
|
|
|
|
|
|
|
uint32_t SDIO_BusWide;
|
|
|
|
|
|
uint32_t SDIO_HardwareFlowControl;
|
|
|
|
|
|
uint8_t SDIO_ClockDiv;
|
|
|
|
|
|
} SDIO_InitTypeDef;
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t SDIO_Argument;
|
|
|
|
|
|
|
|
|
|
uint32_t SDIO_CmdIndex;
|
|
|
|
uint32_t SDIO_Response;
|
|
|
|
|
|
uint32_t SDIO_Wait;
|
|
|
|
|
|
uint32_t SDIO_CPSM;
|
|
|
|
|
|
} SDIO_CmdInitTypeDef;
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t SDIO_DataTimeOut;
|
|
|
|
uint32_t SDIO_DataLength;
|
|
|
|
uint32_t SDIO_DataBlockSize;
|
|
|
|
|
|
uint32_t SDIO_TransferDir;
|
|
|
|
|
|
|
|
uint32_t SDIO_TransferMode;
|
|
|
|
|
|
uint32_t SDIO_DPSM;
|
|
|
|
|
|
} SDIO_DataInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 222 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_sdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 245 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_sdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 283 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_sdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 330 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_sdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 421 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_sdio.h"
|
|
|
|
|
|
|
|
#line 448 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_sdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void SDIO_DeInit(void);
|
|
void SDIO_Init(SDIO_InitTypeDef* SDIO_InitStruct);
|
|
void SDIO_StructInit(SDIO_InitTypeDef* SDIO_InitStruct);
|
|
void SDIO_ClockCmd(FunctionalState NewState);
|
|
void SDIO_SetPowerState(uint32_t SDIO_PowerState);
|
|
uint32_t SDIO_GetPowerState(void);
|
|
void SDIO_ITConfig(uint32_t SDIO_IT, FunctionalState NewState);
|
|
void SDIO_DMACmd(FunctionalState NewState);
|
|
void SDIO_SendCommand(SDIO_CmdInitTypeDef *SDIO_CmdInitStruct);
|
|
void SDIO_CmdStructInit(SDIO_CmdInitTypeDef* SDIO_CmdInitStruct);
|
|
uint8_t SDIO_GetCommandResponse(void);
|
|
uint32_t SDIO_GetResponse(uint32_t SDIO_RESP);
|
|
void SDIO_DataConfig(SDIO_DataInitTypeDef* SDIO_DataInitStruct);
|
|
void SDIO_DataStructInit(SDIO_DataInitTypeDef* SDIO_DataInitStruct);
|
|
uint32_t SDIO_GetDataCounter(void);
|
|
uint32_t SDIO_ReadData(void);
|
|
void SDIO_WriteData(uint32_t Data);
|
|
uint32_t SDIO_GetFIFOCount(void);
|
|
void SDIO_StartSDIOReadWait(FunctionalState NewState);
|
|
void SDIO_StopSDIOReadWait(FunctionalState NewState);
|
|
void SDIO_SetSDIOReadWaitMode(uint32_t SDIO_ReadWaitMode);
|
|
void SDIO_SetSDIOOperation(FunctionalState NewState);
|
|
void SDIO_SendSDIOSuspendCmd(FunctionalState NewState);
|
|
void SDIO_CommandCompletionCmd(FunctionalState NewState);
|
|
void SDIO_CEATAITCmd(FunctionalState NewState);
|
|
void SDIO_SendCEATACmd(FunctionalState NewState);
|
|
FlagStatus SDIO_GetFlagStatus(uint32_t SDIO_FLAG);
|
|
void SDIO_ClearFlag(uint32_t SDIO_FLAG);
|
|
ITStatus SDIO_GetITStatus(uint32_t SDIO_IT);
|
|
void SDIO_ClearITPendingBit(uint32_t SDIO_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 46 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint16_t SPI_Direction;
|
|
|
|
|
|
uint16_t SPI_Mode;
|
|
|
|
|
|
uint16_t SPI_DataSize;
|
|
|
|
|
|
uint16_t SPI_CPOL;
|
|
|
|
|
|
uint16_t SPI_CPHA;
|
|
|
|
|
|
uint16_t SPI_NSS;
|
|
|
|
|
|
|
|
uint16_t SPI_BaudRatePrescaler;
|
|
|
|
|
|
|
|
|
|
|
|
uint16_t SPI_FirstBit;
|
|
|
|
|
|
uint16_t SPI_CRCPolynomial;
|
|
}SPI_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
|
|
uint16_t I2S_Mode;
|
|
|
|
|
|
uint16_t I2S_Standard;
|
|
|
|
|
|
uint16_t I2S_DataFormat;
|
|
|
|
|
|
uint16_t I2S_MCLKOutput;
|
|
|
|
|
|
uint32_t I2S_AudioFreq;
|
|
|
|
|
|
uint16_t I2S_CPOL;
|
|
|
|
}I2S_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 136 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 220 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 248 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 266 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 282 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 312 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 396 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 417 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_spi.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void SPI_I2S_DeInit(SPI_TypeDef* SPIx);
|
|
void SPI_Init(SPI_TypeDef* SPIx, SPI_InitTypeDef* SPI_InitStruct);
|
|
void I2S_Init(SPI_TypeDef* SPIx, I2S_InitTypeDef* I2S_InitStruct);
|
|
void SPI_StructInit(SPI_InitTypeDef* SPI_InitStruct);
|
|
void I2S_StructInit(I2S_InitTypeDef* I2S_InitStruct);
|
|
void SPI_Cmd(SPI_TypeDef* SPIx, FunctionalState NewState);
|
|
void I2S_Cmd(SPI_TypeDef* SPIx, FunctionalState NewState);
|
|
void SPI_I2S_ITConfig(SPI_TypeDef* SPIx, uint8_t SPI_I2S_IT, FunctionalState NewState);
|
|
void SPI_I2S_DMACmd(SPI_TypeDef* SPIx, uint16_t SPI_I2S_DMAReq, FunctionalState NewState);
|
|
void SPI_I2S_SendData(SPI_TypeDef* SPIx, uint16_t Data);
|
|
uint16_t SPI_I2S_ReceiveData(SPI_TypeDef* SPIx);
|
|
void SPI_NSSInternalSoftwareConfig(SPI_TypeDef* SPIx, uint16_t SPI_NSSInternalSoft);
|
|
void SPI_SSOutputCmd(SPI_TypeDef* SPIx, FunctionalState NewState);
|
|
void SPI_DataSizeConfig(SPI_TypeDef* SPIx, uint16_t SPI_DataSize);
|
|
void SPI_TransmitCRC(SPI_TypeDef* SPIx);
|
|
void SPI_CalculateCRC(SPI_TypeDef* SPIx, FunctionalState NewState);
|
|
uint16_t SPI_GetCRC(SPI_TypeDef* SPIx, uint8_t SPI_CRC);
|
|
uint16_t SPI_GetCRCPolynomial(SPI_TypeDef* SPIx);
|
|
void SPI_BiDirectionalLineConfig(SPI_TypeDef* SPIx, uint16_t SPI_Direction);
|
|
FlagStatus SPI_I2S_GetFlagStatus(SPI_TypeDef* SPIx, uint16_t SPI_I2S_FLAG);
|
|
void SPI_I2S_ClearFlag(SPI_TypeDef* SPIx, uint16_t SPI_I2S_FLAG);
|
|
ITStatus SPI_I2S_GetITStatus(SPI_TypeDef* SPIx, uint8_t SPI_I2S_IT);
|
|
void SPI_I2S_ClearITPendingBit(SPI_TypeDef* SPIx, uint8_t SPI_I2S_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 47 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint16_t TIM_Prescaler;
|
|
|
|
|
|
uint16_t TIM_CounterMode;
|
|
|
|
|
|
uint16_t TIM_Period;
|
|
|
|
|
|
|
|
uint16_t TIM_ClockDivision;
|
|
|
|
|
|
uint8_t TIM_RepetitionCounter;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} TIM_TimeBaseInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint16_t TIM_OCMode;
|
|
|
|
|
|
uint16_t TIM_OutputState;
|
|
|
|
|
|
uint16_t TIM_OutputNState;
|
|
|
|
|
|
|
|
uint16_t TIM_Pulse;
|
|
|
|
|
|
uint16_t TIM_OCPolarity;
|
|
|
|
|
|
uint16_t TIM_OCNPolarity;
|
|
|
|
|
|
|
|
uint16_t TIM_OCIdleState;
|
|
|
|
|
|
|
|
uint16_t TIM_OCNIdleState;
|
|
|
|
|
|
} TIM_OCInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
|
|
uint16_t TIM_Channel;
|
|
|
|
|
|
uint16_t TIM_ICPolarity;
|
|
|
|
|
|
uint16_t TIM_ICSelection;
|
|
|
|
|
|
uint16_t TIM_ICPrescaler;
|
|
|
|
|
|
uint16_t TIM_ICFilter;
|
|
|
|
} TIM_ICInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
|
|
uint16_t TIM_OSSRState;
|
|
|
|
|
|
uint16_t TIM_OSSIState;
|
|
|
|
|
|
uint16_t TIM_LOCKLevel;
|
|
|
|
|
|
uint16_t TIM_DeadTime;
|
|
|
|
|
|
|
|
uint16_t TIM_Break;
|
|
|
|
|
|
uint16_t TIM_BreakPolarity;
|
|
|
|
|
|
uint16_t TIM_AutomaticOutput;
|
|
|
|
} TIM_BDTRInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
#line 186 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 205 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
#line 216 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
#line 225 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
#line 236 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
#line 249 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
#line 266 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
#line 279 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 308 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 341 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 355 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 373 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 497 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 561 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 577 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 593 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 610 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
#line 619 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 665 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 709 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 725 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 742 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 770 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 784 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 833 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 851 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 866 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 927 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 943 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 987 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1034 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_tim.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void TIM_DeInit(TIM_TypeDef* TIMx);
|
|
void TIM_TimeBaseInit(TIM_TypeDef* TIMx, TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct);
|
|
void TIM_OC1Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCInitStruct);
|
|
void TIM_OC2Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCInitStruct);
|
|
void TIM_OC3Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCInitStruct);
|
|
void TIM_OC4Init(TIM_TypeDef* TIMx, TIM_OCInitTypeDef* TIM_OCInitStruct);
|
|
void TIM_ICInit(TIM_TypeDef* TIMx, TIM_ICInitTypeDef* TIM_ICInitStruct);
|
|
void TIM_PWMIConfig(TIM_TypeDef* TIMx, TIM_ICInitTypeDef* TIM_ICInitStruct);
|
|
void TIM_BDTRConfig(TIM_TypeDef* TIMx, TIM_BDTRInitTypeDef *TIM_BDTRInitStruct);
|
|
void TIM_TimeBaseStructInit(TIM_TimeBaseInitTypeDef* TIM_TimeBaseInitStruct);
|
|
void TIM_OCStructInit(TIM_OCInitTypeDef* TIM_OCInitStruct);
|
|
void TIM_ICStructInit(TIM_ICInitTypeDef* TIM_ICInitStruct);
|
|
void TIM_BDTRStructInit(TIM_BDTRInitTypeDef* TIM_BDTRInitStruct);
|
|
void TIM_Cmd(TIM_TypeDef* TIMx, FunctionalState NewState);
|
|
void TIM_CtrlPWMOutputs(TIM_TypeDef* TIMx, FunctionalState NewState);
|
|
void TIM_ITConfig(TIM_TypeDef* TIMx, uint16_t TIM_IT, FunctionalState NewState);
|
|
void TIM_GenerateEvent(TIM_TypeDef* TIMx, uint16_t TIM_EventSource);
|
|
void TIM_DMAConfig(TIM_TypeDef* TIMx, uint16_t TIM_DMABase, uint16_t TIM_DMABurstLength);
|
|
void TIM_DMACmd(TIM_TypeDef* TIMx, uint16_t TIM_DMASource, FunctionalState NewState);
|
|
void TIM_InternalClockConfig(TIM_TypeDef* TIMx);
|
|
void TIM_ITRxExternalClockConfig(TIM_TypeDef* TIMx, uint16_t TIM_InputTriggerSource);
|
|
void TIM_TIxExternalClockConfig(TIM_TypeDef* TIMx, uint16_t TIM_TIxExternalCLKSource,
|
|
uint16_t TIM_ICPolarity, uint16_t ICFilter);
|
|
void TIM_ETRClockMode1Config(TIM_TypeDef* TIMx, uint16_t TIM_ExtTRGPrescaler, uint16_t TIM_ExtTRGPolarity,
|
|
uint16_t ExtTRGFilter);
|
|
void TIM_ETRClockMode2Config(TIM_TypeDef* TIMx, uint16_t TIM_ExtTRGPrescaler,
|
|
uint16_t TIM_ExtTRGPolarity, uint16_t ExtTRGFilter);
|
|
void TIM_ETRConfig(TIM_TypeDef* TIMx, uint16_t TIM_ExtTRGPrescaler, uint16_t TIM_ExtTRGPolarity,
|
|
uint16_t ExtTRGFilter);
|
|
void TIM_PrescalerConfig(TIM_TypeDef* TIMx, uint16_t Prescaler, uint16_t TIM_PSCReloadMode);
|
|
void TIM_CounterModeConfig(TIM_TypeDef* TIMx, uint16_t TIM_CounterMode);
|
|
void TIM_SelectInputTrigger(TIM_TypeDef* TIMx, uint16_t TIM_InputTriggerSource);
|
|
void TIM_EncoderInterfaceConfig(TIM_TypeDef* TIMx, uint16_t TIM_EncoderMode,
|
|
uint16_t TIM_IC1Polarity, uint16_t TIM_IC2Polarity);
|
|
void TIM_ForcedOC1Config(TIM_TypeDef* TIMx, uint16_t TIM_ForcedAction);
|
|
void TIM_ForcedOC2Config(TIM_TypeDef* TIMx, uint16_t TIM_ForcedAction);
|
|
void TIM_ForcedOC3Config(TIM_TypeDef* TIMx, uint16_t TIM_ForcedAction);
|
|
void TIM_ForcedOC4Config(TIM_TypeDef* TIMx, uint16_t TIM_ForcedAction);
|
|
void TIM_ARRPreloadConfig(TIM_TypeDef* TIMx, FunctionalState NewState);
|
|
void TIM_SelectCOM(TIM_TypeDef* TIMx, FunctionalState NewState);
|
|
void TIM_SelectCCDMA(TIM_TypeDef* TIMx, FunctionalState NewState);
|
|
void TIM_CCPreloadControl(TIM_TypeDef* TIMx, FunctionalState NewState);
|
|
void TIM_OC1PreloadConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPreload);
|
|
void TIM_OC2PreloadConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPreload);
|
|
void TIM_OC3PreloadConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPreload);
|
|
void TIM_OC4PreloadConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPreload);
|
|
void TIM_OC1FastConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCFast);
|
|
void TIM_OC2FastConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCFast);
|
|
void TIM_OC3FastConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCFast);
|
|
void TIM_OC4FastConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCFast);
|
|
void TIM_ClearOC1Ref(TIM_TypeDef* TIMx, uint16_t TIM_OCClear);
|
|
void TIM_ClearOC2Ref(TIM_TypeDef* TIMx, uint16_t TIM_OCClear);
|
|
void TIM_ClearOC3Ref(TIM_TypeDef* TIMx, uint16_t TIM_OCClear);
|
|
void TIM_ClearOC4Ref(TIM_TypeDef* TIMx, uint16_t TIM_OCClear);
|
|
void TIM_OC1PolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPolarity);
|
|
void TIM_OC1NPolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCNPolarity);
|
|
void TIM_OC2PolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPolarity);
|
|
void TIM_OC2NPolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCNPolarity);
|
|
void TIM_OC3PolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPolarity);
|
|
void TIM_OC3NPolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCNPolarity);
|
|
void TIM_OC4PolarityConfig(TIM_TypeDef* TIMx, uint16_t TIM_OCPolarity);
|
|
void TIM_CCxCmd(TIM_TypeDef* TIMx, uint16_t TIM_Channel, uint16_t TIM_CCx);
|
|
void TIM_CCxNCmd(TIM_TypeDef* TIMx, uint16_t TIM_Channel, uint16_t TIM_CCxN);
|
|
void TIM_SelectOCxM(TIM_TypeDef* TIMx, uint16_t TIM_Channel, uint16_t TIM_OCMode);
|
|
void TIM_UpdateDisableConfig(TIM_TypeDef* TIMx, FunctionalState NewState);
|
|
void TIM_UpdateRequestConfig(TIM_TypeDef* TIMx, uint16_t TIM_UpdateSource);
|
|
void TIM_SelectHallSensor(TIM_TypeDef* TIMx, FunctionalState NewState);
|
|
void TIM_SelectOnePulseMode(TIM_TypeDef* TIMx, uint16_t TIM_OPMode);
|
|
void TIM_SelectOutputTrigger(TIM_TypeDef* TIMx, uint16_t TIM_TRGOSource);
|
|
void TIM_SelectSlaveMode(TIM_TypeDef* TIMx, uint16_t TIM_SlaveMode);
|
|
void TIM_SelectMasterSlaveMode(TIM_TypeDef* TIMx, uint16_t TIM_MasterSlaveMode);
|
|
void TIM_SetCounter(TIM_TypeDef* TIMx, uint16_t Counter);
|
|
void TIM_SetAutoreload(TIM_TypeDef* TIMx, uint16_t Autoreload);
|
|
void TIM_SetCompare1(TIM_TypeDef* TIMx, uint16_t Compare1);
|
|
void TIM_SetCompare2(TIM_TypeDef* TIMx, uint16_t Compare2);
|
|
void TIM_SetCompare3(TIM_TypeDef* TIMx, uint16_t Compare3);
|
|
void TIM_SetCompare4(TIM_TypeDef* TIMx, uint16_t Compare4);
|
|
void TIM_SetIC1Prescaler(TIM_TypeDef* TIMx, uint16_t TIM_ICPSC);
|
|
void TIM_SetIC2Prescaler(TIM_TypeDef* TIMx, uint16_t TIM_ICPSC);
|
|
void TIM_SetIC3Prescaler(TIM_TypeDef* TIMx, uint16_t TIM_ICPSC);
|
|
void TIM_SetIC4Prescaler(TIM_TypeDef* TIMx, uint16_t TIM_ICPSC);
|
|
void TIM_SetClockDivision(TIM_TypeDef* TIMx, uint16_t TIM_CKD);
|
|
uint16_t TIM_GetCapture1(TIM_TypeDef* TIMx);
|
|
uint16_t TIM_GetCapture2(TIM_TypeDef* TIMx);
|
|
uint16_t TIM_GetCapture3(TIM_TypeDef* TIMx);
|
|
uint16_t TIM_GetCapture4(TIM_TypeDef* TIMx);
|
|
uint16_t TIM_GetCounter(TIM_TypeDef* TIMx);
|
|
uint16_t TIM_GetPrescaler(TIM_TypeDef* TIMx);
|
|
FlagStatus TIM_GetFlagStatus(TIM_TypeDef* TIMx, uint16_t TIM_FLAG);
|
|
void TIM_ClearFlag(TIM_TypeDef* TIMx, uint16_t TIM_FLAG);
|
|
ITStatus TIM_GetITStatus(TIM_TypeDef* TIMx, uint16_t TIM_IT);
|
|
void TIM_ClearITPendingBit(TIM_TypeDef* TIMx, uint16_t TIM_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 48 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_usart.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_usart.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t USART_BaudRate;
|
|
|
|
|
|
|
|
|
|
uint16_t USART_WordLength;
|
|
|
|
|
|
uint16_t USART_StopBits;
|
|
|
|
|
|
uint16_t USART_Parity;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
uint16_t USART_Mode;
|
|
|
|
|
|
uint16_t USART_HardwareFlowControl;
|
|
|
|
|
|
} USART_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
|
|
uint16_t USART_Clock;
|
|
|
|
|
|
uint16_t USART_CPOL;
|
|
|
|
|
|
uint16_t USART_CPHA;
|
|
|
|
|
|
uint16_t USART_LastBit;
|
|
|
|
|
|
} USART_ClockInitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 146 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_usart.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 160 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_usart.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 187 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_usart.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 264 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_usart.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 336 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_usart.h"
|
|
|
|
#line 344 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_usart.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void USART_DeInit(USART_TypeDef* USARTx);
|
|
void USART_Init(USART_TypeDef* USARTx, USART_InitTypeDef* USART_InitStruct);
|
|
void USART_StructInit(USART_InitTypeDef* USART_InitStruct);
|
|
void USART_ClockInit(USART_TypeDef* USARTx, USART_ClockInitTypeDef* USART_ClockInitStruct);
|
|
void USART_ClockStructInit(USART_ClockInitTypeDef* USART_ClockInitStruct);
|
|
void USART_Cmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
void USART_ITConfig(USART_TypeDef* USARTx, uint16_t USART_IT, FunctionalState NewState);
|
|
void USART_DMACmd(USART_TypeDef* USARTx, uint16_t USART_DMAReq, FunctionalState NewState);
|
|
void USART_SetAddress(USART_TypeDef* USARTx, uint8_t USART_Address);
|
|
void USART_WakeUpConfig(USART_TypeDef* USARTx, uint16_t USART_WakeUp);
|
|
void USART_ReceiverWakeUpCmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
void USART_LINBreakDetectLengthConfig(USART_TypeDef* USARTx, uint16_t USART_LINBreakDetectLength);
|
|
void USART_LINCmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
void USART_SendData(USART_TypeDef* USARTx, uint16_t Data);
|
|
uint16_t USART_ReceiveData(USART_TypeDef* USARTx);
|
|
void USART_SendBreak(USART_TypeDef* USARTx);
|
|
void USART_SetGuardTime(USART_TypeDef* USARTx, uint8_t USART_GuardTime);
|
|
void USART_SetPrescaler(USART_TypeDef* USARTx, uint8_t USART_Prescaler);
|
|
void USART_SmartCardCmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
void USART_SmartCardNACKCmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
void USART_HalfDuplexCmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
void USART_OverSampling8Cmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
void USART_OneBitMethodCmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
void USART_IrDAConfig(USART_TypeDef* USARTx, uint16_t USART_IrDAMode);
|
|
void USART_IrDACmd(USART_TypeDef* USARTx, FunctionalState NewState);
|
|
FlagStatus USART_GetFlagStatus(USART_TypeDef* USARTx, uint16_t USART_FLAG);
|
|
void USART_ClearFlag(USART_TypeDef* USARTx, uint16_t USART_FLAG);
|
|
ITStatus USART_GetITStatus(USART_TypeDef* USARTx, uint16_t USART_IT);
|
|
void USART_ClearITPendingBit(USART_TypeDef* USARTx, uint16_t USART_IT);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 49 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_wwdg.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_wwdg.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 68 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\stm32f10x_wwdg.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void WWDG_DeInit(void);
|
|
void WWDG_SetPrescaler(uint32_t WWDG_Prescaler);
|
|
void WWDG_SetWindowValue(uint8_t WindowValue);
|
|
void WWDG_EnableIT(void);
|
|
void WWDG_SetCounter(uint8_t Counter);
|
|
void WWDG_Enable(uint8_t Counter);
|
|
FlagStatus WWDG_GetFlagStatus(void);
|
|
void WWDG_ClearFlag(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 50 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
#line 1 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\misc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 33 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\misc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
uint8_t NVIC_IRQChannel;
|
|
|
|
|
|
|
|
|
|
uint8_t NVIC_IRQChannelPreemptionPriority;
|
|
|
|
|
|
|
|
uint8_t NVIC_IRQChannelSubPriority;
|
|
|
|
|
|
|
|
FunctionalState NVIC_IRQChannelCmd;
|
|
|
|
|
|
} NVIC_InitTypeDef;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 133 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\misc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 151 "..\\..\\template\\Libraries\\STM32F10x_StdPeriph_Driver\\inc\\misc.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
void NVIC_PriorityGroupConfig(uint32_t NVIC_PriorityGroup);
|
|
void NVIC_Init(NVIC_InitTypeDef* NVIC_InitStruct);
|
|
void NVIC_SetVectorTable(uint32_t NVIC_VectTab, uint32_t Offset);
|
|
void NVIC_SystemLPConfig(uint8_t LowPowerMode, FunctionalState NewState);
|
|
void SysTick_CLKSourceConfig(uint32_t SysTick_CLKSource);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 51 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 74 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x_conf.h"
|
|
|
|
|
|
|
|
|
|
#line 8298 "..\\..\\template\\Libraries\\CMSIS\\stm32f10x.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 2 "..\\user\\src\\Flash.c"
|
|
#line 3 "..\\user\\src\\Flash.c"
|
|
|
|
#line 1 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 47 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef unsigned int size_t;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct __va_list __va_list;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct __fpos_t_struct {
|
|
unsigned __int64 __pos;
|
|
|
|
|
|
|
|
|
|
|
|
struct {
|
|
unsigned int __state1, __state2;
|
|
} __mbstate;
|
|
} fpos_t;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct __FILE FILE;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 136 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdio.h"
|
|
|
|
|
|
extern FILE __stdin, __stdout, __stderr;
|
|
extern FILE *__aeabi_stdin, *__aeabi_stdout, *__aeabi_stderr;
|
|
|
|
#line 166 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int remove(const char * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int rename(const char * , const char * ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) FILE *tmpfile(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *tmpnam(char * );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int fclose(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int fflush(FILE * );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) FILE *fopen(const char * __restrict ,
|
|
const char * __restrict ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) FILE *freopen(const char * __restrict ,
|
|
const char * __restrict ,
|
|
FILE * __restrict ) __attribute__((__nonnull__(2,3)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void setbuf(FILE * __restrict ,
|
|
char * __restrict ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int setvbuf(FILE * __restrict ,
|
|
char * __restrict ,
|
|
int , size_t ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int fprintf(FILE * __restrict ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int _fprintf(FILE * __restrict ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int printf(const char * __restrict , ...) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int _printf(const char * __restrict , ...) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int sprintf(char * __restrict , const char * __restrict , ...) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int _sprintf(char * __restrict , const char * __restrict , ...) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int __ARM_snprintf(char * __restrict , size_t ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(3)));
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int snprintf(char * __restrict , size_t ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(3)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int _snprintf(char * __restrict , size_t ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(3)));
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __scanf_args
|
|
extern __declspec(__nothrow) int fscanf(FILE * __restrict ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __scanf_args
|
|
extern __declspec(__nothrow) int _fscanf(FILE * __restrict ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __scanf_args
|
|
extern __declspec(__nothrow) int scanf(const char * __restrict , ...) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __scanf_args
|
|
extern __declspec(__nothrow) int _scanf(const char * __restrict , ...) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __scanf_args
|
|
extern __declspec(__nothrow) int sscanf(const char * __restrict ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __scanf_args
|
|
extern __declspec(__nothrow) int _sscanf(const char * __restrict ,
|
|
const char * __restrict , ...) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int vfscanf(FILE * __restrict , const char * __restrict , __va_list) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) int vscanf(const char * __restrict , __va_list) __attribute__((__nonnull__(1)));
|
|
extern __declspec(__nothrow) int vsscanf(const char * __restrict , const char * __restrict , __va_list) __attribute__((__nonnull__(1,2)));
|
|
|
|
extern __declspec(__nothrow) int _vfscanf(FILE * __restrict , const char * __restrict , __va_list) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) int _vscanf(const char * __restrict , __va_list) __attribute__((__nonnull__(1)));
|
|
extern __declspec(__nothrow) int _vsscanf(const char * __restrict , const char * __restrict , __va_list) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) int __ARM_vsscanf(const char * __restrict , const char * __restrict , __va_list) __attribute__((__nonnull__(1,2)));
|
|
|
|
extern __declspec(__nothrow) int vprintf(const char * __restrict , __va_list ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int _vprintf(const char * __restrict , __va_list ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int vfprintf(FILE * __restrict ,
|
|
const char * __restrict , __va_list ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int vsprintf(char * __restrict ,
|
|
const char * __restrict , __va_list ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int __ARM_vsnprintf(char * __restrict , size_t ,
|
|
const char * __restrict , __va_list ) __attribute__((__nonnull__(3)));
|
|
|
|
extern __declspec(__nothrow) int vsnprintf(char * __restrict , size_t ,
|
|
const char * __restrict , __va_list ) __attribute__((__nonnull__(3)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int _vsprintf(char * __restrict ,
|
|
const char * __restrict , __va_list ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int _vfprintf(FILE * __restrict ,
|
|
const char * __restrict , __va_list ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int _vsnprintf(char * __restrict , size_t ,
|
|
const char * __restrict , __va_list ) __attribute__((__nonnull__(3)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int asprintf(char ** , const char * __restrict , ...) __attribute__((__nonnull__(2)));
|
|
extern __declspec(__nothrow) int vasprintf(char ** , const char * __restrict , __va_list ) __attribute__((__nonnull__(2)));
|
|
|
|
#pragma __printf_args
|
|
extern __declspec(__nothrow) int __ARM_asprintf(char ** , const char * __restrict , ...) __attribute__((__nonnull__(2)));
|
|
extern __declspec(__nothrow) int __ARM_vasprintf(char ** , const char * __restrict , __va_list ) __attribute__((__nonnull__(2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int fgetc(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *fgets(char * __restrict , int ,
|
|
FILE * __restrict ) __attribute__((__nonnull__(1,3)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int fputc(int , FILE * ) __attribute__((__nonnull__(2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int fputs(const char * __restrict , FILE * __restrict ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int getc(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int (getchar)(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *gets(char * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int putc(int , FILE * ) __attribute__((__nonnull__(2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int (putchar)(int );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int puts(const char * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int ungetc(int , FILE * ) __attribute__((__nonnull__(2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t fread(void * __restrict ,
|
|
size_t , size_t , FILE * __restrict ) __attribute__((__nonnull__(1,4)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t __fread_bytes_avail(void * __restrict ,
|
|
size_t , FILE * __restrict ) __attribute__((__nonnull__(1,3)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t fwrite(const void * __restrict ,
|
|
size_t , size_t , FILE * __restrict ) __attribute__((__nonnull__(1,4)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int fgetpos(FILE * __restrict , fpos_t * __restrict ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int fseek(FILE * , long int , int ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int fsetpos(FILE * __restrict , const fpos_t * __restrict ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) long int ftell(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void rewind(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void clearerr(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int feof(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int ferror(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void perror(const char * );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int _fisatty(FILE * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void __use_no_semihosting_swi(void);
|
|
extern __declspec(__nothrow) void __use_no_semihosting(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 1021 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdio.h"
|
|
|
|
|
|
|
|
|
|
|
|
#line 5 "..\\user\\src\\Flash.c"
|
|
#line 1 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 38 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef unsigned int size_t;
|
|
#line 54 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void *memcpy(void * __restrict ,
|
|
const void * __restrict , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void *memmove(void * ,
|
|
const void * , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *strcpy(char * __restrict , const char * __restrict ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *strncpy(char * __restrict , const char * __restrict , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *strcat(char * __restrict , const char * __restrict ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *strncat(char * __restrict , const char * __restrict , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int memcmp(const void * , const void * , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int strcmp(const char * , const char * ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int strncmp(const char * , const char * , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int strcasecmp(const char * , const char * ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int strncasecmp(const char * , const char * , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) int strcoll(const char * , const char * ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t strxfrm(char * __restrict , const char * __restrict , size_t ) __attribute__((__nonnull__(2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 193 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
extern __declspec(__nothrow) void *memchr(const void * , int , size_t ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 209 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
extern __declspec(__nothrow) char *strchr(const char * , int ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t strcspn(const char * , const char * ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 232 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
extern __declspec(__nothrow) char *strpbrk(const char * , const char * ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 247 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
extern __declspec(__nothrow) char *strrchr(const char * , int ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t strspn(const char * , const char * ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 270 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
extern __declspec(__nothrow) char *strstr(const char * , const char * ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *strtok(char * __restrict , const char * __restrict ) __attribute__((__nonnull__(2)));
|
|
extern __declspec(__nothrow) char *_strtok_r(char * , const char * , char ** ) __attribute__((__nonnull__(2,3)));
|
|
|
|
extern __declspec(__nothrow) char *strtok_r(char * , const char * , char ** ) __attribute__((__nonnull__(2,3)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void *memset(void * , int , size_t ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) char *strerror(int );
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t strlen(const char * ) __attribute__((__nonnull__(1)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t strlcpy(char * , const char * , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) size_t strlcat(char * , const char * , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern __declspec(__nothrow) void _membitcpybl(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitcpybb(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitcpyhl(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitcpyhb(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitcpywl(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitcpywb(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitmovebl(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitmovebb(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitmovehl(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitmovehb(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitmovewl(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
extern __declspec(__nothrow) void _membitmovewb(void * , const void * , int , int , size_t ) __attribute__((__nonnull__(1,2)));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 502 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\string.h"
|
|
|
|
|
|
|
|
|
|
|
|
#line 6 "..\\user\\src\\Flash.c"
|
|
|
|
#line 1 "..\\user\\inc\\flash.h"
|
|
#line 2 "..\\user\\inc\\flash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern void flash_read_sys_flag(void);
|
|
|
|
extern void flash_write_sys_flag(unsigned char write_unm);
|
|
|
|
extern void flash_write_sys_flag_ALL(void);
|
|
|
|
extern void flash_write_sys_flag_Init(void);
|
|
|
|
extern void flash_write_sys_flag_Zvol(void);
|
|
|
|
extern void flash_write_sys_flag_ALL_Init(void);
|
|
|
|
extern void Flash_Write_Err_Flag2(unsigned char write_unm);
|
|
|
|
extern u16 Over_Vol_Readflash;
|
|
extern u16 Down_Vol_Readflash;
|
|
extern u16 SOH_Readflash;
|
|
|
|
|
|
|
|
|
|
#line 8 "..\\user\\src\\Flash.c"
|
|
#line 1 "..\\user\\inc\\datahand.h"
|
|
|
|
|
|
|
|
#line 5 "..\\user\\inc\\datahand.h"
|
|
|
|
|
|
|
|
extern u8 Chg_Flag;
|
|
extern u8 Out_flag;
|
|
extern u8 Chg_Lock;
|
|
extern u8 Out_Lock;
|
|
|
|
extern u8 Cell_Soc;
|
|
extern float IntVolume;
|
|
extern float OutSOC_xs;
|
|
extern float ChgSOC_xs;
|
|
extern float SOH_xs;
|
|
extern float Q_hs;
|
|
extern u16 Cell_usnum;
|
|
extern u32 Cell_Outrl;
|
|
extern u8 Off_lint;
|
|
extern u8 Out_Dea;
|
|
extern u8 Chg_Dea;
|
|
extern u8 Cell_Tmp;
|
|
extern u8 Pow_Tmp;
|
|
extern u8 Chg_Moshit;
|
|
extern u8 Out_Moshit;
|
|
extern float Curr_Res;
|
|
extern float Curr_Out_Res;
|
|
extern u8 OverVolThenSetSoc100Flag;
|
|
|
|
extern u8 FirstStart;
|
|
extern u8 FirstStart_OV;
|
|
extern u8 FirstSOC;
|
|
extern u8 FirstSOC_Count;
|
|
|
|
extern u8 ChgMos_bit_last;
|
|
extern u8 ChgMos_bit;
|
|
extern u8 OutMos_bit_last;
|
|
extern u8 OutMos_bit;
|
|
|
|
extern u16 Out_curr;
|
|
extern u8 SOCinit;
|
|
extern u8 SOCinit_bit;
|
|
|
|
extern u16 Hitsturt;
|
|
extern u8 HitFlag;
|
|
extern u8 Hitsturt_2;
|
|
extern u8 Hitsturt_22;
|
|
extern u8 HitFlag_22;
|
|
|
|
extern u8 dgpow_bit;
|
|
extern u8 dgpow_Time_1;
|
|
extern u8 dgpow_count;
|
|
extern u8 dgPowL_TC;
|
|
|
|
extern u8 tX_bit;
|
|
extern u8 LED_1_bit;
|
|
extern u8 LED_2_bit;
|
|
|
|
extern u16 cell_vol_max;
|
|
extern u16 cell_vol_min;
|
|
extern u16 cell_vol_num;
|
|
extern u8 cellmaxnum;
|
|
extern u8 cellminnum;
|
|
extern u16 ZeroCur_minute;
|
|
extern u8 flag_485;
|
|
extern u8 GpsHaveDateFlag;
|
|
extern u8 CheckCurIsZero(void);
|
|
extern u8 Init_SOC_8S;
|
|
extern u8 Init_SOC_8S_flag;
|
|
extern u16 Cores_Vol[32];
|
|
|
|
extern u8 ZhuDAlarm_Flag;
|
|
|
|
extern s16 Cell_MT_Temp_MAX;
|
|
extern s16 Cell_MT_Temp_Min;
|
|
extern s16 Cell_MT_Temp_AVR;
|
|
extern u8 Cell_MT_Temp_MAX_Num;
|
|
extern u8 Cell_MT_Temp_Min_Num;
|
|
|
|
extern void data309_485_GPS_handelFun(void);
|
|
extern u16 HDCurr_num;
|
|
extern u8 ZeroCur5Min;
|
|
extern u8 HDCurr_Flag;
|
|
extern void Shut309DSGMos(void);
|
|
extern void Shut309CHGMos(void);
|
|
extern void Free309DSGMos(void);
|
|
extern void Free309CHGMos(void);
|
|
extern u16 g_SysMilliSecCnt;
|
|
extern u8 OverVolFlag;
|
|
extern u8 LowVolFlag;
|
|
extern u8 Vol4160Flag;
|
|
extern u8 Vol3500Flag;
|
|
extern u8 SpecChargerFlag;
|
|
|
|
extern u8 FirstStart;
|
|
extern u16 UartDataMsCnt;
|
|
extern u16 UartDataMsCnt2;
|
|
extern u16 UartDataTTCnt;
|
|
extern u16 UartDataMsCnt3;
|
|
|
|
extern u8 dahuo_flag;
|
|
|
|
extern u8 UartDataMsCntEnable;
|
|
extern u8 UartDataMsCntEnable2;
|
|
extern u8 UartDataTTCntEnable2;
|
|
extern u8 UartDataMsCntEnable3;
|
|
|
|
extern u8 OpenOrCloseChgMosCmd;
|
|
extern u8 OpenOrCloseDsgMosCmd;
|
|
extern u8 ChgMosBreakCnt;
|
|
extern u8 DsgMosBreakCnt;
|
|
extern u8 ShiDuFlag_OVER;
|
|
|
|
extern u8 GPS_Time_Start_Flag;
|
|
extern u8 GPS_LowPower_Flag;
|
|
extern u8 GPS_tongxin_Flag;
|
|
extern u16 GPS_TimeCnt;
|
|
|
|
extern u16 Sleep_Times;
|
|
extern u8 Balance_Flg;
|
|
extern u8 yc_timeflat;
|
|
|
|
extern s16 Bms_Dat_Cores_Tmp1;
|
|
extern s16 Bms_Dat_Cores_Tmp2;
|
|
extern s16 Bms_Dat_Pdsg_Tmp;
|
|
extern s16 Bms_Dat_Chg_Tmp;
|
|
extern s16 Bms_Dat_Dsg_Tmp;
|
|
extern u8 Bms_Chg_Det_Flag;
|
|
|
|
extern u8 P_Sleep_Flg;
|
|
extern u16 Sp_P_Sleep_Times;
|
|
|
|
extern u8 updataSOC(void);
|
|
extern u8 updataCell_0SOC(void);
|
|
|
|
extern signed int Get_Temp(u32 NTC_Res);
|
|
extern u8 ReadMosState(void);
|
|
extern void Software_Reset(void);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 9 "..\\user\\src\\Flash.c"
|
|
#line 1 "..\\user\\inc\\gpsnet.h"
|
|
|
|
|
|
|
|
#line 5 "..\\user\\inc\\gpsnet.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 20 "..\\user\\inc\\gpsnet.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 44 "..\\user\\inc\\gpsnet.h"
|
|
|
|
#line 101 "..\\user\\inc\\gpsnet.h"
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
u8 gps_Rev_start;
|
|
u8 gps_Rev_buf[355];
|
|
u16 gps_Rev_buftmp;
|
|
}GPS_Buf;
|
|
|
|
typedef struct
|
|
{
|
|
u16 start_frame;
|
|
u16 Len_frame;
|
|
u32 Bms_number;
|
|
u8 orde;
|
|
u8 farm_sor;
|
|
u8 Type;
|
|
u8 s_data[400];
|
|
u32 Recnumber;
|
|
u8 end_signs;
|
|
u32 check_sum;
|
|
}Data_frame;
|
|
|
|
typedef struct
|
|
{
|
|
struct
|
|
{
|
|
u8 socdd;
|
|
u8 mostmp;
|
|
u8 chggvol;
|
|
u8 outqvol;
|
|
u8 cellgtmp;
|
|
u8 chgcurr;
|
|
u8 outcurr;
|
|
u8 singvol;
|
|
u8 cellneitmp;
|
|
u8 celldtmp;
|
|
u8 Dchggvol;
|
|
u8 Doutqvol;
|
|
}strtu;
|
|
|
|
struct
|
|
{
|
|
u32 CellTime;
|
|
u8 sturt;
|
|
u8 xinhao[9];
|
|
|
|
u8 Singcellvol[32][3];
|
|
u16 MosTmp;
|
|
u16 QualiTmp;
|
|
u16 CellTmp;
|
|
u16 CellZvol;
|
|
u16 Currdata;
|
|
u8 Soc;
|
|
u8 CellTmpSors;
|
|
u16 Cellusnum;
|
|
u16 Bms_rl;
|
|
u32 CellOutrl;
|
|
u16 CellZnum;
|
|
u16 CellhitData;
|
|
u16 CellStrtu;
|
|
|
|
u16 Hitjlm;
|
|
}Rev_data;
|
|
|
|
struct
|
|
{
|
|
u16 ZvolG;
|
|
u16 ZvolQ;
|
|
u16 SingvolG;
|
|
u16 SingvolGH;
|
|
u16 SingvolGtime;
|
|
u16 SingvolQ;
|
|
u16 SingvolQH;
|
|
u16 SingvolQtime;
|
|
u16 CellXyc;
|
|
u16 OutcurrG;
|
|
u16 OutcurrGtime;
|
|
u16 ChgcurrG;
|
|
u16 ChgcurrGtime;
|
|
u16 Equalivol;
|
|
u16 Equalivolcc;
|
|
u8 EqualiON;
|
|
u16 PowTmp;
|
|
u16 PowTmpH;
|
|
u16 Equaltmpb;
|
|
u16 EqualtmpH;
|
|
u16 CellTmp;
|
|
u16 CellChgTmpG;
|
|
u16 CellChgTmpGH;
|
|
u16 CellOutTmpG;
|
|
u16 CellOutTmpGH;
|
|
s16 ChgTmpD;
|
|
s16 ChgTmpDH;
|
|
s16 OutTmpD;
|
|
s16 OutTmpDH;
|
|
u8 Cellnum;
|
|
u32 CellRl;
|
|
u8 ChgMOS;
|
|
u8 OutMOS;
|
|
u16 CurrJZ;
|
|
u8 BHBAddr;
|
|
u8 Celltype;
|
|
u16 SleepTime;
|
|
u8 DRLNum;
|
|
u8 Pass[10];
|
|
u8 ZChgON;
|
|
u8 EquID[8];
|
|
u8 CCDat[4];
|
|
u32 SysTime;
|
|
u8 soft_num[15];
|
|
u8 CurrjzONOFF;
|
|
u32 Reali_Q;
|
|
u8 XID[24];
|
|
u8 rest_xt;
|
|
u8 rest_hf;
|
|
u16 GpsDVol;
|
|
u16 GpsDVolH;
|
|
|
|
u8 ShiduKaiguan;
|
|
u8 ShiduValueNow;
|
|
u8 ShiduValueProtect;
|
|
u8 ShortCurValue;
|
|
u16 ShortCurDelay;
|
|
u16 EnableSwitch;
|
|
|
|
u16 CellOUT2CURR_G;
|
|
u16 CellOUT2TIME_G;
|
|
u16 CellDRLBEEP_Jiao;
|
|
|
|
}RevWrite_data;
|
|
}GPS_DATA;
|
|
|
|
typedef struct
|
|
{
|
|
u16 AZvolG;
|
|
u16 AZvolGH;
|
|
u16 AZvolQ;
|
|
u16 AZvolQH;
|
|
u16 ASingvolG;
|
|
u16 ASingvolGH;
|
|
u16 ASingvolQ;
|
|
u16 ASingvolQH;
|
|
u16 ACellXyc;
|
|
u16 ACellXycH;
|
|
u16 AOutcurrG;
|
|
u16 AOutcurrGH;
|
|
u16 AChgcurrG;
|
|
u16 AChgcurrGH;
|
|
u16 APowTmp;
|
|
u16 APowTmpH;
|
|
u16 AEqualtmp;
|
|
u16 AEqualtmpH;
|
|
u16 ACellTmp;
|
|
u16 ACellTmpH;
|
|
u16 ACellChgTmpG;
|
|
u16 ACellChgTmpGH;
|
|
u16 ACellOutTmpG;
|
|
u16 ACellOutTmpGH;
|
|
s16 AChgTmpD;
|
|
s16 AChgTmpDH;
|
|
s16 AOutTmpD;
|
|
s16 AOutTmpDH;
|
|
u8 ADRLNum2;
|
|
|
|
u16 Alarm1_Flg;
|
|
u16 Alarm2_Flg;
|
|
|
|
}RevWrite_Alarm_Data;
|
|
|
|
typedef struct
|
|
{
|
|
u16 ZvolGH;
|
|
u16 ZvolQH;
|
|
u16 SingvolG2;
|
|
u16 SingvolGH2;
|
|
u16 SingvolGtime2;
|
|
u16 SingvolQ2;
|
|
u16 SingvolQH2;
|
|
u16 SingvolQtime2;
|
|
u16 CellXycH;
|
|
u16 ChgcurrG2;
|
|
u16 ChgcurrGtime2;
|
|
u16 CellTmpH;
|
|
|
|
u32 OutCurrJZ;
|
|
u8 OutCurrjzONOFF;
|
|
|
|
u8 ZvolG_Flg;
|
|
u8 ZvolQ_Flg;
|
|
u16 Prptection1_Flg;
|
|
u16 Prptection2_Flg;
|
|
|
|
}RevWrite_Pt_Data;
|
|
|
|
typedef struct
|
|
{
|
|
u8 Singcell_Vol[32][3];
|
|
u16 Cmos_Tmp;
|
|
u16 Pmos_Tmp;
|
|
u16 Quali_Tmp;
|
|
u16 Cell_Tmp[8];
|
|
u16 Cell_Zvol;
|
|
u16 Curr_Data;
|
|
|
|
u16 Prptection1_Dat;
|
|
u16 Prptection2_Dat;
|
|
u16 Prptection1_Hdat;
|
|
u16 Prptection2_Hdat;
|
|
u8 Prptection_Num;
|
|
u8 Prptection_Count;
|
|
}Rev_Err_Data;
|
|
|
|
typedef struct
|
|
{
|
|
u8 bits_1[32];
|
|
u8 bits_2[32];
|
|
u8 bits_11[32];
|
|
|
|
u8 bits_3;
|
|
u8 bits_4;
|
|
u8 bits_3_2;
|
|
u8 bits_4_2;
|
|
|
|
u16 bits_1_cont_s[32];
|
|
u16 bits_2_cont_s[32];
|
|
u16 bits_11_cont_s[32];
|
|
|
|
u16 bits_3_cont_s;
|
|
u16 bits_4_cont_s;
|
|
u16 bits_3_2_cont_s;
|
|
u16 bits_4_2_cont_s;
|
|
u8 bits_4180[32];
|
|
u8 bits_3500[32];
|
|
|
|
u16 bits_4180_cont_s[32];
|
|
u16 bits_3500_cont_s[32];
|
|
|
|
}OVER_Time_Struct;
|
|
|
|
|
|
extern unsigned char soft_num_ZF[16];
|
|
extern GPS_Buf gps_buf;
|
|
extern GPS_Buf gps_buf_2;
|
|
extern GPS_Buf JDY33_buf;
|
|
extern GPS_DATA gps_data;
|
|
extern OVER_Time_Struct Over_time;
|
|
extern OVER_Time_Struct Vol4180_Over_time;
|
|
extern OVER_Time_Struct Vol3500_Over_time;
|
|
|
|
extern RevWrite_Alarm_Data Ala_Data;
|
|
extern RevWrite_Pt_Data Pt_Data;
|
|
extern Rev_Err_Data Err_Data;
|
|
|
|
extern u8 stopstart_309Flag;
|
|
|
|
extern unsigned char Pass_init[7];
|
|
extern unsigned char Pass_init_Lase[7];
|
|
extern unsigned char Pass_CJ[7];
|
|
extern unsigned char Pass_bit;
|
|
|
|
extern void Send_GpsFun(u32 bmsnum,u8 orde,u8 type,u8 *buff,u16 len,u32 Recnumber);
|
|
|
|
extern void NwDataHandle(GPS_Buf *gps_buf);
|
|
extern void GpsPortNwDataHandle(void);
|
|
|
|
extern void JDYPortNwDataHandle(void);
|
|
|
|
extern void JDYNAMBSet(void);
|
|
|
|
|
|
extern u8 Uart1NWDataFlag;
|
|
extern u8 Uart2NWDataFlag;
|
|
extern u8 Uart3NWDataFlag;
|
|
|
|
extern u8 Uart1TTDataFlag;
|
|
extern u8 Uart2TTDataFlag;
|
|
extern u8 BLE_JDY_FLAG;
|
|
|
|
extern u8 Uart1NW_GPS_StopFlag;
|
|
extern u32 Uart1NW_GPS_StopTimeCount;
|
|
|
|
extern u8 Alarm_SendFlag;
|
|
extern u8 Alarm_GPS_2M;
|
|
extern u32 TT_delay_Count;
|
|
extern u8 TT_delay_flag;
|
|
|
|
|
|
extern u8 Ble_TX_Control;
|
|
|
|
|
|
|
|
|
|
#line 10 "..\\user\\src\\Flash.c"
|
|
#line 1 "..\\user\\inc\\usart.h"
|
|
|
|
|
|
|
|
extern void Send_byte_usart1(char date);
|
|
|
|
extern void Send_byte_usart2(char date);
|
|
extern void Send_TString_LCD(unsigned char* sll, unsigned short num);
|
|
extern void Send_string_Ye(unsigned char *sl, unsigned short num);
|
|
|
|
extern void Send_string_GPS(unsigned char *sl);
|
|
|
|
extern void Send_string_BLENamb(unsigned char *sl);
|
|
extern void Send_string_BLEReset(unsigned char *sl);
|
|
|
|
extern void Send_TString_GPS(unsigned char* sll,unsigned short num);
|
|
|
|
extern void Send_string_BMS_TT(unsigned char *sl);
|
|
|
|
extern void Rs485TietaDataSend(unsigned char* sll,unsigned short num);
|
|
|
|
|
|
|
|
#line 11 "..\\user\\src\\Flash.c"
|
|
#line 1 "..\\user\\inc\\485.h"
|
|
|
|
|
|
|
|
#line 5 "..\\user\\inc\\485.h"
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
u8 erro_data;
|
|
u8 Kaiguan[52];
|
|
u8 Anal_Type;
|
|
union
|
|
{
|
|
u16 monis[42];
|
|
struct
|
|
{
|
|
u16 Total_VOl;
|
|
u16 Cores_num;
|
|
|
|
u16 Pow_SOC;
|
|
u16 Res_Capa;
|
|
|
|
u16 SOH;
|
|
u16 Chg_Curr;
|
|
s16 Ambi_Tmp;
|
|
s16 Cores_Tmp;
|
|
s16 Card_Tmp;
|
|
u16 Cores_Vol_1;
|
|
u16 Cores_Vol_2;
|
|
u16 Cores_Vol_3;
|
|
u16 Cores_Vol_4;
|
|
u16 Cores_Vol_5;
|
|
u16 Cores_Vol_6;
|
|
u16 Cores_Vol_7;
|
|
u16 Cores_Vol_8;
|
|
u16 Cores_Vol_9;
|
|
u16 Cores_Vol_10;
|
|
u16 Cores_Vol_11;
|
|
u16 Cores_Vol_12;
|
|
u16 Cores_Vol_13;
|
|
u16 Cores_Vol_14;
|
|
u16 Cores_Vol_15;
|
|
u16 Cores_Vol_16;
|
|
u16 Cores_Vol_17;
|
|
u16 Cores_Vol_18;
|
|
u16 Cores_Vol_19;
|
|
u16 Cores_Vol_20;
|
|
|
|
u16 Device_ID_1;
|
|
u16 Device_ID_2;
|
|
u16 Device_ID_3;
|
|
u16 Device_ID_4;
|
|
|
|
|
|
u16 Device_ID_5;
|
|
u16 Device_ID_6;
|
|
u16 Device_ID_7;
|
|
u16 Device_ID_8;
|
|
u16 Device_ID_9;
|
|
u16 Device_ID_10;
|
|
u16 Device_ID_11;
|
|
u16 Device_ID_12;
|
|
u16 Device_ID_13;
|
|
|
|
|
|
|
|
|
|
}Anal_quan;
|
|
}Anal_quanuion;
|
|
|
|
}BMS_TT;
|
|
extern BMS_TT Bms_tt_data;
|
|
|
|
extern unsigned char databuf[26];
|
|
|
|
extern unsigned char dataxingaobuf[26];
|
|
extern unsigned char ddataxingaobuf_last[28];
|
|
extern unsigned char dataxingaobufbufnum;
|
|
extern unsigned char dataxingaobufbuf_flag;
|
|
|
|
extern u8 Rev_Succe;
|
|
|
|
extern void Rs485PortSetNewBTCode(void);
|
|
|
|
extern void Rs485PortNWDataHandle(void);
|
|
|
|
#line 12 "..\\user\\src\\Flash.c"
|
|
#line 1 "..\\user\\inc\\delay.h"
|
|
|
|
|
|
|
|
#line 5 "..\\user\\inc\\delay.h"
|
|
|
|
void Delay_init(void);
|
|
void Delay_us(u32 nus);
|
|
void Delay_ms(u32 nms);
|
|
void delay_ms(u16 time);
|
|
|
|
|
|
#line 13 "..\\user\\src\\Flash.c"
|
|
|
|
#line 1 "..\\user\\inc\\Jdy_19.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef enum
|
|
{
|
|
JDY_VER = 0,
|
|
JDY_RST,
|
|
JDY_DISC,
|
|
JDY_MAC,
|
|
JDY_BAUD,
|
|
JDY_BOUD,
|
|
JDY_SLEEP,
|
|
JDY_NAME,
|
|
JDY_STARTEN,
|
|
JDY_ADVIN,
|
|
JDY_HOSTEN,
|
|
JDY_IBUUID,
|
|
JDY_MAJOR,
|
|
JDY_MINOR,
|
|
JDY_IBPWR,
|
|
JDY_DEFAULT,
|
|
JDY_NULL,
|
|
}JDY_19_CmdEum;
|
|
|
|
|
|
typedef struct
|
|
{
|
|
JDY_19_CmdEum eum;
|
|
char* cmd;
|
|
}JDY_Cmd;
|
|
|
|
|
|
typedef struct
|
|
{
|
|
unsigned int Jdy_globalTime;
|
|
char Buff[30];
|
|
unsigned char Rev_Index;
|
|
unsigned char Rev_Succe;
|
|
unsigned char Is_Ok;
|
|
unsigned char end_ok;
|
|
unsigned char start_ok;
|
|
}Jdy_Buff;
|
|
|
|
|
|
extern Jdy_Buff Jdybuffs;
|
|
extern char broad_name[];
|
|
extern char broad_name_last[9];
|
|
extern unsigned char broad_namenum;
|
|
extern unsigned char broad_name_flag;
|
|
|
|
extern void Jdy_Inde_Comfig(void);
|
|
|
|
extern void Perconfig(void);
|
|
|
|
extern void Rs485PortSetNewBleID(void);
|
|
|
|
#line 15 "..\\user\\src\\Flash.c"
|
|
#line 1 "..\\user\\inc\\stmflash.h"
|
|
#line 4 "..\\user\\inc\\stmflash.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern u16 STM_sector_size;
|
|
|
|
u16 STMFLASH_ReadHalfWord(u32 faddr);
|
|
void STMFLASH_WriteLenByte(u32 WriteAddr,u32 DataToWrite,u16 Len);
|
|
u32 STMFLASH_ReadLenByte(u32 ReadAddr,u16 Len);
|
|
void STMFLASH_Write(u32 WriteAddr,u16 *pBuffer,u16 NumToWrite);
|
|
void STMFLASH_Read(u32 ReadAddr,u16 *pBuffer,u16 NumToRead);
|
|
|
|
void Test_Write(u32 WriteAddr,u16 WriteData);
|
|
|
|
extern void IapRead_num(unsigned char* pBuffer,unsigned int ReadAddr,unsigned int NumByteToRead);
|
|
|
|
extern void IapProgram_num(unsigned char* pBuffer,unsigned int WriteAddr,unsigned int NumByteToWrite);
|
|
|
|
|
|
extern void IapWrite_num(unsigned char* pBuffer, unsigned int WriteAddr, unsigned int NumByteToWrite);
|
|
|
|
|
|
|
|
#line 16 "..\\user\\src\\Flash.c"
|
|
|
|
#line 1 "..\\user\\inc\\iobind.h"
|
|
#line 1 "..\\..\\nlib\\button/iobutton.h"
|
|
|
|
|
|
|
|
#line 1 "..\\..\\nlib\\button/iocontrol.h"
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
volatile unsigned int* inputIO;
|
|
volatile unsigned int* outputIO;
|
|
|
|
unsigned int validBit;
|
|
|
|
}IOControlInfo;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
typedef struct
|
|
{
|
|
IOControlInfo* io[1];
|
|
unsigned int size;
|
|
}IOInfo;
|
|
extern IOInfo allIo;
|
|
|
|
extern void InitIO(IOControlInfo* io,
|
|
volatile unsigned int* input,
|
|
volatile unsigned int* output,
|
|
unsigned int validBit
|
|
);
|
|
|
|
|
|
|
|
|
|
|
|
#line 5 "..\\..\\nlib\\button/iobutton.h"
|
|
#line 1 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdBool.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#line 25 "C:\\Keil_v5\\ARM\\ARMCC\\Bin\\..\\include\\stdBool.h"
|
|
|
|
|
|
|
|
#line 6 "..\\..\\nlib\\button/iobutton.h"
|
|
|
|
typedef void(*btnFuc)(void*);
|
|
|
|
typedef struct
|
|
{
|
|
IOControlInfo io;
|
|
unsigned int judgeTime;
|
|
unsigned int timeout;
|
|
unsigned int ltimeout;
|
|
|
|
_Bool press;
|
|
_Bool lpress;
|
|
|
|
_Bool OnValid;
|
|
|
|
btnFuc pressFuc;
|
|
btnFuc releaseFuc;
|
|
btnFuc lpressFuc;
|
|
}IoButtonType;
|
|
|
|
extern void FInitButton(IoButtonType* btn);
|
|
|
|
extern _Bool isPress(IoButtonType* btn);
|
|
|
|
extern void FButtonTask(IoButtonType* btn);
|
|
|
|
|
|
|
|
#line 4 "..\\user\\inc\\iobind.h"
|
|
#line 5 "..\\user\\inc\\iobind.h"
|
|
|
|
extern IoButtonType Check[];
|
|
|
|
extern IOControlInfo SDA_1;
|
|
extern IOControlInfo SCL_1;
|
|
extern IOControlInfo SDA_2;
|
|
extern IOControlInfo SCL_2;
|
|
extern IOControlInfo SDA_3;
|
|
extern IOControlInfo SCL_3;
|
|
|
|
extern IOControlInfo VPRO_EN;
|
|
extern IOControlInfo SHIP_EN;
|
|
|
|
extern IOControlInfo GPRS_EN;
|
|
extern IOControlInfo BLE_EN;
|
|
extern IOControlInfo PDSG_EN;
|
|
extern IOControlInfo PF_ADC_EN;
|
|
extern IOControlInfo HOT_EN;
|
|
extern IOControlInfo COM_EN;
|
|
extern IOControlInfo POWER_EN;
|
|
|
|
extern IOControlInfo LED_1;
|
|
extern IOControlInfo LED_2;
|
|
|
|
extern IOControlInfo COM_WAKEUP;
|
|
extern IOControlInfo SW_IN;
|
|
extern IOControlInfo CHG_DET;
|
|
extern IOControlInfo DSG_CHG_WAKEUP;
|
|
|
|
|
|
extern _Bool All_Flag[4];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
extern void InitAllIO(void);
|
|
|
|
extern void InputStructAssignment(void);
|
|
|
|
extern void FButtonTasks(void);
|
|
|
|
|
|
|
|
#line 18 "..\\user\\src\\Flash.c"
|
|
#line 1 "..\\user\\inc\\Clock_App.h"
|
|
|
|
|
|
|
|
#line 5 "..\\user\\inc\\Clock_App.h"
|
|
|
|
typedef struct
|
|
{
|
|
u16 Year;
|
|
u8 Month;
|
|
u8 Date;
|
|
u8 Week;
|
|
|
|
u8 Hour;
|
|
u8 Min;
|
|
u8 Sec;
|
|
}Calendar_Obj;
|
|
|
|
u32 Mktimev(void);
|
|
void Clock_Get(void);
|
|
void Clock_Get25(void);
|
|
|
|
extern Calendar_Obj Calendar;;
|
|
|
|
#line 19 "..\\user\\src\\Flash.c"
|
|
|
|
|
|
|
|
|
|
u8 FontBuffer_Read[1300] = {0};
|
|
u8 sendbuft[8];
|
|
|
|
u16 Over_Vol_Readflash = 0;
|
|
u16 Down_Vol_Readflash = 0;
|
|
u16 SOH_Readflash = 0;
|
|
|
|
void flash_read_sys_flag(void)
|
|
{
|
|
IapRead_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
|
|
if(FontBuffer_Read[0 + 10 * 0] == 0xaa && FontBuffer_Read[1 + 10 * 0] == 0x55)
|
|
{
|
|
SOCinit = 1;
|
|
Cell_Soc = FontBuffer_Read[2 + 10 * 0];
|
|
|
|
}
|
|
else
|
|
{
|
|
SOCinit = 0;
|
|
Cell_Soc = 50;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 1] == 0xaa && FontBuffer_Read[1 + 10 * 1] == 0x55)
|
|
Cell_usnum = (FontBuffer_Read[2 + 10 * 1] << 8) | FontBuffer_Read[3 + 10 * 1];
|
|
else
|
|
Cell_usnum = 0;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 2] == 0xaa && FontBuffer_Read[1 + 10 * 2] == 0x55)
|
|
{
|
|
Cell_Outrl = (u32)(((FontBuffer_Read[2 + 10 * 2] << 8) | FontBuffer_Read[3 + 10 * 2]) * 65536 + ((FontBuffer_Read[4 + 10 * 2] << 8) | FontBuffer_Read[5 + 10 * 2]));
|
|
gps_data.Rev_data.CellOutrl = Cell_Outrl;
|
|
SOH_Readflash = 100;
|
|
|
|
}
|
|
else
|
|
{
|
|
Cell_Outrl = 0;
|
|
SOH_Readflash = 100;
|
|
}
|
|
|
|
|
|
if(FontBuffer_Read[0 + 10 * 3] == 0xaa && FontBuffer_Read[1 + 10 * 3] == 0x55)
|
|
Off_lint = FontBuffer_Read[2 + 10 * 3];
|
|
else
|
|
Off_lint = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 4] == 0xaa && FontBuffer_Read[1 + 10 * 4] == 0x55)
|
|
Out_Dea = FontBuffer_Read[2 + 10 * 4];
|
|
else
|
|
Out_Dea = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 5] == 0xaa && FontBuffer_Read[1 + 10 * 5] == 0x55)
|
|
Chg_Dea = FontBuffer_Read[2 + 10 * 5];
|
|
else
|
|
Chg_Dea = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 6] == 0xaa && FontBuffer_Read[1 + 10 * 6] == 0x55)
|
|
Cell_Tmp = FontBuffer_Read[2 + 10 * 6];
|
|
else
|
|
Cell_Tmp = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 7] == 0xaa && FontBuffer_Read[1 + 10 * 7] == 0x55)
|
|
Pow_Tmp = FontBuffer_Read[2 + 10 * 7];
|
|
else
|
|
Pow_Tmp = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 8] == 0xaa && FontBuffer_Read[1 + 10 * 8] == 0x55)
|
|
Chg_Moshit = FontBuffer_Read[2 + 10 * 8];
|
|
else
|
|
Chg_Moshit = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 9] == 0xaa && FontBuffer_Read[1 + 10 * 9] == 0x55)
|
|
Out_Moshit = FontBuffer_Read[2 + 10 * 9];
|
|
else
|
|
Out_Moshit = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 12] == 0xaa && FontBuffer_Read[1 + 10 * 12] == 0x55)
|
|
gps_data.RevWrite_data.SingvolG = (FontBuffer_Read[2 + 10 * 12] << 8) | FontBuffer_Read[3 + 10 * 12];
|
|
else
|
|
gps_data.RevWrite_data.SingvolG = 4200;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 13] == 0xaa && FontBuffer_Read[1 + 10 * 13] == 0x55)
|
|
gps_data.RevWrite_data.SingvolGH = (FontBuffer_Read[2 + 10 * 13] << 8) | FontBuffer_Read[3 + 10 * 13];
|
|
else
|
|
gps_data.RevWrite_data.SingvolGH = 4100;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 14] == 0xaa && FontBuffer_Read[1 + 10 * 14] == 0x55)
|
|
gps_data.RevWrite_data.SingvolGtime = (FontBuffer_Read[2 + 10 * 14] << 8) | FontBuffer_Read[3 + 10 * 14];
|
|
else
|
|
gps_data.RevWrite_data.SingvolGtime = 4;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 15] == 0xaa && FontBuffer_Read[1 + 10 * 15] == 0x55)
|
|
gps_data.RevWrite_data.SingvolQ = (FontBuffer_Read[2 + 10 * 15] << 8) | FontBuffer_Read[3 + 10 * 15];
|
|
else
|
|
gps_data.RevWrite_data.SingvolQ = 2800;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 16] == 0xaa && FontBuffer_Read[1 + 10 * 16] == 0x55)
|
|
gps_data.RevWrite_data.SingvolQH = (FontBuffer_Read[2 + 10 * 16] << 8) | FontBuffer_Read[3 + 10 * 16];
|
|
else
|
|
gps_data.RevWrite_data.SingvolQH = 2900;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 17] == 0xaa && FontBuffer_Read[1 + 10 * 17] == 0x55)
|
|
gps_data.RevWrite_data.SingvolQtime = (FontBuffer_Read[2 + 10 * 17] << 8) | FontBuffer_Read[3 + 10 * 17];
|
|
else
|
|
gps_data.RevWrite_data.SingvolQtime = 4;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 18] == 0xaa && FontBuffer_Read[1 + 10 * 18] == 0x55)
|
|
gps_data.RevWrite_data.CellXyc = (FontBuffer_Read[2 + 10 * 18] << 8) | FontBuffer_Read[3 + 10 * 18];
|
|
else
|
|
gps_data.RevWrite_data.CellXyc = 1000;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 19] == 0xaa && FontBuffer_Read[1 + 10 * 19] == 0x55)
|
|
gps_data.RevWrite_data.OutcurrG = (FontBuffer_Read[2 + 10 * 19] << 8) | FontBuffer_Read[3 + 10 * 19];
|
|
else
|
|
gps_data.RevWrite_data.OutcurrG = 60;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 20] == 0xaa && FontBuffer_Read[1 + 10 * 20] == 0x55)
|
|
gps_data.RevWrite_data.OutcurrGtime = (FontBuffer_Read[2 + 10 * 20] << 8) | FontBuffer_Read[3 + 10 * 20];
|
|
else
|
|
gps_data.RevWrite_data.OutcurrGtime = 60;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 21] == 0xaa && FontBuffer_Read[1 + 10 * 21] == 0x55)
|
|
gps_data.RevWrite_data.ChgcurrG = (FontBuffer_Read[2 + 10 * 21] << 8) | FontBuffer_Read[3 + 10 * 21];
|
|
else
|
|
gps_data.RevWrite_data.ChgcurrG = 20;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 22] == 0xaa && FontBuffer_Read[1 + 10 * 22] == 0x55)
|
|
gps_data.RevWrite_data.ChgcurrGtime = (FontBuffer_Read[2 + 10 * 22] << 8) | FontBuffer_Read[3 + 10 * 22];
|
|
else
|
|
gps_data.RevWrite_data.ChgcurrGtime = 64;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 23] == 0xaa && FontBuffer_Read[1 + 10 * 23] == 0x55)
|
|
gps_data.RevWrite_data.Equalivol = (FontBuffer_Read[2 + 10 * 23] << 8) | FontBuffer_Read[3 + 10 * 23];
|
|
else
|
|
gps_data.RevWrite_data.Equalivol = 4000;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 24] == 0xaa && FontBuffer_Read[1 + 10 * 24] == 0x55)
|
|
gps_data.RevWrite_data.Equalivolcc = (FontBuffer_Read[2 + 10 * 24] << 8) | FontBuffer_Read[3 + 10 * 24];
|
|
else
|
|
gps_data.RevWrite_data.Equalivolcc = 10;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 25] == 0xaa && FontBuffer_Read[1 + 10 * 25] == 0x55)
|
|
gps_data.RevWrite_data.EqualiON = FontBuffer_Read[2 + 10 * 25];
|
|
else
|
|
gps_data.RevWrite_data.EqualiON = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 26] == 0xaa && FontBuffer_Read[1 + 10 * 26] == 0x55)
|
|
gps_data.RevWrite_data.PowTmp = (FontBuffer_Read[2 + 10 * 26] << 8) | FontBuffer_Read[3 + 10 * 26];
|
|
else
|
|
gps_data.RevWrite_data.PowTmp = 75;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 27] == 0xaa && FontBuffer_Read[1 + 10 * 27] == 0x55)
|
|
gps_data.RevWrite_data.PowTmpH = (FontBuffer_Read[2 + 10 * 27] << 8) | FontBuffer_Read[3 + 10 * 27];
|
|
else
|
|
gps_data.RevWrite_data.PowTmpH = 60;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 28] == 0xaa && FontBuffer_Read[1 + 10 * 28] == 0x55)
|
|
gps_data.RevWrite_data.Equaltmpb = (FontBuffer_Read[2 + 10 * 28] << 8) | FontBuffer_Read[3 + 10 * 28];
|
|
else
|
|
gps_data.RevWrite_data.Equaltmpb = 65;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 29] == 0xaa && FontBuffer_Read[1 + 10 * 29] == 0x55)
|
|
gps_data.RevWrite_data.EqualtmpH = (FontBuffer_Read[2 + 10 * 29] << 8) | FontBuffer_Read[3 + 10 * 29];
|
|
else
|
|
gps_data.RevWrite_data.EqualtmpH = 55;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 30] == 0xaa && FontBuffer_Read[1 + 10 * 30] == 0x55)
|
|
gps_data.RevWrite_data.CellTmp = (FontBuffer_Read[2 + 10 * 30] << 8) | FontBuffer_Read[3 + 10 * 30];
|
|
else
|
|
gps_data.RevWrite_data.CellTmp = 20;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 31] == 0xaa && FontBuffer_Read[1 + 10 * 31] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.CellChgTmpG = (FontBuffer_Read[2 + 10 * 31] << 8) | FontBuffer_Read[3 + 10 * 31];
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.CellChgTmpG = 65;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 32] == 0xaa && FontBuffer_Read[1 + 10 * 32] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.CellOutTmpG = (FontBuffer_Read[2 + 10 * 32] << 8) | FontBuffer_Read[3 + 10 * 32];
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.CellOutTmpG = 65;
|
|
}
|
|
|
|
|
|
if(FontBuffer_Read[0 + 10 * 33] == 0xaa && FontBuffer_Read[1 + 10 * 33] == 0x55)
|
|
gps_data.RevWrite_data.ChgTmpD = (FontBuffer_Read[2 + 10 * 33] << 8) | FontBuffer_Read[3 + 10 * 33];
|
|
else
|
|
gps_data.RevWrite_data.ChgTmpD = -40;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 34] == 0xaa && FontBuffer_Read[1 + 10 * 34] == 0x55)
|
|
gps_data.RevWrite_data.ChgTmpDH = (FontBuffer_Read[2 + 10 * 34] << 8) | FontBuffer_Read[3 + 10 * 34];
|
|
else
|
|
gps_data.RevWrite_data.ChgTmpDH = -35;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 35] == 0xaa && FontBuffer_Read[1 + 10 * 35] == 0x55)
|
|
gps_data.RevWrite_data.OutTmpD = (FontBuffer_Read[2 + 10 * 35] << 8) | FontBuffer_Read[3 + 10 * 35];
|
|
else
|
|
gps_data.RevWrite_data.OutTmpD = -40;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 36] == 0xaa && FontBuffer_Read[1 + 10 * 36] == 0x55)
|
|
gps_data.RevWrite_data.OutTmpDH = (FontBuffer_Read[2 + 10 * 36] << 8) | FontBuffer_Read[3 + 10 * 36];
|
|
else
|
|
gps_data.RevWrite_data.OutTmpDH = -35;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 37] == 0xaa && FontBuffer_Read[1 + 10 * 37] == 0x55)
|
|
gps_data.RevWrite_data.Cellnum = FontBuffer_Read[2 + 10 * 37];
|
|
else
|
|
gps_data.RevWrite_data.Cellnum = 16;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 10] == 0xaa && FontBuffer_Read[1 + 10 * 10] == 0x55)
|
|
gps_data.RevWrite_data.ZvolG = ((FontBuffer_Read[2 + 10 * 10] << 8) | FontBuffer_Read[3 + 10 * 10]);
|
|
else
|
|
gps_data.RevWrite_data.ZvolG = gps_data.RevWrite_data.SingvolG / 10.0 * gps_data.RevWrite_data.Cellnum;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 11] == 0xaa && FontBuffer_Read[1 + 10 * 11] == 0x55)
|
|
gps_data.RevWrite_data.ZvolQ = ((FontBuffer_Read[2 + 10 * 11] << 8) | FontBuffer_Read[3 + 10 * 11]);
|
|
else
|
|
gps_data.RevWrite_data.ZvolQ = gps_data.RevWrite_data.SingvolQ / 10.0 * gps_data.RevWrite_data.Cellnum;
|
|
|
|
|
|
|
|
if(FontBuffer_Read[0 + 10 * 38] == 0xaa && FontBuffer_Read[1 + 10 * 38] == 0x55)
|
|
gps_data.RevWrite_data.CellRl = (u32)(((FontBuffer_Read[2 + 10 * 38] << 8) | (FontBuffer_Read[3 + 10 * 38])) * 65536 + ((FontBuffer_Read[4 + 10 * 38] << 8) | FontBuffer_Read[5 + 10 * 38]));
|
|
else
|
|
gps_data.RevWrite_data.CellRl = 40;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 39] == 0xaa && FontBuffer_Read[1 + 10 * 39] == 0x55)
|
|
Chg_Lock = FontBuffer_Read[2 + 10 * 39];
|
|
else
|
|
Chg_Lock = 0;
|
|
|
|
if(Chg_Lock == 0)
|
|
gps_data.RevWrite_data.ChgMOS = 1;
|
|
else
|
|
gps_data.RevWrite_data.ChgMOS = 0;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 40] == 0xaa && FontBuffer_Read[1 + 10 * 40] == 0x55)
|
|
Out_Lock = FontBuffer_Read[2 + 10 * 40];
|
|
else
|
|
Out_Lock = 0;
|
|
|
|
if(Out_Lock == 0)
|
|
gps_data.RevWrite_data.OutMOS = 1;
|
|
else
|
|
gps_data.RevWrite_data.OutMOS = 0;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 41] == 0xaa && FontBuffer_Read[1 + 10 * 41] == 0x55)
|
|
gps_data.RevWrite_data.CurrJZ = (FontBuffer_Read[2 + 10 * 41] << 8) | FontBuffer_Read[3 + 10 * 41];
|
|
else
|
|
gps_data.RevWrite_data.CurrJZ = 10000;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 42] == 0xaa && FontBuffer_Read[1 + 10 * 42] == 0x55)
|
|
gps_data.RevWrite_data.BHBAddr = FontBuffer_Read[2 + 10 * 42];
|
|
else
|
|
gps_data.RevWrite_data.BHBAddr = 1;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 43] == 0xaa && FontBuffer_Read[1 + 10 * 43] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.Celltype = FontBuffer_Read[2 + 10 * 43];
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.Celltype = 1;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 44] == 0xaa && FontBuffer_Read[1 + 10 * 44] == 0x55)
|
|
gps_data.RevWrite_data.SleepTime = (FontBuffer_Read[2 + 10 * 44] << 8) | FontBuffer_Read[3 + 10 * 44];
|
|
else
|
|
gps_data.RevWrite_data.SleepTime = 15;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 45] == 0xaa && FontBuffer_Read[1 + 10 * 45] == 0x55)
|
|
gps_data.RevWrite_data.DRLNum = FontBuffer_Read[2 + 10 * 45];
|
|
else
|
|
gps_data.RevWrite_data.DRLNum = 10;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 46] == 0xaa && FontBuffer_Read[1 + 10 * 46] == 0x55)
|
|
memcpy(gps_data.RevWrite_data.Pass, &FontBuffer_Read[2 + 10 * 46], 8);
|
|
else
|
|
memset(gps_data.RevWrite_data.Pass, 0, 8);
|
|
|
|
if(FontBuffer_Read[0 + 10 * 47] == 0xaa && FontBuffer_Read[1 + 10 * 47] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.ZChgON = FontBuffer_Read[2 + 10 * 47];
|
|
|
|
if(gps_data.RevWrite_data.ZChgON >= 1)
|
|
SpecChargerFlag = 1;
|
|
else
|
|
{
|
|
SpecChargerFlag = 0;
|
|
}
|
|
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.ZChgON = 0;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 48] == 0xaa && FontBuffer_Read[1 + 10 * 48] == 0x55)
|
|
{
|
|
memcpy(gps_data.RevWrite_data.EquID, &FontBuffer_Read[2 + 10 * 48], 8);
|
|
}
|
|
else
|
|
{
|
|
memcpy(gps_data.RevWrite_data.EquID, &databuf[2], 3);
|
|
memcpy(&gps_data.RevWrite_data.EquID[3], &databuf[9], 5);
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 49] == 0xaa && FontBuffer_Read[1 + 10 * 49] == 0x55)
|
|
{
|
|
memcpy(gps_data.RevWrite_data.CCDat, &FontBuffer_Read[2 + 10 * 49], 4);
|
|
}
|
|
else
|
|
memcpy(gps_data.RevWrite_data.CCDat, &databuf[5], 4);
|
|
|
|
if(FontBuffer_Read[0 + 10 * 50] == 0xaa && FontBuffer_Read[1 + 10 * 50] == 0x55)
|
|
gps_data.RevWrite_data.SysTime = (u32)(((FontBuffer_Read[2 + 10 * 50] << 8) | (FontBuffer_Read[3 + 10 * 50])) * 65536 + ((FontBuffer_Read[4 + 10 * 50] << 8) | FontBuffer_Read[5 + 10 * 50]));
|
|
else
|
|
gps_data.RevWrite_data.SysTime = 0;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 51] == 0xaa && FontBuffer_Read[1 + 10 * 51] == 0x55)
|
|
{
|
|
long fl_data = 0;
|
|
fl_data = (u32)(((FontBuffer_Read[2 + 10 * 51] << 8) | (FontBuffer_Read[3 + 10 * 51])) * 65536 + ((FontBuffer_Read[4 + 10 * 51] << 8) | FontBuffer_Read[5 + 10 * 51]));
|
|
Curr_Res = *((float *)&fl_data);
|
|
}
|
|
else
|
|
Curr_Res = 0.000462;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 52] == 0xaa && FontBuffer_Read[1 + 10 * 52] == 0x55)
|
|
gps_data.RevWrite_data.Reali_Q = (u32)(((FontBuffer_Read[2 + 10 * 52] << 8) | (FontBuffer_Read[3 + 10 * 52])) * 65536 + ((FontBuffer_Read[4 + 10 * 52] << 8) | FontBuffer_Read[5 + 10 * 52]));
|
|
else
|
|
gps_data.RevWrite_data.Reali_Q = gps_data.RevWrite_data.CellRl;
|
|
|
|
if(gps_data.RevWrite_data.Reali_Q > gps_data.RevWrite_data.CellRl)
|
|
gps_data.RevWrite_data.Reali_Q = gps_data.RevWrite_data.CellRl;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 53] == 0xaa && FontBuffer_Read[1 + 10 * 53] == 0x55)
|
|
{
|
|
memcpy(&gps_data.RevWrite_data.XID[0], &FontBuffer_Read[2 + 10 * 53], 8);
|
|
}
|
|
else
|
|
memcpy(&gps_data.RevWrite_data.XID[0], &dataxingaobuf[0], 9);
|
|
|
|
if(FontBuffer_Read[0 + 10 * 54] == 0xaa && FontBuffer_Read[1 + 10 * 54] == 0x55)
|
|
{
|
|
memcpy(&gps_data.RevWrite_data.XID[8], &FontBuffer_Read[2 + 10 * 54], 7);
|
|
}
|
|
else
|
|
memcpy(&gps_data.RevWrite_data.XID[9], &dataxingaobuf[9], 6);
|
|
|
|
if(FontBuffer_Read[0 + 10 * 55] == 0xaa && FontBuffer_Read[1 + 10 * 55] == 0x55)
|
|
{
|
|
memcpy(&gps_data.RevWrite_data.XID[15], &FontBuffer_Read[2 + 10 * 55], 6);
|
|
}
|
|
else
|
|
memcpy(&gps_data.RevWrite_data.XID[15], &dataxingaobuf[15], 6);
|
|
|
|
|
|
if(FontBuffer_Read[0 + 10 * 56] == 0xaa && FontBuffer_Read[1 + 10 * 56] == 0x55)
|
|
{
|
|
memcpy(&gps_data.RevWrite_data.XID[21], &FontBuffer_Read[2 + 10 * 56], 3);
|
|
}
|
|
else
|
|
memcpy(&gps_data.RevWrite_data.XID[21], &dataxingaobuf[21], 3);
|
|
|
|
|
|
if(FontBuffer_Read[0 + 10 * 57] == 0xaa && FontBuffer_Read[1 + 10 * 57] == 0x55)
|
|
{
|
|
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 58] == 0xaa && FontBuffer_Read[1 + 10 * 58] == 0x55)
|
|
{
|
|
memcpy(&Pass_init[0], &FontBuffer_Read[2 + 10 * 58], 6);
|
|
}
|
|
|
|
|
|
if(FontBuffer_Read[0 + 10 * 59] == 0xaa && FontBuffer_Read[1 + 10 * 59] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.GpsDVol = ((FontBuffer_Read[2 + 10 * 59] << 8) | FontBuffer_Read[3 + 10 * 59]);
|
|
}
|
|
else
|
|
{
|
|
if(gps_data.RevWrite_data.Celltype == 0)
|
|
gps_data.RevWrite_data.GpsDVol = 2750;
|
|
else if(gps_data.RevWrite_data.Celltype == 1)
|
|
gps_data.RevWrite_data.GpsDVol = 2750;
|
|
else if(gps_data.RevWrite_data.Celltype == 2)
|
|
gps_data.RevWrite_data.GpsDVol = 2750;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 60] == 0xaa && FontBuffer_Read[1 + 10 * 60] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.GpsDVolH = ((FontBuffer_Read[2 + 10 * 60] << 8) | FontBuffer_Read[3 + 10 * 60]);
|
|
}
|
|
else
|
|
{
|
|
if(gps_data.RevWrite_data.Celltype == 0)
|
|
gps_data.RevWrite_data.GpsDVolH = 2850;
|
|
else if(gps_data.RevWrite_data.Celltype == 1)
|
|
gps_data.RevWrite_data.GpsDVolH = 2850;
|
|
else if(gps_data.RevWrite_data.Celltype == 2)
|
|
gps_data.RevWrite_data.GpsDVolH = 2850;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 61] == 0xaa && FontBuffer_Read[1 + 10 * 61] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.ShiduKaiguan = FontBuffer_Read[2 + 10 * 61];
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.ShiduKaiguan = 0;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 62] == 0xaa && FontBuffer_Read[1 + 10 * 62] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.ShiduValueNow = FontBuffer_Read[2 + 10 * 62];
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 63] == 0xaa && FontBuffer_Read[1 + 10 * 63] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.ShiduValueProtect = FontBuffer_Read[2 + 10 * 63];
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.ShiduValueProtect = 90;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 64] == 0xaa && FontBuffer_Read[1 + 10 * 64] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.ShortCurValue = FontBuffer_Read[2 + 10 * 64];
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.ShortCurValue = 38;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 65] == 0xaa && FontBuffer_Read[1 + 10 * 65] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.ShortCurDelay = ((FontBuffer_Read[2 + 10 * 65] << 8) | FontBuffer_Read[3 + 10 * 65]);
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.ShortCurDelay = 400;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 66] == 0xaa && FontBuffer_Read[1 + 10 * 66] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.EnableSwitch = ((FontBuffer_Read[2 + 10 * 66] << 8) | FontBuffer_Read[3 + 10 * 66]);
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.EnableSwitch = 0x0000;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 67] == 0xaa && FontBuffer_Read[1 + 10 * 67] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.CellOUT2CURR_G = ((FontBuffer_Read[2 + 10 * 67] << 8) | FontBuffer_Read[3 + 10 * 67]);
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.CellOUT2CURR_G = 80;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 68] == 0xaa && FontBuffer_Read[1 + 10 * 68] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.CellOUT2TIME_G = ((FontBuffer_Read[2 + 10 * 68] << 8) | FontBuffer_Read[3 + 10 * 68]);
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.CellOUT2TIME_G = 4;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 69] == 0xaa && FontBuffer_Read[1 + 10 * 69] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.CellDRLBEEP_Jiao = ((FontBuffer_Read[2 + 10 * 69] << 8) | FontBuffer_Read[3 + 10 * 69]);
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.CellDRLBEEP_Jiao = 3350;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 70] == 0xaa && FontBuffer_Read[1 + 10 * 70] == 0x55)
|
|
{
|
|
Ala_Data.AZvolG = ((FontBuffer_Read[2 + 10 * 70] << 8) | FontBuffer_Read[3 + 10 * 70]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AZvolG = 5000;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 71] == 0xaa && FontBuffer_Read[1 + 10 * 71] == 0x55)
|
|
{
|
|
Ala_Data.AZvolGH = ((FontBuffer_Read[2 + 10 * 71] << 8) | FontBuffer_Read[3 + 10 * 71]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AZvolGH = 4500;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 72] == 0xaa && FontBuffer_Read[1 + 10 * 72] == 0x55)
|
|
{
|
|
Ala_Data.AZvolQ = ((FontBuffer_Read[2 + 10 * 72] << 8) | FontBuffer_Read[3 + 10 * 72]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AZvolQ = 4000;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 73] == 0xaa && FontBuffer_Read[1 + 10 * 73] == 0x55)
|
|
{
|
|
Ala_Data.AZvolQH = ((FontBuffer_Read[2 + 10 * 73] << 8) | FontBuffer_Read[3 + 10 * 73]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AZvolQH = 4300;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 74] == 0xaa && FontBuffer_Read[1 + 10 * 74] == 0x55)
|
|
{
|
|
Ala_Data.ASingvolG = ((FontBuffer_Read[2 + 10 * 74] << 8) | FontBuffer_Read[3 + 10 * 74]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ASingvolG = 4200;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 75] == 0xaa && FontBuffer_Read[1 + 10 * 75] == 0x55)
|
|
{
|
|
Ala_Data.ASingvolGH = ((FontBuffer_Read[2 + 10 * 75] << 8) | FontBuffer_Read[3 + 10 * 75]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ASingvolGH = 4000;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 76] == 0xaa && FontBuffer_Read[1 + 10 * 76] == 0x55)
|
|
{
|
|
Ala_Data.ASingvolQ = ((FontBuffer_Read[2 + 10 * 76] << 8) | FontBuffer_Read[3 + 10 * 76]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ASingvolQ = 3000;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 77] == 0xaa && FontBuffer_Read[1 + 10 * 77] == 0x55)
|
|
{
|
|
Ala_Data.ASingvolQH = ((FontBuffer_Read[2 + 10 * 77] << 8) | FontBuffer_Read[3 + 10 * 77]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ASingvolQH = 3500;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 78] == 0xaa && FontBuffer_Read[1 + 10 * 78] == 0x55)
|
|
{
|
|
Ala_Data.ACellXyc = ((FontBuffer_Read[2 + 10 * 78] << 8) | FontBuffer_Read[3 + 10 * 78]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ACellXyc = 800;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 79] == 0xaa && FontBuffer_Read[1 + 10 * 79] == 0x55)
|
|
{
|
|
Ala_Data.ACellXycH = ((FontBuffer_Read[2 + 10 * 79] << 8) | FontBuffer_Read[3 + 10 * 79]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ACellXycH = 600;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 80] == 0xaa && FontBuffer_Read[1 + 10 * 80] == 0x55)
|
|
{
|
|
Ala_Data.AOutcurrG = ((FontBuffer_Read[2 + 10 * 80] << 8) | FontBuffer_Read[3 + 10 * 80]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AOutcurrG = 10000;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 81] == 0xaa && FontBuffer_Read[1 + 10 * 81] == 0x55)
|
|
{
|
|
Ala_Data.AOutcurrGH = ((FontBuffer_Read[2 + 10 * 81] << 8) | FontBuffer_Read[3 + 10 * 81]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AOutcurrGH = 8000;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 82] == 0xaa && FontBuffer_Read[1 + 10 * 82] == 0x55)
|
|
{
|
|
Ala_Data.AChgcurrG = ((FontBuffer_Read[2 + 10 * 82] << 8) | FontBuffer_Read[3 + 10 * 82]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AChgcurrG = 20000;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 83] == 0xaa && FontBuffer_Read[1 + 10 * 83] == 0x55)
|
|
{
|
|
Ala_Data.AChgcurrGH = ((FontBuffer_Read[2 + 10 * 83] << 8) | FontBuffer_Read[3 + 10 * 83]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AChgcurrGH = 18000;
|
|
}
|
|
|
|
|
|
if(FontBuffer_Read[0 + 10 * 84] == 0xaa && FontBuffer_Read[1 + 10 * 84] == 0x55)
|
|
{
|
|
Ala_Data.APowTmp = ((FontBuffer_Read[2 + 10 * 84] << 8) | FontBuffer_Read[3 + 10 * 84]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.APowTmp = 50;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 85] == 0xaa && FontBuffer_Read[1 + 10 * 85] == 0x55)
|
|
{
|
|
Ala_Data.APowTmpH = ((FontBuffer_Read[2 + 10 * 85] << 8) | FontBuffer_Read[3 + 10 * 85]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.APowTmpH = 45;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 86] == 0xaa && FontBuffer_Read[1 + 10 * 86] == 0x55)
|
|
{
|
|
Ala_Data.AEqualtmp = ((FontBuffer_Read[2 + 10 * 86] << 8) | FontBuffer_Read[3 + 10 * 86]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AEqualtmp = 50;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 87] == 0xaa && FontBuffer_Read[1 + 10 * 87] == 0x55)
|
|
{
|
|
Ala_Data.AEqualtmpH = ((FontBuffer_Read[2 + 10 * 87] << 8) | FontBuffer_Read[3 + 10 * 87]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AEqualtmpH = 45;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 88] == 0xaa && FontBuffer_Read[1 + 10 * 88] == 0x55)
|
|
{
|
|
Ala_Data.ACellTmp = ((FontBuffer_Read[2 + 10 * 88] << 8) | FontBuffer_Read[3 + 10 * 88]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ACellTmp = 20;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 89] == 0xaa && FontBuffer_Read[1 + 10 * 89] == 0x55)
|
|
{
|
|
Ala_Data.ACellTmpH = ((FontBuffer_Read[2 + 10 * 89] << 8) | FontBuffer_Read[3 + 10 * 89]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ACellTmpH = 15;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 90] == 0xaa && FontBuffer_Read[1 + 10 * 90] == 0x55)
|
|
{
|
|
Ala_Data.ACellChgTmpG = ((FontBuffer_Read[2 + 10 * 90] << 8) | FontBuffer_Read[3 + 10 * 90]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ACellChgTmpG = 50;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 91] == 0xaa && FontBuffer_Read[1 + 10 * 91] == 0x55)
|
|
{
|
|
Ala_Data.ACellChgTmpGH = ((FontBuffer_Read[2 + 10 * 91] << 8) | FontBuffer_Read[3 + 10 * 91]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ACellChgTmpGH = 45;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 92] == 0xaa && FontBuffer_Read[1 + 10 * 92] == 0x55)
|
|
{
|
|
Ala_Data.ACellOutTmpG = ((FontBuffer_Read[2 + 10 * 92] << 8) | FontBuffer_Read[3 + 10 * 92]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ACellOutTmpG = 50;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 93] == 0xaa && FontBuffer_Read[1 + 10 * 93] == 0x55)
|
|
{
|
|
Ala_Data.ACellOutTmpGH = ((FontBuffer_Read[2 + 10 * 93] << 8) | FontBuffer_Read[3 + 10 * 93]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ACellOutTmpGH = 45;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 94] == 0xaa && FontBuffer_Read[1 + 10 * 94] == 0x55)
|
|
{
|
|
Ala_Data.AChgTmpD = ((FontBuffer_Read[2 + 10 * 94] << 8) | FontBuffer_Read[3 + 10 * 94]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AChgTmpD = 0;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 95] == 0xaa && FontBuffer_Read[1 + 10 * 95] == 0x55)
|
|
{
|
|
Ala_Data.AChgTmpDH = ((FontBuffer_Read[2 + 10 * 95] << 8) | FontBuffer_Read[3 + 10 * 95]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AChgTmpDH = 10;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 96] == 0xaa && FontBuffer_Read[1 + 10 * 96] == 0x55)
|
|
{
|
|
Ala_Data.AOutTmpD = ((FontBuffer_Read[2 + 10 * 96] << 8) | FontBuffer_Read[3 + 10 * 96]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AOutTmpD = 0;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 97] == 0xaa && FontBuffer_Read[1 + 10 * 97] == 0x55)
|
|
{
|
|
Ala_Data.AOutTmpDH = ((FontBuffer_Read[2 + 10 * 97] << 8) | FontBuffer_Read[3 + 10 * 97]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.AOutTmpDH = 10;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 98] == 0xaa && FontBuffer_Read[1 + 10 * 98] == 0x55)
|
|
{
|
|
Ala_Data.ADRLNum2 = ((FontBuffer_Read[2 + 10 * 98] << 8) | FontBuffer_Read[3 + 10 * 98]);
|
|
}
|
|
else
|
|
{
|
|
Ala_Data.ADRLNum2 = 20;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 99] == 0xaa && FontBuffer_Read[1 + 10 * 99] == 0x55)
|
|
{
|
|
Pt_Data.ZvolGH = ((FontBuffer_Read[2 + 10 * 99] << 8) | FontBuffer_Read[3 + 10 * 99]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.ZvolGH = 5500;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 100] == 0xaa && FontBuffer_Read[1 + 10 * 100] == 0x55)
|
|
{
|
|
Pt_Data.ZvolQH = ((FontBuffer_Read[2 + 10 * 100] << 8) | FontBuffer_Read[3 + 10 * 100]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.ZvolQH = 4000;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 101] == 0xaa && FontBuffer_Read[1 + 10 * 101] == 0x55)
|
|
{
|
|
Pt_Data.SingvolG2 = ((FontBuffer_Read[2 + 10 * 101] << 8) | FontBuffer_Read[3 + 10 * 101]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.SingvolG2 = 4300;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 102] == 0xaa && FontBuffer_Read[1 + 10 * 102] == 0x55)
|
|
{
|
|
Pt_Data.SingvolGH2 = ((FontBuffer_Read[2 + 10 * 102] << 8) | FontBuffer_Read[3 + 10 * 102]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.SingvolGH2 = 4200;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 103] == 0xaa && FontBuffer_Read[1 + 10 * 103] == 0x55)
|
|
{
|
|
Pt_Data.SingvolGtime2 = ((FontBuffer_Read[2 + 10 * 103] << 8) | FontBuffer_Read[3 + 10 * 103]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.SingvolGtime2 = 3;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 104] == 0xaa && FontBuffer_Read[1 + 10 * 104] == 0x55)
|
|
{
|
|
Pt_Data.SingvolQ2 = ((FontBuffer_Read[2 + 10 * 104] << 8) | FontBuffer_Read[3 + 10 * 104]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.SingvolQ2 = 3000;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 105] == 0xaa && FontBuffer_Read[1 + 10 * 105] == 0x55)
|
|
{
|
|
Pt_Data.SingvolQH2 = ((FontBuffer_Read[2 + 10 * 105] << 8) | FontBuffer_Read[3 + 10 * 105]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.SingvolQH2 = 3200;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 106] == 0xaa && FontBuffer_Read[1 + 10 * 106] == 0x55)
|
|
{
|
|
Pt_Data.SingvolQtime2 = ((FontBuffer_Read[2 + 10 * 106] << 8) | FontBuffer_Read[3 + 10 * 106]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.SingvolQtime2 = 3;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 107] == 0xaa && FontBuffer_Read[1 + 10 * 107] == 0x55)
|
|
{
|
|
Pt_Data.CellXycH = ((FontBuffer_Read[2 + 10 * 107] << 8) | FontBuffer_Read[3 + 10 * 107]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.CellXycH = 800;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 108] == 0xaa && FontBuffer_Read[1 + 10 * 108] == 0x55)
|
|
{
|
|
Pt_Data.ChgcurrG2 = ((FontBuffer_Read[2 + 10 * 108] << 8) | FontBuffer_Read[3 + 10 * 108]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.ChgcurrG2 = 32000;
|
|
}
|
|
if(FontBuffer_Read[0 + 10 * 109] == 0xaa && FontBuffer_Read[1 + 10 * 109] == 0x55)
|
|
{
|
|
Pt_Data.ChgcurrGtime2 = ((FontBuffer_Read[2 + 10 * 109] << 8) | FontBuffer_Read[3 + 10 * 109]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.ChgcurrGtime2 = 1;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 110] == 0xaa && FontBuffer_Read[1 + 10 * 110] == 0x55)
|
|
{
|
|
Pt_Data.CellTmpH = ((FontBuffer_Read[2 + 10 * 110] << 8) | FontBuffer_Read[3 + 10 * 110]);
|
|
}
|
|
else
|
|
{
|
|
Pt_Data.CellTmpH = 10;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 111] == 0xaa && FontBuffer_Read[1 + 10 * 111] == 0x55)
|
|
{
|
|
long fdl_data = 0;
|
|
fdl_data = (u32)(((FontBuffer_Read[2 + 10 * 111] << 8) | (FontBuffer_Read[3 + 10 * 111])) * 65536 + ((FontBuffer_Read[4 + 10 * 111] << 8) | FontBuffer_Read[5 + 10 * 111]));
|
|
Curr_Out_Res = *((float *)&fdl_data);
|
|
}
|
|
else
|
|
{
|
|
Curr_Out_Res = 0.000556;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 112] == 0xaa && FontBuffer_Read[1 + 10 * 112] == 0x55)
|
|
Pt_Data.OutCurrJZ = (u32)(((FontBuffer_Read[2 + 10 * 112] << 24) | (FontBuffer_Read[3 + 10 * 112] << 16)) + ((FontBuffer_Read[4 + 10 * 112] << 8) | FontBuffer_Read[5 + 10 * 112]));
|
|
else
|
|
Pt_Data.OutCurrJZ = 10000;
|
|
|
|
if(FontBuffer_Read[0 + 10 * 113] == 0xaa && FontBuffer_Read[1 + 10 * 113] == 0x55)
|
|
{
|
|
Calendar.Year = (u16)((FontBuffer_Read[2 + 10 * 113] << 8) | FontBuffer_Read[3 + 10 * 113]);
|
|
Calendar.Month = FontBuffer_Read[4 + 10 * 113];
|
|
Calendar.Date = FontBuffer_Read[5 + 10 * 113];
|
|
Calendar.Hour = FontBuffer_Read[6 + 10 * 113];
|
|
Calendar.Min = FontBuffer_Read[7 + 10 * 113];
|
|
Calendar.Sec = FontBuffer_Read[8 + 10 * 113];
|
|
Calendar.Week = FontBuffer_Read[9 + 10 * 113];
|
|
}
|
|
else
|
|
{
|
|
Calendar.Year = 2024;
|
|
Calendar.Month = 5;
|
|
Calendar.Date = 26;
|
|
Calendar.Hour = 16;
|
|
Calendar.Min = 16;
|
|
Calendar.Sec = 16;
|
|
Calendar.Week = 7;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 114] == 0xaa && FontBuffer_Read[1 + 10 * 114] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.CellChgTmpGH = ((FontBuffer_Read[2 + 10 * 114] << 8) | FontBuffer_Read[3 + 10 * 114]);
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.CellChgTmpGH = 55;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 115] == 0xaa && FontBuffer_Read[1 + 10 * 115] == 0x55)
|
|
{
|
|
gps_data.RevWrite_data.CellOutTmpGH = ((FontBuffer_Read[2 + 10 * 115] << 8) | FontBuffer_Read[3 + 10 * 115]);
|
|
}
|
|
else
|
|
{
|
|
gps_data.RevWrite_data.CellOutTmpGH = 55;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 116] == 0xaa && FontBuffer_Read[1 + 10 * 116] == 0x55)
|
|
{
|
|
Err_Data.Prptection_Count = FontBuffer_Read[2 + 10 * 116];
|
|
}
|
|
else
|
|
{
|
|
Err_Data.Prptection_Count = 0;
|
|
}
|
|
|
|
if(FontBuffer_Read[0 + 10 * 117] == 0xaa && FontBuffer_Read[1 + 10 * 117] == 0x55)
|
|
{
|
|
P_Sleep_Flg = FontBuffer_Read[2 + 10 * 117];
|
|
}
|
|
else
|
|
{
|
|
P_Sleep_Flg = 0;
|
|
}
|
|
|
|
IntVolume = Cell_Soc / 100.0 * gps_data.RevWrite_data.CellRl;
|
|
|
|
Q_hs = (gps_data.RevWrite_data.CellRl * 1.0) / (gps_data.RevWrite_data.Reali_Q * 1.0);
|
|
|
|
if(gps_data.RevWrite_data.Celltype == 0)
|
|
{
|
|
OutSOC_xs = 1.08;
|
|
ChgSOC_xs = 1.08;
|
|
}
|
|
else if(gps_data.RevWrite_data.Celltype == 1)
|
|
{
|
|
OutSOC_xs = 1.08;
|
|
ChgSOC_xs = 1.08;
|
|
}
|
|
else if(gps_data.RevWrite_data.Celltype == 2)
|
|
{
|
|
OutSOC_xs = 1.08;
|
|
ChgSOC_xs = 1.08;
|
|
}
|
|
|
|
|
|
if(Chg_Lock == 0)
|
|
{
|
|
ChgMos_bit = 0;
|
|
|
|
Free309CHGMos();
|
|
}
|
|
else
|
|
{
|
|
ChgMos_bit = 1;
|
|
|
|
Shut309CHGMos();
|
|
}
|
|
|
|
if(Out_Lock == 0)
|
|
{
|
|
OutMos_bit = 0;
|
|
|
|
Free309DSGMos();
|
|
}
|
|
else
|
|
{
|
|
OutMos_bit = 1;
|
|
|
|
Shut309DSGMos();
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
void flash_write_sys_flag(unsigned char write_unm)
|
|
{
|
|
u8 i,j;
|
|
|
|
IapRead_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
|
|
switch(write_unm)
|
|
{
|
|
case 0:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)Cell_Soc;
|
|
break;
|
|
|
|
case 1:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)(Cell_usnum >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (unsigned char)Cell_usnum;
|
|
break;
|
|
|
|
case 2:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)(gps_data.Rev_data.CellOutrl >> 24);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (unsigned char)(gps_data.Rev_data.CellOutrl >> 16);
|
|
FontBuffer_Read[4 + 10 * write_unm] = (unsigned char)(gps_data.Rev_data.CellOutrl >> 8);
|
|
FontBuffer_Read[5 + 10 * write_unm] = (unsigned char)gps_data.Rev_data.CellOutrl;
|
|
break;
|
|
|
|
case 3:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)Off_lint;
|
|
break;
|
|
|
|
case 4:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)Out_Dea;
|
|
break;
|
|
|
|
case 5:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)Chg_Dea;
|
|
break;
|
|
|
|
case 6:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)Cell_Tmp;
|
|
break;
|
|
|
|
case 7:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)Pow_Tmp;
|
|
break;
|
|
|
|
case 8:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)Chg_Moshit;
|
|
break;
|
|
|
|
case 9:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)Out_Moshit;
|
|
break;
|
|
|
|
case 10:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.ZvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8) gps_data.RevWrite_data.ZvolG;
|
|
break;
|
|
|
|
case 11:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.ZvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ZvolQ;
|
|
break;
|
|
|
|
case 12:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SingvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.SingvolG;
|
|
break;
|
|
|
|
case 13:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SingvolGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.SingvolGH;
|
|
break;
|
|
|
|
case 14:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SingvolGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.SingvolGtime;
|
|
break;
|
|
|
|
case 15:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SingvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.SingvolQ;
|
|
break;
|
|
|
|
case 16:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SingvolQH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.SingvolQH;
|
|
break;
|
|
|
|
case 17:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SingvolQtime >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.SingvolQtime;
|
|
break;
|
|
|
|
case 18:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellXyc >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellXyc;
|
|
break;
|
|
|
|
case 19:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.OutcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.OutcurrG;
|
|
break;
|
|
|
|
case 20:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.OutcurrGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.OutcurrGtime;
|
|
break;
|
|
|
|
case 21:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.ChgcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ChgcurrG;
|
|
break;
|
|
|
|
case 22:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.ChgcurrGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ChgcurrGtime;
|
|
break;
|
|
|
|
case 23:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.Equalivol >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.Equalivol;
|
|
break;
|
|
|
|
case 24:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.Equalivolcc >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.Equalivolcc;
|
|
break;
|
|
|
|
case 25:
|
|
FontBuffer_Read[2 + 10 * write_unm] = gps_data.RevWrite_data.EqualiON;
|
|
break;
|
|
|
|
case 26:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.PowTmp >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.PowTmp;
|
|
break;
|
|
|
|
case 27:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.PowTmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.PowTmpH;
|
|
break;
|
|
|
|
case 28:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.Equaltmpb >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.Equaltmpb;
|
|
break;
|
|
|
|
case 29:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.EqualtmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.EqualtmpH;
|
|
break;
|
|
|
|
case 30:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellTmp >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellTmp;
|
|
break;
|
|
|
|
case 31:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellChgTmpG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellChgTmpG;
|
|
break;
|
|
|
|
case 32:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellOutTmpG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellOutTmpG;
|
|
break;
|
|
|
|
case 33:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.ChgTmpD >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ChgTmpD;
|
|
break;
|
|
|
|
case 34:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.ChgTmpDH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ChgTmpDH;
|
|
break;
|
|
|
|
case 35:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.OutTmpD >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.OutTmpD;
|
|
break;
|
|
|
|
case 36:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.OutTmpDH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.OutTmpDH;
|
|
break;
|
|
|
|
case 37:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)gps_data.RevWrite_data.Cellnum;
|
|
break;
|
|
|
|
case 38:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellRl >> 24);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellRl >> 16);
|
|
FontBuffer_Read[4 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellRl >> 8);
|
|
FontBuffer_Read[5 + 10 * write_unm] = (u8) gps_data.RevWrite_data.CellRl;
|
|
break;
|
|
|
|
case 39:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)Chg_Lock;
|
|
break;
|
|
|
|
case 40:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)Out_Lock;
|
|
break;
|
|
|
|
case 41:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CurrJZ >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CurrJZ;
|
|
break;
|
|
|
|
case 42:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)gps_data.RevWrite_data.BHBAddr;
|
|
break;
|
|
|
|
case 43:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)gps_data.RevWrite_data.Celltype;
|
|
break;
|
|
|
|
case 44:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SleepTime >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.SleepTime;
|
|
break;
|
|
|
|
case 45:
|
|
FontBuffer_Read[2 + 10 * write_unm] = gps_data.RevWrite_data.DRLNum;
|
|
break;
|
|
|
|
case 46:
|
|
memcpy(&FontBuffer_Read[2 + 10 * write_unm], gps_data.RevWrite_data.Pass, 8);
|
|
break;
|
|
|
|
case 47:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ZChgON;
|
|
break;
|
|
|
|
case 48:
|
|
memcpy(&FontBuffer_Read[2 + 10 * write_unm], gps_data.RevWrite_data.EquID, 8);
|
|
break;
|
|
|
|
case 49:
|
|
FontBuffer_Read[2 + 10 * write_unm] = gps_data.RevWrite_data.CCDat[0];
|
|
FontBuffer_Read[3 + 10 * write_unm] = gps_data.RevWrite_data.CCDat[1];
|
|
FontBuffer_Read[4 + 10 * write_unm] = gps_data.RevWrite_data.CCDat[2];
|
|
FontBuffer_Read[5 + 10 * write_unm] = gps_data.RevWrite_data.CCDat[3];
|
|
break;
|
|
|
|
case 50:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SysTime >> 24);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SysTime >> 16);
|
|
FontBuffer_Read[4 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.SysTime >> 8);
|
|
FontBuffer_Read[5 + 10 * write_unm] = (u8) gps_data.RevWrite_data.SysTime;
|
|
break;
|
|
|
|
case 51:
|
|
{
|
|
unsigned int int_data = 0;
|
|
int_data = *((unsigned int *)&Curr_Res);
|
|
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(int_data >> 24);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)(int_data >> 16);
|
|
FontBuffer_Read[4 + 10 * write_unm] = (u8)(int_data >> 8);
|
|
FontBuffer_Read[5 + 10 * write_unm] = (u8) int_data;
|
|
}
|
|
break;
|
|
|
|
case 52:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.Reali_Q >> 24);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.Reali_Q >> 16);
|
|
FontBuffer_Read[4 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.Reali_Q >> 8);
|
|
FontBuffer_Read[5 + 10 * write_unm] = (u8) gps_data.RevWrite_data.Reali_Q;
|
|
break;
|
|
|
|
case 53:
|
|
FontBuffer_Read[2 + 10 * write_unm] = gps_data.RevWrite_data.XID[0];
|
|
FontBuffer_Read[3 + 10 * write_unm] = gps_data.RevWrite_data.XID[1];
|
|
FontBuffer_Read[4 + 10 * write_unm] = gps_data.RevWrite_data.XID[2];
|
|
FontBuffer_Read[5 + 10 * write_unm] = gps_data.RevWrite_data.XID[3];
|
|
FontBuffer_Read[6 + 10 * write_unm] = gps_data.RevWrite_data.XID[4];
|
|
FontBuffer_Read[7 + 10 * write_unm] = gps_data.RevWrite_data.XID[5];
|
|
FontBuffer_Read[8 + 10 * write_unm] = gps_data.RevWrite_data.XID[6];
|
|
FontBuffer_Read[9 + 10 * write_unm] = gps_data.RevWrite_data.XID[7];
|
|
|
|
break;
|
|
|
|
case 54:
|
|
FontBuffer_Read[2 + 10 * write_unm] = gps_data.RevWrite_data.XID[8];
|
|
FontBuffer_Read[3 + 10 * write_unm] = gps_data.RevWrite_data.XID[9];
|
|
FontBuffer_Read[4 + 10 * write_unm] = gps_data.RevWrite_data.XID[10];
|
|
FontBuffer_Read[5 + 10 * write_unm] = gps_data.RevWrite_data.XID[11];
|
|
FontBuffer_Read[6 + 10 * write_unm] = gps_data.RevWrite_data.XID[12];
|
|
FontBuffer_Read[7 + 10 * write_unm] = gps_data.RevWrite_data.XID[13];
|
|
FontBuffer_Read[8 + 10 * write_unm] = gps_data.RevWrite_data.XID[14];
|
|
break;
|
|
|
|
case 55:
|
|
FontBuffer_Read[2 + 10 * write_unm] = gps_data.RevWrite_data.XID[15];
|
|
FontBuffer_Read[3 + 10 * write_unm] = gps_data.RevWrite_data.XID[16];
|
|
FontBuffer_Read[4 + 10 * write_unm] = gps_data.RevWrite_data.XID[17];
|
|
FontBuffer_Read[5 + 10 * write_unm] = gps_data.RevWrite_data.XID[18];
|
|
FontBuffer_Read[6 + 10 * write_unm] = gps_data.RevWrite_data.XID[19];
|
|
FontBuffer_Read[7 + 10 * write_unm] = gps_data.RevWrite_data.XID[20];
|
|
break;
|
|
|
|
case 56:
|
|
FontBuffer_Read[2 + 10 * write_unm] = gps_data.RevWrite_data.XID[21];
|
|
FontBuffer_Read[3 + 10 * write_unm] = gps_data.RevWrite_data.XID[22];
|
|
FontBuffer_Read[4 + 10 * write_unm] = gps_data.RevWrite_data.XID[23];
|
|
break;
|
|
|
|
case 57:
|
|
|
|
break;
|
|
|
|
case 58:
|
|
memcpy(&FontBuffer_Read[2 + 10 * write_unm], &Pass_init[0], 6);
|
|
break;
|
|
|
|
case 59:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.GpsDVol >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.GpsDVol;
|
|
break;
|
|
|
|
case 60:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.GpsDVolH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.GpsDVolH;
|
|
break;
|
|
|
|
case 61:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ShiduKaiguan;
|
|
break;
|
|
|
|
case 62:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ShiduValueNow;
|
|
break;
|
|
|
|
case 63:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ShiduValueProtect;
|
|
break;
|
|
|
|
case 64:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ShortCurValue;
|
|
break;
|
|
|
|
case 65:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.ShortCurDelay >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.ShortCurDelay;
|
|
break;
|
|
|
|
case 66:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.EnableSwitch >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.EnableSwitch;
|
|
break;
|
|
|
|
case 67:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellOUT2CURR_G >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellOUT2CURR_G;
|
|
break;
|
|
|
|
|
|
case 68:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellOUT2TIME_G >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellOUT2TIME_G;
|
|
break;
|
|
|
|
case 69:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellDRLBEEP_Jiao >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellDRLBEEP_Jiao;
|
|
break;
|
|
|
|
|
|
case 70:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AZvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AZvolG;
|
|
break;
|
|
case 71:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AZvolGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AZvolGH;
|
|
break;
|
|
case 72:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AZvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AZvolQ;
|
|
break;
|
|
case 73:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AZvolQH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AZvolQH;
|
|
break;
|
|
case 74:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ASingvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ASingvolG;
|
|
break;
|
|
case 75:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ASingvolGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ASingvolGH;
|
|
break;
|
|
case 76:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ASingvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ASingvolQ;
|
|
break;
|
|
case 77:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ASingvolQH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ASingvolQH;
|
|
break;
|
|
case 78:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ACellXyc >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ACellXyc;
|
|
break;
|
|
case 79:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ACellXycH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ACellXycH;
|
|
break;
|
|
case 80:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AOutcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AOutcurrG;
|
|
break;
|
|
case 81:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AOutcurrGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AOutcurrGH;
|
|
break;
|
|
case 82:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AChgcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AChgcurrG;
|
|
break;
|
|
case 83:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AChgcurrGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AChgcurrGH;
|
|
break;
|
|
case 84:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.APowTmp >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.APowTmp;
|
|
break;
|
|
case 85:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.APowTmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.APowTmpH;
|
|
break;
|
|
case 86:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AEqualtmp >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AEqualtmp;
|
|
break;
|
|
case 87:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AEqualtmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AEqualtmpH;
|
|
break;
|
|
case 88:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ACellTmp >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ACellTmp;
|
|
break;
|
|
case 89:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ACellTmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ACellTmpH;
|
|
break;
|
|
case 90:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ACellChgTmpG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ACellChgTmpG;
|
|
break;
|
|
case 91:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ACellChgTmpGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ACellChgTmpGH;
|
|
break;
|
|
case 92:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ACellOutTmpG >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ACellOutTmpG;
|
|
break;
|
|
case 93:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ACellOutTmpGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ACellOutTmpGH;
|
|
break;
|
|
case 94:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AChgTmpD >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AChgTmpD;
|
|
break;
|
|
case 95:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AChgTmpDH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AChgTmpDH;
|
|
break;
|
|
case 96:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AOutTmpD >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AOutTmpD;
|
|
break;
|
|
case 97:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.AOutTmpDH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.AOutTmpDH;
|
|
break;
|
|
case 98:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Ala_Data.ADRLNum2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Ala_Data.ADRLNum2;
|
|
break;
|
|
|
|
case 99:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.ZvolGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.ZvolGH;
|
|
break;
|
|
case 100:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.ZvolQH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.ZvolQH;
|
|
break;
|
|
case 101:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.SingvolG2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.SingvolG2;
|
|
break;
|
|
case 102:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.SingvolGH2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.SingvolGH2;
|
|
break;
|
|
case 103:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.SingvolGtime2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.SingvolGtime2;
|
|
break;
|
|
case 104:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.SingvolQ2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.SingvolQ2;
|
|
break;
|
|
case 105:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.SingvolQH2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.SingvolQH2;
|
|
break;
|
|
case 106:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.SingvolQtime2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.SingvolQtime2;
|
|
break;
|
|
case 107:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.CellXycH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.CellXycH;
|
|
break;
|
|
case 108:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.ChgcurrG2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.ChgcurrG2;
|
|
break;
|
|
case 109:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.ChgcurrGtime2 >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.ChgcurrGtime2;
|
|
break;
|
|
case 110:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Pt_Data.CellTmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Pt_Data.CellTmpH;
|
|
break;
|
|
|
|
case 111:
|
|
{
|
|
unsigned int int_data = 0;
|
|
int_data = *((unsigned int *)&Curr_Out_Res);
|
|
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(int_data >> 24);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)(int_data >> 16);
|
|
FontBuffer_Read[4 + 10 * write_unm] = (u8)(int_data >> 8);
|
|
FontBuffer_Read[5 + 10 * write_unm] = (u8) int_data;
|
|
}
|
|
break;
|
|
case 112:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (unsigned char)(Pt_Data.OutCurrJZ >> 24);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (unsigned char)(Pt_Data.OutCurrJZ >> 16);
|
|
FontBuffer_Read[4 + 10 * write_unm] = (unsigned char)(Pt_Data.OutCurrJZ >> 8);
|
|
FontBuffer_Read[5 + 10 * write_unm] = (unsigned char)Pt_Data.OutCurrJZ;
|
|
break;
|
|
|
|
case 113:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(Calendar.Year >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)Calendar.Year;
|
|
FontBuffer_Read[4 + 10 * write_unm] = Calendar.Month;
|
|
FontBuffer_Read[5 + 10 * write_unm] = Calendar.Date;
|
|
FontBuffer_Read[6 + 10 * write_unm] = Calendar.Hour;
|
|
FontBuffer_Read[7 + 10 * write_unm] = Calendar.Min;
|
|
FontBuffer_Read[8 + 10 * write_unm] = Calendar.Sec;
|
|
break;
|
|
|
|
case 114:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellChgTmpGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellChgTmpGH;
|
|
break;
|
|
case 115:
|
|
FontBuffer_Read[2 + 10 * write_unm] = (u8)(gps_data.RevWrite_data.CellOutTmpGH >> 8);
|
|
FontBuffer_Read[3 + 10 * write_unm] = (u8)gps_data.RevWrite_data.CellOutTmpGH;
|
|
break;
|
|
|
|
case 116:
|
|
FontBuffer_Read[2 + 10 * write_unm] = Err_Data.Prptection_Count;
|
|
break;
|
|
|
|
case 117:
|
|
FontBuffer_Read[2 + 10 * write_unm] = P_Sleep_Flg;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
FontBuffer_Read[0 + 10 * write_unm] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * write_unm] = 0x55;
|
|
|
|
IapProgram_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
}
|
|
|
|
|
|
void Flash_Write_Err_Flag(unsigned char write_unm)
|
|
{
|
|
u8 i,j;
|
|
|
|
FontBuffer_Read[0 + 10 * write_unm] = 0x33;
|
|
|
|
FontBuffer_Read[1 + 10 * write_unm] = Err_Data.Prptection_Num;
|
|
|
|
for(i=0;i<32;i++)
|
|
{
|
|
for(j=0;j<3;j++)
|
|
{
|
|
FontBuffer_Read[((i*3)+j+2) + 10 * write_unm] = gps_data.Rev_data.Singcellvol[i][j];
|
|
}
|
|
}
|
|
|
|
FontBuffer_Read[98 + 10 * write_unm] = (u8)(Bms_Dat_Dsg_Tmp >> 8);
|
|
FontBuffer_Read[99 + 10 * write_unm] = (u8)Bms_Dat_Dsg_Tmp;
|
|
|
|
FontBuffer_Read[100 + 10 * write_unm] = (u8)(Bms_Dat_Chg_Tmp >> 8);
|
|
FontBuffer_Read[101 + 10 * write_unm] = (u8)Bms_Dat_Chg_Tmp;
|
|
delay_ms(1);
|
|
|
|
FontBuffer_Read[102 + 10 * write_unm] = (u8)(gps_data.Rev_data.QualiTmp >> 8);
|
|
FontBuffer_Read[103 + 10 * write_unm] = (u8)gps_data.Rev_data.QualiTmp;
|
|
|
|
FontBuffer_Read[104 + 10 * write_unm] = (u8)(Bms_Dat_Cores_Tmp1 >> 8);
|
|
FontBuffer_Read[105 + 10 * write_unm] = (u8)Bms_Dat_Cores_Tmp1;
|
|
|
|
FontBuffer_Read[106 + 10 * write_unm] = (u8)(Bms_Dat_Cores_Tmp2 >> 8);
|
|
FontBuffer_Read[107 + 10 * write_unm] = (u8)Bms_Dat_Cores_Tmp2;
|
|
|
|
FontBuffer_Read[108 + 10 * write_unm] = 0x27;
|
|
FontBuffer_Read[109 + 10 * write_unm] = 0x0F;
|
|
|
|
FontBuffer_Read[110 + 10 * write_unm] = 0x27;
|
|
FontBuffer_Read[111 + 10 * write_unm] = 0x0F;
|
|
|
|
FontBuffer_Read[112 + 10 * write_unm] = 0x27;
|
|
FontBuffer_Read[113 + 10 * write_unm] = 0x0F;
|
|
|
|
FontBuffer_Read[114 + 10 * write_unm] = 0x27;
|
|
FontBuffer_Read[115 + 10 * write_unm] = 0x0F;
|
|
|
|
FontBuffer_Read[116 + 10 * write_unm] = 0x27;
|
|
FontBuffer_Read[117 + 10 * write_unm] = 0x0F;
|
|
|
|
FontBuffer_Read[118 + 10 * write_unm] = 0x27;
|
|
FontBuffer_Read[119 + 10 * write_unm] = 0x0F;
|
|
|
|
FontBuffer_Read[120 + 10 * write_unm] = (u8)(gps_data.Rev_data.CellZvol >> 8);
|
|
FontBuffer_Read[121 + 10 * write_unm] = (u8)gps_data.Rev_data.CellZvol;
|
|
|
|
FontBuffer_Read[122 + 10 * write_unm] = (u8)(gps_data.Rev_data.Currdata >> 8);
|
|
FontBuffer_Read[123 + 10 * write_unm] = (u8)gps_data.Rev_data.Currdata;
|
|
|
|
FontBuffer_Read[124 + 10 * write_unm] = gps_data.Rev_data.Soc;
|
|
|
|
FontBuffer_Read[125 + 10 * write_unm] = (u8)(Err_Data.Prptection1_Hdat >> 8);
|
|
FontBuffer_Read[126 + 10 * write_unm] = (u8)Err_Data.Prptection1_Hdat;
|
|
|
|
FontBuffer_Read[127 + 10 * write_unm] = (u8)(Err_Data.Prptection2_Hdat >> 8);
|
|
FontBuffer_Read[128 + 10 * write_unm] = (u8)Err_Data.Prptection2_Hdat;
|
|
|
|
FontBuffer_Read[129 + 10 * write_unm] = (u8)(Calendar.Year >> 8);
|
|
FontBuffer_Read[130 + 10 * write_unm] = (u8)Calendar.Year;
|
|
FontBuffer_Read[131 + 10 * write_unm] = Calendar.Month;
|
|
FontBuffer_Read[132 + 10 * write_unm] = Calendar.Date;
|
|
FontBuffer_Read[133 + 10 * write_unm] = Calendar.Hour;
|
|
FontBuffer_Read[134 + 10 * write_unm] = Calendar.Min;
|
|
FontBuffer_Read[135 + 10 * write_unm] = Calendar.Sec;
|
|
|
|
FontBuffer_Read[136 + 10 * write_unm] = 0x66;
|
|
|
|
IapProgram_num(FontBuffer_Read, (u32)0x08017800 + 1024 * Err_Data.Prptection_Num, 2000);
|
|
}
|
|
|
|
|
|
void Flash_Write_Err_Flag2(unsigned char write_unm)
|
|
{
|
|
u8 i,j;
|
|
|
|
FontBuffer_Read[0] = 0x33;
|
|
|
|
FontBuffer_Read[1] = write_unm;
|
|
|
|
for(i=0;i<32;i++)
|
|
{
|
|
for(j=0;j<3;j++)
|
|
{
|
|
FontBuffer_Read[((i*3)+j+2)] = gps_data.Rev_data.Singcellvol[i][j];
|
|
}
|
|
}
|
|
|
|
FontBuffer_Read[98] = (u8)(Bms_Dat_Dsg_Tmp >> 8);
|
|
FontBuffer_Read[99] = (u8)Bms_Dat_Dsg_Tmp;
|
|
|
|
FontBuffer_Read[100] = (u8)(Bms_Dat_Chg_Tmp >> 8);
|
|
FontBuffer_Read[101] = (u8)Bms_Dat_Chg_Tmp;
|
|
delay_ms(1);
|
|
|
|
FontBuffer_Read[102] = (u8)(gps_data.Rev_data.QualiTmp >> 8);
|
|
FontBuffer_Read[103] = (u8)gps_data.Rev_data.QualiTmp;
|
|
|
|
FontBuffer_Read[104] = (u8)(Bms_Dat_Cores_Tmp1 >> 8);
|
|
FontBuffer_Read[105] = (u8)Bms_Dat_Cores_Tmp1;
|
|
|
|
FontBuffer_Read[106] = (u8)(Bms_Dat_Cores_Tmp2 >> 8);
|
|
FontBuffer_Read[107] = (u8)Bms_Dat_Cores_Tmp2;
|
|
|
|
FontBuffer_Read[108] = 0x27;
|
|
FontBuffer_Read[109] = 0x0F;
|
|
|
|
FontBuffer_Read[110] = 0x27;
|
|
FontBuffer_Read[111] = 0x0F;
|
|
|
|
FontBuffer_Read[112] = 0x27;
|
|
FontBuffer_Read[113] = 0x0F;
|
|
|
|
FontBuffer_Read[114] = 0x27;
|
|
FontBuffer_Read[115] = 0x0F;
|
|
|
|
FontBuffer_Read[116] = 0x27;
|
|
FontBuffer_Read[117] = 0x0F;
|
|
|
|
FontBuffer_Read[118] = 0x27;
|
|
FontBuffer_Read[119] = 0x0F;
|
|
|
|
FontBuffer_Read[120] = (u8)(gps_data.Rev_data.CellZvol >> 8);
|
|
FontBuffer_Read[121] = (u8)gps_data.Rev_data.CellZvol;
|
|
|
|
FontBuffer_Read[122] = (u8)(gps_data.Rev_data.Currdata >> 8);
|
|
FontBuffer_Read[123] = (u8)gps_data.Rev_data.Currdata;
|
|
|
|
FontBuffer_Read[124] = gps_data.Rev_data.Soc;
|
|
|
|
FontBuffer_Read[125] = (u8)(Err_Data.Prptection1_Hdat >> 8);
|
|
FontBuffer_Read[126] = (u8)Err_Data.Prptection1_Hdat;
|
|
|
|
FontBuffer_Read[127] = (u8)(Err_Data.Prptection2_Hdat >> 8);
|
|
FontBuffer_Read[128] = (u8)Err_Data.Prptection2_Hdat;
|
|
|
|
FontBuffer_Read[129] = (u8)(Calendar.Year >> 8);
|
|
FontBuffer_Read[130] = (u8)Calendar.Year;
|
|
FontBuffer_Read[131] = Calendar.Month;
|
|
FontBuffer_Read[132] = Calendar.Date;
|
|
FontBuffer_Read[133] = Calendar.Hour;
|
|
FontBuffer_Read[134] = Calendar.Min;
|
|
FontBuffer_Read[135] = Calendar.Sec;
|
|
|
|
FontBuffer_Read[136] = 0x66;
|
|
|
|
IapProgram_num(FontBuffer_Read, ((u32)0x08017800 + 1024 * write_unm), 400);
|
|
}
|
|
|
|
void flash_write_sys_flag_ALL(void)
|
|
{
|
|
IapRead_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
|
|
FontBuffer_Read[0 + 10 * 10] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 10] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 10] = (u8)(gps_data.RevWrite_data.ZvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * 10] = (u8) gps_data.RevWrite_data.ZvolG;
|
|
|
|
FontBuffer_Read[0 + 10 * 11] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 11] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 11] = (u8)(gps_data.RevWrite_data.ZvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * 11] = (u8)gps_data.RevWrite_data.ZvolQ;
|
|
|
|
FontBuffer_Read[0 + 10 * 12] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 12] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 12] = (u8)(gps_data.RevWrite_data.SingvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * 12] = (u8)gps_data.RevWrite_data.SingvolG;
|
|
|
|
FontBuffer_Read[0 + 10 * 13] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 13] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 13] = (u8)(gps_data.RevWrite_data.SingvolGH >> 8);
|
|
FontBuffer_Read[3 + 10 * 13] = (u8)gps_data.RevWrite_data.SingvolGH;
|
|
|
|
FontBuffer_Read[0 + 10 * 14] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 14] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 14] = (u8)(gps_data.RevWrite_data.SingvolGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 14] = (u8)gps_data.RevWrite_data.SingvolGtime;
|
|
|
|
FontBuffer_Read[0 + 10 * 15] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 15] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 15] = (u8)(gps_data.RevWrite_data.SingvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * 15] = (u8)gps_data.RevWrite_data.SingvolQ;
|
|
|
|
FontBuffer_Read[0 + 10 * 16] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 16] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 16] = (u8)(gps_data.RevWrite_data.SingvolQH >> 8);
|
|
FontBuffer_Read[3 + 10 * 16] = (u8)gps_data.RevWrite_data.SingvolQH;
|
|
|
|
FontBuffer_Read[0 + 10 * 17] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 17] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 17] = (u8)(gps_data.RevWrite_data.SingvolQtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 17] = (u8)gps_data.RevWrite_data.SingvolQtime;
|
|
|
|
FontBuffer_Read[0 + 10 * 18] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 18] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 18] = (u8)(gps_data.RevWrite_data.CellXyc >> 8);
|
|
FontBuffer_Read[3 + 10 * 18] = (u8)gps_data.RevWrite_data.CellXyc;
|
|
|
|
FontBuffer_Read[0 + 10 * 19] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 19] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 19] = (u8)(gps_data.RevWrite_data.OutcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * 19] = (u8)gps_data.RevWrite_data.OutcurrG;
|
|
|
|
FontBuffer_Read[0 + 10 * 20] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 20] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 20] = (u8)(gps_data.RevWrite_data.OutcurrGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 20] = (u8)gps_data.RevWrite_data.OutcurrGtime;
|
|
|
|
FontBuffer_Read[0 + 10 * 21] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 21] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 21] = (u8)(gps_data.RevWrite_data.ChgcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * 21] = (u8)gps_data.RevWrite_data.ChgcurrG;
|
|
|
|
FontBuffer_Read[0 + 10 * 22] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 22] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 22] = (u8)(gps_data.RevWrite_data.ChgcurrGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 22] = (u8)gps_data.RevWrite_data.ChgcurrGtime;
|
|
|
|
FontBuffer_Read[0 + 10 * 23] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 23] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 23] = (u8)(gps_data.RevWrite_data.Equalivol >> 8);
|
|
FontBuffer_Read[3 + 10 * 23] = (u8)gps_data.RevWrite_data.Equalivol;
|
|
|
|
FontBuffer_Read[0 + 10 * 24] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 24] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 24] = (u8)(gps_data.RevWrite_data.Equalivolcc >> 8);
|
|
FontBuffer_Read[3 + 10 * 24] = (u8)gps_data.RevWrite_data.Equalivolcc;
|
|
|
|
FontBuffer_Read[0 + 10 * 25] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 25] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 25] = gps_data.RevWrite_data.EqualiON;
|
|
|
|
FontBuffer_Read[0 + 10 * 26] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 26] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 26] = (u8)(gps_data.RevWrite_data.PowTmp >> 8);
|
|
FontBuffer_Read[3 + 10 * 26] = (u8)gps_data.RevWrite_data.PowTmp;
|
|
|
|
FontBuffer_Read[0 + 10 * 27] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 27] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 27] = (u8)(gps_data.RevWrite_data.PowTmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * 27] = (u8)gps_data.RevWrite_data.PowTmpH;
|
|
|
|
FontBuffer_Read[0 + 10 * 28] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 28] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 28] = (u8)(gps_data.RevWrite_data.Equaltmpb >> 8);
|
|
FontBuffer_Read[3 + 10 * 28] = (u8)gps_data.RevWrite_data.Equaltmpb;
|
|
|
|
FontBuffer_Read[0 + 10 * 29] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 29] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 29] = (u8)(gps_data.RevWrite_data.EqualtmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * 29] = (u8)gps_data.RevWrite_data.EqualtmpH;
|
|
|
|
FontBuffer_Read[0 + 10 * 30] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 30] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 30] = (u8)(gps_data.RevWrite_data.CellTmp >> 8);
|
|
FontBuffer_Read[3 + 10 * 30] = (u8)gps_data.RevWrite_data.CellTmp;
|
|
|
|
FontBuffer_Read[0 + 10 * 31] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 31] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 31] = (u8)(gps_data.RevWrite_data.CellChgTmpG >> 8);
|
|
FontBuffer_Read[3 + 10 * 31] = (u8)gps_data.RevWrite_data.CellChgTmpG;
|
|
|
|
FontBuffer_Read[0 + 10 * 32] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 32] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 32] = (u8)(gps_data.RevWrite_data.CellOutTmpG >> 8);
|
|
FontBuffer_Read[3 + 10 * 32] = (u8)gps_data.RevWrite_data.CellOutTmpG;
|
|
|
|
FontBuffer_Read[0 + 10 * 33] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 33] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 33] = (u8)(gps_data.RevWrite_data.ChgTmpD >> 8);
|
|
FontBuffer_Read[3 + 10 * 33] = (u8)gps_data.RevWrite_data.ChgTmpD;
|
|
|
|
FontBuffer_Read[0 + 10 * 34] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 34] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 34] = (u8)(gps_data.RevWrite_data.ChgTmpDH >> 8);
|
|
FontBuffer_Read[3 + 10 * 34] = (u8)gps_data.RevWrite_data.ChgTmpDH;
|
|
|
|
FontBuffer_Read[0 + 10 * 35] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 35] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 35] = (u8)(gps_data.RevWrite_data.OutTmpD >> 8);
|
|
FontBuffer_Read[3 + 10 * 35] = (u8)gps_data.RevWrite_data.OutTmpD;
|
|
|
|
FontBuffer_Read[0 + 10 * 36] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 36] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 36] = (u8)(gps_data.RevWrite_data.OutTmpDH >> 8);
|
|
FontBuffer_Read[3 + 10 * 36] = (u8)gps_data.RevWrite_data.OutTmpDH;
|
|
|
|
FontBuffer_Read[0 + 10 * 37] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 37] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 37] = (u8)gps_data.RevWrite_data.Cellnum;
|
|
|
|
FontBuffer_Read[0 + 10 * 38] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 38] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 38] = (u8)(gps_data.RevWrite_data.CellRl >> 24);
|
|
FontBuffer_Read[3 + 10 * 38] = (u8)(gps_data.RevWrite_data.CellRl >> 16);
|
|
FontBuffer_Read[4 + 10 * 38] = (u8)(gps_data.RevWrite_data.CellRl >> 8);
|
|
FontBuffer_Read[5 + 10 * 38] = (u8) gps_data.RevWrite_data.CellRl;
|
|
|
|
FontBuffer_Read[0 + 10 * 39] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 39] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 39] = (u8)Chg_Lock;
|
|
|
|
FontBuffer_Read[0 + 10 * 40] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 40] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 40] = (u8)Out_Lock;
|
|
|
|
FontBuffer_Read[0 + 10 * 41] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 41] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 41] = (u8)(gps_data.RevWrite_data.CurrJZ >> 8);
|
|
FontBuffer_Read[3 + 10 * 41] = (u8)gps_data.RevWrite_data.CurrJZ;
|
|
|
|
FontBuffer_Read[0 + 10 * 42] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 42] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 42] = (u8)gps_data.RevWrite_data.BHBAddr;
|
|
|
|
FontBuffer_Read[0 + 10 * 43] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 43] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 43] = (u8)gps_data.RevWrite_data.Celltype;
|
|
|
|
FontBuffer_Read[0 + 10 * 44] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 44] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 44] = (u8)(gps_data.RevWrite_data.SleepTime >> 8);
|
|
FontBuffer_Read[3 + 10 * 44] = (u8)gps_data.RevWrite_data.SleepTime;
|
|
|
|
FontBuffer_Read[0 + 10 * 45] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 45] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 45] = gps_data.RevWrite_data.DRLNum;
|
|
|
|
FontBuffer_Read[0 + 10 * 46] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 46] = 0x55;
|
|
memcpy(&FontBuffer_Read[2 + 10 * 46], gps_data.RevWrite_data.Pass, 8);
|
|
|
|
FontBuffer_Read[0 + 10 * 47] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 47] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 47] = (u8)gps_data.RevWrite_data.ZChgON;
|
|
|
|
FontBuffer_Read[0 + 10 * 48] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 48] = 0x55;
|
|
memcpy(&FontBuffer_Read[2 + 10 * 48], gps_data.RevWrite_data.EquID, 8);
|
|
|
|
FontBuffer_Read[0 + 10 * 49] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 49] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 49] = gps_data.RevWrite_data.CCDat[0];
|
|
FontBuffer_Read[3 + 10 * 49] = gps_data.RevWrite_data.CCDat[1];
|
|
FontBuffer_Read[4 + 10 * 49] = gps_data.RevWrite_data.CCDat[2];
|
|
FontBuffer_Read[5 + 10 * 49] = gps_data.RevWrite_data.CCDat[3];
|
|
|
|
FontBuffer_Read[0 + 10 * 50] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 50] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 50] = (u8)(gps_data.RevWrite_data.SysTime >> 24);
|
|
FontBuffer_Read[3 + 10 * 50] = (u8)(gps_data.RevWrite_data.SysTime >> 16);
|
|
FontBuffer_Read[4 + 10 * 50] = (u8)(gps_data.RevWrite_data.SysTime >> 8);
|
|
FontBuffer_Read[5 + 10 * 50] = (u8) gps_data.RevWrite_data.SysTime;
|
|
|
|
FontBuffer_Read[0 + 10 * 52] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 52] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 52] = (u8)(gps_data.RevWrite_data.Reali_Q >> 24);
|
|
FontBuffer_Read[3 + 10 * 52] = (u8)(gps_data.RevWrite_data.Reali_Q >> 16);
|
|
FontBuffer_Read[4 + 10 * 52] = (u8)(gps_data.RevWrite_data.Reali_Q >> 8);
|
|
FontBuffer_Read[5 + 10 * 52] = (u8) gps_data.RevWrite_data.Reali_Q;
|
|
|
|
FontBuffer_Read[0 + 10 * 53] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 53] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 53] = gps_data.RevWrite_data.XID[0];
|
|
FontBuffer_Read[3 + 10 * 53] = gps_data.RevWrite_data.XID[1];
|
|
FontBuffer_Read[4 + 10 * 53] = gps_data.RevWrite_data.XID[2];
|
|
FontBuffer_Read[5 + 10 * 53] = gps_data.RevWrite_data.XID[3];
|
|
FontBuffer_Read[6 + 10 * 53] = gps_data.RevWrite_data.XID[4];
|
|
FontBuffer_Read[7 + 10 * 53] = gps_data.RevWrite_data.XID[5];
|
|
FontBuffer_Read[8 + 10 * 53] = gps_data.RevWrite_data.XID[6];
|
|
FontBuffer_Read[9 + 10 * 53] = gps_data.RevWrite_data.XID[7];
|
|
|
|
|
|
FontBuffer_Read[0 + 10 * 54] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 54] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 54] = gps_data.RevWrite_data.XID[8];
|
|
FontBuffer_Read[3 + 10 * 54] = gps_data.RevWrite_data.XID[9];
|
|
FontBuffer_Read[4 + 10 * 54] = gps_data.RevWrite_data.XID[10];
|
|
FontBuffer_Read[5 + 10 * 54] = gps_data.RevWrite_data.XID[11];
|
|
FontBuffer_Read[6 + 10 * 54] = gps_data.RevWrite_data.XID[12];
|
|
FontBuffer_Read[7 + 10 * 54] = gps_data.RevWrite_data.XID[13];
|
|
FontBuffer_Read[8 + 10 * 54] = gps_data.RevWrite_data.XID[14];
|
|
|
|
FontBuffer_Read[0 + 10 * 55] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 55] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 55] = gps_data.RevWrite_data.XID[15];
|
|
FontBuffer_Read[3 + 10 * 55] = gps_data.RevWrite_data.XID[16];
|
|
FontBuffer_Read[4 + 10 * 55] = gps_data.RevWrite_data.XID[17];
|
|
FontBuffer_Read[5 + 10 * 55] = gps_data.RevWrite_data.XID[18];
|
|
FontBuffer_Read[6 + 10 * 55] = gps_data.RevWrite_data.XID[19];
|
|
FontBuffer_Read[7 + 10 * 55] = gps_data.RevWrite_data.XID[20];
|
|
|
|
FontBuffer_Read[0 + 10 * 59] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 59] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 59] = (u8)(gps_data.RevWrite_data.GpsDVol >> 8);
|
|
FontBuffer_Read[3 + 10 * 59] = (u8)gps_data.RevWrite_data.GpsDVol;
|
|
|
|
FontBuffer_Read[0 + 10 * 60] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 60] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 60] = (u8)(gps_data.RevWrite_data.GpsDVolH >> 8);
|
|
FontBuffer_Read[3 + 10 * 60] = (u8)gps_data.RevWrite_data.GpsDVolH;
|
|
|
|
FontBuffer_Read[0 + 10 * 56] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 56] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 56] = gps_data.RevWrite_data.XID[21];
|
|
FontBuffer_Read[3 + 10 * 56] = gps_data.RevWrite_data.XID[22];
|
|
FontBuffer_Read[4 + 10 * 56] = gps_data.RevWrite_data.XID[23];
|
|
|
|
FontBuffer_Read[0 + 10 * 61] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 61] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 61] = (u8)gps_data.RevWrite_data.ShiduKaiguan;
|
|
|
|
FontBuffer_Read[0 + 10 * 62] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 62] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 62] = (u8)gps_data.RevWrite_data.ShiduValueNow;
|
|
|
|
FontBuffer_Read[0 + 10 * 63] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 63] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 63] = (u8)gps_data.RevWrite_data.ShiduValueProtect;
|
|
|
|
FontBuffer_Read[0 + 10 * 64] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 64] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 64] = (u8)gps_data.RevWrite_data.ShortCurValue;
|
|
|
|
FontBuffer_Read[0 + 10 * 65] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 65] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 65] = (u8)(gps_data.RevWrite_data.ShortCurDelay >> 8);
|
|
FontBuffer_Read[3 + 10 * 65] = (u8)gps_data.RevWrite_data.ShortCurDelay;
|
|
|
|
FontBuffer_Read[0 + 10 * 66] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 66] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 66] = (u8)(gps_data.RevWrite_data.EnableSwitch >> 8);
|
|
FontBuffer_Read[3 + 10 * 66] = (u8)gps_data.RevWrite_data.EnableSwitch;
|
|
|
|
FontBuffer_Read[0 + 10 * 67] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 67] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 67] = (u8)(gps_data.RevWrite_data.CellOUT2CURR_G >> 8);
|
|
FontBuffer_Read[3 + 10 * 67] = (u8)gps_data.RevWrite_data.CellOUT2CURR_G;
|
|
|
|
FontBuffer_Read[0 + 10 * 68] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 68] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 68] = (u8)(gps_data.RevWrite_data.CellOUT2TIME_G >> 8);
|
|
FontBuffer_Read[3 + 10 * 68] = (u8)gps_data.RevWrite_data.CellOUT2TIME_G;
|
|
|
|
FontBuffer_Read[0 + 10 * 69] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 69] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 69] = (u8)(gps_data.RevWrite_data.CellDRLBEEP_Jiao >> 8);
|
|
FontBuffer_Read[3 + 10 * 69] = (u8)gps_data.RevWrite_data.CellDRLBEEP_Jiao;
|
|
|
|
IapProgram_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
|
|
}
|
|
|
|
void flash_write_sys_flag_Init(void)
|
|
{
|
|
IapRead_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
|
|
FontBuffer_Read[0 + 10 * 12] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 12] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 12] = (u8)(gps_data.RevWrite_data.SingvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * 12] = (u8)gps_data.RevWrite_data.SingvolG;
|
|
|
|
FontBuffer_Read[0 + 10 * 13] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 13] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 13] = (u8)(gps_data.RevWrite_data.SingvolGH >> 8);
|
|
FontBuffer_Read[3 + 10 * 13] = (u8)gps_data.RevWrite_data.SingvolGH;
|
|
|
|
FontBuffer_Read[0 + 10 * 14] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 14] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 14] = (u8)(gps_data.RevWrite_data.SingvolGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 14] = (u8)gps_data.RevWrite_data.SingvolGtime;
|
|
|
|
FontBuffer_Read[0 + 10 * 15] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 15] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 15] = (u8)(gps_data.RevWrite_data.SingvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * 15] = (u8)gps_data.RevWrite_data.SingvolQ;
|
|
|
|
FontBuffer_Read[0 + 10 * 16] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 16] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 16] = (u8)(gps_data.RevWrite_data.SingvolQH >> 8);
|
|
FontBuffer_Read[3 + 10 * 16] = (u8)gps_data.RevWrite_data.SingvolQH;
|
|
|
|
FontBuffer_Read[0 + 10 * 17] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 17] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 17] = (u8)(gps_data.RevWrite_data.SingvolQtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 17] = (u8)gps_data.RevWrite_data.SingvolQtime;
|
|
|
|
FontBuffer_Read[0 + 10 * 18] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 18] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 18] = (u8)(gps_data.RevWrite_data.CellXyc >> 8);
|
|
FontBuffer_Read[3 + 10 * 18] = (u8)gps_data.RevWrite_data.CellXyc;
|
|
|
|
FontBuffer_Read[0 + 10 * 19] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 19] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 19] = (u8)(gps_data.RevWrite_data.OutcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * 19] = (u8)gps_data.RevWrite_data.OutcurrG;
|
|
|
|
FontBuffer_Read[0 + 10 * 20] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 20] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 20] = (u8)(gps_data.RevWrite_data.OutcurrGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 20] = (u8)gps_data.RevWrite_data.OutcurrGtime;
|
|
|
|
FontBuffer_Read[0 + 10 * 21] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 21] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 21] = (u8)(gps_data.RevWrite_data.ChgcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * 21] = (u8)gps_data.RevWrite_data.ChgcurrG;
|
|
|
|
FontBuffer_Read[0 + 10 * 22] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 22] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 22] = (u8)(gps_data.RevWrite_data.ChgcurrGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 22] = (u8)gps_data.RevWrite_data.ChgcurrGtime;
|
|
|
|
FontBuffer_Read[0 + 10 * 23] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 23] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 23] = (u8)(gps_data.RevWrite_data.Equalivol >> 8);
|
|
FontBuffer_Read[3 + 10 * 23] = (u8)gps_data.RevWrite_data.Equalivol;
|
|
|
|
FontBuffer_Read[0 + 10 * 24] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 24] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 24] = (u8)(gps_data.RevWrite_data.Equalivolcc >> 8);
|
|
FontBuffer_Read[3 + 10 * 24] = (u8)gps_data.RevWrite_data.Equalivolcc;
|
|
|
|
IapProgram_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
}
|
|
|
|
void flash_write_sys_flag_Zvol(void)
|
|
{
|
|
IapRead_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
|
|
FontBuffer_Read[0 + 10 * 10] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 10] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 10] = (u8)(gps_data.RevWrite_data.ZvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * 10] = (u8) gps_data.RevWrite_data.ZvolG;
|
|
|
|
FontBuffer_Read[0 + 10 * 11] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 11] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 11] = (u8)(gps_data.RevWrite_data.ZvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * 11] = (u8)gps_data.RevWrite_data.ZvolQ;
|
|
|
|
IapProgram_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
|
|
}
|
|
|
|
void flash_write_sys_flag_ALL_Init(void)
|
|
{
|
|
unsigned int int_data = 0;
|
|
|
|
IapRead_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
|
|
Cell_usnum = 0;
|
|
FontBuffer_Read[0 + 10 * 1] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 1] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 1] = (u8)(Cell_usnum >> 8);
|
|
FontBuffer_Read[3 + 10 * 1] = (u8) Cell_usnum;
|
|
|
|
Cell_Outrl = 0;
|
|
gps_data.Rev_data.CellOutrl = 0;
|
|
FontBuffer_Read[0 + 10 * 2] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 2] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 2] = (u8)(gps_data.Rev_data.CellOutrl >> 24);
|
|
FontBuffer_Read[3 + 10 * 2] = (u8)(gps_data.Rev_data.CellOutrl >> 16);
|
|
FontBuffer_Read[4 + 10 * 2] = (u8)(gps_data.Rev_data.CellOutrl >> 8);
|
|
FontBuffer_Read[5 + 10 * 2] = (u8) gps_data.Rev_data.CellOutrl;
|
|
|
|
gps_data.RevWrite_data.SingvolG = 4200;
|
|
FontBuffer_Read[0 + 10 * 12] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 12] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 12] = (u8)(gps_data.RevWrite_data.SingvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * 12] = (u8)gps_data.RevWrite_data.SingvolG;
|
|
|
|
gps_data.RevWrite_data.SingvolGH = 4100;
|
|
FontBuffer_Read[0 + 10 * 13] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 13] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 13] = (u8)(gps_data.RevWrite_data.SingvolGH >> 8);
|
|
FontBuffer_Read[3 + 10 * 13] = (u8)gps_data.RevWrite_data.SingvolGH;
|
|
|
|
gps_data.RevWrite_data.SingvolGtime = 4;
|
|
FontBuffer_Read[0 + 10 * 14] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 14] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 14] = (u8)(gps_data.RevWrite_data.SingvolGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 14] = (u8)gps_data.RevWrite_data.SingvolGtime;
|
|
|
|
gps_data.RevWrite_data.SingvolQ = 2800;
|
|
FontBuffer_Read[0 + 10 * 15] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 15] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 15] = (u8)(gps_data.RevWrite_data.SingvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * 15] = (u8)gps_data.RevWrite_data.SingvolQ;
|
|
|
|
gps_data.RevWrite_data.SingvolQH = 2900;
|
|
FontBuffer_Read[0 + 10 * 16] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 16] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 16] = (u8)(gps_data.RevWrite_data.SingvolQH >> 8);
|
|
FontBuffer_Read[3 + 10 * 16] = (u8)gps_data.RevWrite_data.SingvolQH;
|
|
|
|
gps_data.RevWrite_data.SingvolQtime = 4;
|
|
FontBuffer_Read[0 + 10 * 17] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 17] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 17] = (u8)(gps_data.RevWrite_data.SingvolQtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 17] = (u8)gps_data.RevWrite_data.SingvolQtime;
|
|
|
|
gps_data.RevWrite_data.CellXyc = 1000;
|
|
FontBuffer_Read[0 + 10 * 18] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 18] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 18] = (u8)(gps_data.RevWrite_data.CellXyc >> 8);
|
|
FontBuffer_Read[3 + 10 * 18] = (u8)gps_data.RevWrite_data.CellXyc;
|
|
|
|
gps_data.RevWrite_data.OutcurrG = 60;
|
|
FontBuffer_Read[0 + 10 * 19] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 19] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 19] = (u8)(gps_data.RevWrite_data.OutcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * 19] = (u8)gps_data.RevWrite_data.OutcurrG;
|
|
|
|
gps_data.RevWrite_data.OutcurrGtime = 60;
|
|
FontBuffer_Read[0 + 10 * 20] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 20] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 20] = (u8)(gps_data.RevWrite_data.OutcurrGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 20] = (u8)gps_data.RevWrite_data.OutcurrGtime;
|
|
|
|
gps_data.RevWrite_data.ChgcurrG = 20;
|
|
FontBuffer_Read[0 + 10 * 21] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 21] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 21] = (u8)(gps_data.RevWrite_data.ChgcurrG >> 8);
|
|
FontBuffer_Read[3 + 10 * 21] = (u8)gps_data.RevWrite_data.ChgcurrG;
|
|
|
|
gps_data.RevWrite_data.ChgcurrGtime = 64;
|
|
FontBuffer_Read[0 + 10 * 22] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 22] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 22] = (u8)(gps_data.RevWrite_data.ChgcurrGtime >> 8);
|
|
FontBuffer_Read[3 + 10 * 22] = (u8)gps_data.RevWrite_data.ChgcurrGtime;
|
|
|
|
gps_data.RevWrite_data.Equalivol = 4000;
|
|
FontBuffer_Read[0 + 10 * 23] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 23] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 23] = (u8)(gps_data.RevWrite_data.Equalivol >> 8);
|
|
FontBuffer_Read[3 + 10 * 23] = (u8)gps_data.RevWrite_data.Equalivol;
|
|
|
|
gps_data.RevWrite_data.Equalivolcc = 10;
|
|
FontBuffer_Read[0 + 10 * 24] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 24] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 24] = (u8)(gps_data.RevWrite_data.Equalivolcc >> 8);
|
|
FontBuffer_Read[3 + 10 * 24] = (u8)gps_data.RevWrite_data.Equalivolcc;
|
|
|
|
gps_data.RevWrite_data.EqualiON = 1;
|
|
FontBuffer_Read[0 + 10 * 25] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 25] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 25] = gps_data.RevWrite_data.EqualiON;
|
|
|
|
gps_data.RevWrite_data.PowTmp = 75;
|
|
FontBuffer_Read[0 + 10 * 26] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 26] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 26] = (u8)(gps_data.RevWrite_data.PowTmp >> 8);
|
|
FontBuffer_Read[3 + 10 * 26] = (u8)gps_data.RevWrite_data.PowTmp;
|
|
|
|
gps_data.RevWrite_data.PowTmpH = 60;
|
|
FontBuffer_Read[0 + 10 * 27] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 27] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 27] = (u8)(gps_data.RevWrite_data.PowTmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * 27] = (u8)gps_data.RevWrite_data.PowTmpH;
|
|
|
|
gps_data.RevWrite_data.Equaltmpb = 65;
|
|
FontBuffer_Read[0 + 10 * 28] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 28] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 28] = (u8)(gps_data.RevWrite_data.Equaltmpb >> 8);
|
|
FontBuffer_Read[3 + 10 * 28] = (u8)gps_data.RevWrite_data.Equaltmpb;
|
|
|
|
gps_data.RevWrite_data.EqualtmpH = 55;
|
|
FontBuffer_Read[0 + 10 * 29] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 29] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 29] = (u8)(gps_data.RevWrite_data.EqualtmpH >> 8);
|
|
FontBuffer_Read[3 + 10 * 29] = (u8)gps_data.RevWrite_data.EqualtmpH;
|
|
|
|
gps_data.RevWrite_data.CellTmp = 20;
|
|
FontBuffer_Read[0 + 10 * 30] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 30] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 30] = (u8)(gps_data.RevWrite_data.CellTmp >> 8);
|
|
FontBuffer_Read[3 + 10 * 30] = (u8)gps_data.RevWrite_data.CellTmp;
|
|
|
|
gps_data.RevWrite_data.CellChgTmpG = 65;
|
|
gps_data.RevWrite_data.CellChgTmpGH = gps_data.RevWrite_data.CellChgTmpG - 10;
|
|
FontBuffer_Read[0 + 10 * 31] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 31] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 31] = (u8)(gps_data.RevWrite_data.CellChgTmpG >> 8);
|
|
FontBuffer_Read[3 + 10 * 31] = (u8)gps_data.RevWrite_data.CellChgTmpG;
|
|
|
|
gps_data.RevWrite_data.CellOutTmpG = 65;
|
|
gps_data.RevWrite_data.CellOutTmpGH = gps_data.RevWrite_data.CellOutTmpG - 10;
|
|
FontBuffer_Read[0 + 10 * 32] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 32] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 32] = (u8)(gps_data.RevWrite_data.CellOutTmpG >> 8);
|
|
FontBuffer_Read[3 + 10 * 32] = (u8)gps_data.RevWrite_data.CellOutTmpG;
|
|
|
|
gps_data.RevWrite_data.ChgTmpD = -40;
|
|
FontBuffer_Read[0 + 10 * 33] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 33] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 33] = (u8)(gps_data.RevWrite_data.ChgTmpD >> 8);
|
|
FontBuffer_Read[3 + 10 * 33] = (u8)gps_data.RevWrite_data.ChgTmpD;
|
|
|
|
gps_data.RevWrite_data.ChgTmpDH = -35;
|
|
FontBuffer_Read[0 + 10 * 34] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 34] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 34] = (u8)(gps_data.RevWrite_data.ChgTmpDH >> 8);
|
|
FontBuffer_Read[3 + 10 * 34] = (u8)gps_data.RevWrite_data.ChgTmpDH;
|
|
|
|
gps_data.RevWrite_data.OutTmpD = -40;
|
|
FontBuffer_Read[0 + 10 * 35] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 35] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 35] = (u8)(gps_data.RevWrite_data.OutTmpD >> 8);
|
|
FontBuffer_Read[3 + 10 * 35] = (u8)gps_data.RevWrite_data.OutTmpD;
|
|
|
|
gps_data.RevWrite_data.OutTmpDH = -35;
|
|
FontBuffer_Read[0 + 10 * 36] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 36] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 36] = (u8)(gps_data.RevWrite_data.OutTmpDH >> 8);
|
|
FontBuffer_Read[3 + 10 * 36] = (u8)gps_data.RevWrite_data.OutTmpDH;
|
|
|
|
gps_data.RevWrite_data.Cellnum = 16;
|
|
FontBuffer_Read[0 + 10 * 37] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 37] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 37] = (u8)gps_data.RevWrite_data.Cellnum;
|
|
|
|
gps_data.RevWrite_data.ZvolG = gps_data.RevWrite_data.SingvolG / 10.0 * gps_data.RevWrite_data.Cellnum;
|
|
FontBuffer_Read[0 + 10 * 10] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 10] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 10] = (u8)(gps_data.RevWrite_data.ZvolG >> 8);
|
|
FontBuffer_Read[3 + 10 * 10] = (u8) gps_data.RevWrite_data.ZvolG;
|
|
|
|
gps_data.RevWrite_data.ZvolQ = gps_data.RevWrite_data.SingvolQ / 10.0 * gps_data.RevWrite_data.Cellnum;
|
|
FontBuffer_Read[0 + 10 * 11] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 11] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 11] = (u8)(gps_data.RevWrite_data.ZvolQ >> 8);
|
|
FontBuffer_Read[3 + 10 * 11] = (u8)gps_data.RevWrite_data.ZvolQ;
|
|
|
|
gps_data.RevWrite_data.CellRl = 40;
|
|
FontBuffer_Read[0 + 10 * 38] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 38] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 38] = (u8)(gps_data.RevWrite_data.CellRl >> 24);
|
|
FontBuffer_Read[3 + 10 * 38] = (u8)(gps_data.RevWrite_data.CellRl >> 16);
|
|
FontBuffer_Read[4 + 10 * 38] = (u8)(gps_data.RevWrite_data.CellRl >> 8);
|
|
FontBuffer_Read[5 + 10 * 38] = (u8) gps_data.RevWrite_data.CellRl;
|
|
|
|
Chg_Lock = 0;
|
|
FontBuffer_Read[0 + 10 * 39] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 39] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 39] = (u8)Chg_Lock;
|
|
|
|
Out_Lock = 0;
|
|
FontBuffer_Read[0 + 10 * 40] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 40] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 40] = (u8)Out_Lock;
|
|
|
|
gps_data.RevWrite_data.CurrJZ = 10000;
|
|
FontBuffer_Read[0 + 10 * 41] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 41] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 41] = (u8)(gps_data.RevWrite_data.CurrJZ >> 8);
|
|
FontBuffer_Read[3 + 10 * 41] = (u8)gps_data.RevWrite_data.CurrJZ;
|
|
|
|
gps_data.RevWrite_data.BHBAddr = 1;
|
|
FontBuffer_Read[0 + 10 * 42] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 42] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 42] = (u8)gps_data.RevWrite_data.BHBAddr;
|
|
|
|
gps_data.RevWrite_data.Celltype = 1;
|
|
FontBuffer_Read[0 + 10 * 43] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 43] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 43] = (u8)gps_data.RevWrite_data.Celltype;
|
|
|
|
gps_data.RevWrite_data.SleepTime = 15;
|
|
FontBuffer_Read[0 + 10 * 44] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 44] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 44] = (u8)(gps_data.RevWrite_data.SleepTime >> 8);
|
|
FontBuffer_Read[3 + 10 * 44] = (u8)gps_data.RevWrite_data.SleepTime;
|
|
|
|
gps_data.RevWrite_data.DRLNum = 10;
|
|
FontBuffer_Read[0 + 10 * 45] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 45] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 45] = gps_data.RevWrite_data.DRLNum;
|
|
|
|
memset(gps_data.RevWrite_data.Pass, 0, 8);
|
|
FontBuffer_Read[0 + 10 * 46] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 46] = 0x55;
|
|
memcpy(&FontBuffer_Read[2 + 10 * 46], gps_data.RevWrite_data.Pass, 8);
|
|
|
|
gps_data.RevWrite_data.ZChgON = 0;
|
|
FontBuffer_Read[0 + 10 * 47] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 47] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 47] = (u8)gps_data.RevWrite_data.ZChgON;
|
|
|
|
memcpy(gps_data.RevWrite_data.EquID, &databuf[2], 3);
|
|
memcpy(&gps_data.RevWrite_data.EquID[3], &databuf[9], 5);
|
|
FontBuffer_Read[0 + 10 * 48] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 48] = 0x55;
|
|
memcpy(&FontBuffer_Read[2 + 10 * 48], gps_data.RevWrite_data.EquID, 8);
|
|
|
|
memcpy(gps_data.RevWrite_data.CCDat, &databuf[5], 4);
|
|
FontBuffer_Read[0 + 10 * 49] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 49] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 49] = gps_data.RevWrite_data.CCDat[0];
|
|
FontBuffer_Read[3 + 10 * 49] = gps_data.RevWrite_data.CCDat[1];
|
|
FontBuffer_Read[4 + 10 * 49] = gps_data.RevWrite_data.CCDat[2];
|
|
FontBuffer_Read[5 + 10 * 49] = gps_data.RevWrite_data.CCDat[3];
|
|
|
|
gps_data.RevWrite_data.SysTime = 0;
|
|
FontBuffer_Read[0 + 10 * 50] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 50] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 50] = (u8)(gps_data.RevWrite_data.SysTime >> 24);
|
|
FontBuffer_Read[3 + 10 * 50] = (u8)(gps_data.RevWrite_data.SysTime >> 16);
|
|
FontBuffer_Read[4 + 10 * 50] = (u8)(gps_data.RevWrite_data.SysTime >> 8);
|
|
FontBuffer_Read[5 + 10 * 50] = (u8) gps_data.RevWrite_data.SysTime;
|
|
|
|
Curr_Res = 0.000462;
|
|
int_data = *((unsigned int *)&Curr_Res);
|
|
FontBuffer_Read[2 + 10 * 51] = (u8)(int_data >> 24);
|
|
FontBuffer_Read[3 + 10 * 51] = (u8)(int_data >> 16);
|
|
FontBuffer_Read[4 + 10 * 51] = (u8)(int_data >> 8);
|
|
FontBuffer_Read[5 + 10 * 51] = (u8) int_data;
|
|
|
|
gps_data.RevWrite_data.Reali_Q = gps_data.RevWrite_data.CellRl;
|
|
FontBuffer_Read[0 + 10 * 52] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 52] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 52] = (u8)(gps_data.RevWrite_data.Reali_Q >> 24);
|
|
FontBuffer_Read[3 + 10 * 52] = (u8)(gps_data.RevWrite_data.Reali_Q >> 16);
|
|
FontBuffer_Read[4 + 10 * 52] = (u8)(gps_data.RevWrite_data.Reali_Q >> 8);
|
|
FontBuffer_Read[5 + 10 * 52] = (u8) gps_data.RevWrite_data.Reali_Q;
|
|
|
|
|
|
memcpy(&gps_data.RevWrite_data.XID[0], &dataxingaobuf[0], 9);
|
|
FontBuffer_Read[0 + 10 * 53] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 53] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 53] = gps_data.RevWrite_data.XID[2];
|
|
FontBuffer_Read[3 + 10 * 53] = gps_data.RevWrite_data.XID[3];
|
|
FontBuffer_Read[4 + 10 * 53] = gps_data.RevWrite_data.XID[4];
|
|
FontBuffer_Read[5 + 10 * 53] = gps_data.RevWrite_data.XID[5];
|
|
FontBuffer_Read[6 + 10 * 53] = gps_data.RevWrite_data.XID[6];
|
|
FontBuffer_Read[7 + 10 * 53] = gps_data.RevWrite_data.XID[7];
|
|
FontBuffer_Read[8 + 10 * 53] = gps_data.RevWrite_data.XID[8];
|
|
|
|
memcpy(&gps_data.RevWrite_data.XID[9], &dataxingaobuf[9], 6);
|
|
FontBuffer_Read[0 + 10 * 54] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 54] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 54] = gps_data.RevWrite_data.XID[9];
|
|
FontBuffer_Read[3 + 10 * 54] = gps_data.RevWrite_data.XID[10];
|
|
FontBuffer_Read[4 + 10 * 54] = gps_data.RevWrite_data.XID[11];
|
|
FontBuffer_Read[5 + 10 * 54] = gps_data.RevWrite_data.XID[12];
|
|
FontBuffer_Read[6 + 10 * 54] = gps_data.RevWrite_data.XID[13];
|
|
FontBuffer_Read[7 + 10 * 54] = gps_data.RevWrite_data.XID[14];
|
|
|
|
memcpy(&gps_data.RevWrite_data.XID[15], &dataxingaobuf[15], 6);
|
|
FontBuffer_Read[0 + 10 * 55] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 55] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 55] = gps_data.RevWrite_data.XID[15];
|
|
FontBuffer_Read[3 + 10 * 55] = gps_data.RevWrite_data.XID[16];
|
|
FontBuffer_Read[4 + 10 * 55] = gps_data.RevWrite_data.XID[17];
|
|
FontBuffer_Read[5 + 10 * 55] = gps_data.RevWrite_data.XID[18];
|
|
FontBuffer_Read[6 + 10 * 55] = gps_data.RevWrite_data.XID[19];
|
|
FontBuffer_Read[7 + 10 * 55] = gps_data.RevWrite_data.XID[20];
|
|
|
|
memcpy(&gps_data.RevWrite_data.XID[21], &dataxingaobuf[21], 3);
|
|
FontBuffer_Read[0 + 10 * 56] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 56] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 56] = gps_data.RevWrite_data.XID[21];
|
|
FontBuffer_Read[3 + 10 * 56] = gps_data.RevWrite_data.XID[22];
|
|
FontBuffer_Read[4 + 10 * 56] = gps_data.RevWrite_data.XID[23];
|
|
|
|
if(gps_data.RevWrite_data.Celltype == 0)
|
|
gps_data.RevWrite_data.GpsDVol = 2750;
|
|
else if(gps_data.RevWrite_data.Celltype == 1)
|
|
gps_data.RevWrite_data.GpsDVol = 2750;
|
|
else if(gps_data.RevWrite_data.Celltype == 2)
|
|
gps_data.RevWrite_data.GpsDVol = 2750;
|
|
|
|
FontBuffer_Read[0 + 10 * 59] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 59] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 59] = (u8)(gps_data.RevWrite_data.GpsDVol >> 8);
|
|
FontBuffer_Read[3 + 10 * 59] = (u8)gps_data.RevWrite_data.GpsDVol;
|
|
|
|
if(gps_data.RevWrite_data.Celltype == 0)
|
|
gps_data.RevWrite_data.GpsDVolH = 2850;
|
|
else if(gps_data.RevWrite_data.Celltype == 1)
|
|
gps_data.RevWrite_data.GpsDVolH = 2850;
|
|
else if(gps_data.RevWrite_data.Celltype == 2)
|
|
gps_data.RevWrite_data.GpsDVolH = 2850;
|
|
|
|
FontBuffer_Read[0 + 10 * 60] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 60] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 60] = (u8)(gps_data.RevWrite_data.GpsDVolH >> 8);
|
|
FontBuffer_Read[3 + 10 * 60] = (u8)gps_data.RevWrite_data.GpsDVolH;
|
|
|
|
gps_data.RevWrite_data.ShiduKaiguan = 0;
|
|
FontBuffer_Read[0 + 10 * 61] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 61] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 61] = (u8)gps_data.RevWrite_data.ShiduKaiguan;
|
|
|
|
FontBuffer_Read[0 + 10 * 62] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 62] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 62] = (u8)gps_data.RevWrite_data.ShiduValueNow;
|
|
|
|
gps_data.RevWrite_data.ShiduValueProtect = 90;
|
|
FontBuffer_Read[0 + 10 * 63] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 63] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 63] = (u8)gps_data.RevWrite_data.ShiduValueProtect;
|
|
|
|
gps_data.RevWrite_data.ShortCurValue = 38;
|
|
FontBuffer_Read[0 + 10 * 64] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 64] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 64] = (u8)gps_data.RevWrite_data.ShortCurValue;
|
|
|
|
gps_data.RevWrite_data.ShortCurDelay = 400;
|
|
FontBuffer_Read[0 + 10 * 65] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 65] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 65] = (u8)(gps_data.RevWrite_data.ShortCurDelay >> 8);
|
|
FontBuffer_Read[3 + 10 * 65] = (u8)gps_data.RevWrite_data.ShortCurDelay;
|
|
|
|
gps_data.RevWrite_data.EnableSwitch = 0x0000;
|
|
FontBuffer_Read[0 + 10 * 66] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 66] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 66] = (u8)(gps_data.RevWrite_data.EnableSwitch >> 8);
|
|
FontBuffer_Read[3 + 10 * 66] = (u8)gps_data.RevWrite_data.EnableSwitch;
|
|
|
|
gps_data.RevWrite_data.CellOUT2CURR_G = 80;
|
|
FontBuffer_Read[0 + 10 * 67] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 67] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 67] = (u8)(gps_data.RevWrite_data.CellOUT2CURR_G >> 8);
|
|
FontBuffer_Read[3 + 10 * 67] = (u8)gps_data.RevWrite_data.CellOUT2CURR_G;
|
|
|
|
gps_data.RevWrite_data.CellOUT2TIME_G = 4;
|
|
FontBuffer_Read[0 + 10 * 68] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 68] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 68] = (u8)(gps_data.RevWrite_data.CellOUT2TIME_G >> 8);
|
|
FontBuffer_Read[3 + 10 * 68] = (u8)gps_data.RevWrite_data.CellOUT2TIME_G;
|
|
|
|
gps_data.RevWrite_data.CellDRLBEEP_Jiao = 3350;
|
|
FontBuffer_Read[0 + 10 * 69] = 0xaa;
|
|
FontBuffer_Read[1 + 10 * 69] = 0x55;
|
|
FontBuffer_Read[2 + 10 * 69] = (u8)(gps_data.RevWrite_data.CellDRLBEEP_Jiao >> 8);
|
|
FontBuffer_Read[3 + 10 * 69] = (u8)gps_data.RevWrite_data.CellDRLBEEP_Jiao;
|
|
|
|
IapProgram_num(FontBuffer_Read, (u32)0x0801F000, 200 * 10);
|
|
}
|
|
|
|
|