2002 Microchip Technology Inc.
Preliminary
DS30485A-page 121
PIC18FXX39
14.4
Developing Applications Using
the Motor Control Kernel
The Motor Control kernel allows users to develop their
applications without having knowledge of motor con-
trol. The key parameters of the motor control kernel can
be set and read through the Application Program Inter-
face (API) methods discussed in the previous section.
The overall application can be thought of as a protocol
stack, as shown in Figure 14-3. In this case, the API
methods reside between the user’s application and the
ProMPT kernel, and are used to exchange parameter
values. The motor control kernel sets the PWM duty
cycles based on the inputs from the application
software.
A typical motor control routine is shown in
Example 14-1. In this case, the motor will run at 20 Hz
for 10 seconds, accelerate to 60 Hz at the rate of
10 Hz/s, remain at 60 Hz for 20 seconds, and finally
stop.
FIGURE 14-3:
LAYERS OF THE
MOTOR CONTROL
ARCHITECTURE STACK
EXAMPLE 14-1:
MOTOR CONTROL ROUTINE USING THE ProMPT APIs
ProMPT Motor
Hardware
Application Program
Interface (API)
Application Software
Parameters
Control Kernel
Methods
and User Interface
Void main()
{
unsigned char i;
unsigned char j;
ProMPT_Init(0);
// Initialize the ProMPT block
i = ProMPT_SetFrequency(10);
// Set motor frequency to 10Hz
for (i=0;i<161;i++)
// Set counter for 10 sec @ 1/16 sec per tick
{
j = ProMPT_Tick(void);
// Tick of 1/16 sec
ProMPT_ClearTick(void);
// Clearing the Tick flag
}
ProMPT_SetAccelRate(10);
// Set acceleration rate to 10 Hz/sec
i = ProMPT_SetFrequency(60);
// Set motor frequency to 60 Hz
for (i=0;i<161;i++)
// Set counter for 20 Sec @ 1/16 sec per tick
{
// (2 loops of 10 Sec each)
j = ProMPT_Tick(void);
// Tick of 1/16 Sec
ProMPT_ClearTick(void);
// Clearing the Tick flag
j = ProMPT_Tick(void);
// Tick of 1/16 Sec
ProMPT_ClearTick(void);
// Clearing the Tick flag
}
i = ProMPT_SetFrequency(0);
// Set motor frequency to 0 Hz (stop)
while(1);
}
// End of the task
相关PDF资料
PIC18LF2539T-I/SO IC MCU FLASH 12KX16 EE AD 28SOIC
PIC18LF4539T-I/PT IC MCU FLASH 12KX16 EE AD 44TQFP
PIC16LF874AT-I/ML IC MCU FLASH 4KX14 A/D 44QFN
PIC16F77T-E/ML IC MCU FLASH 8KX14 A/D 44QFN
PIC16F874A-E/ML IC MCU FLASH 4KX14 A/D 44QFN
PIC16F74T-I/ML IC MCU FLASH 4KX14 A/D 44QFN
PIC16F77T-I/ML IC MCU FLASH 8KX14 A/D 44QFN
PIC18F24K20-I/SS IC PIC MCU FLASH 8KX16 28SSOP
相关代理商/技术参数
PIC18F4539T-I/PT 功能描述:8位微控制器 -MCU 24KB 1408 RAM 32 I/O RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F4550EPT 制造商:Microchip Technology Inc 功能描述:
PIC18F4550-I/ML 功能描述:8位微控制器 -MCU 32kBF 2048RM FSUSB2 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F4550-I/P 功能描述:8位微控制器 -MCU 32kBF 2048RM FSUSB2 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F4550-I/PT 功能描述:8位微控制器 -MCU 32kBF 2048RM FSUSB2 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F4550T-I/ML 功能描述:8位微控制器 -MCU 32kBF 2048RM FSUSB2 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F4550T-I/PT 功能描述:8位微控制器 -MCU 32kBF 2048RM FSUSB2 RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT
PIC18F4553-I/ML 功能描述:8位微控制器 -MCU 32KB FLSH 2048 RAM FSUSB 2.0 12B ADC RoHS:否 制造商:Silicon Labs 核心:8051 处理器系列:C8051F39x 数据总线宽度:8 bit 最大时钟频率:50 MHz 程序存储器大小:16 KB 数据 RAM 大小:1 KB 片上 ADC:Yes 工作电源电压:1.8 V to 3.6 V 工作温度范围:- 40 C to + 105 C 封装 / 箱体:QFN-20 安装风格:SMD/SMT