STM32F769IDiscovery
1.00
uDANTE Audio Networking with STM32F7 DISCO board
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
Eclipse_WS2
STM32F769IDiscovery
CMSIS
DSP_Lib
Source
ControllerFunctions
arm_pid_init_f32.c
Go to the documentation of this file.
1
/* ----------------------------------------------------------------------
2
* Copyright (C) 2010-2014 ARM Limited. All rights reserved.
3
*
4
* $Date: 19. March 2015
5
* $Revision: V.1.4.5
6
*
7
* Project: CMSIS DSP Library
8
* Title: arm_pid_init_f32.c
9
*
10
* Description: Floating-point PID Control initialization function
11
*
12
*
13
* Target Processor: Cortex-M4/Cortex-M3/Cortex-M0
14
*
15
* Redistribution and use in source and binary forms, with or without
16
* modification, are permitted provided that the following conditions
17
* are met:
18
* - Redistributions of source code must retain the above copyright
19
* notice, this list of conditions and the following disclaimer.
20
* - Redistributions in binary form must reproduce the above copyright
21
* notice, this list of conditions and the following disclaimer in
22
* the documentation and/or other materials provided with the
23
* distribution.
24
* - Neither the name of ARM LIMITED nor the names of its contributors
25
* may be used to endorse or promote products derived from this
26
* software without specific prior written permission.
27
*
28
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
29
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
30
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
31
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
32
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
33
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
34
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
35
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
36
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
37
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
38
* ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
39
* POSSIBILITY OF SUCH DAMAGE.
40
* ------------------------------------------------------------------- */
41
42
#include "
arm_math.h
"
43
62
void
arm_pid_init_f32
(
63
arm_pid_instance_f32
* S,
64
int32_t resetStateFlag)
65
{
66
67
/* Derived coefficient A0 */
68
S->
A0
= S->
Kp
+ S->
Ki
+ S->
Kd
;
69
70
/* Derived coefficient A1 */
71
S->
A1
= (-S->
Kp
) - ((
float32_t
) 2.0 * S->
Kd
);
72
73
/* Derived coefficient A2 */
74
S->
A2
= S->
Kd
;
75
76
/* Check whether state needs reset or not */
77
if
(resetStateFlag)
78
{
79
/* Clear the state buffer. The size will be always 3 samples */
80
memset(S->
state
, 0, 3u *
sizeof
(
float32_t
));
81
}
82
83
}
84
arm_pid_instance_f32::state
float32_t state[3]
Definition:
arm_math.h:1774
float32_t
float float32_t
32-bit floating-point type definition.
Definition:
arm_math.h:407
arm_pid_instance_f32::Kd
float32_t Kd
Definition:
arm_math.h:1777
arm_math.h
arm_pid_instance_f32
Instance structure for the floating-point PID Control.
Definition:
arm_math.h:1769
arm_pid_instance_f32::A2
float32_t A2
Definition:
arm_math.h:1773
arm_pid_instance_f32::Ki
float32_t Ki
Definition:
arm_math.h:1776
arm_pid_init_f32
void arm_pid_init_f32(arm_pid_instance_f32 *S, int32_t resetStateFlag)
Initialization function for the floating-point PID Control.
Definition:
arm_pid_init_f32.c:62
arm_pid_instance_f32::A0
float32_t A0
Definition:
arm_math.h:1771
arm_pid_instance_f32::Kp
float32_t Kp
Definition:
arm_math.h:1775
arm_pid_instance_f32::A1
float32_t A1
Definition:
arm_math.h:1772
Generated by
1.8.11