Просмотр исходного кода

设计了设置脉冲后立即生效的代码

master
Chiri 1 месяц назад
Родитель
Сommit
7fccad5180
9 измененных файлов: 855 добавлений и 757 удалений
  1. +61
    -7
      Core/Src/main.c
  2. +4
    -4
      Core/Src/stm32f4xx_it.c
  3. +714
    -714
      EWARM/PLSR.dep
  4. +4
    -3
      EWARM/settings/PLSR.dbgdt
  5. +7
    -7
      EWARM/settings/PLSR.dnx
  6. +19
    -19
      EWARM/settings/Project.wsdt
  7. +43
    -0
      EWARM/settings/Project_EditorBookmarks.xml
  8. +2
    -2
      Hardware/PLSR.c
  9. +1
    -1
      Hardware/PLSR.h

+ 61
- 7
Core/Src/main.c Просмотреть файл

@@ -44,6 +44,7 @@ int32_t CNT_Only[10] = {0};
uint8_t EXT_Flag = 0; uint8_t EXT_Flag = 0;
uint8_t PulseStartFlag = 0; uint8_t PulseStartFlag = 0;
uint8_t ArrTimes = 0; uint8_t ArrTimes = 0;
uint8_t FixArrFlag = 0;


extern uint8_t Register_H[16384]; ///<寄存器的高字节 extern uint8_t Register_H[16384]; ///<寄存器的高字节
extern uint8_t Register_L[16384]; ///<寄存器的低字节 extern uint8_t Register_L[16384]; ///<寄存器的低字节
@@ -234,7 +235,10 @@ int main(void)
/* 掉电数据读取 */ /* 掉电数据读取 */
ModbusLoadSRAM(); ModbusLoadSRAM();
PLSRPluseLoad(); //读取脉冲设置
PLSROptionLoad(); //读取脉冲基础设置
NowFrequency = PulseOutput[0].Frequency;
NowPulse = Options.StartPulse;
CPU_CRITICAL_EXIT() ; ///退出临界区 CPU_CRITICAL_EXIT() ; ///退出临界区
OSStart(&err); OSStart(&err);
@@ -309,10 +313,22 @@ void Y1Direction(void *p_arg)
while(1) while(1)
{ {

if (NowFrequency != PulseOutput[NowPulse].Frequency)/* 如果现在寄存器内的频率与实际输出的频率不一致 */
{
FixArrFlag = 1; //使能频率修改脉冲加减速
if (PulseOutput[NowPulse].Frequency > NowFrequency)
{
Acc = (PulseOutput[NowPulse].Frequency - NowFrequency ) / Options.AccUpTime;
}
else
{
Acc = (PulseOutput[NowPulse].Frequency - NowFrequency ) / Options.AccDownTime;
}
HAL_TIM_Base_Start_IT(&htim3); /* 启动定时器3和中断 */
}
OSTimeDly(100, OS_OPT_TIME_DLY, &err); // 延时 100 个节拍 OSTimeDly(100, OS_OPT_TIME_DLY, &err); // 延时 100 个节拍
} }
}
}


/** /**
* @brief 任务2,脉冲开始,数据处理 * @brief 任务2,脉冲开始,数据处理
@@ -333,7 +349,7 @@ void PulseStartTsk(void *p_arg)
{ {
EN = 0; EN = 0;
PulseStartFlag = 1; PulseStartFlag = 1;
//NowFrequeny = PulseOutput[NowPulse].Frequency; /* 保存当前脉冲的频率 */
NowFrequency = PulseOutput[NowPulse].Frequency; /* 保存当前脉冲的频率 */
PulseStart(); PulseStart();
HAL_TIM_Base_Start_IT(&htim3); /* 启动定时器3和中断 */ HAL_TIM_Base_Start_IT(&htim3); /* 启动定时器3和中断 */
} }
@@ -510,10 +526,11 @@ void EXTSet(void *p_arg)
*/ */
void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
{ {
//OSIntEnter(); /* 进入中断 */
OSIntEnter(); /* 进入中断 */
if (htim == (&htim3)) if (htim == (&htim3))
{ {
/* 段切换的加减速 */
if (ArrFlag == 1) if (ArrFlag == 1)
{ {
/* 脉冲加速 */ /* 脉冲加速 */
@@ -551,6 +568,44 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
} }
} }
} }
/* 实时修改频率的加减速 */
if (FixArrFlag == 1)
{
/* 脉冲加速 */
if (Acc > 0)
{
if (ArrTimes <= Options.AccUpTime)
{
SetFrequency(Options.SentPost, NowFrequency + ArrTimes * Acc);
if(ArrTimes == 0) PulseStart(); /* 开始产生脉冲 */
ArrTimes++;
}
else
{
SetFrequency(Options.SentPost, PulseOutput[NowPulse].Frequency);
ArrTimes = 0;
FixArrFlag = 0;
HAL_TIM_Base_Stop_IT(&htim3); // 停止定时器并禁用中断
}
}
/* 脉冲减速 */
else if (Acc <= 0)
{
if (ArrTimes <= Options.AccDownTime)
{
SetFrequency(Options.SentPost, NowFrequency + ArrTimes * Acc);
if (ArrTimes == 0) PulseStart(); /* 开始产生脉冲 */
ArrTimes++;
}
else
{
SetFrequency(Options.SentPost, PulseOutput[NowPulse].Frequency);
ArrTimes = 0;
FixArrFlag = 0;
HAL_TIM_Base_Stop_IT(&htim3); // 停止定时器并禁用中断
}
}
}
/* 第一段脉冲的加速 */ /* 第一段脉冲的加速 */
if (NowPulse == Options.StartPulse && PulseStartFlag == 1) if (NowPulse == Options.StartPulse && PulseStartFlag == 1)
@@ -561,7 +616,6 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
ArrTimes++; ArrTimes++;
SetFrequency(Options.SentPost, ArrTimes * Acc); SetFrequency(Options.SentPost, ArrTimes * Acc);
if (ArrTimes == 1) PulseStart(); /* 开始产生脉冲 */ if (ArrTimes == 1) PulseStart(); /* 开始产生脉冲 */
} }
else else
{ {
@@ -580,7 +634,7 @@ void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim)
} }
} }
//OSIntExit(); /* 退出中断 */
OSIntExit(); /* 退出中断 */
} }
/* USER CODE END 4 */ /* USER CODE END 4 */




+ 4
- 4
Core/Src/stm32f4xx_it.c Просмотреть файл

@@ -213,7 +213,7 @@ void SysTick_Handler(void)
void TIM2_IRQHandler(void) void TIM2_IRQHandler(void)
{ {
/* USER CODE BEGIN TIM2_IRQn 0 */ /* USER CODE BEGIN TIM2_IRQn 0 */
// OSIntEnter(); /* 进入中断 */
OSIntEnter(); /* 进入中断 */
/* USER CODE END TIM2_IRQn 0 */ /* USER CODE END TIM2_IRQn 0 */
HAL_TIM_IRQHandler(&htim2); HAL_TIM_IRQHandler(&htim2);
/* USER CODE BEGIN TIM2_IRQn 1 */ /* USER CODE BEGIN TIM2_IRQn 1 */
@@ -250,7 +250,7 @@ void TIM2_IRQHandler(void)
} }
ArrFlag = 1; ArrFlag = 1;
SetNextPulse();/* 设置下一次进入中断的脉冲数 */ SetNextPulse();/* 设置下一次进入中断的脉冲数 */
//NowFrequeny = PulseOutput[NowPulse].Frequency; /* 保存当前脉冲的频率 */
NowFrequency = PulseOutput[NowPulse].Frequency; /* 保存当前脉冲的频率 */
HAL_TIM_Base_Start_IT(&htim3); /* 启动定时器3和中断 */ HAL_TIM_Base_Start_IT(&htim3); /* 启动定时器3和中断 */
} }
@@ -299,7 +299,7 @@ void TIM2_IRQHandler(void)
} }
ArrFlag = 1; ArrFlag = 1;
SetNextPulse();/* 设置下一次进入中断的脉冲数 */ SetNextPulse();/* 设置下一次进入中断的脉冲数 */
//NowFrequeny = PulseOutput[NowPulse].Frequency; /* 保存当前脉冲的频率 */
NowFrequency = PulseOutput[NowPulse].Frequency; /* 保存当前脉冲的频率 */
HAL_TIM_Base_Start_IT(&htim3); /* 启动定时器3和中断 */ HAL_TIM_Base_Start_IT(&htim3); /* 启动定时器3和中断 */
} }


@@ -312,7 +312,7 @@ void TIM2_IRQHandler(void)
HAL_TIM_PWM_Stop_IT(&htim10,TIM_CHANNEL_1); /* 停止PWM输出 */ HAL_TIM_PWM_Stop_IT(&htim10,TIM_CHANNEL_1); /* 停止PWM输出 */
} }
} }
// OSIntExit(); /* 退出中断 */
OSIntExit(); /* 退出中断 */
/* USER CODE END TIM2_IRQn 1 */ /* USER CODE END TIM2_IRQn 1 */
} }




+ 714
- 714
EWARM/PLSR.dep
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 4
- 3
EWARM/settings/PLSR.dbgdt Просмотреть файл

@@ -153,7 +153,7 @@
<RecentlyUsedMenus>1</RecentlyUsedMenus> <RecentlyUsedMenus>1</RecentlyUsedMenus>
<MenuShadows>1</MenuShadows> <MenuShadows>1</MenuShadows>
<ShowAllMenusAfterDelay>1</ShowAllMenusAfterDelay> <ShowAllMenusAfterDelay>1</ShowAllMenusAfterDelay>
<CommandsUsage>2D10000022001386000005000000298100000400000010860000BB0500002CE100000200000029E1000004000000239200000600000020810000050000000F810000010000005F860000040000001D810000010000000C8100001000000004860000030000005986000001000000288100000300000056860000E80200002BE100000700000000840000030000001F810000EF0000000E81000002000000098600000100000025E10000010000000B8100000600000000E100000200000014860000230200005886000001000000008600000200000005810000010000001186000015030000468100001001000060860000010000005D86000012000000088600000500000005860000010000001686000001000000</CommandsUsage>
<CommandsUsage>C210000025001386000005000000298100000A00000010860000EE0500002CE100000200000029E1000004000000239200000600000020810000050000000F810000010000005F860000040000001D810000010000000C8100001000000004860000030000005986000001000000288100001100000056860000E90200002BE100000700000000840000030000001F810000FB0000000E81000002000000098600000100000025E10000010000000B8100000600000000E1000002000000148600003D0200005886000001000000278100000F0000000086000002000000058100000100000011860000320300000281000001000000468100001601000060860000010000001E810000060000005D86000016000000088600000500000005860000010000001686000001000000</CommandsUsage>
</MFCToolBarParameters> </MFCToolBarParameters>
<CommandManager> <CommandManager>
<CommandsWithoutImages>300020870000238700002487000021870000198600000D8400000F84000008840000FFFFFFFF54840000328100001C810000098400002AE10000008200001C8200000182000067860000838600005886000004DC00007784000007840000808C000044D500007486000045D5000046D5000047D5000048D5000049D500004AD500004BD500004CD500001C8F00001E8F00001F8F0000208F0000218F0000118F000000DC000001DC000002DC000003DC0000A4860000A38600005486000059860000</CommandsWithoutImages> <CommandsWithoutImages>300020870000238700002487000021870000198600000D8400000F84000008840000FFFFFFFF54840000328100001C810000098400002AE10000008200001C8200000182000067860000838600005886000004DC00007784000007840000808C000044D500007486000045D5000046D5000047D5000048D5000049D500004AD500004BD500004CD500001C8F00001E8F00001F8F0000208F0000218F0000118F000000DC000001DC000002DC000003DC0000A4860000A38600005486000059860000</CommandsWithoutImages>
@@ -1012,6 +1012,7 @@
<item>arr</item> <item>arr</item>
<item>PulseNum</item> <item>PulseNum</item>
<item>CNT_Only</item> <item>CNT_Only</item>
<item>NowFrequency</item>
<item></item> <item></item>
</expressions> </expressions>
<col-names> <col-names>
@@ -1120,7 +1121,7 @@
</BasePane-34048> </BasePane-34048>
<MFCToolBar-34049> <MFCToolBar-34049>
<Name>Debug</Name> <Name>Debug</Name>
<Buttons>00200000010000000800FFFF01001100434D4643546F6F6C426172427574746F6E568600000000000035000000FFFEFF0000000000000000000000000001000000010000000180138600000000000031000000FFFEFF00000000000000000000000000010000000100000001805E8600000000000037000000FFFEFF0000000000000000000000000001000000010000000180608600000000000039000000FFFEFF00000000000000000000000000010000000100000001805D8600000000000036000000FFFEFF000000000000000000000000000100000001000000018010860000000000002F000000FFFEFF0000000000000000000000000001000000010000000180118600000000040030000000FFFEFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E148600000000000032000000FFFEFF205200650073006500740020007400680065002000640065006200750067006700650064002000700072006F006700720061006D000A00520065007300650074000000000000000000000000000100000001000000000000000000000001000000060009802087000000000000FFFFFFFFFFFEFF06530079007300740065006D000100000000000000000000000100000001000000000000000000000001000000000009802387000000000000FFFFFFFFFFFEFF0443006F00720065000100000000000000000000000100000001000000000000000000000001000000000009802487000000000000FFFFFFFFFFFEFF0853006F006600740077006100720065000100000000000000000000000100000001000000000000000000000001000000000009802187000000000000FFFFFFFFFFFEFF12480061007200640077006100720065002000720065007300650074002000700069006E000100000000000000000000000100000001000000000000000000000001000000000009800000000000000400FFFFFFFFFFFEFF000000000000000000000000000100000001000000000000000000000001000000000009801986000000000000FFFFFFFFFFFEFF000100000000000000000000000100000001000000000000000000000001000000000000000000FFFEFF0544006500620075006700C6000000</Buttons>
<Buttons>00200000010000000800FFFF01001100434D4643546F6F6C426172427574746F6E568600000000040035000000FFFEFF0000000000000000000000000001000000010000000180138600000000040031000000FFFEFF00000000000000000000000000010000000100000001805E8600000000040037000000FFFEFF0000000000000000000000000001000000010000000180608600000000040039000000FFFEFF00000000000000000000000000010000000100000001805D8600000000040036000000FFFEFF000000000000000000000000000100000001000000018010860000000004002F000000FFFEFF0000000000000000000000000001000000010000000180118600000000000030000000FFFEFF000000000000000000000000000100000001000000FFFF01001500434D4643546F6F6C4261724D656E75427574746F6E148600000000040032000000FFFEFF205200650073006500740020007400680065002000640065006200750067006700650064002000700072006F006700720061006D000A00520065007300650074000000000000000000000000000100000001000000000000000000000001000000060009802087000000000000FFFFFFFFFFFEFF06530079007300740065006D000100000000000000000000000100000001000000000000000000000001000000000009802387000000000000FFFFFFFFFFFEFF0443006F00720065000100000000000000000000000100000001000000000000000000000001000000000009802487000000000000FFFFFFFFFFFEFF0853006F006600740077006100720065000100000000000000000000000100000001000000000000000000000001000000000009802187000000000000FFFFFFFFFFFEFF12480061007200640077006100720065002000720065007300650074002000700069006E000100000000000000000000000100000001000000000000000000000001000000000009800000000000000400FFFFFFFFFFFEFF000000000000000000000000000100000001000000000000000000000001000000000009801986000000000000FFFFFFFFFFFEFF000100000000000000000000000100000001000000000000000000000001000000000000000000FFFEFF0544006500620075006700C6000000</Buttons>
</MFCToolBar-34049> </MFCToolBar-34049>
<Pane-34049> <Pane-34049>
<ID>34049</ID> <ID>34049</ID>
@@ -1154,7 +1155,7 @@
</BasePane-34050> </BasePane-34050>
<MFCToolBar-34051> <MFCToolBar-34051>
<Name>Main</Name> <Name>Main</Name>
<Buttons>00200000010000002100FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000067000000FFFEFF000000000000000000000000000100000001000000018001E100000000000068000000FFFEFF000000000000000000000000000100000001000000018003E10000000000006A000000FFFEFF000000000000000000000000000100000001000000018000810000000000004B000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF000000000000000000000000000100000001000000018007E10000000000006D000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF000000000000000000000000000100000001000000018023E10000000004006F000000FFFEFF000000000000000000000000000100000001000000018022E10000000004006E000000FFFEFF000000000000000000000000000100000001000000018025E100000000000071000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF00000000000000000000000000010000000100000001802BE100000000000074000000FFFEFF00000000000000000000000000010000000100000001802CE100000000040075000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6E4281000000000000FFFFFFFFFFFEFF0000000000000000000100000000000000010000007800000002002050FFFFFFFFFFFEFF0096000000000000000000018021810000000004005E000000FFFEFF000000000000000000000000000100000001000000018024E100000000000070000000FFFEFF000000000000000000000000000100000001000000018028E100000000040072000000FFFEFF000000000000000000000000000100000001000000018029E100000000000073000000FFFEFF000000000000000000000000000100000001000000018002810000000000004D000000FFFEFF0000000000000000000000000001000000010000000180298100000000000062000000FFFEFF0000000000000000000000000001000000010000000180278100000000000060000000FFFEFF0000000000000000000000000001000000010000000180288100000000000061000000FFFEFF00000000000000000000000000010000000100000001801D810000000000005A000000FFFEFF00000000000000000000000000010000000100000001801E810000000004005B000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF00000000000000000000000000010000000100000001800B8100000000000051000000FFFEFF00000000000000000000000000010000000100000001800C8100000000000052000000FFFEFF00000000000000000000000000010000000100000001805F8600000000000066000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF00000000000000000000000000010000000100000001801F810000000000005C000000FFFEFF000000000000000000000000000100000001000000018020810000000000005D000000FFFEFF0000000000000000000000000001000000010000000180468100000000020064000000FFFEFF00000000000000000000000000010000000100000000000000FFFEFF044D00610069006E00FF020000</Buttons>
<Buttons>00200000010000002100FFFF01001100434D4643546F6F6C426172427574746F6E00E100000000000067000000FFFEFF000000000000000000000000000100000001000000018001E100000000000068000000FFFEFF000000000000000000000000000100000001000000018003E10000000000006A000000FFFEFF000000000000000000000000000100000001000000018000810000000000004B000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF000000000000000000000000000100000001000000018007E10000000000006D000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF000000000000000000000000000100000001000000018023E10000000004006F000000FFFEFF000000000000000000000000000100000001000000018022E10000000004006E000000FFFEFF000000000000000000000000000100000001000000018025E100000000000071000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF00000000000000000000000000010000000100000001802BE100000000040074000000FFFEFF00000000000000000000000000010000000100000001802CE100000000040075000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF000000000000000000000000000100000001000000FFFF01001900434D4643546F6F6C426172436F6D626F426F78427574746F6E4281000000000000FFFFFFFFFFFEFF0000000000000000000100000000000000010000007800000002002050FFFFFFFFFFFEFF0096000000000000000000018021810000000004005E000000FFFEFF000000000000000000000000000100000001000000018024E100000000000070000000FFFEFF000000000000000000000000000100000001000000018028E100000000040072000000FFFEFF000000000000000000000000000100000001000000018029E100000000000073000000FFFEFF000000000000000000000000000100000001000000018002810000000000004D000000FFFEFF0000000000000000000000000001000000010000000180298100000000000062000000FFFEFF0000000000000000000000000001000000010000000180278100000000000060000000FFFEFF0000000000000000000000000001000000010000000180288100000000000061000000FFFEFF00000000000000000000000000010000000100000001801D810000000000005A000000FFFEFF00000000000000000000000000010000000100000001801E810000000004005B000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF00000000000000000000000000010000000100000001800B8100000000000051000000FFFEFF00000000000000000000000000010000000100000001800C8100000000000052000000FFFEFF00000000000000000000000000010000000100000001805F8600000000000066000000FFFEFF00000000000000000000000000010000000100000001800000000001000000FFFFFFFFFFFEFF00000000000000000000000000010000000100000001801F810000000000005C000000FFFEFF000000000000000000000000000100000001000000018020810000000000005D000000FFFEFF0000000000000000000000000001000000010000000180468100000000020064000000FFFEFF00000000000000000000000000010000000100000000000000FFFEFF044D00610069006E00FF020000</Buttons>
</MFCToolBar-34051> </MFCToolBar-34051>
<Pane-34051> <Pane-34051>
<ID>34051</ID> <ID>34051</ID>


