📄 define.pas
字号:
Unit Define;
interface
Uses HWINTERFACELib_TLB,SysUtils;
{*********************************************************************
S3C4510.h
**********************************************************************}
const
S3C4510_CHAIN_LENGTH = 233;
UARXD1_IN = 0 ;
nUADSR0_OUT = 1 ;
UATXD0_OUT = 2 ;
nUADTR0_IN = 3 ;
UARXD0_IN = 4 ;
SDA_OUT = 5 ; // OPEN DRAIN OUTPUT
SDA_IN = 6 ;
SCL_OUT = 7 ;
SCL_IN = 8 ;
P17_ENB = 9 ; // *
P17_OUT = 10 ;
P17_IN = 11 ;
P16_ENB = 12 ; // *
P16_OUT = 13 ;
P16_IN = 14 ;
P15_ENB = 15 ; // *
P15_OUT = 16 ;
P15_IN = 17 ;
P14_ENB = 18 ; // *
P14_OUT = 19 ;
P14_IN = 20 ;
P13_ENB = 21 ; // *
P13_OUT = 22 ;
P13_IN = 23 ;
P12_ENB = 24 ; // *
P12_OUT = 25 ;
P12_IN = 26 ;
P11_ENB = 27 ; // *
P11_OUT = 28 ;
P11_IN = 29 ;
P10_ENB = 30 ; // *
P10_OUT = 31 ;
P10_IN = 32 ;
P9_ENB = 33 ; // *
P9_OUT = 34 ;
P9_IN = 35 ;
P8_ENB = 36 ; // *
P8_OUT = 37 ;
P8_IN = 38 ;
P7_ENB = 39 ; // *
P7_OUT = 40 ;
P7_IN = 41 ;
P6_ENB = 42 ; // *
P6_OUT = 43 ;
P6_IN = 44 ;
P5_ENB = 45 ; // *
P5_OUT = 46 ;
P5_IN = 47 ;
P4_ENB = 48 ; // *
P4_OUT = 49 ;
P4_IN = 50 ;
P3_ENB = 51 ; // *
P3_OUT = 52 ;
P3_IN = 53 ;
P2_ENB = 54 ; // *
P2_OUT = 55 ;
P2_IN = 56 ;
P1_ENB = 57 ; // *
P1_OUT = 58 ;
P1_IN = 59 ;
P0_ENB = 60 ; // *
P0_OUT = 61 ;
P0_IN = 62 ;
D31_OUT = 63 ;
D31_IN = 64 ;
D30_OUT = 65 ;
D30_IN = 66 ;
D29_OUT = 67 ;
D29_IN = 68 ;
D28_OUT = 69 ;
D28_IN = 70 ;
D27_OUT = 71 ;
D27_IN = 72 ;
D26_OUT = 73 ;
D26_IN = 74 ;
D25_OUT = 75 ;
D25_IN = 76 ;
D24_OUT = 77 ;
D24_IN = 78 ;
D23_OUT = 79 ;
D23_IN = 80 ;
D22_OUT = 81 ;
D22_IN = 82 ;
D21_OUT = 83 ;
D21_IN = 84 ;
D20_OUT = 85 ;
D20_IN = 86 ;
D19_OUT = 87 ;
D19_IN = 88 ;
D18_OUT = 89 ;
D18_IN = 90 ;
D17_OUT = 91 ;
D17_IN = 92 ;
D16_OUT = 93 ;
D16_IN = 94 ;
D15_OUT = 95 ;
D15_IN = 96 ;
D14_OUT = 97 ;
D14_IN = 98 ;
D13_OUT = 99 ;
D13_IN = 100;
D12_OUT = 101;
D12_IN = 102;
D11_OUT = 103;
D11_IN = 104;
D10_OUT = 105;
D10_IN = 106;
D9_OUT = 107;
D9_IN = 108;
D8_OUT = 109;
D8_IN = 110;
D7_OUT = 111;
D7_IN = 112;
D6_OUT = 113;
D6_IN = 114;
D5_OUT = 115;
D5_IN = 116;
D4_OUT = 117;
D4_IN = 118;
D3_OUT = 119;
D3_IN = 120;
D2_OUT = 121;
D2_IN = 122;
D1_OUT = 123;
D1_IN = 124;
D0_OUT = 125;
D0_IN = 126;
D_OUT_ENB = 127;
A21_OUT = 128;
A20_OUT = 129;
A19_OUT = 130;
A18_OUT = 131;
A17_OUT = 132;
A16_OUT = 133;
A15_OUT = 134;
A14_OUT = 135;
A13_OUT = 136;
A12_OUT = 137;
A11_OUT = 138;
A10_OUT = 139;
A9_OUT = 140;
A8_OUT = 141;
A7_OUT = 142;
A6_OUT = 143;
A5_OUT = 144;
A4_OUT = 145;
A3_OUT = 146;
A2_OUT = 147;
A1_OUT = 148;
A0_OUT = 149;
ExtMACK_OUT = 150;
ExtMREQ_IN = 151;
nWBE_3_OUT = 152;
nWBE_2_OUT = 153;
nWBE_1_OUT = 154;
nWBE_0_OUT = 155;
nDWE_OUT = 156;
nCAS_3_OUT = 157;
nCAS_2_OUT = 158;
nCAS_1_OUT = 159;
nCAS_0_OUT = 160;
nRAS_3_OUT = 161;
nRAS_2_OUT = 162;
nRAS_1_OUT = 163;
nRAS_0_OUT = 164;
nRCS_5_OUT = 165;
nRCS_4_OUT = 166;
nRCS_3_OUT = 167;
nRCS_2_OUT = 168;
nRCS_1_OUT = 169;
CLKSEL_IN = 170;
nRESET_IN = 171;
MCLK_IN = 172;
MCLKO_OUT = 173;
CLKOEN_IN = 174;
nRCS_0_OUT = 175;
B0SIZE_1_IN = 176;
B0SIZE_0_IN = 177;
nOE_OUT = 178;
nEWAIT_IN = 179;
nECS_3_OUT = 180;
nECS_2_OUT = 181;
nECS_1_OUT = 182;
nECS_0_OUT = 183;
DIS_BUS = 184;
UCLK_IN = 185;
TMODE_IN = 186;
MDC_OUT = 187;
LITTLE_IN = 188;
MDIO_OE = 189;
MDIO_OUT = 190;
MDIO_IN = 191;
TX_EN_TXEN_10M_OUT = 192;
TX_CLK_TXCLK_10M_OUT = 193;
TX_ERR_PCOMP_10M_OUT = 194;
TXD3_OUT = 195;
TXD2_OUT = 196;
TXD1_LOOP10_OUT = 197;
TXD0_TXD_10M_OUT = 198;
COL_COL_10M_IN = 199;
RX_CLK_RXCLK_10M_IN = 200;
RX_ERR_IN = 201;
RXD3_IN = 202;
RXD2_IN = 203;
RXD1_IN = 204;
RXD0_RXD_10M_IN= 205;
RX_DV_LINK10_IN= 206;
CRS_CRS_10M_IN = 207;
TXCBEN = 208; // *
TXCB_OUT = 209;
TXCB_IN = 210;
nSYNCB_OUT = 211;
RXCB_IN = 212;
nDCDB_IN = 213;
nCTSB_IN = 214;
TXDB_OUT = 215;
nRTSB_OUT = 216;
RXDB_IN = 217;
nDTRB_OUT = 218;
TXCAEN = 219; // *
TXCA_OUT = 220;
TXCA_IN = 221;
nSYNCA_OUT = 222;
RXCA_IN = 223;
nDCDA_IN = 224;
nCTSA_IN = 225;
TXDA_OUT = 226;
nRTSA_OUT = 227;
RXDA_IN = 228;
nDTRA_OUT = 229;
nUADSR1_OUT = 230;
UATXD1_OUT = 231;
nUADTR1_IN = 232;
TRST = $01 ;
LPT1 = $3bc; // hardware base address for parallel port
LPT2 = $378; // the search order is LPT1 then 2 then 3
LPT3 = $278; // first valid address found is used (re-order if needed for multiple ports)
READ = 0; // Flags used to modify the S3C4510 JTAG chain data depending on
WRITE = 1; // the access mode of the Flash Memory
SETUP = 2;
HOLD = 3;
RS = 4;
NONE = 5;
IP = 0; // Flag used when accessing the parallel port
RP = 1; // RP = 'read port', IP = 'ignore port', using IP will speed access
S3C4510ID = '**** 1111000011110000 11110000111 1'; // JTAG ID-codes for the S3C4510
// "0001 1111000011110000 11110000111 1"
{***********************************************************************
SST39VF160.H
************************************************************************}
//basic sst39vf160 info
SST39_ROW_SIZE = 4096 ; // Must be 4096 bytes for 39VF160
SST39_BLOCK_SIZE = 64*1024 ; // block erase size --- 64k
SST_39VF160 = $2782 ; // SST 39VF160 device ID
SST_ID = $00BF ; // Manufacturer’s ID
FLASH_SIZE = 2*1024*1024; //whole flash size
//flash operation addr
SST39_CMD_ADDRESS1 = $5555;
SST39_CMD_ADDRESS2 = $2aaa;
//defined for sector erase
SST39_AUTO_PG_ERASE1 = $aaaa;
SST39_AUTO_PG_ERASE2 = $5555;
SST39_AUTO_PG_ERASE3 = $8080;
SST39_AUTO_PG_ERASE4 = $aaaa;
SST39_AUTO_PG_ERASE5 = $5555;
SST39_ERASE_SECTOR = $3030;
SST39_ERASE_BLOCK = $5050;
SST39_ERASE_CHIP = $1010;
//defined for word program
SST39_AUTO_PGRM1 = $aaaa;
SST39_AUTO_PGRM2 = $5555;
SST39_AUTO_PGRM3 = $a0a0;
//defined for read id
SST39_READ_ID1 = $aaaa;
SST39_READ_ID2 = $5555;
SST39_READ_ID3 = $9090;
SST39_EXIT_READ_ID = $f0f0;
procedure OUTB(port:word;data:byte);function INB(port:word):word;var lpt_address:integer; //the first addr of the parallel
pos :longword;
read_size:longword;
sector_addr, sector_count:longword;
block_addr, block_count:longword;
fname:TFileName;
OperateType:(optLoad,optEraseAll,optEraseSec,optEraseBlk,optSave);
MyPar:THwinterface;
implementation
procedure OUTB(Port:word;data:byte);begin MyPar.OutPort(Port,data);
end;function INB(port:word):word;begin
Result:=MyPar.InPort(Port);
end;end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -