std_het.h
来自「最新版IAR FOR ARM(EWARM)5.11中的代码例子」· C头文件 代码 · 共 783 行 · 第 1/2 页
H
783 行
/****************************************************************************/
/* std_het.h TMS470HET Release 1.40 */
/* Copyright (c) 1996,1997 Texas Instruments Incorporated */
/* */
/* NOTE: HET memory allows word (32 bit) accesses only ! So be careful */
/* with using the bit field structures (like acmp_format ...) */
/* */
/****************************************************************************/
#ifndef HETBYTE
# define HETBYTE unsigned char
#endif
typedef volatile struct memory_format
{
unsigned int program_word ;
unsigned int control_word ;
unsigned int data_word ;
unsigned int reserved_word ;
} HET_MEMORY ;
/*---------------------------------------------*/
/* ACMP INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct acmp_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int : 3 ;
unsigned int : 5 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ; /**/
unsigned int en_pin_action : 1 ;
unsigned int cond_addr : 8 ;
unsigned int pin_select : 5 ;
unsigned int : 2 ;
unsigned int pin_action : 1 ;
unsigned int : 1 ;
unsigned int t_register_select : 1 ;
unsigned int ab_register_select : 1 ;
unsigned int interrupt_enable : 1 ;
unsigned int : 7 ;
unsigned int data : 20 ;
unsigned int : 5 ;
} ACMP_FIELDS;
typedef volatile union
{
ACMP_FIELDS acmp ;
HET_MEMORY memory ;
} ACMP_INSTRUCTION;
/*---------------------------------------------*/
/* ECMP INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct ecmp_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int hr_lr : 1 ;
unsigned int angle_compare : 1 ;
unsigned int : 6 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ;
unsigned int en_pin_action : 1 ;
unsigned int cond_addr : 8 ;
unsigned int pin_select : 5 ;
unsigned int sub_opcode : 2 ;
unsigned int pin_action : 1 ;
unsigned int opposite_action : 1 ;
unsigned int t_register_select : 1 ;
unsigned int ab_register_select : 1 ;
unsigned int interrupt_enable : 1 ;
unsigned int : 7 ;
unsigned int data : 25 ;
/*TCJ*/
/*unsigned int hr_data : 5 ;*/
} ECMP_FIELDS;
typedef volatile union
{
ECMP_FIELDS ecmp ;
HET_MEMORY memory ;
} ECMP_INSTRUCTION;
/*---------------------------------------------*/
/* SCMP INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct scmp_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int : 1 ;
unsigned int : 2 ;
unsigned int : 5 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ;
unsigned int en_pin_action : 1 ;
unsigned int cond_addr : 8 ;
unsigned int pin_select : 5 ;
unsigned int compare_mode : 2 ;
unsigned int pin_action : 1 ;
unsigned int opposite_action : 1 ;
unsigned int : 1 ;
unsigned int restart_en : 1 ;
unsigned int interrupt_enable : 1 ;
unsigned int : 7 ;
unsigned int data : 20 ;
unsigned int : 5 ;
} SCMP_FIELDS ;
typedef volatile union
{
SCMP_FIELDS scmp ;
HET_MEMORY memory ;
} SCMP_INSTRUCTION;
/*---------------------------------------------*/
/* MCMP INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct mcmp_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int hr_lr : 1 ;
unsigned int angle_compare : 1 ;
unsigned int : 1 ;
unsigned int save_subtract : 1 ;
unsigned int : 4 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ;
unsigned int en_pin_action : 1 ;
unsigned int cond_addr : 8 ;
unsigned int pin_select : 5 ;
unsigned int compare_mode : 2 ;
unsigned int pin_action : 1 ;
unsigned int opposite_action : 1 ;
unsigned int t_register_select : 1 ;
unsigned int ab_register_select : 1 ;
unsigned int interrupt_enable : 1 ;
unsigned int : 7 ;
unsigned int data : 25 ;
/*TCJ*/
/*unsigned int hr_data : 5 ;*/
} MCMP_FIELDS ;
typedef volatile union
{
MCMP_FIELDS mcmp ;
HET_MEMORY memory ;
} MCMP_INSTRUCTION;
/*---------------------------------------------*/
/* MOV64 INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct mov64_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int remote_address : 8 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ;
unsigned int en_pin_action : 1 ;
unsigned int cond_addr : 8 ;
unsigned int pin_select : 5 ;
unsigned int compare_mode : 2 ;
unsigned int pin_action : 1 ;
unsigned int opposite_action : 1 ;
unsigned int t_register_select : 1 ;
unsigned int ab_register_select : 1 ;
unsigned int interrupt_enable : 1 ;
unsigned int : 7 ;
unsigned int data : 25 ;
/* TCJ */
/*unsigned int hr_data : 5 ; */
} MOV64_FIELDS ;
typedef volatile union
{
MOV64_FIELDS mov64 ;
HET_MEMORY memory ;
} MOV64_INSTRUCTION;
/*---------------------------------------------*/
/* DADM64 INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct dadm64_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int remote_address : 8 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ;
unsigned int en_pin_action : 1 ;
unsigned int cond_addr : 8 ;
unsigned int pin_select : 5 ;
unsigned int compare_mode : 2 ;
unsigned int pin_action : 1 ;
unsigned int opposite_action : 1 ;
unsigned int t_register_select : 1 ;
unsigned int ab_register_select : 1 ;
unsigned int interrupt_enable : 1 ;
unsigned int : 7 ;
unsigned int data : 25 ;
/*TCJ*/
/*unsigned int hr_data : 5 ;*/
} DADM64_FIELDS ;
typedef volatile union
{
DADM64_FIELDS dadm64 ;
HET_MEMORY memory ;
} DADM64_INSTRUCTION;
/*---------------------------------------------*/
/* RADM64 INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct RADM64_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int remote_address : 8 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ;
unsigned int en_pin_action : 1 ;
unsigned int cond_addr : 8 ;
unsigned int pin_select : 5 ;
unsigned int compare_mode : 2 ;
unsigned int pin_action : 1 ;
unsigned int opposite_action : 1 ;
unsigned int t_register_select : 1 ;
unsigned int ab_register_select : 1 ;
unsigned int interrupt_enable : 1 ;
unsigned int : 7 ;
unsigned int data : 25 ;
/*TCJ*/
/*unsigned int hr_data : 5 ;*/
} RADM64_FIELDS ;
typedef volatile union
{
RADM64_FIELDS radm64 ;
HET_MEMORY memory ;
} RADM64_INSTRUCTION;
/*---------------------------------------------*/
/* MOV32 INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct MOV32_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int remote_address : 8 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ;
unsigned int : 14 ;
unsigned int init_flag : 1 ;
unsigned int move_type : 3 ;
unsigned int t_register_select : 1 ;
unsigned int ab_register_select : 1 ;
unsigned int : 1 ;
unsigned int : 7 ;
unsigned int data : 25 ;
/*TCJ*/
/*unsigned int hr_data : 5 ;*/
} MOV32_FIELDS ;
typedef volatile union
{
MOV32_FIELDS mov32 ;
HET_MEMORY memory ;
} MOV32_INSTRUCTION;
/*---------------------------------------------*/
/* ADM32 INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct ADM32_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int remote_address : 8 ;
unsigned int : 10 ;
unsigned int auto_read_clear : 1 ;
unsigned int : 14 ;
unsigned int init_flag : 1 ;
unsigned int move_type : 3 ;
unsigned int t_register_select : 1 ;
unsigned int ab_register_select : 1 ;
unsigned int : 1 ;
unsigned int : 7 ;
unsigned int data : 25 ;
/*TCJ*/
/*unsigned int hr_data : 5 ; */
} ADM32_FIELDS ;
typedef volatile union
{
ADM32_FIELDS adm32 ;
HET_MEMORY memory ;
} ADM32_INSTRUCTION;
/*---------------------------------------------*/
/* ADCNST INSTRUCTION */
/*---------------------------------------------*/
typedef volatile struct ADCNST_format
{
unsigned int : 11 ;
unsigned int brk : 1 ;
unsigned int next_program_address : 8 ;
unsigned int op_code : 4 ;
unsigned int remote_address : 8 ;
unsigned int : 11 ;
unsigned int : 1 ;
unsigned int const : 20 ;
unsigned int : 7 ;
unsigned int data : 25 ;
/*TCJ*/
/*unsigned int hr_data : 5 ;*/
} ADCNST_FIELDS ;
typedef volatile union
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?