+ 7
- 7
EWARM/settings/PLSR.dnx Просмотреть файл

@@ -12,15 +12,15 @@
<ByteLimit>50</ByteLimit> <ByteLimit>50</ByteLimit>
</Stack> </Stack>
<StLinkDriver> <StLinkDriver>
<stlinkserialNo>44142557</stlinkserialNo>
<stlinkfoundProbes />
<stlinkResetStyle>0</stlinkResetStyle> <stlinkResetStyle>0</stlinkResetStyle>
<stlinkResetStrategy>2</stlinkResetStrategy> <stlinkResetStrategy>2</stlinkResetStrategy>
<CStepIntDis>_ 0</CStepIntDis> <CStepIntDis>_ 0</CStepIntDis>
<LeaveTargetRunning>_ 0</LeaveTargetRunning> <LeaveTargetRunning>_ 0</LeaveTargetRunning>
<stlinkserialNo>44142557</stlinkserialNo>
<stlinkfoundProbes />
</StLinkDriver> </StLinkDriver>
<DebugChecksum> <DebugChecksum>
<Checksum>1343253174</Checksum>
<Checksum>4243162381</Checksum>
</DebugChecksum> </DebugChecksum>
<Exceptions> <Exceptions>
<StopOnUncaught>_ 0</StopOnUncaught> <StopOnUncaught>_ 0</StopOnUncaught>
@@ -126,6 +126,10 @@
<ShowTimeSum>1</ShowTimeSum> <ShowTimeSum>1</ShowTimeSum>
<SumSortOrder>0</SumSortOrder> <SumSortOrder>0</SumSortOrder>
</EventLog> </EventLog>
<TermIOLog>
<LoggingEnabled>_ 0</LoggingEnabled>
<LogFile>_ ""</LogFile>
</TermIOLog>
<LogFile> <LogFile>
<LoggingEnabled>_ 0</LoggingEnabled> <LoggingEnabled>_ 0</LoggingEnabled>
<LogFile>_ ""</LogFile> <LogFile>_ ""</LogFile>
@@ -155,8 +159,4 @@
<Count>1</Count> <Count>1</Count>
<SuppressDialog>0</SuppressDialog> <SuppressDialog>0</SuppressDialog>
</Aliases> </Aliases>
<TermIOLog>
<LoggingEnabled>_ 0</LoggingEnabled>
<LogFile>_ ""</LogFile>
</TermIOLog>
</settings> </settings>

