📄 s2440.h
字号:
};
struct EIRBits { // ep interrupt reg
BYTE ep0_int :1; // ep0_interrupt
BYTE ep1_int :1; // ep1_interrupt
BYTE ep2_int :1; // ep2_interrupt
BYTE ep3_int :1; // ep3_interrupt
BYTE ep4_int :1; // ep4_interrupt
BYTE rsvd0 :3;
};
struct UIRBits { // usb interrupt reg
BYTE sus_int :1; // suspend inaterrupt
BYTE resume_int :1; // resume interrupt
BYTE reset_int :1; // reset interrupt
BYTE rsvd0 :5;
};
struct EIERBits { // interrupt mask reg
BYTE ep0_int_en :1; // ep1_int_reg
BYTE ep1_int_en :1; // ep1_int_reg
BYTE ep2_int_en :1; // ep2_int_reg
BYTE ep3_int_en :1; // ep3_int_reg
BYTE ep4_int_en :1; // ep4_int_reg
BYTE rsvd0 :3;
};
struct UIERBits {
BYTE sus_int_en :1; // suspend_int_en
BYTE rsvd1 :1;
BYTE reset_int_en :1; // reset_enable_reg
BYTE rsvd0 :5;
};
struct FNR1Bits { // frame number1 register
BYTE fr_n1 :8; // frame_num1_reg
};
struct FNR2Bits { // frame number2 register
BYTE fr_n2 :8; // frame_num2_reg
};
struct INDEXBits { // index register
BYTE index :8; // index_reg
};
struct EP0ICSR1Bits // EP0 & ICSR1 shared
{
BYTE opr_ipr :1;
BYTE ipr_ :1;
BYTE sts_ur :1;
BYTE de_ff :1;
BYTE se_sds :1;
BYTE sds_sts :1;
BYTE sopr_cdt :1;
BYTE sse_ :1;
};
struct ICSR2Bits { // in csr2 areg
BYTE rsvd1 :4;
BYTE in_dma_int_en :1; // in_dma_int_en
BYTE mode_in :1; // mode_in
BYTE iso :1; // iso/bulk mode
BYTE auto_set :1; // auto_set
};
struct OCSR1Bits { // out csr1 reg
BYTE out_pkt_rdy :1; // out packet reday
BYTE rsvd1 :1;
BYTE ov_run :1; // over_run
BYTE data_error :1; // data_error
BYTE fifo_flush :1; // fifo_flush
BYTE send_stall :1; // send_stall
BYTE sent_stall :1; // sent_stall
BYTE clr_data_tog :1; // clear data toggle
};
struct OCSR2Bits { // out csr2 reg
BYTE rsvd1 :5;
BYTE out_dma_int_en :1; // out_dma_int_en
BYTE iso :1; // iso/bulk mode
BYTE auto_clr :1; // auto_clr
};
struct EP0FBits { // ep0 fifo reg
BYTE fifo_data :8; // fifo data
};
struct EP1FBits { // ep0 fifo reg
BYTE fifo_data :8; // fifo data
};
struct EP2FBits { // ep0 fifo reg
BYTE fifo_data :8; // fifo data
};
struct EP3FBits { // ep0 fifo reg
BYTE fifo_data :8; // fifo data
};
struct EP4FBits { // ep0 fifo reg
BYTE fifo_data :8; // fifo data
};
struct MAXPBits {
BYTE maxp :4; // max packet reg
BYTE rsvd0 :4;
};
struct OFCR1Bits { // out_fifo_cnt1_reg
BYTE out_cnt_low :8; // out_cnt_low
};
struct OFCR2Bits { // out_fifo_cnt2_reg
BYTE out_cnt_high :8; // out_cnt_high
};
struct EP1DCBits { // ep1 dma interface control
BYTE dma_mo_en :1; // dma_mode_en
BYTE in_dma_run :1; // in_dma_run
BYTE orb_odr :1; // out_run_ob/out_dma_run
BYTE demand_mo :1; // demand_mode
BYTE state :3; // state
BYTE in_run_ob :1; // in_run_ob
};
struct EP2DCBits { // ep2 dma interface control
BYTE dma_mo_en :1; // dma_mode_en
BYTE in_dma_run :1; // in_dma_run
BYTE orb_odr :1; // out_run_ob/out_dma_run
BYTE demand_mo :1; // demand_mode
BYTE state :3; // state
BYTE in_run_ob :1; // in_run_ob
};
struct EP3DCBits { // ep3 dma interface control
BYTE dma_mo_en :1; // dma_mode_en
BYTE in_dma_run :1; // in_dma_run
BYTE orb_odr :1; // out_run_ob/out_dma_run
BYTE demand_mo :1; // demand_mode
BYTE state :3; // state
BYTE in_run_ob :1; // in_run_ob
};
struct EP4DCBits { // ep4 dma interface control
BYTE dma_mo_en :1; // dma_mode_en
BYTE in_dma_run :1; // in_dma_run
BYTE orb_odr :1; // out_run_ob/out_dma_run
BYTE demand_mo :1; // demand_mode
BYTE state :3; // state
BYTE in_run_ob :1; // in_run_ob
};
struct EP1DUBits {
BYTE ep1_unit_cnt :8; // ep0_unit_cnt
};
struct EP2DUBits {
BYTE ep2_unit_cnt :8; // ep0_unit_cnt
};
struct EP3DUBits {
BYTE ep3_unit_cnt :8; // ep0_unit_cnt
};
struct EP4DUBits {
BYTE ep4_unit_cnt :8; // ep0_unit_cnt
};
struct EP1DFBits {
BYTE ep1_fifo_cnt :8;
};
struct EP2DFBits {
BYTE ep2_fifo_cnt :8;
};
struct EP3DFBits {
BYTE ep3_fifo_cnt :8;
};
struct EP4DFBits {
BYTE ep4_fifo_cnt :8;
};
struct EP1DTLBits {
BYTE ep1_ttl_l :8;
};
struct EP1DTMBits {
BYTE ep1_ttl_m :8;
};
struct EP1DTHBits {
BYTE ep1_ttl_h :8;
};
struct EP2DTLBits {
BYTE ep2_ttl_l :8;
};
struct EP2DTMBits {
BYTE ep2_ttl_m :8;
};
struct EP2DTHBits {
BYTE ep2_ttl_h :8;
};
struct EP3DTLBits {
BYTE ep3_ttl_l :8;
};
struct EP3DTMBits {
BYTE ep3_ttl_m :8;
};
struct EP3DTHBits {
BYTE ep3_ttl_h :8;
};
struct EP4DTLBits {
BYTE ep4_ttl_l :8;
};
struct EP4DTMBits {
BYTE ep4_ttl_m :8;
};
struct EP4DTHBits {
BYTE ep4_ttl_h :8;
};
struct udcreg { // PHY BASE : 0x52000140(Little Endian)
struct udcFARBits udcFAR; // 0x140
BYTE rsvd0; // 0x141
BYTE rsvd1; // 0x142
BYTE rsvd2; // 0x143
struct PMRBits PMR; // 0x144
BYTE rsvd3; // 0x145
BYTE rsvd4; // 0x146
BYTE rsvd5; // 0x147
struct EIRBits EIR; // 0x148
BYTE rsvd6; // 0x149
BYTE rsvd7; // 0x14a
BYTE rsvd8; // 0x14b
BYTE rsvd9; // 0x14C
BYTE rsvd10; // 0x14d
BYTE rsvd11; // 0x14e
BYTE rsvd12; // 0x14f
BYTE rsvd13; // 0x150
BYTE rsvd14; // 0x151
BYTE rsvd15; // 0x152
BYTE rsvd16; // 0x153
BYTE rsvd17; // 0x154
BYTE rsvd18; // 0x155
BYTE rsvd19; // 0x156
BYTE rsvd20; // 0x157
struct UIRBits UIR; // 0x158
BYTE rsvd21; // 0x159
BYTE rsvd22; // 0x15a
BYTE rsvd23; // 0x15b
struct EIERBits EIER; // 0x15C
BYTE rsvd24; // 0x15d
BYTE rsvd25; // 0x15e
BYTE rsvd26; // 0x15f
BYTE rsvd27; // 0x160
BYTE rsvd28; // 0x161
BYTE rsvd29; // 0x162
BYTE rsvd30; // 0x163
BYTE rsvd31; // 0x164
BYTE rsvd32; // 0x165
BYTE rsvd33; // 0x166
BYTE rsvd34; // 0x167
BYTE rsvd35; // 0x168
BYTE rsvd36; // 0x169
BYTE rsvd37; // 0x16a
BYTE rsvd38; // 0x16b
struct UIERBits UIER; // 0x16c
BYTE rsvd39; // 0x16d
BYTE rsvd40; // 0x16e
BYTE rsvd41; // 0x16f
struct FNR1Bits FNR1; // 0x170
BYTE rsvd42; // 0x171
BYTE rsvd43; // 0x172
BYTE rsvd44; // 0x173
struct FNR2Bits FNR2; // 0x174
BYTE rsvd45; // 0x175
BYTE rsvd46; // 0x176
BYTE rsvd47; // 0x177
struct INDEXBits INDEX; // 0x178
BYTE rsvd48; // 0x179
BYTE rsvd49; // 0x17a
BYTE rsvd50; // 0x17b
BYTE rsvd51; // 0x17C
BYTE rsvd52; // 0x17d
BYTE rsvd53; // 0x17e
BYTE rsvd54; // 0x17f
struct MAXPBits MAXP; // 0x180
BYTE rsvd56; // 0x181
BYTE rsvd57; // 0x182
BYTE rsvd58; // 0x183
struct EP0ICSR1Bits EP0ICSR1; // 0x184
// struct ICSR1Bits ICSR1; // 0x184
// struct EP0CSRBits EP0CSR; // mapped to the in_csr1 reg
BYTE rsvd59; // 0x185
BYTE rsvd60; // 0x186
BYTE rsvd61; // 0x187
struct ICSR2Bits ICSR2; // 0x188
BYTE rsvd63; // 0x189
BYTE rsvd64; // 0x18a
BYTE rsvd65; // 0x18b
BYTE rsvd55; // 0x180
BYTE rsvd66; // 0x18d
BYTE rsvd67; // 0x18e
BYTE rsvd68; // 0x18f
struct OCSR1Bits OCSR1; // 0x190
BYTE rsvd69; // 0x191
BYTE rsvd70; // 0x192
BYTE rsvd71; // 0x193
struct OCSR2Bits OCSR2; // 0x194
BYTE rsvd73; // 0x195
BYTE rsvd74; // 0x196
BYTE rsvd75; // 0x197
struct OFCR1Bits OFCR1; // 0x198
BYTE rsvd76; // 0x199
BYTE rsvd77; // 0x19a
BYTE rsvd78; // 0x19b
struct OFCR2Bits OFCR2; // 0x19C
BYTE rsvd79; // 0x19d
BYTE rsvd80; // 0x19e
BYTE rsvd81; // 0x19f
BYTE rsvd82; // 0x1A0
BYTE rsvd83; // 0x1a1
BYTE rsvd84; // 0x1a2
BYTE rsvd85; // 0x1a3
BYTE rsvd86; // 0x1A4
BYTE rsvd87; // 0x1a5
BYTE rsvd88; // 0x1a6
BYTE rsvd89; // 0x1a7
BYTE rsvd90; // 0x1A8
BYTE rsvd91; // 0x1a9
BYTE rsvd92; // 0x1aa
BYTE rsvd93; // 0x1ab
BYTE rsvd94; // 0x1AC
BYTE rsvd95; // 0x1ad
BYTE rsvd96; // 0x1ae
BYTE rsvd97; // 0x1af
BYTE rsvd98; // 0x1B0
BYTE rsvd99; // 0x1B1
BYTE rsvd100; // 0x1B2
BYTE rsvd101; // 0x1B3
BYTE rsvd102; // 0x1B4
BYTE rsvd103; // 0x1B5
BYTE rsvd104; // 0x1B6
BYTE rsvd105; // 0x1B7
BYTE rsvd106; // 0x1B8
BYTE rsvd107; // 0x1B9
BYTE rsvd108; // 0x1Ba
BYTE rsvd109; // 0x1Bb
BYTE rsvd110; // 0x1BC
BYTE rsvd111; // 0x1Bd
BYTE rsvd112; // 0x1Be
BYTE rsvd113; // 0x1Bf
struct EP0FBits EP0F; // 0x1C0
BYTE rsvd114; // 0x1c1
BYTE rsvd115; // 0x1c2
BYTE rsvd116; // 0x1c3
struct EP1FBits EP1F; // 0x1C4
BYTE rsvd117; // 0x1c5
BYTE rsvd118; // 0x1c6
BYTE rsvd119; // 0x1c7
struct EP2FBits EP2F; // 0x1C8
BYTE rsvd120; // 0x1c9
BYTE rsvd121; // 0x1ca
BYTE rsvd122; // 0x1cb
struct EP3FBits EP3F; // 0x1CC
BYTE rsvd123; // 0x1cd
BYTE rsvd124; // 0x1ce
BYTE rsvd125; // 0x1cf
struct EP4FBits EP4F; // 0x1D0
BYTE rsvd126; // 0x1d1
BYTE rsvd127; // 0x1d2
BYTE rsvd128; // 0x1d3
BYTE rsvd169; // 0x1D4
BYTE rsvd170; // 0x1d5
BYTE rsvd171; // 0x1d6
BYTE rsvd172; // 0x1d7
BYTE rsvd173; // 0x1D8
BYTE rsvd174; // 0x1d9
BYTE rsvd175; // 0x1da
BYTE rsvd176; // 0x1db
BYTE rsvd177; // 0x1DC
BYTE rsvd178; // 0x1dd
BYTE rsvd179; // 0x1de
BYTE rsvd180; // 0x1df
BYTE rsvd1e0; // 0x1e0
BYTE rsvd1e1; // 0x1e1
BYTE rsvd1e2; // 0x1e2
BYTE rsvd1e3; // 0x1e3
BYTE rsvd1e4; // 0x1e4
BYTE rsvd1e5; // 0x1e5
BYTE rsvd1e6; // 0x1e6
BYTE rsvd1e7; // 0x1e7
BYTE rsvd1e8; // 0x1e8
BYTE rsvd1e9; // 0x1e9
BYTE rsvd1ea; // 0x1ea
BYTE rsvd1eb; // 0x1eb
BYTE rsvd1ec; // 0x1ec
BYTE rsvd1ed; // 0x1ed
BYTE rsvd1ee; // 0x1ee
BYTE rsvd1ef; // 0x1ef
BYTE rsvd181; // 0x1F0
BYTE rsvd182; // 0x1F1
BYTE rsvd183; // 0x1F2
BYTE rsvd184; // 0x1F3
BYTE rsvd185; // 0x1F4
BYTE rsvd186; // 0x1F5
BYTE rsvd187; // 0x1F6
BYTE rsvd188; // 0x1F7
BYTE rsvd189; // 0x1F8
BYTE rsvd190; // 0x1F9
BYTE rsvd191; // 0x1Fa
BYTE rsvd192; // 0x1Fb
BYTE rsvd193; // 0x1FC
BYTE rsvd194; // 0x1Fd
BYTE rsvd195; // 0x1Fe
BYTE rsvd196; // 0x1Ff
struct EP1DCBits EP1DC; // 0x200
BYTE rsvd197; // 0x201
BYTE rsvd198; // 0x202
BYTE rsvd199; // 0x203
struct EP1DUBits EP1DU; // 0x204
BYTE rsvd200; // 0x205
BYTE rsvd201; // 0x206
BYTE rsvd202; // 0x207
struct EP1DFBits EP1DF; // 0x208
BYTE rsvd203; // 0x209
BYTE rsvd204; // 0x20a
BYTE rsvd205; // 0x20b
struct EP1DTLBits EP1DTL; // 0x20C
BYTE rsvd206; // 0x20d
BYTE rsvd207; // 0x20e
BYTE rsvd208; // 0x20f
struct EP1DTMBits EP1DTM; // 0x210
BYTE rsvd209; // 0x211
BYTE rsvd210; // 0x212
BYTE rsvd211; // 0x213
struct EP1DTHBits EP1DTH; // 0x214
BYTE rsvd212; // 0x215
BYTE rsvd213; // 0x216
BYTE rsvd214; // 0x217
struct EP2DCBits EP2DC; // 0x218
BYTE rsvd215; // 0x219
BYTE rsvd216; // 0x21a
BYTE rsvd217; // 0x21b
struct EP2DUBits EP2DU; // 0x21C
BYTE rsvd218; // 0x21d
BYTE rsvd219; // 0x21e
BYTE rsvd220; // 0x21f
struct EP2DFBits EP2DF; // 0x220
BYTE rsvd221; // 0x221
BYTE rsvd222; // 0x222
BYTE rsvd223; // 0x223
struct EP2DTLBits EP2DTL; // 0x224
BYTE rsvd224; // 0x225
BYTE rsvd225; // 0x226
BYTE rsvd226; // 0x227
struct EP2DTMBits EP2DTM; // 0x228
BYTE rsvd227; // 0x229
BYTE rsvd228; // 0x22a
BYTE rsvd229; // 0x22b
struct EP2DTHBits EP2DTH; // 0x22C
BYTE rsvd230; // 0x22d
BYTE rsvd231; // 0x22e
BYTE rsvd232; // 0x22f
BYTE rsvd233; // 0x230
BYTE rsvd234; // 0x231
BYTE rsvd235; // 0x232
BYTE rsvd236; // 0x233
BYTE rsvd237; // 0x234
BYTE rsvd238; // 0x235
BYTE rsvd239; // 0x236
BYTE rsvd240; // 0x237
BYTE rsvd241; // 0x238
BYTE rsvd242; // 0x239
BYTE rsvd243; // 0x23a
BYTE rsvd244; // 0x23b
BYTE rsvd245; // 0x23C
BYTE rsvd246; // 0x23d
BYTE rsvd247; // 0x23e
BYTE rsvd248; // 0x23f
struct EP3DCBits EP3DC; // 0x240
BYTE rsvd249; // 0x241
BYTE rsvd250; // 0x242
BYTE rsvd251; // 0x243
struct EP3DUBits EP3DU; // 0x244
BYTE rsvd252; // 0x245
BYTE rsvd253; // 0x246
BYTE rsvd254; // 0x247
struct EP3DFBits EP3DF; // 0x248
BYTE rsvd255; // 0x249
BYTE rsvd256; // 0x24a
BYTE rsvd257; // 0x24b
struct EP3DTLBits EP3DTL; // 0x24C
BYTE rsvd258; // 0x24d
BYTE rsvd259; // 0x24e
BYTE rsvd260; // 0x24f
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -