基本功能加全了
parent
92cc9d0b1c
commit
7d4463bd69
|
|
@ -33,6 +33,62 @@ void LED_Init(void)
|
|||
}
|
||||
|
||||
|
||||
void gpio_Init(void)
|
||||
{
|
||||
GPIO_InitTypeDef GPIO_InitStructure;
|
||||
|
||||
// spi1 chip-select
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);//使能GPIOF时钟
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;//普通输出模式
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
|
||||
GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化
|
||||
|
||||
// spi2 chip-select
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);//使能GPIOF时钟
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//普通输出模式
|
||||
// GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
|
||||
GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化
|
||||
|
||||
|
||||
// micro_move switch
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE, ENABLE);//使能GPIOF时钟
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//普通输出模式
|
||||
// GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
|
||||
GPIO_Init(GPIOE, &GPIO_InitStructure);//初始化
|
||||
|
||||
|
||||
// position_move sensor
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE, ENABLE);//使能GPIOF时钟
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//普通输出模式
|
||||
// GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
|
||||
GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化
|
||||
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);//使能GPIOF时钟
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN;//普通输出模式
|
||||
// GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
|
||||
GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@
|
|||
//以下是SPI模块的初始化代码,配置成主机模式
|
||||
//SPI口初始化
|
||||
//这里针是对SPI1的初始化
|
||||
void SPI1_Init(void)
|
||||
void motor_spi1_init(void)
|
||||
{
|
||||
GPIO_InitTypeDef GPIO_InitStructure;
|
||||
SPI_InitTypeDef SPI_InitStructure;
|
||||
|
|
@ -19,16 +19,16 @@ void SPI1_Init(void)
|
|||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_SPI1, ENABLE);//使能SPI1时钟
|
||||
|
||||
//GPIOFB3,4,5初始化设置
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5;//PB3~5复用功能输出
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7;//PB3~5复用功能输出
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
|
||||
GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化
|
||||
GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化
|
||||
|
||||
GPIO_PinAFConfig(GPIOB,GPIO_PinSource3,GPIO_AF_SPI1); //PB3复用为 SPI1
|
||||
GPIO_PinAFConfig(GPIOB,GPIO_PinSource4,GPIO_AF_SPI1); //PB4复用为 SPI1
|
||||
GPIO_PinAFConfig(GPIOB,GPIO_PinSource5,GPIO_AF_SPI1); //PB5复用为 SPI1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource5,GPIO_AF_SPI1); //PB3复用为 SPI1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource6,GPIO_AF_SPI1); //PB4复用为 SPI1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource7,GPIO_AF_SPI1); //PB5复用为 SPI1
|
||||
|
||||
//这里只针对SPI口初始化
|
||||
RCC_APB2PeriphResetCmd(RCC_APB2Periph_SPI1,ENABLE);//复位SPI1
|
||||
|
|
@ -83,6 +83,88 @@ u8 spi1_read_write_byte(u8 TxData)
|
|||
|
||||
|
||||
|
||||
//以下是SPI模块的初始化代码,配置成主机模式
|
||||
//SPI口初始化
|
||||
//这里针是对SPI2的初始化
|
||||
void motor_spi2_init(void)
|
||||
{
|
||||
GPIO_InitTypeDef GPIO_InitStructure;
|
||||
SPI_InitTypeDef SPI_InitStructure;
|
||||
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);//使能GPIOA时钟
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC, ENABLE);//使能GPIOA时钟
|
||||
|
||||
RCC_APB2PeriphClockCmd(RCC_APB1Periph_SPI2, ENABLE);//使能SPI1时钟
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2|GPIO_Pin_3;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
|
||||
GPIO_Init(GPIOC, &GPIO_InitStructure);//初始化
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_10;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉
|
||||
GPIO_Init(GPIOB, &GPIO_InitStructure);//初始化
|
||||
|
||||
GPIO_PinAFConfig(GPIOC,GPIO_PinSource2,GPIO_AF_SPI2); //PB3复用为 SPI1
|
||||
GPIO_PinAFConfig(GPIOC,GPIO_PinSource3,GPIO_AF_SPI2); //PB4复用为 SPI1
|
||||
GPIO_PinAFConfig(GPIOB,GPIO_PinSource10,GPIO_AF_SPI2); //PB5复用为 SPI1
|
||||
|
||||
//这里只针对SPI口初始化
|
||||
RCC_APB2PeriphResetCmd(RCC_APB1Periph_SPI2,ENABLE);//复位SPI1
|
||||
RCC_APB2PeriphResetCmd(RCC_APB1Periph_SPI2,DISABLE);//停止复位SPI1
|
||||
|
||||
SPI_InitStructure.SPI_Direction = SPI_Direction_2Lines_FullDuplex; //设置SPI单向或者双向的数据模式:SPI设置为双线双向全双工
|
||||
SPI_InitStructure.SPI_Mode = SPI_Mode_Master; //设置SPI工作模式:设置为主SPI
|
||||
SPI_InitStructure.SPI_DataSize = SPI_DataSize_8b; //设置SPI的数据大小:SPI发送接收8位帧结构
|
||||
SPI_InitStructure.SPI_CPOL = SPI_CPOL_High; //串行同步时钟的空闲状态为高电平
|
||||
SPI_InitStructure.SPI_CPHA = SPI_CPHA_2Edge; //串行同步时钟的第二个跳变沿(上升或下降)数据被采样
|
||||
SPI_InitStructure.SPI_NSS = SPI_NSS_Soft; //NSS信号由硬件(NSS管脚)还是软件(使用SSI位)管理:内部NSS信号有SSI位控制
|
||||
SPI_InitStructure.SPI_BaudRatePrescaler = SPI_BaudRatePrescaler_256; //定义波特率预分频的值:波特率预分频值为256
|
||||
SPI_InitStructure.SPI_FirstBit = SPI_FirstBit_MSB; //指定数据传输从MSB位还是LSB位开始:数据传输从MSB位开始
|
||||
SPI_InitStructure.SPI_CRCPolynomial = 7; //CRC值计算的多项式
|
||||
SPI_Init(SPI2, &SPI_InitStructure); //根据SPI_InitStruct中指定的参数初始化外设SPIx寄存器
|
||||
|
||||
SPI_Cmd(SPI2, ENABLE); //使能SPI外设
|
||||
|
||||
SPI1_ReadWriteByte(0xff);//启动传输
|
||||
}
|
||||
//SPI1速度设置函数
|
||||
//SPI速度=fAPB2/分频系数
|
||||
//@ref SPI_BaudRate_Prescaler:SPI_BaudRatePrescaler_2~SPI_BaudRatePrescaler_256
|
||||
//fAPB2时钟一般为84Mhz:
|
||||
void SPI2_SetSpeed(u8 SPI_BaudRatePrescaler)
|
||||
{
|
||||
assert_param(IS_SPI_BAUDRATE_PRESCALER(SPI_BaudRatePrescaler));//判断有效性
|
||||
SPI2->CR1&=0XFFC7;//位3-5清零,用来设置波特率
|
||||
SPI2->CR1|=SPI_BaudRatePrescaler; //设置SPI1速度
|
||||
SPI_Cmd(SPI2,ENABLE); //使能SPI1
|
||||
}
|
||||
//SPI1 读写一个字节
|
||||
//TxData:要写入的字节
|
||||
//返回值:读取到的字节
|
||||
u8 SPI2_ReadWriteByte(u8 TxData)
|
||||
{
|
||||
|
||||
while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_TXE) == RESET){}//等待发送区空
|
||||
|
||||
SPI_I2S_SendData(SPI2, TxData); //通过外设SPIx发送一个byte 数据
|
||||
|
||||
while (SPI_I2S_GetFlagStatus(SPI2, SPI_I2S_FLAG_RXNE) == RESET){} //等待接收完一个byte
|
||||
|
||||
return SPI_I2S_ReceiveData(SPI2); //返回通过SPIx最近接收的数据
|
||||
|
||||
}
|
||||
|
||||
u8 spi2_read_write_byte(u8 TxData)
|
||||
{
|
||||
SPI2_ReadWriteByte(TxData);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -13,6 +13,55 @@
|
|||
//All rights reserved
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
void TIM1_PWM_Init(u16 arr,u16 psc)
|
||||
{
|
||||
GPIO_InitTypeDef GPIO_InitStructure;
|
||||
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
|
||||
TIM_OCInitTypeDef TIM_OCInitStructure;
|
||||
|
||||
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1,ENABLE); ///使能TIM1时钟
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOE,ENABLE);
|
||||
|
||||
GPIO_PinAFConfig(GPIOE,GPIO_PinSource9,GPIO_AF_TIM1);
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
|
||||
GPIO_Init(GPIOE,&GPIO_InitStructure);
|
||||
|
||||
GPIO_ResetBits(GPIOE, GPIO_Pin_9);
|
||||
|
||||
TIM_TimeBaseInitStructure.TIM_Period = arr; //自动重装载值
|
||||
TIM_TimeBaseInitStructure.TIM_Prescaler=psc; //定时器分频
|
||||
TIM_TimeBaseInitStructure.TIM_CounterMode=TIM_CounterMode_Up; //向上计数模式
|
||||
TIM_TimeBaseInitStructure.TIM_ClockDivision=TIM_CKD_DIV1;
|
||||
|
||||
TIM_TimeBaseInit(TIM1,&TIM_TimeBaseInitStructure);//初始化TIM3
|
||||
|
||||
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
|
||||
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
|
||||
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;
|
||||
TIM_OCInitStructure.TIM_Pulse = 100;
|
||||
|
||||
TIM_OC1Init(TIM1, &TIM_OCInitStructure);
|
||||
|
||||
TIM_OC1PreloadConfig(TIM1, TIM_OCPreload_Enable);
|
||||
|
||||
TIM_ARRPreloadConfig(TIM1,ENABLE);
|
||||
|
||||
//TIM_Cmd(TIM3, ENABLE);
|
||||
|
||||
}
|
||||
|
||||
//定时器3中断服务函数
|
||||
void TIM1_IRQHandler(void)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
void TIM2_Int_Init(u16 arr,u16 psc)
|
||||
{
|
||||
|
|
@ -115,6 +164,49 @@ void TIM2_IRQHandler(void)
|
|||
}
|
||||
|
||||
|
||||
void TIM2_PWM_Init(u16 arr,u16 psc)
|
||||
{
|
||||
GPIO_InitTypeDef GPIO_InitStructure;
|
||||
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
|
||||
TIM_OCInitTypeDef TIM_OCInitStructure;
|
||||
|
||||
|
||||
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM2,ENABLE); ///使能TIM1时钟
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB,ENABLE);
|
||||
|
||||
GPIO_PinAFConfig(GPIOB,GPIO_PinSource3,GPIO_AF_TIM1);
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
|
||||
GPIO_Init(GPIOB,&GPIO_InitStructure);
|
||||
|
||||
GPIO_ResetBits(GPIOB, GPIO_Pin_9);
|
||||
|
||||
TIM_TimeBaseInitStructure.TIM_Period = arr; //自动重装载值
|
||||
TIM_TimeBaseInitStructure.TIM_Prescaler=psc; //定时器分频
|
||||
TIM_TimeBaseInitStructure.TIM_CounterMode=TIM_CounterMode_Up; //向上计数模式
|
||||
TIM_TimeBaseInitStructure.TIM_ClockDivision=TIM_CKD_DIV1;
|
||||
|
||||
TIM_TimeBaseInit(TIM2,&TIM_TimeBaseInitStructure);//初始化TIM3
|
||||
|
||||
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
|
||||
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
|
||||
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;
|
||||
TIM_OCInitStructure.TIM_Pulse = 100;
|
||||
|
||||
TIM_OC1Init(TIM2, &TIM_OCInitStructure);
|
||||
|
||||
TIM_OC1PreloadConfig(TIM2, TIM_OCPreload_Enable);
|
||||
|
||||
TIM_ARRPreloadConfig(TIM2,ENABLE);
|
||||
|
||||
//TIM_Cmd(TIM3, ENABLE);
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
//通用定时器3中断初始化
|
||||
|
|
@ -170,3 +262,52 @@ void TIM3_PWM_Init(u16 arr,u16 psc)
|
|||
void TIM3_IRQHandler(void)
|
||||
{
|
||||
}
|
||||
|
||||
void TIM4_PWM_Init(u16 arr,u16 psc)
|
||||
{
|
||||
GPIO_InitTypeDef GPIO_InitStructure;
|
||||
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStructure;
|
||||
TIM_OCInitTypeDef TIM_OCInitStructure;
|
||||
|
||||
|
||||
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4,ENABLE); ///使能TIM3时钟
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD,ENABLE);
|
||||
|
||||
GPIO_PinAFConfig(GPIOD,GPIO_PinSource15,GPIO_AF_TIM3);
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_15;
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;
|
||||
GPIO_Init(GPIOD,&GPIO_InitStructure);
|
||||
|
||||
GPIO_ResetBits(GPIOD, GPIO_Pin_15);
|
||||
|
||||
TIM_TimeBaseInitStructure.TIM_Period = arr; //自动重装载值
|
||||
TIM_TimeBaseInitStructure.TIM_Prescaler=psc; //定时器分频
|
||||
TIM_TimeBaseInitStructure.TIM_CounterMode=TIM_CounterMode_Up; //向上计数模式
|
||||
TIM_TimeBaseInitStructure.TIM_ClockDivision=TIM_CKD_DIV1;
|
||||
|
||||
TIM_TimeBaseInit(TIM4,&TIM_TimeBaseInitStructure);//初始化TIM3
|
||||
|
||||
TIM_OCInitStructure.TIM_OCMode = TIM_OCMode_PWM1;
|
||||
TIM_OCInitStructure.TIM_OutputState = TIM_OutputState_Enable;
|
||||
TIM_OCInitStructure.TIM_OCPolarity = TIM_OCPolarity_Low;
|
||||
TIM_OCInitStructure.TIM_Pulse = 100;
|
||||
|
||||
TIM_OC1Init(TIM4, &TIM_OCInitStructure);
|
||||
|
||||
TIM_OC1PreloadConfig(TIM4, TIM_OCPreload_Enable);
|
||||
|
||||
TIM_ARRPreloadConfig(TIM4,ENABLE);
|
||||
|
||||
//TIM_Cmd(TIM3, ENABLE);
|
||||
|
||||
}
|
||||
|
||||
//定时器3中断服务函数
|
||||
void TIM4_IRQHandler(void)
|
||||
{
|
||||
}
|
||||
|
||||
|
|
|
|||
BIN
OBJ/USART.axf
BIN
OBJ/USART.axf
Binary file not shown.
|
|
@ -27,11 +27,9 @@ Project File Date: 02/09/2026
|
|||
<h2>Output:</h2>
|
||||
*** Using Compiler 'V5.05 update 2 (build 169)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'
|
||||
Build target 'USART'
|
||||
compiling stm32f4xx_adc.c...
|
||||
compiling stm32f4xx_spi.c...
|
||||
compiling stm32f4xx_tim.c...
|
||||
compiling timer.c...
|
||||
linking...
|
||||
Program Size: Code=2844 RO-data=424 RW-data=32 ZI-data=1832
|
||||
Program Size: Code=5328 RO-data=424 RW-data=112 ZI-data=1632
|
||||
FromELF: creating hex file...
|
||||
"..\OBJ\USART.axf" - 0 Error(s), 0 Warning(s).
|
||||
|
||||
|
|
@ -47,7 +45,7 @@ Package Vendor: Keil
|
|||
C:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
|
||||
|
||||
<h2>Collection of Component Files used:</h2>
|
||||
Build Time Elapsed: 00:00:02
|
||||
Build Time Elapsed: 00:00:01
|
||||
</pre>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
|||
471
OBJ/USART.htm
471
OBJ/USART.htm
|
|
@ -3,7 +3,7 @@
|
|||
<title>Static Call Graph - [..\OBJ\USART.axf]</title></head>
|
||||
<body><HR>
|
||||
<H1>Static Call Graph for image ..\OBJ\USART.axf</H1><HR>
|
||||
<BR><P>#<CALLGRAPH># ARM Linker, 5050169: Last Updated: Mon Feb 09 11:13:49 2026
|
||||
<BR><P>#<CALLGRAPH># ARM Linker, 5050169: Last Updated: Mon Feb 09 17:26:42 2026
|
||||
<BR><P>
|
||||
<H3>Maximum Stack Usage = 128 bytes + Unknown(Functions without stacksize, Cycles, Untraceable Function Pointers)</H3><H3>
|
||||
Call chain for Maximum Stack Depth:</H3>
|
||||
|
|
@ -101,7 +101,7 @@ Function Pointers
|
|||
<LI><a href="#[25]">TIM1_UP_TIM10_IRQHandler</a> from startup_stm32f40_41xxx.o(.text) referenced from startup_stm32f40_41xxx.o(RESET)
|
||||
<LI><a href="#[28]">TIM2_IRQHandler</a> from timer.o(i.TIM2_IRQHandler) referenced from startup_stm32f40_41xxx.o(RESET)
|
||||
<LI><a href="#[29]">TIM3_IRQHandler</a> from timer.o(i.TIM3_IRQHandler) referenced from startup_stm32f40_41xxx.o(RESET)
|
||||
<LI><a href="#[2a]">TIM4_IRQHandler</a> from startup_stm32f40_41xxx.o(.text) referenced from startup_stm32f40_41xxx.o(RESET)
|
||||
<LI><a href="#[2a]">TIM4_IRQHandler</a> from timer.o(i.TIM4_IRQHandler) referenced from startup_stm32f40_41xxx.o(RESET)
|
||||
<LI><a href="#[3e]">TIM5_IRQHandler</a> from startup_stm32f40_41xxx.o(.text) referenced from startup_stm32f40_41xxx.o(RESET)
|
||||
<LI><a href="#[42]">TIM6_DAC_IRQHandler</a> from startup_stm32f40_41xxx.o(.text) referenced from startup_stm32f40_41xxx.o(RESET)
|
||||
<LI><a href="#[43]">TIM7_IRQHandler</a> from startup_stm32f40_41xxx.o(.text) referenced from startup_stm32f40_41xxx.o(RESET)
|
||||
|
|
@ -138,9 +138,9 @@ Global Symbols
|
|||
<BR><BR>[Calls]<UL><LI><a href="#[64]">>></a> __rt_entry
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[93]"></a>__scatterload_rt2_thumb_only</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
|
||||
<P><STRONG><a name="[a8]"></a>__scatterload_rt2_thumb_only</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[94]"></a>__scatterload_null</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
|
||||
<P><STRONG><a name="[a9]"></a>__scatterload_null</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __scatter.o(!!!scatter), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[66]"></a>__scatterload_copy</STRONG> (Thumb, 26 bytes, Stack size unknown bytes, __scatter_copy.o(!!handler_copy), UNUSED)
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[66]">>></a> __scatterload_copy
|
||||
|
|
@ -148,7 +148,7 @@ Global Symbols
|
|||
<BR>[Called By]<UL><LI><a href="#[66]">>></a> __scatterload_copy
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[95]"></a>__scatterload_zeroinit</STRONG> (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
|
||||
<P><STRONG><a name="[aa]"></a>__scatterload_zeroinit</STRONG> (Thumb, 28 bytes, Stack size unknown bytes, __scatter_zi.o(!!handler_zi), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[6c]"></a>__rt_lib_init</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit.o(.ARM.Collect$$libinit$$00000000))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[6b]">>></a> __rt_entry_li
|
||||
|
|
@ -158,68 +158,68 @@ Global Symbols
|
|||
<BR><BR>[Calls]<UL><LI><a href="#[68]">>></a> _fp_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[96]"></a>__rt_lib_init_alloca_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))
|
||||
<P><STRONG><a name="[ab]"></a>__rt_lib_init_alloca_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002E))
|
||||
|
||||
<P><STRONG><a name="[97]"></a>__rt_lib_init_argv_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002C))
|
||||
<P><STRONG><a name="[ac]"></a>__rt_lib_init_argv_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000002C))
|
||||
|
||||
<P><STRONG><a name="[98]"></a>__rt_lib_init_atexit_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))
|
||||
<P><STRONG><a name="[ad]"></a>__rt_lib_init_atexit_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001B))
|
||||
|
||||
<P><STRONG><a name="[99]"></a>__rt_lib_init_clock_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))
|
||||
<P><STRONG><a name="[ae]"></a>__rt_lib_init_clock_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000021))
|
||||
|
||||
<P><STRONG><a name="[9a]"></a>__rt_lib_init_cpp_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032))
|
||||
<P><STRONG><a name="[af]"></a>__rt_lib_init_cpp_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000032))
|
||||
|
||||
<P><STRONG><a name="[9b]"></a>__rt_lib_init_exceptions_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030))
|
||||
<P><STRONG><a name="[b0]"></a>__rt_lib_init_exceptions_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000030))
|
||||
|
||||
<P><STRONG><a name="[9c]"></a>__rt_lib_init_fp_trap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))
|
||||
<P><STRONG><a name="[b1]"></a>__rt_lib_init_fp_trap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001F))
|
||||
|
||||
<P><STRONG><a name="[9d]"></a>__rt_lib_init_getenv_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023))
|
||||
<P><STRONG><a name="[b2]"></a>__rt_lib_init_getenv_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000023))
|
||||
|
||||
<P><STRONG><a name="[9e]"></a>__rt_lib_init_heap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000A))
|
||||
<P><STRONG><a name="[b3]"></a>__rt_lib_init_heap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000A))
|
||||
|
||||
<P><STRONG><a name="[9f]"></a>__rt_lib_init_lc_collate_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000011))
|
||||
<P><STRONG><a name="[b4]"></a>__rt_lib_init_lc_collate_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000011))
|
||||
|
||||
<P><STRONG><a name="[a0]"></a>__rt_lib_init_lc_ctype_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))
|
||||
<P><STRONG><a name="[b5]"></a>__rt_lib_init_lc_ctype_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000013))
|
||||
|
||||
<P><STRONG><a name="[a1]"></a>__rt_lib_init_lc_monetary_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))
|
||||
<P><STRONG><a name="[b6]"></a>__rt_lib_init_lc_monetary_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000015))
|
||||
|
||||
<P><STRONG><a name="[a2]"></a>__rt_lib_init_lc_numeric_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))
|
||||
<P><STRONG><a name="[b7]"></a>__rt_lib_init_lc_numeric_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000017))
|
||||
|
||||
<P><STRONG><a name="[a3]"></a>__rt_lib_init_lc_time_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))
|
||||
<P><STRONG><a name="[b8]"></a>__rt_lib_init_lc_time_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000019))
|
||||
|
||||
<P><STRONG><a name="[a4]"></a>__rt_lib_init_preinit_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004))
|
||||
<P><STRONG><a name="[b9]"></a>__rt_lib_init_preinit_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000004))
|
||||
|
||||
<P><STRONG><a name="[a5]"></a>__rt_lib_init_rand_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))
|
||||
<P><STRONG><a name="[ba]"></a>__rt_lib_init_rand_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000E))
|
||||
|
||||
<P><STRONG><a name="[a6]"></a>__rt_lib_init_return</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000033))
|
||||
<P><STRONG><a name="[bb]"></a>__rt_lib_init_return</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000033))
|
||||
|
||||
<P><STRONG><a name="[a7]"></a>__rt_lib_init_signal_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))
|
||||
<P><STRONG><a name="[bc]"></a>__rt_lib_init_signal_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000001D))
|
||||
|
||||
<P><STRONG><a name="[a8]"></a>__rt_lib_init_stdio_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025))
|
||||
<P><STRONG><a name="[bd]"></a>__rt_lib_init_stdio_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$00000025))
|
||||
|
||||
<P><STRONG><a name="[a9]"></a>__rt_lib_init_user_alloc_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C))
|
||||
<P><STRONG><a name="[be]"></a>__rt_lib_init_user_alloc_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libinit2.o(.ARM.Collect$$libinit$$0000000C))
|
||||
|
||||
<P><STRONG><a name="[71]"></a>__rt_lib_shutdown</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown.o(.ARM.Collect$$libshutdown$$00000000))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[70]">>></a> __rt_exit_ls
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[aa]"></a>__rt_lib_shutdown_fp_trap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000006))
|
||||
<P><STRONG><a name="[bf]"></a>__rt_lib_shutdown_fp_trap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000006))
|
||||
|
||||
<P><STRONG><a name="[ab]"></a>__rt_lib_shutdown_heap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E))
|
||||
<P><STRONG><a name="[c0]"></a>__rt_lib_shutdown_heap_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000E))
|
||||
|
||||
<P><STRONG><a name="[ac]"></a>__rt_lib_shutdown_return</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))
|
||||
<P><STRONG><a name="[c1]"></a>__rt_lib_shutdown_return</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000F))
|
||||
|
||||
<P><STRONG><a name="[ad]"></a>__rt_lib_shutdown_signal_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000009))
|
||||
<P><STRONG><a name="[c2]"></a>__rt_lib_shutdown_signal_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000009))
|
||||
|
||||
<P><STRONG><a name="[ae]"></a>__rt_lib_shutdown_stdio_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000003))
|
||||
<P><STRONG><a name="[c3]"></a>__rt_lib_shutdown_stdio_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$00000003))
|
||||
|
||||
<P><STRONG><a name="[af]"></a>__rt_lib_shutdown_user_alloc_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B))
|
||||
<P><STRONG><a name="[c4]"></a>__rt_lib_shutdown_user_alloc_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, libshutdown2.o(.ARM.Collect$$libshutdown$$0000000B))
|
||||
|
||||
<P><STRONG><a name="[64]"></a>__rt_entry</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry.o(.ARM.Collect$$rtentry$$00000000))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[65]">>></a> __scatterload_rt2
|
||||
<LI><a href="#[62]">>></a> __main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[b0]"></a>__rt_entry_presh_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002))
|
||||
<P><STRONG><a name="[c5]"></a>__rt_entry_presh_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000002))
|
||||
|
||||
<P><STRONG><a name="[69]"></a>__rt_entry_sh</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry4.o(.ARM.Collect$$rtentry$$00000004))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 8 + Unknown Stack Size
|
||||
|
|
@ -232,7 +232,7 @@ Global Symbols
|
|||
<BR><BR>[Calls]<UL><LI><a href="#[6c]">>></a> __rt_lib_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[b1]"></a>__rt_entry_postsh_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009))
|
||||
<P><STRONG><a name="[c6]"></a>__rt_entry_postsh_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$00000009))
|
||||
|
||||
<P><STRONG><a name="[6d]"></a>__rt_entry_main</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000D))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 128 + Unknown Stack Size
|
||||
|
|
@ -242,7 +242,7 @@ Global Symbols
|
|||
<LI><a href="#[6f]">>></a> exit
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[b2]"></a>__rt_entry_postli_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C))
|
||||
<P><STRONG><a name="[c7]"></a>__rt_entry_postli_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, __rtentry2.o(.ARM.Collect$$rtentry$$0000000C))
|
||||
|
||||
<P><STRONG><a name="[7b]"></a>__rt_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, rtexit.o(.ARM.Collect$$rtexit$$00000000))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[6f]">>></a> exit
|
||||
|
|
@ -252,7 +252,7 @@ Global Symbols
|
|||
<BR><BR>[Calls]<UL><LI><a href="#[71]">>></a> __rt_lib_shutdown
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[b3]"></a>__rt_exit_prels_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))
|
||||
<P><STRONG><a name="[c8]"></a>__rt_exit_prels_1</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000002))
|
||||
|
||||
<P><STRONG><a name="[72]"></a>__rt_exit_exit</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, rtexit2.o(.ARM.Collect$$rtexit$$00000004))
|
||||
<BR><BR>[Calls]<UL><LI><a href="#[73]">>></a> _sys_exit
|
||||
|
|
@ -460,9 +460,6 @@ Global Symbols
|
|||
<P><STRONG><a name="[25]"></a>TIM1_UP_TIM10_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f40_41xxx.o(.text))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[2a]"></a>TIM4_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f40_41xxx.o(.text))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[3e]"></a>TIM5_IRQHandler</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, startup_stm32f40_41xxx.o(.text))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
|
|
@ -491,7 +488,7 @@ Global Symbols
|
|||
<BR><BR>[Called By]<UL><LI><a href="#[6a]">>></a> __user_setup_stackheap
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[b4]"></a>__use_no_semihosting</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi_2.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[c9]"></a>__use_no_semihosting</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi_2.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[74]"></a>__2printf</STRONG> (Thumb, 20 bytes, Stack size 24 bytes, noretval__2printf.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf
|
||||
|
|
@ -501,15 +498,15 @@ Global Symbols
|
|||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[b5]"></a>__use_two_region_memory</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[ca]"></a>__use_two_region_memory</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[b6]"></a>__rt_heap_escrow$2region</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[cb]"></a>__rt_heap_escrow$2region</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[b7]"></a>__rt_heap_expand$2region</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[cc]"></a>__rt_heap_expand$2region</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, heapauxi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[b8]"></a>__I$use$semihosting</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[cd]"></a>__I$use$semihosting</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[b9]"></a>__use_no_semihosting_swi</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[ce]"></a>__use_no_semihosting_swi</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, use_no_semi.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[75]"></a>_printf_char_file</STRONG> (Thumb, 32 bytes, Stack size 16 bytes, _printf_char_file.o(.text))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 104<LI>Call Chain = _printf_char_file ⇒ _printf_char_common ⇒ __printf
|
||||
|
|
@ -554,13 +551,13 @@ Global Symbols
|
|||
<BR>[Called By]<UL><LI><a href="#[6d]">>></a> __rt_entry_main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[ba]"></a>__user_libspace</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[cf]"></a>__user_libspace</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[79]"></a>__user_perproc_libspace</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[6a]">>></a> __user_setup_stackheap
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[bb]"></a>__user_perthread_libspace</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
|
||||
<P><STRONG><a name="[d0]"></a>__user_perthread_libspace</STRONG> (Thumb, 0 bytes, Stack size 0 bytes, libspace.o(.text), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[6]"></a>BusFault_Handler</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.BusFault_Handler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
|
|
@ -568,80 +565,135 @@ Global Symbols
|
|||
<P><STRONG><a name="[9]"></a>DebugMon_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.DebugMon_Handler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[7e]"></a>GPIO_Init</STRONG> (Thumb, 144 bytes, Stack size 20 bytes, stm32f4xx_gpio.o(i.GPIO_Init))
|
||||
<P><STRONG><a name="[85]"></a>GPIO_Init</STRONG> (Thumb, 144 bytes, Stack size 20 bytes, stm32f4xx_gpio.o(i.GPIO_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = GPIO_Init
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<LI><a href="#[7c]">>></a> LED_Init
|
||||
<BR>[Called By]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
<LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
<LI><a href="#[9a]">>></a> gpio_Init
|
||||
<LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8f]"></a>GPIO_PinAFConfig</STRONG> (Thumb, 70 bytes, Stack size 20 bytes, stm32f4xx_gpio.o(i.GPIO_PinAFConfig))
|
||||
<P><STRONG><a name="[84]"></a>GPIO_PinAFConfig</STRONG> (Thumb, 70 bytes, Stack size 20 bytes, stm32f4xx_gpio.o(i.GPIO_PinAFConfig))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = GPIO_PinAFConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<BR>[Called By]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
<LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
<LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[83]"></a>GPIO_ResetBits</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_gpio.o(i.GPIO_ResetBits))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[28]">>></a> TIM2_IRQHandler
|
||||
<P><STRONG><a name="[86]"></a>GPIO_ResetBits</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_gpio.o(i.GPIO_ResetBits))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
<LI><a href="#[28]">>></a> TIM2_IRQHandler
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[7f]"></a>GPIO_SetBits</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_gpio.o(i.GPIO_SetBits))
|
||||
<P><STRONG><a name="[8c]"></a>GPIO_SetBits</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_gpio.o(i.GPIO_SetBits))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[28]">>></a> TIM2_IRQHandler
|
||||
<LI><a href="#[7c]">>></a> LED_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[4]"></a>HardFault_Handler</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.HardFault_Handler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[7c]"></a>LED_Init</STRONG> (Thumb, 60 bytes, Stack size 16 bytes, led.o(i.LED_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = LED_Init ⇒ GPIO_Init
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[7d]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[7f]">>></a> GPIO_SetBits
|
||||
<LI><a href="#[7e]">>></a> GPIO_Init
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[5]"></a>MemManage_Handler</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.MemManage_Handler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[3]"></a>NMI_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.NMI_Handler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[92]"></a>NVIC_Init</STRONG> (Thumb, 106 bytes, Stack size 16 bytes, misc.o(i.NVIC_Init))
|
||||
<P><STRONG><a name="[a7]"></a>NVIC_Init</STRONG> (Thumb, 106 bytes, Stack size 16 bytes, misc.o(i.NVIC_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = NVIC_Init
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<BR>[Called By]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8a]"></a>NVIC_PriorityGroupConfig</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, misc.o(i.NVIC_PriorityGroupConfig))
|
||||
<P><STRONG><a name="[9b]"></a>NVIC_PriorityGroupConfig</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, misc.o(i.NVIC_PriorityGroupConfig))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a]"></a>PendSV_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.PendSV_Handler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[7d]"></a>RCC_AHB1PeriphClockCmd</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_rcc.o(i.RCC_AHB1PeriphClockCmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<LI><a href="#[7c]">>></a> LED_Init
|
||||
<P><STRONG><a name="[83]"></a>RCC_AHB1PeriphClockCmd</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_rcc.o(i.RCC_AHB1PeriphClockCmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
<LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
<LI><a href="#[9a]">>></a> gpio_Init
|
||||
<LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8e]"></a>RCC_APB2PeriphClockCmd</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_rcc.o(i.RCC_APB2PeriphClockCmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<P><STRONG><a name="[8f]"></a>RCC_APB1PeriphClockCmd</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_rcc.o(i.RCC_APB1PeriphClockCmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[85]"></a>RCC_GetClocksFreq</STRONG> (Thumb, 214 bytes, Stack size 20 bytes, stm32f4xx_rcc.o(i.RCC_GetClocksFreq))
|
||||
<P><STRONG><a name="[82]"></a>RCC_APB2PeriphClockCmd</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_rcc.o(i.RCC_APB2PeriphClockCmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
<LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a2]"></a>RCC_APB2PeriphResetCmd</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_rcc.o(i.RCC_APB2PeriphResetCmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[95]"></a>RCC_GetClocksFreq</STRONG> (Thumb, 214 bytes, Stack size 20 bytes, stm32f4xx_rcc.o(i.RCC_GetClocksFreq))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = RCC_GetClocksFreq
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[84]">>></a> USART_Init
|
||||
<BR>[Called By]<UL><LI><a href="#[94]">>></a> USART_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[7c]"></a>SPI1_ReadWriteByte</STRONG> (Thumb, 50 bytes, Stack size 8 bytes, spi.o(i.SPI1_ReadWriteByte))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = SPI1_ReadWriteByte
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[7e]">>></a> SPI_I2S_SendData
|
||||
<LI><a href="#[7f]">>></a> SPI_I2S_ReceiveData
|
||||
<LI><a href="#[7d]">>></a> SPI_I2S_GetFlagStatus
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a4]"></a>SPI_Cmd</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_spi.o(i.SPI_Cmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[7d]"></a>SPI_I2S_GetFlagStatus</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, stm32f4xx_spi.o(i.SPI_I2S_GetFlagStatus))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[7c]">>></a> SPI1_ReadWriteByte
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[7f]"></a>SPI_I2S_ReceiveData</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_spi.o(i.SPI_I2S_ReceiveData))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[7c]">>></a> SPI1_ReadWriteByte
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[7e]"></a>SPI_I2S_SendData</STRONG> (Thumb, 4 bytes, Stack size 0 bytes, stm32f4xx_spi.o(i.SPI_I2S_SendData))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[7c]">>></a> SPI1_ReadWriteByte
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a3]"></a>SPI_Init</STRONG> (Thumb, 60 bytes, Stack size 8 bytes, stm32f4xx_spi.o(i.SPI_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = SPI_Init
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8]"></a>SVC_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.SVC_Handler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[87]"></a>SysTick_CLKSourceConfig</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, misc.o(i.SysTick_CLKSourceConfig))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[86]">>></a> delay_init
|
||||
<P><STRONG><a name="[97]"></a>SysTick_CLKSourceConfig</STRONG> (Thumb, 40 bytes, Stack size 0 bytes, misc.o(i.SysTick_CLKSourceConfig))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[96]">>></a> delay_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[b]"></a>SysTick_Handler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, stm32f4xx_it.o(i.SysTick_Handler))
|
||||
|
|
@ -654,70 +706,200 @@ Global Symbols
|
|||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(.text)
|
||||
</UL>
|
||||
<P><STRONG><a name="[81]"></a>TIM1_PWM_Init</STRONG> (Thumb, 156 bytes, Stack size 56 bytes, timer.o(i.TIM1_PWM_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = TIM1_PWM_Init ⇒ GPIO_Init
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[82]">>></a> RCC_APB2PeriphClockCmd
|
||||
<LI><a href="#[83]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[85]">>></a> GPIO_Init
|
||||
<LI><a href="#[86]">>></a> GPIO_ResetBits
|
||||
<LI><a href="#[87]">>></a> TIM_TimeBaseInit
|
||||
<LI><a href="#[89]">>></a> TIM_OC1PreloadConfig
|
||||
<LI><a href="#[88]">>></a> TIM_OC1Init
|
||||
<LI><a href="#[8a]">>></a> TIM_ARRPreloadConfig
|
||||
<LI><a href="#[84]">>></a> GPIO_PinAFConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[28]"></a>TIM2_IRQHandler</STRONG> (Thumb, 80 bytes, Stack size 8 bytes, timer.o(i.TIM2_IRQHandler))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = TIM2_IRQHandler ⇒ TIM_GetITStatus
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[81]">>></a> TIM_GetITStatus
|
||||
<LI><a href="#[82]">>></a> TIM_ClearITPendingBit
|
||||
<LI><a href="#[83]">>></a> GPIO_ResetBits
|
||||
<LI><a href="#[7f]">>></a> GPIO_SetBits
|
||||
<BR>[Calls]<UL><LI><a href="#[8c]">>></a> GPIO_SetBits
|
||||
<LI><a href="#[86]">>></a> GPIO_ResetBits
|
||||
<LI><a href="#[8b]">>></a> TIM_GetITStatus
|
||||
<LI><a href="#[8d]">>></a> TIM_ClearITPendingBit
|
||||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[8e]"></a>TIM2_PWM_Init</STRONG> (Thumb, 156 bytes, Stack size 56 bytes, timer.o(i.TIM2_PWM_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = TIM2_PWM_Init ⇒ GPIO_Init
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[83]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[85]">>></a> GPIO_Init
|
||||
<LI><a href="#[86]">>></a> GPIO_ResetBits
|
||||
<LI><a href="#[87]">>></a> TIM_TimeBaseInit
|
||||
<LI><a href="#[89]">>></a> TIM_OC1PreloadConfig
|
||||
<LI><a href="#[88]">>></a> TIM_OC1Init
|
||||
<LI><a href="#[8a]">>></a> TIM_ARRPreloadConfig
|
||||
<LI><a href="#[8f]">>></a> RCC_APB1PeriphClockCmd
|
||||
<LI><a href="#[84]">>></a> GPIO_PinAFConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[29]"></a>TIM3_IRQHandler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, timer.o(i.TIM3_IRQHandler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[82]"></a>TIM_ClearITPendingBit</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_tim.o(i.TIM_ClearITPendingBit))
|
||||
<P><STRONG><a name="[2a]"></a>TIM4_IRQHandler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, timer.o(i.TIM4_IRQHandler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[90]"></a>TIM4_PWM_Init</STRONG> (Thumb, 156 bytes, Stack size 56 bytes, timer.o(i.TIM4_PWM_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 76<LI>Call Chain = TIM4_PWM_Init ⇒ GPIO_Init
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[83]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[85]">>></a> GPIO_Init
|
||||
<LI><a href="#[86]">>></a> GPIO_ResetBits
|
||||
<LI><a href="#[87]">>></a> TIM_TimeBaseInit
|
||||
<LI><a href="#[89]">>></a> TIM_OC1PreloadConfig
|
||||
<LI><a href="#[88]">>></a> TIM_OC1Init
|
||||
<LI><a href="#[8a]">>></a> TIM_ARRPreloadConfig
|
||||
<LI><a href="#[8f]">>></a> RCC_APB1PeriphClockCmd
|
||||
<LI><a href="#[84]">>></a> GPIO_PinAFConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8a]"></a>TIM_ARRPreloadConfig</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_tim.o(i.TIM_ARRPreloadConfig))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8d]"></a>TIM_ClearITPendingBit</STRONG> (Thumb, 6 bytes, Stack size 0 bytes, stm32f4xx_tim.o(i.TIM_ClearITPendingBit))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[28]">>></a> TIM2_IRQHandler
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[81]"></a>TIM_GetITStatus</STRONG> (Thumb, 34 bytes, Stack size 12 bytes, stm32f4xx_tim.o(i.TIM_GetITStatus))
|
||||
<P><STRONG><a name="[9f]"></a>TIM_Cmd</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_tim.o(i.TIM_Cmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8b]"></a>TIM_GetITStatus</STRONG> (Thumb, 34 bytes, Stack size 12 bytes, stm32f4xx_tim.o(i.TIM_GetITStatus))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 12<LI>Call Chain = TIM_GetITStatus
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[28]">>></a> TIM2_IRQHandler
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[88]"></a>TIM_OC1Init</STRONG> (Thumb, 114 bytes, Stack size 16 bytes, stm32f4xx_tim.o(i.TIM_OC1Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = TIM_OC1Init
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[89]"></a>TIM_OC1PreloadConfig</STRONG> (Thumb, 18 bytes, Stack size 0 bytes, stm32f4xx_tim.o(i.TIM_OC1PreloadConfig))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[87]"></a>TIM_TimeBaseInit</STRONG> (Thumb, 104 bytes, Stack size 0 bytes, stm32f4xx_tim.o(i.TIM_TimeBaseInit))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[40]"></a>UART4_IRQHandler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, usart.o(i.UART4_IRQHandler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[41]"></a>UART5_IRQHandler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, usart.o(i.UART5_IRQHandler))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[31]"></a>USART1_IRQHandler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, usart.o(i.USART1_IRQHandler))
|
||||
<P><STRONG><a name="[31]"></a>USART1_IRQHandler</STRONG> (Thumb, 144 bytes, Stack size 8 bytes, usart.o(i.USART1_IRQHandler))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = USART1_IRQHandler ⇒ USART_GetITStatus
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[93]">>></a> USART_ReceiveData
|
||||
<LI><a href="#[91]">>></a> USART_GetITStatus
|
||||
<LI><a href="#[92]">>></a> USART_ClearITPendingBit
|
||||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[32]"></a>USART2_IRQHandler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, usart.o(i.USART2_IRQHandler))
|
||||
<P><STRONG><a name="[32]"></a>USART2_IRQHandler</STRONG> (Thumb, 144 bytes, Stack size 8 bytes, usart.o(i.USART2_IRQHandler))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = USART2_IRQHandler ⇒ USART_GetITStatus
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[93]">>></a> USART_ReceiveData
|
||||
<LI><a href="#[91]">>></a> USART_GetITStatus
|
||||
<LI><a href="#[92]">>></a> USART_ClearITPendingBit
|
||||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[33]"></a>USART3_IRQHandler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, usart.o(i.USART3_IRQHandler))
|
||||
<P><STRONG><a name="[33]"></a>USART3_IRQHandler</STRONG> (Thumb, 144 bytes, Stack size 8 bytes, usart.o(i.USART3_IRQHandler))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = USART3_IRQHandler ⇒ USART_GetITStatus
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[93]">>></a> USART_ReceiveData
|
||||
<LI><a href="#[91]">>></a> USART_GetITStatus
|
||||
<LI><a href="#[92]">>></a> USART_ClearITPendingBit
|
||||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[53]"></a>USART6_IRQHandler</STRONG> (Thumb, 2 bytes, Stack size 0 bytes, usart.o(i.USART6_IRQHandler))
|
||||
<P><STRONG><a name="[53]"></a>USART6_IRQHandler</STRONG> (Thumb, 144 bytes, Stack size 8 bytes, usart.o(i.USART6_IRQHandler))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 24<LI>Call Chain = USART6_IRQHandler ⇒ USART_GetITStatus
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[93]">>></a> USART_ReceiveData
|
||||
<LI><a href="#[91]">>></a> USART_GetITStatus
|
||||
<LI><a href="#[92]">>></a> USART_ClearITPendingBit
|
||||
</UL>
|
||||
<BR>[Address Reference Count : 1]<UL><LI> startup_stm32f40_41xxx.o(RESET)
|
||||
</UL>
|
||||
<P><STRONG><a name="[90]"></a>USART_Cmd</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_usart.o(i.USART_Cmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<P><STRONG><a name="[92]"></a>USART_ClearITPendingBit</STRONG> (Thumb, 30 bytes, Stack size 8 bytes, stm32f4xx_usart.o(i.USART_ClearITPendingBit))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = USART_ClearITPendingBit
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[53]">>></a> USART6_IRQHandler
|
||||
<LI><a href="#[33]">>></a> USART3_IRQHandler
|
||||
<LI><a href="#[32]">>></a> USART2_IRQHandler
|
||||
<LI><a href="#[31]">>></a> USART1_IRQHandler
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8d]"></a>USART_GetFlagStatus</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_usart.o(i.USART_GetFlagStatus))
|
||||
<P><STRONG><a name="[a5]"></a>USART_Cmd</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, stm32f4xx_usart.o(i.USART_Cmd))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a1]"></a>USART_GetFlagStatus</STRONG> (Thumb, 26 bytes, Stack size 0 bytes, stm32f4xx_usart.o(i.USART_GetFlagStatus))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[91]"></a>USART_ITConfig</STRONG> (Thumb, 74 bytes, Stack size 20 bytes, stm32f4xx_usart.o(i.USART_ITConfig))
|
||||
<P><STRONG><a name="[91]"></a>USART_GetITStatus</STRONG> (Thumb, 84 bytes, Stack size 16 bytes, stm32f4xx_usart.o(i.USART_GetITStatus))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = USART_GetITStatus
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[53]">>></a> USART6_IRQHandler
|
||||
<LI><a href="#[33]">>></a> USART3_IRQHandler
|
||||
<LI><a href="#[32]">>></a> USART2_IRQHandler
|
||||
<LI><a href="#[31]">>></a> USART1_IRQHandler
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a6]"></a>USART_ITConfig</STRONG> (Thumb, 74 bytes, Stack size 20 bytes, stm32f4xx_usart.o(i.USART_ITConfig))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 20<LI>Call Chain = USART_ITConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<BR>[Called By]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[84]"></a>USART_Init</STRONG> (Thumb, 204 bytes, Stack size 48 bytes, stm32f4xx_usart.o(i.USART_Init))
|
||||
<P><STRONG><a name="[94]"></a>USART_Init</STRONG> (Thumb, 204 bytes, Stack size 48 bytes, stm32f4xx_usart.o(i.USART_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 68<LI>Call Chain = USART_Init ⇒ RCC_GetClocksFreq
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[85]">>></a> RCC_GetClocksFreq
|
||||
<BR>[Calls]<UL><LI><a href="#[95]">>></a> RCC_GetClocksFreq
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<BR>[Called By]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8c]"></a>USART_SendData</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_usart.o(i.USART_SendData))
|
||||
<P><STRONG><a name="[93]"></a>USART_ReceiveData</STRONG> (Thumb, 10 bytes, Stack size 0 bytes, stm32f4xx_usart.o(i.USART_ReceiveData))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[53]">>></a> USART6_IRQHandler
|
||||
<LI><a href="#[33]">>></a> USART3_IRQHandler
|
||||
<LI><a href="#[32]">>></a> USART2_IRQHandler
|
||||
<LI><a href="#[31]">>></a> USART1_IRQHandler
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[a0]"></a>USART_SendData</STRONG> (Thumb, 8 bytes, Stack size 0 bytes, stm32f4xx_usart.o(i.USART_SendData))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
|
|
@ -728,55 +910,100 @@ Global Symbols
|
|||
<BR><BR>[Called By]<UL><LI><a href="#[72]">>></a> __rt_exit_exit
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[86]"></a>delay_init</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, delay.o(i.delay_init))
|
||||
<P><STRONG><a name="[96]"></a>delay_init</STRONG> (Thumb, 52 bytes, Stack size 8 bytes, delay.o(i.delay_init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 8<LI>Call Chain = delay_init
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[87]">>></a> SysTick_CLKSourceConfig
|
||||
<BR>[Calls]<UL><LI><a href="#[97]">>></a> SysTick_CLKSourceConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[88]"></a>delay_ms</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, delay.o(i.delay_ms))
|
||||
<P><STRONG><a name="[98]"></a>delay_ms</STRONG> (Thumb, 56 bytes, Stack size 16 bytes, delay.o(i.delay_ms))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 16<LI>Call Chain = delay_ms
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[89]">>></a> delay_xms
|
||||
<BR>[Calls]<UL><LI><a href="#[99]">>></a> delay_xms
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[89]"></a>delay_xms</STRONG> (Thumb, 72 bytes, Stack size 0 bytes, delay.o(i.delay_xms))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[88]">>></a> delay_ms
|
||||
<P><STRONG><a name="[99]"></a>delay_xms</STRONG> (Thumb, 72 bytes, Stack size 0 bytes, delay.o(i.delay_xms))
|
||||
<BR><BR>[Called By]<UL><LI><a href="#[98]">>></a> delay_ms
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[60]"></a>fputc</STRONG> (Thumb, 22 bytes, Stack size 0 bytes, usart.o(i.fputc))
|
||||
<P><STRONG><a name="[60]"></a>fputc</STRONG> (Thumb, 24 bytes, Stack size 0 bytes, usart.o(i.fputc))
|
||||
<BR>[Address Reference Count : 1]<UL><LI> _printf_char_file.o(.text)
|
||||
</UL>
|
||||
<P><STRONG><a name="[6e]"></a>main</STRONG> (Thumb, 184 bytes, Stack size 0 bytes, main.o(i.main))
|
||||
<P><STRONG><a name="[9a]"></a>gpio_Init</STRONG> (Thumb, 200 bytes, Stack size 16 bytes, led.o(i.gpio_Init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 36<LI>Call Chain = gpio_Init ⇒ GPIO_Init
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[83]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[85]">>></a> GPIO_Init
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[6e]"></a>main</STRONG> (Thumb, 242 bytes, Stack size 0 bytes, main.o(i.main))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 128<LI>Call Chain = main ⇒ __2printf ⇒ _printf_char_file ⇒ _printf_char_common ⇒ __printf
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[8b]">>></a> uart1_init
|
||||
<LI><a href="#[88]">>></a> delay_ms
|
||||
<LI><a href="#[86]">>></a> delay_init
|
||||
<LI><a href="#[8c]">>></a> USART_SendData
|
||||
<LI><a href="#[8d]">>></a> USART_GetFlagStatus
|
||||
<LI><a href="#[8a]">>></a> NVIC_PriorityGroupConfig
|
||||
<LI><a href="#[7c]">>></a> LED_Init
|
||||
<BR>[Calls]<UL><LI><a href="#[9c]">>></a> uart1_init
|
||||
<LI><a href="#[9e]">>></a> motor_spi2_init
|
||||
<LI><a href="#[9d]">>></a> motor_spi1_init
|
||||
<LI><a href="#[9a]">>></a> gpio_Init
|
||||
<LI><a href="#[98]">>></a> delay_ms
|
||||
<LI><a href="#[96]">>></a> delay_init
|
||||
<LI><a href="#[a0]">>></a> USART_SendData
|
||||
<LI><a href="#[a1]">>></a> USART_GetFlagStatus
|
||||
<LI><a href="#[9f]">>></a> TIM_Cmd
|
||||
<LI><a href="#[90]">>></a> TIM4_PWM_Init
|
||||
<LI><a href="#[8e]">>></a> TIM2_PWM_Init
|
||||
<LI><a href="#[81]">>></a> TIM1_PWM_Init
|
||||
<LI><a href="#[9b]">>></a> NVIC_PriorityGroupConfig
|
||||
<LI><a href="#[74]">>></a> __2printf
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6d]">>></a> __rt_entry_main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[8b]"></a>uart1_init</STRONG> (Thumb, 164 bytes, Stack size 40 bytes, usart.o(i.uart1_init))
|
||||
<P><STRONG><a name="[9d]"></a>motor_spi1_init</STRONG> (Thumb, 186 bytes, Stack size 32 bytes, spi.o(i.motor_spi1_init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = motor_spi1_init ⇒ GPIO_Init
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[a2]">>></a> RCC_APB2PeriphResetCmd
|
||||
<LI><a href="#[82]">>></a> RCC_APB2PeriphClockCmd
|
||||
<LI><a href="#[83]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[85]">>></a> GPIO_Init
|
||||
<LI><a href="#[a3]">>></a> SPI_Init
|
||||
<LI><a href="#[a4]">>></a> SPI_Cmd
|
||||
<LI><a href="#[7c]">>></a> SPI1_ReadWriteByte
|
||||
<LI><a href="#[84]">>></a> GPIO_PinAFConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[9e]"></a>motor_spi2_init</STRONG> (Thumb, 232 bytes, Stack size 32 bytes, spi.o(i.motor_spi2_init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 52<LI>Call Chain = motor_spi2_init ⇒ GPIO_Init
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[a2]">>></a> RCC_APB2PeriphResetCmd
|
||||
<LI><a href="#[82]">>></a> RCC_APB2PeriphClockCmd
|
||||
<LI><a href="#[83]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[85]">>></a> GPIO_Init
|
||||
<LI><a href="#[a3]">>></a> SPI_Init
|
||||
<LI><a href="#[a4]">>></a> SPI_Cmd
|
||||
<LI><a href="#[7c]">>></a> SPI1_ReadWriteByte
|
||||
<LI><a href="#[84]">>></a> GPIO_PinAFConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[9c]"></a>uart1_init</STRONG> (Thumb, 164 bytes, Stack size 40 bytes, usart.o(i.uart1_init))
|
||||
<BR><BR>[Stack]<UL><LI>Max Depth = 108<LI>Call Chain = uart1_init ⇒ USART_Init ⇒ RCC_GetClocksFreq
|
||||
</UL>
|
||||
<BR>[Calls]<UL><LI><a href="#[92]">>></a> NVIC_Init
|
||||
<LI><a href="#[8f]">>></a> GPIO_PinAFConfig
|
||||
<LI><a href="#[8e]">>></a> RCC_APB2PeriphClockCmd
|
||||
<LI><a href="#[7d]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[7e]">>></a> GPIO_Init
|
||||
<LI><a href="#[84]">>></a> USART_Init
|
||||
<LI><a href="#[91]">>></a> USART_ITConfig
|
||||
<LI><a href="#[90]">>></a> USART_Cmd
|
||||
<BR>[Calls]<UL><LI><a href="#[82]">>></a> RCC_APB2PeriphClockCmd
|
||||
<LI><a href="#[83]">>></a> RCC_AHB1PeriphClockCmd
|
||||
<LI><a href="#[85]">>></a> GPIO_Init
|
||||
<LI><a href="#[94]">>></a> USART_Init
|
||||
<LI><a href="#[a6]">>></a> USART_ITConfig
|
||||
<LI><a href="#[a5]">>></a> USART_Cmd
|
||||
<LI><a href="#[a7]">>></a> NVIC_Init
|
||||
<LI><a href="#[84]">>></a> GPIO_PinAFConfig
|
||||
</UL>
|
||||
<BR>[Called By]<UL><LI><a href="#[6e]">>></a> main
|
||||
</UL>
|
||||
|
|
@ -785,9 +1012,9 @@ Global Symbols
|
|||
<BR><BR>[Called By]<UL><LI><a href="#[67]">>></a> __rt_lib_init_fp_1
|
||||
</UL>
|
||||
|
||||
<P><STRONG><a name="[bc]"></a>__fplib_config_fpu_vfp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)
|
||||
<P><STRONG><a name="[d1]"></a>__fplib_config_fpu_vfp</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)
|
||||
|
||||
<P><STRONG><a name="[bd]"></a>__fplib_config_pureend_doubles</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)
|
||||
<P><STRONG><a name="[d2]"></a>__fplib_config_pureend_doubles</STRONG> (Thumb, 0 bytes, Stack size unknown bytes, fpinit.o(x$fpl$fpinit), UNUSED)
|
||||
<P>
|
||||
<H3>
|
||||
Local Symbols
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
Dependencies for Project 'USART', Target 'USART': (DO NOT MODIFY !)
|
||||
F (.\main.c)(0x6989375A)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\main.o --omf_browse ..\obj\main.crf --depend ..\obj\main.d)
|
||||
F (.\main.c)(0x6989A803)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\main.o --omf_browse ..\obj\main.crf --depend ..\obj\main.d)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -36,12 +36,12 @@ I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
I (..\SYSTEM\delay\delay.h)(0x69893236)
|
||||
I (..\SYSTEM\usart\usart.h)(0x69893742)
|
||||
I (..\SYSTEM\usart\usart.h)(0x698981C6)
|
||||
I (C:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x54C245B8)
|
||||
I (..\HARDWARE\LED\led.h)(0x69893236)
|
||||
I (..\HARDWARE\BEEP\beep.h)(0x69893236)
|
||||
I (..\HARDWARE\KEY\key.h)(0x69893236)
|
||||
F (.\stm32f4xx_it.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_it.o --omf_browse ..\obj\stm32f4xx_it.crf --depend ..\obj\stm32f4xx_it.d)
|
||||
F (.\stm32f4xx_it.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_it.o --omf_browse ..\obj\stm32f4xx_it.crf --depend ..\obj\stm32f4xx_it.d)
|
||||
I (stm32f4xx_it.h)(0x69893236)
|
||||
I (stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -78,7 +78,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (.\system_stm32f4xx.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\system_stm32f4xx.o --omf_browse ..\obj\system_stm32f4xx.crf --depend ..\obj\system_stm32f4xx.d)
|
||||
F (.\system_stm32f4xx.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\system_stm32f4xx.o --omf_browse ..\obj\system_stm32f4xx.crf --depend ..\obj\system_stm32f4xx.d)
|
||||
I (stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x54C245B8)
|
||||
|
|
@ -114,7 +114,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\HARDWARE\LED\led.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\led.o --omf_browse ..\obj\led.crf --depend ..\obj\led.d)
|
||||
F (..\HARDWARE\LED\led.c)(0x6989A3D4)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\led.o --omf_browse ..\obj\led.crf --depend ..\obj\led.d)
|
||||
I (..\HARDWARE\LED\led.h)(0x69893236)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
|
|
@ -151,7 +151,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\HARDWARE\BEEP\beep.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\beep.o --omf_browse ..\obj\beep.crf --depend ..\obj\beep.d)
|
||||
F (..\HARDWARE\BEEP\beep.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\beep.o --omf_browse ..\obj\beep.crf --depend ..\obj\beep.d)
|
||||
I (..\HARDWARE\BEEP\beep.h)(0x69893236)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
|
|
@ -188,7 +188,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\HARDWARE\KEY\key.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\key.o --omf_browse ..\obj\key.crf --depend ..\obj\key.d)
|
||||
F (..\HARDWARE\KEY\key.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\key.o --omf_browse ..\obj\key.crf --depend ..\obj\key.d)
|
||||
I (..\HARDWARE\KEY\key.h)(0x69893236)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
|
|
@ -226,7 +226,7 @@ I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
I (..\SYSTEM\delay\delay.h)(0x69893236)
|
||||
F (..\HARDWARE\ADC\adc.c)(0x5D6CE04A)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\adc.o --omf_browse ..\obj\adc.crf --depend ..\obj\adc.d)
|
||||
F (..\HARDWARE\ADC\adc.c)(0x5D6CE04A)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\adc.o --omf_browse ..\obj\adc.crf --depend ..\obj\adc.d)
|
||||
I (..\HARDWARE\ADC\adc.h)(0x53BCE05A)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
|
|
@ -264,7 +264,7 @@ I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
I (..\SYSTEM\delay\delay.h)(0x69893236)
|
||||
F (..\HARDWARE\elemachinery\elemachinery.c)(0x69894A89)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\elemachinery.o --omf_browse ..\obj\elemachinery.crf --depend ..\obj\elemachinery.d)
|
||||
F (..\HARDWARE\elemachinery\elemachinery.c)(0x69894A89)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\elemachinery.o --omf_browse ..\obj\elemachinery.crf --depend ..\obj\elemachinery.d)
|
||||
I (..\HARDWARE\elemachinery\elemachinery.h)(0x69894E01)
|
||||
I (C:\Keil_v5\ARM\ARMCC\include\stdint.h)(0x54C245B8)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
|
|
@ -301,7 +301,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\HARDWARE\TIMER\timer.c)(0x69894DBC)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\timer.o --omf_browse ..\obj\timer.crf --depend ..\obj\timer.d)
|
||||
F (..\HARDWARE\TIMER\timer.c)(0x6989A84B)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\timer.o --omf_browse ..\obj\timer.crf --depend ..\obj\timer.d)
|
||||
I (..\HARDWARE\TIMER\timer.h)(0x5B67C8C3)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
|
|
@ -339,7 +339,7 @@ I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
I (..\HARDWARE\LED\led.h)(0x69893236)
|
||||
F (..\HARDWARE\SPI\spi.c)(0x69894ACF)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\spi.o --omf_browse ..\obj\spi.crf --depend ..\obj\spi.d)
|
||||
F (..\HARDWARE\SPI\spi.c)(0x698989CA)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\spi.o --omf_browse ..\obj\spi.crf --depend ..\obj\spi.d)
|
||||
I (..\HARDWARE\SPI\spi.h)(0x55E55127)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
|
|
@ -376,7 +376,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\SYSTEM\delay\delay.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\delay.o --omf_browse ..\obj\delay.crf --depend ..\obj\delay.d)
|
||||
F (..\SYSTEM\delay\delay.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\delay.o --omf_browse ..\obj\delay.crf --depend ..\obj\delay.d)
|
||||
I (..\SYSTEM\delay\delay.h)(0x69893236)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
|
|
@ -413,7 +413,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\SYSTEM\sys\sys.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\sys.o --omf_browse ..\obj\sys.crf --depend ..\obj\sys.d)
|
||||
F (..\SYSTEM\sys\sys.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\sys.o --omf_browse ..\obj\sys.crf --depend ..\obj\sys.d)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -449,7 +449,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\SYSTEM\usart\usart.c)(0x698937EA)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\usart.o --omf_browse ..\obj\usart.crf --depend ..\obj\usart.d)
|
||||
F (..\SYSTEM\usart\usart.c)(0x6989938B)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\usart.o --omf_browse ..\obj\usart.crf --depend ..\obj\usart.d)
|
||||
I (..\SYSTEM\sys\sys.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -485,10 +485,10 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
I (..\SYSTEM\usart\usart.h)(0x69893742)
|
||||
I (..\SYSTEM\usart\usart.h)(0x698981C6)
|
||||
I (C:\Keil_v5\ARM\ARMCC\include\stdio.h)(0x54C245B8)
|
||||
F (..\CORE\startup_stm32f40_41xxx.s)(0x69893236)(--cpu Cortex-M4.fp -g --apcs=interwork
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
--pd "__UVISION_VERSION SETA 525" --pd "STM32F407xx SETA 1"
--list ..\obj\startup_stm32f40_41xxx.lst --xref -o ..\obj\startup_stm32f40_41xxx.o --depend ..\obj\startup_stm32f40_41xxx.d)
|
||||
F (..\FWLIB\src\misc.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\misc.o --omf_browse ..\obj\misc.crf --depend ..\obj\misc.d)
|
||||
F (..\FWLIB\src\misc.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\misc.o --omf_browse ..\obj\misc.crf --depend ..\obj\misc.d)
|
||||
I (..\FWLIB\inc\misc.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -523,7 +523,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\FWLIB\src\stm32f4xx_gpio.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_gpio.o --omf_browse ..\obj\stm32f4xx_gpio.crf --depend ..\obj\stm32f4xx_gpio.d)
|
||||
F (..\FWLIB\src\stm32f4xx_gpio.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_gpio.o --omf_browse ..\obj\stm32f4xx_gpio.crf --depend ..\obj\stm32f4xx_gpio.d)
|
||||
I (..\FWLIB\inc\stm32f4xx_gpio.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -558,7 +558,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\FWLIB\src\stm32f4xx_rcc.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_rcc.o --omf_browse ..\obj\stm32f4xx_rcc.crf --depend ..\obj\stm32f4xx_rcc.d)
|
||||
F (..\FWLIB\src\stm32f4xx_rcc.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_rcc.o --omf_browse ..\obj\stm32f4xx_rcc.crf --depend ..\obj\stm32f4xx_rcc.d)
|
||||
I (..\FWLIB\inc\stm32f4xx_rcc.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -593,7 +593,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\FWLIB\src\stm32f4xx_syscfg.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_syscfg.o --omf_browse ..\obj\stm32f4xx_syscfg.crf --depend ..\obj\stm32f4xx_syscfg.d)
|
||||
F (..\FWLIB\src\stm32f4xx_syscfg.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_syscfg.o --omf_browse ..\obj\stm32f4xx_syscfg.crf --depend ..\obj\stm32f4xx_syscfg.d)
|
||||
I (..\FWLIB\inc\stm32f4xx_syscfg.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -628,7 +628,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\FWLIB\src\stm32f4xx_usart.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_usart.o --omf_browse ..\obj\stm32f4xx_usart.crf --depend ..\obj\stm32f4xx_usart.d)
|
||||
F (..\FWLIB\src\stm32f4xx_usart.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_usart.o --omf_browse ..\obj\stm32f4xx_usart.crf --depend ..\obj\stm32f4xx_usart.d)
|
||||
I (..\FWLIB\inc\stm32f4xx_usart.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -663,7 +663,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\FWLIB\src\stm32f4xx_adc.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_adc.o --omf_browse ..\obj\stm32f4xx_adc.crf --depend ..\obj\stm32f4xx_adc.d)
|
||||
F (..\FWLIB\src\stm32f4xx_adc.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_adc.o --omf_browse ..\obj\stm32f4xx_adc.crf --depend ..\obj\stm32f4xx_adc.d)
|
||||
I (..\FWLIB\inc\stm32f4xx_adc.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -698,7 +698,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\FWLIB\src\stm32f4xx_tim.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_tim.o --omf_browse ..\obj\stm32f4xx_tim.crf --depend ..\obj\stm32f4xx_tim.d)
|
||||
F (..\FWLIB\src\stm32f4xx_tim.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_tim.o --omf_browse ..\obj\stm32f4xx_tim.crf --depend ..\obj\stm32f4xx_tim.d)
|
||||
I (..\FWLIB\inc\stm32f4xx_tim.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
@ -733,7 +733,7 @@ I (..\FWLIB\inc\stm32f4xx_can.h)(0x69893236)
|
|||
I (..\FWLIB\inc\stm32f4xx_dac.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_dcmi.h)(0x69893236)
|
||||
I (..\FWLIB\inc\stm32f4xx_fsmc.h)(0x69893236)
|
||||
F (..\FWLIB\src\stm32f4xx_spi.c)(0x69893236)(-c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_spi.o --omf_browse ..\obj\stm32f4xx_spi.crf --depend ..\obj\stm32f4xx_spi.d)
|
||||
F (..\FWLIB\src\stm32f4xx_spi.c)(0x69893236)(--c99 -c --cpu Cortex-M4.fp -g -W -O0 --apcs=interwork --split_sections -I ..\CORE -I ..\SYSTEM\delay -I ..\SYSTEM\sys -I ..\SYSTEM\usart -I ..\FWLIB\STM32F4xx_StdPeriph_Driver\inc -I ..\USER -I ..\HARDWARE\LED -I ..\HARDWARE\BEEP -I ..\HARDWARE\KEY -I ..\FWLIB\inc -I ..\HARDWARE
-I.\RTE\_USART
-IC:\Keil_v5\ARM\PACK\Keil\STM32F4xx_DFP\2.14.0\Drivers\CMSIS\Device\ST\STM32F4xx\Include
-IC:\Keil_v5\ARM\CMSIS\Include
-D__UVISION_VERSION="525" -DSTM32F407xx -DSTM32F40_41xxx -DUSE_STDPERIPH_DRIVER
-o ..\obj\stm32f4xx_spi.o --omf_browse ..\obj\stm32f4xx_spi.crf --depend ..\obj\stm32f4xx_spi.d)
|
||||
I (..\FWLIB\inc\stm32f4xx_spi.h)(0x69893236)
|
||||
I (..\USER\stm32f4xx.h)(0x69893236)
|
||||
I (..\CORE\core_cm4.h)(0x69893236)
|
||||
|
|
|
|||
BIN
OBJ/led.crf
BIN
OBJ/led.crf
Binary file not shown.
BIN
OBJ/main.crf
BIN
OBJ/main.crf
Binary file not shown.
BIN
OBJ/spi.crf
BIN
OBJ/spi.crf
Binary file not shown.
BIN
OBJ/timer.crf
BIN
OBJ/timer.crf
Binary file not shown.
BIN
OBJ/usart.crf
BIN
OBJ/usart.crf
Binary file not shown.
|
|
@ -51,8 +51,8 @@ void _sys_exit(int x)
|
|||
//重定义fputc函数
|
||||
int fputc(int ch, FILE *f)
|
||||
{
|
||||
while((USART1->SR&0X40)==0);//循环发送,直到发送完毕
|
||||
USART1->DR = (u8) ch;
|
||||
while((UART4->SR&0X40)==0);//循环发送,直到发送完毕
|
||||
UART4->DR = (u8) ch;
|
||||
return ch;
|
||||
}
|
||||
#endif
|
||||
|
|
@ -66,6 +66,58 @@ u8 USART_RX_BUF[USART_REC_LEN]; //
|
|||
//bit13~0, 接收到的有效字节数目
|
||||
u16 USART_RX_STA=0; //接收状态标记
|
||||
|
||||
|
||||
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
uint8_t g_usart1_rx_buf[USART_REC_LEN];
|
||||
|
||||
uint16_t g_usart1_rx_sta = 0;
|
||||
uint16_t g_usart1_rx_state = 0;
|
||||
uint16_t g_usart2_rx_state = 0;
|
||||
uint16_t g_usart3_rx_state = 0;
|
||||
uint16_t g_usart4_rx_state = 0;
|
||||
uint16_t g_usart5_rx_state = 0;
|
||||
uint16_t g_usart6_rx_state = 0;
|
||||
|
||||
|
||||
uint8_t g_rx1_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
uint8_t g_usart2_rx_buf[USART_REC_LEN];
|
||||
|
||||
uint16_t g_usart2_rx_sta = 0;
|
||||
|
||||
uint8_t g_rx2_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
uint8_t g_usart3_rx_buf[USART_REC_LEN];
|
||||
|
||||
uint16_t g_usart3_rx_sta = 0;
|
||||
|
||||
uint8_t g_rx3_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
uint8_t g_usart4_rx_buf[USART_REC_LEN];
|
||||
|
||||
uint16_t g_usart4_rx_sta = 0;
|
||||
|
||||
uint8_t g_rx4_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
uint8_t g_usart5_rx_buf[USART_REC_LEN];
|
||||
|
||||
uint16_t g_usart5_rx_sta = 0;
|
||||
|
||||
uint8_t g_rx5_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
uint8_t g_usart6_rx_buf[USART_REC_LEN];
|
||||
|
||||
uint16_t g_usart6_rx_sta = 0;
|
||||
|
||||
uint8_t g_rx6_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
|
||||
|
||||
char receive_buffer1[RXBUFFERSIZE]={0};
|
||||
char receive_buffer2[RXBUFFERSIZE]={0};
|
||||
char receive_buffer3[RXBUFFERSIZE]={0};
|
||||
|
||||
//初始化IO 串口1
|
||||
//bound:波特率
|
||||
void uart1_init(u32 bound){
|
||||
|
|
@ -117,7 +169,36 @@ void uart1_init(u32 bound){
|
|||
|
||||
void USART1_IRQHandler(void) //串口1中断服务程序
|
||||
{
|
||||
u8 Res;
|
||||
u8 uart1_data;
|
||||
if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //接收中断
|
||||
{
|
||||
USART_ClearITPendingBit(USART1, USART_IT_RXNE);
|
||||
uart1_data =USART_ReceiveData(USART1); //读取接收到的数据
|
||||
g_rx1_buffer[0] = uart1_data;
|
||||
//USART_ClearITPendingBit(USART1, USART_IT_RXNE);
|
||||
if ( g_usart1_rx_sta == 0 && g_rx1_buffer[0] == 0xBB )
|
||||
{
|
||||
g_usart1_rx_buf[0] = g_rx1_buffer[0];
|
||||
g_usart1_rx_sta = 1;
|
||||
}
|
||||
else if( g_usart1_rx_sta != 0 )
|
||||
{
|
||||
g_usart1_rx_buf[g_usart1_rx_sta & 0X3FFF] = g_rx1_buffer[0];
|
||||
g_usart1_rx_sta++;
|
||||
if(g_usart1_rx_sta > (USART_REC_LEN - 1))
|
||||
{
|
||||
g_usart1_rx_sta = 0;
|
||||
g_usart1_rx_state = 1;
|
||||
// memset(g_usart1_rx_buf, 0x0, 6);
|
||||
// g_rx1_buffer[0] = 0x0;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else if(USART_GetITStatus(USART1, USART_IT_TXE) != RESET)
|
||||
{
|
||||
USART_ClearITPendingBit(USART1, USART_IT_TXE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -129,14 +210,14 @@ void uart2_init(u32 bound){
|
|||
NVIC_InitTypeDef NVIC_InitStructure;
|
||||
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE); //使能GPIOA时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);//使能USART1时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB1Periph_USART2,ENABLE);//使能USART1时钟
|
||||
|
||||
//串口1对应引脚复用映射
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1); //GPIOA10复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource2,GPIO_AF_USART2); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource3,GPIO_AF_USART2); //GPIOA10复用为USART1
|
||||
|
||||
//USART1端口配置
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2 | GPIO_Pin_3; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速度50MHz
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
|
||||
|
|
@ -157,7 +238,7 @@ void uart2_init(u32 bound){
|
|||
//USART_ClearFlag(USART1, USART_FLAG_TC);
|
||||
|
||||
|
||||
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
USART_ITConfig(USART2, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
|
||||
//Usart1 NVIC 配置
|
||||
NVIC_InitStructure.NVIC_IRQChannel = USART2_IRQn;//串口1中断通道
|
||||
|
|
@ -171,7 +252,36 @@ void uart2_init(u32 bound){
|
|||
|
||||
void USART2_IRQHandler(void) //串口1中断服务程序
|
||||
{
|
||||
u8 Res;
|
||||
u8 uart1_data;
|
||||
if(USART_GetITStatus(USART2, USART_IT_RXNE) != RESET) //接收中断
|
||||
{
|
||||
USART_ClearITPendingBit(USART2, USART_IT_RXNE);
|
||||
uart1_data =USART_ReceiveData(USART2); //读取接收到的数据
|
||||
g_rx2_buffer[0] = uart1_data;
|
||||
//USART_ClearITPendingBit(USART1, USART_IT_RXNE);
|
||||
if ( g_usart2_rx_sta == 0 && g_rx2_buffer[0] == 0xBB )
|
||||
{
|
||||
g_usart2_rx_buf[0] = g_rx2_buffer[0];
|
||||
g_usart2_rx_sta = 1;
|
||||
}
|
||||
else if( g_usart2_rx_sta != 0 )
|
||||
{
|
||||
g_usart2_rx_buf[g_usart2_rx_sta & 0X3FFF] = g_rx2_buffer[0];
|
||||
g_usart2_rx_sta++;
|
||||
if(g_usart2_rx_sta > (USART_REC_LEN - 1))
|
||||
{
|
||||
g_usart2_rx_sta = 0;
|
||||
g_usart2_rx_state = 1;
|
||||
// memset(g_usart1_rx_buf, 0x0, 6);
|
||||
// g_rx1_buffer[0] = 0x0;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else if(USART_GetITStatus(USART2, USART_IT_TXE) != RESET)
|
||||
{
|
||||
USART_ClearITPendingBit(USART2, USART_IT_TXE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -181,12 +291,12 @@ void uart3_init(u32 bound){
|
|||
USART_InitTypeDef USART_InitStructure;
|
||||
NVIC_InitTypeDef NVIC_InitStructure;
|
||||
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE); //使能GPIOA时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);//使能USART1时钟
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD,ENABLE); //使能GPIOA时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB1Periph_USART3,ENABLE);//使能USART1时钟
|
||||
|
||||
//串口1对应引脚复用映射
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1); //GPIOA10复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource8,GPIO_AF_USART3); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART3); //GPIOA10复用为USART1
|
||||
|
||||
//USART1端口配置
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10; //GPIOA9与GPIOA10
|
||||
|
|
@ -194,7 +304,7 @@ void uart3_init(u32 bound){
|
|||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速度50MHz
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //上拉
|
||||
GPIO_Init(GPIOA,&GPIO_InitStructure); //初始化PA9,PA10
|
||||
GPIO_Init(GPIOD,&GPIO_InitStructure); //初始化PA9,PA10
|
||||
|
||||
//USART1 初始化设置
|
||||
USART_InitStructure.USART_BaudRate = bound;//波特率设置
|
||||
|
|
@ -210,7 +320,7 @@ void uart3_init(u32 bound){
|
|||
//USART_ClearFlag(USART1, USART_FLAG_TC);
|
||||
|
||||
|
||||
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
USART_ITConfig(USART3, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
|
||||
//Usart1 NVIC 配置
|
||||
NVIC_InitStructure.NVIC_IRQChannel = USART3_IRQn;//串口1中断通道
|
||||
|
|
@ -224,7 +334,36 @@ void uart3_init(u32 bound){
|
|||
|
||||
void USART3_IRQHandler(void) //串口1中断服务程序
|
||||
{
|
||||
u8 Res;
|
||||
u8 uart1_data;
|
||||
if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET) //接收中断
|
||||
{
|
||||
USART_ClearITPendingBit(USART3, USART_IT_RXNE);
|
||||
uart1_data =USART_ReceiveData(USART3); //读取接收到的数据
|
||||
g_rx3_buffer[0] = uart1_data;
|
||||
//USART_ClearITPendingBit(USART1, USART_IT_RXNE);
|
||||
if ( g_usart3_rx_sta == 0 && g_rx3_buffer[0] == 0xBB )
|
||||
{
|
||||
g_usart3_rx_buf[0] = g_rx3_buffer[0];
|
||||
g_usart3_rx_sta = 1;
|
||||
}
|
||||
else if( g_usart3_rx_sta != 0 )
|
||||
{
|
||||
g_usart3_rx_buf[g_usart3_rx_sta & 0X3FFF] = g_rx3_buffer[0];
|
||||
g_usart3_rx_sta++;
|
||||
if(g_usart3_rx_sta > (USART_REC_LEN - 1))
|
||||
{
|
||||
g_usart3_rx_sta = 0;
|
||||
g_usart3_rx_state = 1;
|
||||
// memset(g_usart1_rx_buf, 0x0, 6);
|
||||
// g_rx1_buffer[0] = 0x0;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else if(USART_GetITStatus(USART3, USART_IT_TXE) != RESET)
|
||||
{
|
||||
USART_ClearITPendingBit(USART3, USART_IT_TXE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -235,14 +374,14 @@ void uart4_init(u32 bound){
|
|||
NVIC_InitTypeDef NVIC_InitStructure;
|
||||
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE); //使能GPIOA时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);//使能USART1时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB1Periph_UART4,ENABLE);//使能USART1时钟
|
||||
|
||||
//串口1对应引脚复用映射
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1); //GPIOA10复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource0,GPIO_AF_USART1); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource1,GPIO_AF_USART1); //GPIOA10复用为USART1
|
||||
|
||||
//USART1端口配置
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速度50MHz
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
|
||||
|
|
@ -256,14 +395,14 @@ void uart4_init(u32 bound){
|
|||
USART_InitStructure.USART_Parity = USART_Parity_No;//无奇偶校验位
|
||||
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无硬件数据流控制
|
||||
USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //收发模式
|
||||
USART_Init(USART1, &USART_InitStructure); //初始化串口1
|
||||
USART_Init(UART4, &USART_InitStructure); //初始化串口1
|
||||
|
||||
USART_Cmd(USART1, ENABLE); //使能串口1
|
||||
USART_Cmd(UART4, ENABLE); //使能串口1
|
||||
|
||||
//USART_ClearFlag(USART1, USART_FLAG_TC);
|
||||
|
||||
|
||||
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
USART_ITConfig(UART4, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
|
||||
//Usart1 NVIC 配置
|
||||
NVIC_InitStructure.NVIC_IRQChannel = UART4_IRQn;//串口1中断通道
|
||||
|
|
@ -287,20 +426,30 @@ void uart5_init(u32 bound){
|
|||
USART_InitTypeDef USART_InitStructure;
|
||||
NVIC_InitTypeDef NVIC_InitStructure;
|
||||
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE); //使能GPIOA时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);//使能USART1时钟
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC,ENABLE); //使能GPIOA时钟
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD,ENABLE); //使能GPIOA时钟
|
||||
|
||||
RCC_APB2PeriphClockCmd(RCC_APB1Periph_UART5,ENABLE);//使能USART1时钟
|
||||
|
||||
//串口1对应引脚复用映射
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1); //GPIOA10复用为USART1
|
||||
GPIO_PinAFConfig(GPIOC,GPIO_PinSource12,GPIO_AF_UART5); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOD,GPIO_PinSource2,GPIO_AF_UART5); //GPIOA10复用为USART1
|
||||
|
||||
//USART1端口配置
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12 ; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速度50MHz
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //上拉
|
||||
GPIO_Init(GPIOA,&GPIO_InitStructure); //初始化PA9,PA10
|
||||
GPIO_Init(GPIOC,&GPIO_InitStructure); //初始化PA9,PA10
|
||||
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2 ; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速度50MHz
|
||||
//GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
|
||||
//GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //上拉
|
||||
GPIO_Init(GPIOD,&GPIO_InitStructure); //初始化PA9,PA10
|
||||
|
||||
|
||||
//USART1 初始化设置
|
||||
USART_InitStructure.USART_BaudRate = bound;//波特率设置
|
||||
|
|
@ -309,14 +458,14 @@ void uart5_init(u32 bound){
|
|||
USART_InitStructure.USART_Parity = USART_Parity_No;//无奇偶校验位
|
||||
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无硬件数据流控制
|
||||
USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //收发模式
|
||||
USART_Init(USART1, &USART_InitStructure); //初始化串口1
|
||||
USART_Init(UART5, &USART_InitStructure); //初始化串口1
|
||||
|
||||
USART_Cmd(USART1, ENABLE); //使能串口1
|
||||
USART_Cmd(UART5, ENABLE); //使能串口1
|
||||
|
||||
//USART_ClearFlag(USART1, USART_FLAG_TC);
|
||||
|
||||
|
||||
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
USART_ITConfig(UART5, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
|
||||
//Usart1 NVIC 配置
|
||||
NVIC_InitStructure.NVIC_IRQChannel = UART5_IRQn;//串口1中断通道
|
||||
|
|
@ -340,20 +489,20 @@ void uart6_init(u32 bound){
|
|||
USART_InitTypeDef USART_InitStructure;
|
||||
NVIC_InitTypeDef NVIC_InitStructure;
|
||||
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE); //使能GPIOA时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);//使能USART1时钟
|
||||
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOC,ENABLE); //使能GPIOA时钟
|
||||
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART6,ENABLE);//使能USART1时钟
|
||||
|
||||
//串口1对应引脚复用映射
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource9,GPIO_AF_USART1); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOA,GPIO_PinSource10,GPIO_AF_USART1); //GPIOA10复用为USART1
|
||||
GPIO_PinAFConfig(GPIOC,GPIO_PinSource6,GPIO_AF_USART1); //GPIOA9复用为USART1
|
||||
GPIO_PinAFConfig(GPIOC,GPIO_PinSource7,GPIO_AF_USART1); //GPIOA10复用为USART1
|
||||
|
||||
//USART1端口配置
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_9 | GPIO_Pin_10; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7; //GPIOA9与GPIOA10
|
||||
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能
|
||||
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; //速度50MHz
|
||||
GPIO_InitStructure.GPIO_OType = GPIO_OType_PP; //推挽复用输出
|
||||
GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP; //上拉
|
||||
GPIO_Init(GPIOA,&GPIO_InitStructure); //初始化PA9,PA10
|
||||
GPIO_Init(GPIOC,&GPIO_InitStructure); //初始化PA9,PA10
|
||||
|
||||
//USART1 初始化设置
|
||||
USART_InitStructure.USART_BaudRate = bound;//波特率设置
|
||||
|
|
@ -362,14 +511,14 @@ void uart6_init(u32 bound){
|
|||
USART_InitStructure.USART_Parity = USART_Parity_No;//无奇偶校验位
|
||||
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;//无硬件数据流控制
|
||||
USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx; //收发模式
|
||||
USART_Init(USART1, &USART_InitStructure); //初始化串口1
|
||||
USART_Init(USART6, &USART_InitStructure); //初始化串口1
|
||||
|
||||
USART_Cmd(USART1, ENABLE); //使能串口1
|
||||
USART_Cmd(USART6, ENABLE); //使能串口1
|
||||
|
||||
//USART_ClearFlag(USART1, USART_FLAG_TC);
|
||||
|
||||
|
||||
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
USART_ITConfig(USART6, USART_IT_RXNE, ENABLE);//开启相关中断
|
||||
|
||||
//Usart1 NVIC 配置
|
||||
NVIC_InitStructure.NVIC_IRQChannel = USART6_IRQn;//串口1中断通道
|
||||
|
|
@ -383,7 +532,36 @@ void uart6_init(u32 bound){
|
|||
|
||||
void USART6_IRQHandler(void) //串口1中断服务程序
|
||||
{
|
||||
u8 Res;
|
||||
u8 uart1_data;
|
||||
if(USART_GetITStatus(USART6, USART_IT_RXNE) != RESET) //接收中断
|
||||
{
|
||||
USART_ClearITPendingBit(USART6, USART_IT_RXNE);
|
||||
uart1_data =USART_ReceiveData(USART6); //读取接收到的数据
|
||||
g_rx6_buffer[0] = uart1_data;
|
||||
//USART_ClearITPendingBit(USART1, USART_IT_RXNE);
|
||||
if ( g_usart2_rx_sta == 0 && g_rx6_buffer[0] == 0xBB )
|
||||
{
|
||||
g_usart6_rx_buf[0] = g_rx6_buffer[0];
|
||||
g_usart6_rx_sta = 1;
|
||||
}
|
||||
else if( g_usart6_rx_sta != 0 )
|
||||
{
|
||||
g_usart6_rx_buf[g_usart6_rx_sta & 0X3FFF] = g_rx6_buffer[0];
|
||||
g_usart6_rx_sta++;
|
||||
if(g_usart6_rx_sta > (USART_REC_LEN - 1))
|
||||
{
|
||||
g_usart6_rx_sta = 0;
|
||||
g_usart6_rx_state = 1;
|
||||
// memset(g_usart1_rx_buf, 0x0, 6);
|
||||
// g_rx1_buffer[0] = 0x0;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
else if(USART_GetITStatus(USART6, USART_IT_TXE) != RESET)
|
||||
{
|
||||
USART_ClearITPendingBit(USART6, USART_IT_TXE);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -26,8 +26,9 @@
|
|||
//3,增加了USART_REC_LEN,用于定义串口最大允许接收的字节数(不大于2的14次方)
|
||||
//4,修改了EN_USART1_RX的使能方式
|
||||
//////////////////////////////////////////////////////////////////////////////////
|
||||
#define USART_REC_LEN 200 //定义最大接收字节数 200
|
||||
#define EN_USART1_RX 1 //使能(1)/禁止(0)串口1接收
|
||||
#define USART_REC_LEN 6 /* 定义最大接收字节数 200 */
|
||||
#define USART_EN_RX 1 /* 使能(1)/禁止(0)串口1接收 */
|
||||
#define RXBUFFERSIZE 1 /* 缓存大小 */
|
||||
|
||||
extern u8 USART_RX_BUF[USART_REC_LEN]; //接收缓冲,最大USART_REC_LEN个字节.末字节为换行符
|
||||
extern u16 USART_RX_STA; //接收状态标记
|
||||
|
|
|
|||
|
|
@ -100,8 +100,8 @@
|
|||
<MDIClientArea>
|
||||
<RegID>0</RegID>
|
||||
<MDITabState>
|
||||
<Len>1038</Len>
|
||||
<Data>01000000040000000100000001000000010000000100000000000000020000000000000001000000010000000000000028000000280000000100000008000000070000000100000060443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C656C656D616368696E6572795C656C656D616368696E6572792E63000000000E656C656D616368696E6572792E6300000000C5D4F200FFFFFFFF4E443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C4144435C6164632E6300000000056164632E6300000000FFDC7800FFFFFFFF52443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C54494D45525C74696D65722E63000000000774696D65722E6300000000BECEA100FFFFFFFF4E443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C5350495C7370692E6300000000057370692E6300000000F0A0A100FFFFFFFF4E443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C5350495C7370692E6800000000057370692E6800000000BCA8E100FFFFFFFF60443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C656C656D616368696E6572795C656C656D616368696E6572792E68000000000E656C656D616368696E6572792E68000000009CC1B600FFFFFFFF4E443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C4144435C6164632E6800000000056164632E6800000000F7B88600FFFFFFFF4C443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C53595354454D5C7379735C7379732E6800000000057379732E6800000000D9ADC200FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000004A010000660000008007000071020000</Data>
|
||||
<Len>1356</Len>
|
||||
<Data>0100000004000000010000000100000001000000010000000000000002000000000000000100000001000000000000002800000028000000010000000B000000020000000100000060443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C656C656D616368696E6572795C656C656D616368696E6572792E63000000000E656C656D616368696E6572792E6300000000C5D4F200FFFFFFFF4E443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C4144435C6164632E6300000000056164632E6300000000FFDC7800FFFFFFFF52443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C54494D45525C74696D65722E63000000000774696D65722E6300000000BECEA100FFFFFFFF4E443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C5350495C7370692E6300000000057370692E6300000000F0A0A100FFFFFFFF4E443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C5350495C7370692E6800000000057370692E6800000000BCA8E100FFFFFFFF60443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C656C656D616368696E6572795C656C656D616368696E6572792E68000000000E656C656D616368696E6572792E68000000009CC1B600FFFFFFFF4E443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C48415244574152455C4144435C6164632E6800000000056164632E6800000000F7B88600FFFFFFFF4C443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C53595354454D5C7379735C7379732E6800000000057379732E6800000000D9ADC200FFFFFFFF50443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C53595354454D5C75736172745C75736172742E63000000000775736172742E6300000000A5C2D700FFFFFFFF47443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C555345525C6D61696E2E6300000000066D61696E2E6300000000B3A6BE00FFFFFFFF55443A5C666967687465727465616D5C70726F6A6563745C67755C6D616B655C636F64655C73656E736F725F323032365C73656E736F725F323032365C46574C49425C7372635C73746D3332663478785F7263632E63000000000F73746D3332663478785F7263632E6300000000EAD6A300FFFFFFFF0100000010000000C5D4F200FFDC7800BECEA100F0A0A100BCA8E1009CC1B600F7B88600D9ADC200A5C2D700B3A6BE00EAD6A300F6FA7D00B5E99D005FC3CF00C1838300CACAD5000100000000000000020000004A010000660000008007000071020000</Data>
|
||||
</MDITabState>
|
||||
</MDIClientArea>
|
||||
<ViewEx>
|
||||
|
|
@ -1796,7 +1796,7 @@
|
|||
<Name>File</Name>
|
||||
<Buttons>
|
||||
<Len>2419</Len>
|
||||
<Data>00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE80300000000000000000000000000000000000000000000000100000001000000960000000200205000000000056874696D3296000000000000000D00056874696D321253797374656D436C6F636B5F436F6E6669670E55534152545F53656E64446174610564656C61790B67496D6167655F6D6F6E6F085350495F53454E440D5365745F4261636B6C6967687404766F69640E5365745F426C61636B6C696768740F4755495F436C65616E53637265656E084C43445F496E6974074C4344544553540E48414C5F4F50414D505F496E697400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000400160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65B9030000</Data>
|
||||
<Data>00200000010000002800FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000000000000000000000000000000000000000100000001000000018001E100000000000001000000000000000000000000000000000100000001000000018003E1000000000000020000000000000000000000000000000001000000010000000180CD7F0000000000000300000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000018023E100000000040004000000000000000000000000000000000100000001000000018022E100000000040005000000000000000000000000000000000100000001000000018025E10000000000000600000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001802BE10000000004000700000000000000000000000000000000010000000100000001802CE10000000004000800000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001807A8A0000000000000900000000000000000000000000000000010000000100000001807B8A0000000004000A00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180D3B00000000000000B000000000000000000000000000000000100000001000000018015B10000000004000C0000000000000000000000000000000001000000010000000180F4B00000000004000D000000000000000000000000000000000100000001000000018036B10000000004000E00000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FF88000000000400460000000000000000000000000000000001000000010000000180FE880000000004004500000000000000000000000000000000010000000100000001800B810000000004001300000000000000000000000000000000010000000100000001800C810000000004001400000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180F0880000020000000F000000000000000000000000000000000100000001000000FFFF0100120043555646696E64436F6D626F427574746F6EE80300000000000000000000000000000000000000000000000100000001000000960000000200205000000000056874696D3296000000000000000D00056874696D321253797374656D436C6F636B5F436F6E6669670E55534152545F53656E64446174610564656C61790B67496D6167655F6D6F6E6F085350495F53454E440D5365745F4261636B6C6967687404766F69640E5365745F426C61636B6C696768740F4755495F436C65616E53637265656E084C43445F496E6974074C4344544553540E48414C5F4F50414D505F496E697400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000018024E10000000000001100000000000000000000000000000000010000000100000001800A810000000000001200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E2280000002000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B46350000000000000000000000000100000001000000000000000000000001000000020021802280000000000000150000002153746172742F53746F70202644656275672053657373696F6E094374726C2B4635000000000000000000000000010000000100000000000000000000000100000000002180E0010000000000007500000021456E65726779204D6561737572656D656E742026776974686F75742044656275670000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C488000000000000160000000000000000000000000000000001000000010000000180C988000000000400180000000000000000000000000000000001000000010000000180C788000000000000190000000000000000000000000000000001000000010000000180C8880000000000001700000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000021804C010000020001001A0000000F2650726F6A6563742057696E646F77000000000000000000000000010000000100000000000000000000000100000008002180DD880000000000001A0000000750726F6A656374000000000000000000000000010000000100000000000000000000000100000000002180DC8B0000000000003A00000005426F6F6B73000000000000000000000000010000000100000000000000000000000100000000002180E18B0000000000003B0000000946756E6374696F6E73000000000000000000000000010000000100000000000000000000000100000000002180E28B000000000000400000000954656D706C6174657300000000000000000000000001000000010000000000000000000000010000000000218018890000000000003D0000000E536F757263652042726F777365720000000000000000000000000100000001000000000000000000000001000000000021800000000000000400FFFFFFFF00000000000000000001000000000000000100000000000000000000000100000000002180D988000000000000390000000C4275696C64204F7574707574000000000000000000000000010000000100000000000000000000000100000000002180E38B000000000000410000000B46696E64204F75747075740000000000000000000000000100000001000000000000000000000001000000000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180FB7F0000000000001B000000000000000000000000000000000100000001000000000000000446696C65B9030000</Data>
|
||||
</Buttons>
|
||||
<OriginalItems>
|
||||
<Len>1423</Len>
|
||||
|
|
@ -1812,7 +1812,7 @@
|
|||
<Name>Build</Name>
|
||||
<Buttons>
|
||||
<Len>970</Len>
|
||||
<Data>00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000004001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000005555341525496000000000000000100055553415254000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000</Data>
|
||||
<Data>00200000010000001000FFFF01001100434D4643546F6F6C426172427574746F6ECF7F0000000000001C0000000000000000000000000000000001000000010000000180D07F0000000002001D000000000000000000000000000000000100000001000000018030800000000000001E000000000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6EC7040000000000006A0000000C4261746368204275696C2664000000000000000000000000010000000100000000000000000000000100000004000580C7040000000000006A0000000C4261746368204275696C266400000000000000000000000001000000010000000000000000000000010000000000058046070000000000006B0000000D42617463682052656275696C640000000000000000000000000100000001000000000000000000000001000000000005804707000000000000FFFFFFFF0B426174636820436C65616E0100000000000000000000000100000001000000000000000000000001000000000005809E8A0000000000001F0000000F4261746326682053657475702E2E2E000000000000000000000000010000000100000000000000000000000100000000000180D17F0000000004002000000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF00000000000000000000000000010000000100000001804C8A0000000000002100000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6EBA000000000000000000000000000000000000000000000000010000000100000096000000030020500000000005555341525496000000000000000100055553415254000000000180EB880000000000002200000000000000000000000000000000010000000100000001800000000001000000FFFFFFFF0000000000000000000000000001000000010000000180C07F000000000000230000000000000000000000000000000001000000010000000180B08A000000000400240000000000000000000000000000000001000000010000000180A8010000000000004E00000000000000000000000000000000010000000100000001807202000000000000530000000000000000000000000000000001000000010000000180BE010000000000005000000000000000000000000000000000010000000100000000000000054275696C64DC010000</Data>
|
||||
</Buttons>
|
||||
<OriginalItems>
|
||||
<Len>583</Len>
|
||||
|
|
@ -1852,7 +1852,7 @@
|
|||
<ActiveMDIGroup>0</ActiveMDIGroup>
|
||||
<MDIGroup>
|
||||
<Size>100</Size>
|
||||
<ActiveTab>7</ActiveTab>
|
||||
<ActiveTab>2</ActiveTab>
|
||||
<Doc>
|
||||
<Name>..\HARDWARE\elemachinery\elemachinery.c</Name>
|
||||
<ColumnNumber>28</ColumnNumber>
|
||||
|
|
@ -1874,17 +1874,17 @@
|
|||
<Doc>
|
||||
<Name>..\HARDWARE\TIMER\timer.c</Name>
|
||||
<ColumnNumber>0</ColumnNumber>
|
||||
<TopLine>44</TopLine>
|
||||
<CurrentLine>45</CurrentLine>
|
||||
<TopLine>184</TopLine>
|
||||
<CurrentLine>211</CurrentLine>
|
||||
<Folding>1</Folding>
|
||||
<ContractedFolders></ContractedFolders>
|
||||
<PaneID>0</PaneID>
|
||||
</Doc>
|
||||
<Doc>
|
||||
<Name>..\HARDWARE\SPI\spi.c</Name>
|
||||
<ColumnNumber>0</ColumnNumber>
|
||||
<ColumnNumber>14</ColumnNumber>
|
||||
<TopLine>1</TopLine>
|
||||
<CurrentLine>1</CurrentLine>
|
||||
<CurrentLine>13</CurrentLine>
|
||||
<Folding>1</Folding>
|
||||
<ContractedFolders></ContractedFolders>
|
||||
<PaneID>0</PaneID>
|
||||
|
|
@ -1925,6 +1925,33 @@
|
|||
<ContractedFolders></ContractedFolders>
|
||||
<PaneID>0</PaneID>
|
||||
</Doc>
|
||||
<Doc>
|
||||
<Name>..\SYSTEM\usart\usart.c</Name>
|
||||
<ColumnNumber>15</ColumnNumber>
|
||||
<TopLine>111</TopLine>
|
||||
<CurrentLine>137</CurrentLine>
|
||||
<Folding>1</Folding>
|
||||
<ContractedFolders></ContractedFolders>
|
||||
<PaneID>0</PaneID>
|
||||
</Doc>
|
||||
<Doc>
|
||||
<Name>.\main.c</Name>
|
||||
<ColumnNumber>0</ColumnNumber>
|
||||
<TopLine>90</TopLine>
|
||||
<CurrentLine>117</CurrentLine>
|
||||
<Folding>1</Folding>
|
||||
<ContractedFolders></ContractedFolders>
|
||||
<PaneID>0</PaneID>
|
||||
</Doc>
|
||||
<Doc>
|
||||
<Name>..\FWLIB\src\stm32f4xx_rcc.c</Name>
|
||||
<ColumnNumber>0</ColumnNumber>
|
||||
<TopLine>79</TopLine>
|
||||
<CurrentLine>1</CurrentLine>
|
||||
<Folding>1</Folding>
|
||||
<ContractedFolders></ContractedFolders>
|
||||
<PaneID>0</PaneID>
|
||||
</Doc>
|
||||
</MDIGroup>
|
||||
</MDIGroups>
|
||||
|
||||
|
|
|
|||
|
|
@ -338,7 +338,7 @@
|
|||
<GroupNumber>3</GroupNumber>
|
||||
<FileNumber>12</FileNumber>
|
||||
<FileType>1</FileType>
|
||||
<tvExp>1</tvExp>
|
||||
<tvExp>0</tvExp>
|
||||
<tvExpOptDlg>0</tvExpOptDlg>
|
||||
<bDave2>0</bDave2>
|
||||
<PathWithFileName>..\SYSTEM\sys\sys.c</PathWithFileName>
|
||||
|
|
|
|||
|
|
@ -323,7 +323,7 @@
|
|||
<wLevel>1</wLevel>
|
||||
<uThumb>0</uThumb>
|
||||
<uSurpInc>0</uSurpInc>
|
||||
<uC99>0</uC99>
|
||||
<uC99>1</uC99>
|
||||
<uGnu>0</uGnu>
|
||||
<useXO>0</useXO>
|
||||
<v6Lang>1</v6Lang>
|
||||
|
|
|
|||
187
USER/main.c
187
USER/main.c
|
|
@ -13,6 +13,183 @@
|
|||
//广州市星翼电子科技有限公司
|
||||
//作者:正点原子 @ALIENTEK
|
||||
|
||||
void MX_TIM2_Init(void);
|
||||
//void PWM_SetPulseWidth(uint16_t pulseWidth);
|
||||
//void PWM_SetSpeed(int16_t speed);
|
||||
void Error_Handler(void);
|
||||
|
||||
typedef uint32_t u32;
|
||||
typedef uint16_t u16;
|
||||
typedef uint8_t u8;
|
||||
// 定义TMC2240寄存器地址
|
||||
#define REG_MICROSTEPS 0x03
|
||||
#define REG_CURRENT 0x05
|
||||
#define EG_STATUS 0x0F
|
||||
|
||||
|
||||
extern volatile u16 rx_len; // 接收计数
|
||||
extern volatile u8 rx_flag; // 接收完成标志
|
||||
#define GCONF 0x00
|
||||
#define IHOLD_IRUN 0x10
|
||||
#define TPOWERDOWN 0x11
|
||||
#define TPWMTHRS 0x13
|
||||
#define TCOOLTHRS 0x14
|
||||
#define CHOPCONF 0x6C
|
||||
#define COOLCONF 0x6D
|
||||
#define DRV_CONF 0x0A
|
||||
#define DRV_STATUS 0x6F
|
||||
#define PWMCONF 0x70
|
||||
|
||||
#define SOFT_SPI_DR_PORT GPIOD
|
||||
#define SOFT_SPI_DR_PIN GPIO_Pin_3
|
||||
//forward and reverse
|
||||
#define D3_DR_forward() GPIO_SetBits(SOFT_SPI_DR_PORT, SOFT_SPI_DR_PIN)
|
||||
#define D3_DR_reverse() GPIO_ResetBits(SOFT_SPI_DR_PORT, SOFT_SPI_DR_PIN)
|
||||
|
||||
void TMC2240_Init_rotating() {
|
||||
// 启用电压补偿和PWM模式
|
||||
TMC2240_WriteReg(GCONF, 0x000000C4);
|
||||
|
||||
// 电流设置:IHOLD=0.5A, IRUN=1.2A
|
||||
TMC2240_WriteReg(IHOLD_IRUN, 0x00180C10);
|
||||
|
||||
// 16微步(MRES=4),TOFF=3
|
||||
TMC2240_WriteReg(CHOPCONF, 0x030000C3);
|
||||
// 设置速度阈值500Hz(低于此值切StealthChop2)
|
||||
TMC2240_WriteReg(TPWMTHRS, 200);
|
||||
// 驱动配置(根据需求调整)
|
||||
TMC2240_WriteReg(DRV_CONF, 0x00000001);
|
||||
|
||||
// 停机电流延时
|
||||
TMC2240_WriteReg(TPOWERDOWN, 10);
|
||||
}
|
||||
|
||||
void TMC2240_Init() {
|
||||
// 启用StealthChop2自动调谐 + SpreadCycle动态切换
|
||||
TMC2240_WriteReg(GCONF, 0x000000C4 | (1 << 7)); // bit7=1
|
||||
|
||||
// 电流设置:IRUN=1.2A, IHOLD=0.8A(公式计算值)
|
||||
//TMC2240_WriteReg(IHOLD_IRUN, 0x00190C10);
|
||||
TMC2240_WriteReg(IHOLD_IRUN, 0x04090101); //可能运行电流太大,发热,这里调小试试
|
||||
// 降低微步分辨率(例如从256微步改为16微步)
|
||||
TMC2240_WriteReg(CHOPCONF, 0x070080C3 ); // MRES=4(16微步)
|
||||
|
||||
// 设置速度阈值500Hz(低于此值切StealthChop2)
|
||||
TMC2240_WriteReg(TPWMTHRS, 50);
|
||||
|
||||
// 其他配置保持不变
|
||||
TMC2240_WriteReg(DRV_CONF, 0x00000001);
|
||||
|
||||
TMC2240_WriteReg(TPOWERDOWN, 10);
|
||||
}
|
||||
// 检查驱动器状态
|
||||
void CheckDriverStatus() {
|
||||
uint32_t status = TMC2240_ReadReg(DRV_STATUS);//
|
||||
if (status & (1 << 26)) { // 检查短路到地
|
||||
printf("Short to ground detected\n");
|
||||
}
|
||||
if (status & (1 << 25)) { // 检查过温
|
||||
printf("Overtemperature detected\n");
|
||||
}
|
||||
if (status & (1 << 24)) { // 检查失速
|
||||
printf("Motor stall detected\n");
|
||||
}
|
||||
}
|
||||
|
||||
void motor_steps(uint8_t num, uint8_t dir, uint16_t steps)
|
||||
{
|
||||
GPIO_SetBits(GPIOD, GPIO_Pin_4); //TMS2240 - 2使能信号
|
||||
delay_us(steps);
|
||||
GPIO_ResetBits(GPIOD, GPIO_Pin_4); //TMS2240 - 1使能信号
|
||||
}
|
||||
|
||||
void motor_stop(uint8_t num)
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
uint8_t crc8_calculate(const uint8_t *data, uint32_t length, uint8_t poly, uint8_t init_val, uint8_t ref_out)
|
||||
{
|
||||
// 1. 初始化 CRC 寄存器
|
||||
uint8_t crc = init_val;
|
||||
|
||||
// 2. 遍历每个字节
|
||||
for (uint32_t i = 0; i < length; i++)
|
||||
{
|
||||
// 3. 将当前字节与 CRC 寄存器异或(核心步骤)
|
||||
crc ^= data[i];
|
||||
|
||||
// 4. 遍历当前字节的每一位(8 位)
|
||||
for (uint8_t j = 0; j < 8; j++)
|
||||
{
|
||||
// 5. 判断最高位是否为 1,决定是否异或多项式
|
||||
if (crc & 0x80)
|
||||
{
|
||||
// 左移 1 位,再异或多项式(等价于多项式除法)
|
||||
crc = (crc << 1) ^ poly;
|
||||
}
|
||||
else
|
||||
{
|
||||
// 最高位为 0,仅左移 1 位
|
||||
crc <<= 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 6. 输出反转(若需要)
|
||||
if (ref_out)
|
||||
{
|
||||
// 按位反转 CRC 结果(如 0x12 → 0x48)
|
||||
uint8_t reversed = 0;
|
||||
for (uint8_t i = 0; i < 8; i++)
|
||||
{
|
||||
reversed |= ((crc >> i) & 0x01) << (7 - i);
|
||||
}
|
||||
crc = reversed;
|
||||
}
|
||||
|
||||
return crc;
|
||||
}
|
||||
|
||||
uint8_t crc8_standard(const uint8_t *data, uint32_t length)
|
||||
{
|
||||
// 适配 CRC-8/MAXIM/ITU 标准:poly=0x07, init=0x00, ref_out=0
|
||||
return crc8_calculate(data, length, 0x07, 0x00, 0);
|
||||
}
|
||||
|
||||
uint32_t status ;
|
||||
u8 flg=0;
|
||||
|
||||
extern int flag_microswitch_left; // 光电开关left 限位
|
||||
extern int flag_microswitch_right; // 光电开关right 限位
|
||||
|
||||
|
||||
extern uint8_t g_usart1_rx_buf[USART_REC_LEN];
|
||||
extern uint16_t g_usart1_rx_sta;
|
||||
extern uint16_t g_usart1_rx_state;
|
||||
|
||||
extern uint8_t g_rx1_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
extern uint8_t g_usart2_rx_buf[USART_REC_LEN];
|
||||
extern uint16_t g_usart2_rx_sta;
|
||||
extern uint8_t g_rx2_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
extern uint8_t g_usart3_rx_buf[USART_REC_LEN];
|
||||
extern uint16_t g_usart3_rx_sta;
|
||||
extern uint8_t g_rx3_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
extern uint8_t g_usart4_rx_buf[USART_REC_LEN];
|
||||
extern uint16_t g_usart4_rx_sta;
|
||||
extern uint8_t g_rx4_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
extern uint8_t g_usart5_rx_buf[USART_REC_LEN];
|
||||
extern uint16_t g_usart5_rx_sta;
|
||||
extern uint8_t g_rx5_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
/* 接收缓冲, 最大USART_REC_LEN个字节. */
|
||||
extern uint8_t g_usart6_rx_buf[USART_REC_LEN];
|
||||
extern uint16_t g_usart6_rx_sta;
|
||||
extern uint8_t g_rx6_buffer[RXBUFFERSIZE]; /* HAL库使用的串口接收缓冲 */
|
||||
|
||||
|
||||
int main(void)
|
||||
{
|
||||
|
|
@ -23,7 +200,15 @@ int main(void)
|
|||
NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//设置系统中断优先级分组2
|
||||
delay_init(168); //延时初始化
|
||||
uart1_init(115200); //串口初始化波特率为115200
|
||||
LED_Init(); //初始化与LED连接的硬件接口
|
||||
gpio_Init(); //初始化gpio
|
||||
motor_spi1_init();
|
||||
motor_spi2_init();
|
||||
TIM1_PWM_Init(16, 32);
|
||||
TIM2_PWM_Init(16, 32);
|
||||
TIM4_PWM_Init(16, 32);
|
||||
TIM_Cmd(TIM1, DISABLE);
|
||||
TIM_Cmd(TIM2, DISABLE);
|
||||
TIM_Cmd(TIM4, DISABLE);
|
||||
while(1)
|
||||
{
|
||||
if(USART_RX_STA&0x8000)
|
||||
|
|
|
|||
Loading…
Reference in New Issue