+ 19
- 19
EWARM/settings/Project.wsdt
Разница между файлами не показана из-за своего большого размера
Просмотреть файл


+ 43
- 0
EWARM/settings/Project_EditorBookmarks.xml Просмотреть файл

@@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<userBookmarks>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>315</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>592</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>318</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>305</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>333</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>366</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>427</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>457</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>523</row>
</bookmark>
<bookmark>
<path>C:\Users\Chiri\Desktop\TrainCamp-Jiangyunsong-PLSR\Core\Src\main.c</path>
<row>595</row>
</bookmark>
</userBookmarks>

+ 2
- 2
Hardware/PLSR.c Просмотреть файл

@@ -20,7 +20,7 @@ int32_t AccUpCount; /*
int32_t AccDownCount; /* 减速脉冲数 */ int32_t AccDownCount; /* 减速脉冲数 */
int32_t NowMAXPulse; /* 当前要达到的总脉冲 */ int32_t NowMAXPulse; /* 当前要达到的总脉冲 */


uint32_t NowFrequeny;
uint32_t NowFrequency;


int32_t PulseCount = 0; int32_t PulseCount = 0;


@@ -33,7 +33,7 @@ int32_t PulseCount = 0;
void SetFrequency(uint8_t SentPost, uint32_t Frequency) void SetFrequency(uint8_t SentPost, uint32_t Frequency)
{ {
CalculatePSCARR(Frequency, 72000000, 65535, &psc, &arr); CalculatePSCARR(Frequency, 72000000, 65535, &psc, &arr);
//printf("Fre=%d,",Frequency);
printf("Fre=%d,",Frequency);
switch (SentPost) switch (SentPost)
{ {
case 0: TIM10->ARR = arr, TIM10->PSC = psc, TIM10->CCR1 = arr / 2; break; case 0: TIM10->ARR = arr, TIM10->PSC = psc, TIM10->CCR1 = arr / 2; break;


+ 1
- 1
Hardware/PLSR.h Просмотреть файл

@@ -41,7 +41,7 @@ extern int32_t AccUpCount; ///<<
extern int32_t AccDownCount;///<<减速脉冲数 extern int32_t AccDownCount;///<<减速脉冲数
extern int32_t NowMAXPulse; ///<<当前要达到的总脉冲 extern int32_t NowMAXPulse; ///<<当前要达到的总脉冲
extern int32_t PulseCount; extern int32_t PulseCount;
extern uint32_t NowFrequeny;
extern uint32_t NowFrequency;
extern int32_t NextPulseEND; extern int32_t NextPulseEND;






Загрузка…
Отмена
Сохранить