Äîêóìåíò âçÿò èç êýøà ïîèñêîâîé ìàøèíû. Àäðåñ îðèãèíàëüíîãî äîêóìåíòà : http://rtm-cs.sinp.msu.ru/new/can/pc-can.pdf
Äàòà èçìåíåíèÿ: Thu Feb 17 13:24:19 2000
Äàòà èíäåêñèðîâàíèÿ: Mon Oct 1 19:47:26 2012
Êîäèðîâêà: ISO8859-5
CAN - bus - ISA
v1.1

, , 117330, .: 939-56-59, 939-13-24

., 17 : 939-56-59


2



PC-CAN

,

.

. , 117330, . : 939 - 56 - 59, 939 - 13 - 24 : 939 - 56 - 59 http://www.marathon.ru ., 17


PC-CAN

3


PC-CAN

1. 2. 2.1. 2.2. 2.2.1. 2.2.2. 2.3. 3. 3.1. 3.2. 3.3. 4. 4.1. 4.2. 4.3. 4.4. 5. CAN BUS 5.1. 5.2. 6. 6.1. 6.2. 6.3. 6.4. 6.5. 6.6. 7.

......................................... 6 ............................. 8 ...................................................................... 8 . ................................................................... 11 .................................................... 12 IRQ .......................................................................... 13 . .......... 14 ................................... 16 PC ...................................................... 16 ...................................................... 16 CAN ............................... 16 CAN CAN CAN CAN CAN ................... 17 .................................... ................................. ................................ ............................... 17 17 18 19

....................................................... 20 ......................................... 20 ........................................................... 21 CAN MONITOR ............................................. 22 MONITOR' ................................................................ ............................................................. ?OPERATIONË .................................................................. ?CONFIGË......................................................................... ?BAUDRATEË.................................................................... . ............................................................ 22 23 24 25 25 26

.................................................................. 28


PC-CAN

7.1. 7.2. 7.3.

............................................................ 28 ............................................. 28 ................................................... 30

5


PC-CAN

1.
ÇÓ ÇÓ C AN SJA1000) ÇÓ MHz ( ) ÇÓ IRQ: 3, 4, 5, 7, 9, 10, 11, 12, 14, 15 ÇÓ C AN CAN CAN 16 8ISA (Philips 82C200 Philips

ÇÓ , ÇÓ CAN-bus ÇÓ Linux MS-DOS 0xC000

DIP

OC

6


PC-CAN

7


PC-CAN

2.
2.1.
1.
Ó

IRQ , PC 2.
Ó

DIP . .

PC, ISA . , . 10 8-Bit , PC.

,

PC

15, .

3.

Ó

PC, .

4.

Ó

4 kBytes 0xC800 IRQ 5.

.

ÇÓ

MS-DOS:

, , CONFIG.SYS.

DOS PC

8


PC-CAN

DOS EMM386), , , , . CONFIG.SYS DEVICE = EMM386 [ ,

(

, .

EMM386 :

] X=C800h-C8FFh.

ÇÓ

MS Windows 3.1.x : CONFIG.SYS, SYSTEM.INI C8FFh. EMMEXclude. , 16 kByte.

Windows. [386ENH] : EMMExclude = C800h, Windows ,

ÇÓ

Windows 95:

Windows 95 .

ÇÓ ÇÓ ÇÓ ÇÓ ÇÓ ÇÓ
? ?

? Ë

Ë

Ë ? ? ? Ë
9

Ë Ë


PC-CAN

ÇÓ ÇÓ
?

? Ë (IRQ)Ë ?

Ë

ÇÓ ÇÓ ÇÓ
( , ?5Ë) ? ?

? Ë , -

ÇÓ ÇÓ ÇÓ ÇÓ

Ë ? Ë PC, , ? C8000). , DOS. Ë( ? Ë Ë ? Ë C8FFF) Ë Ë

( , ,

,

ÇÓ
?

ÇÓ ÇÓ ÇÓ
10

? Windows

:


PC-CAN

. 5. : A:\MONITOR . . , IRQ, . ?Running ModeË. . . CAN , , ( . 4).

2.2.
,

.
, IRQ.

DIP ,

, .

-

11


PC-CAN

2.2.1.
DIP . SW1 1 OFF OFF OFF OFF OFF SW1. SW1 3 OFF OFF OFF OFF OFF , .
12

C800h D000h D800h E000h E800h

SW1 2 OFF OFF OFF OFF OFF ,

SW1 4 ON OFF ON OFF ON

SW1 5 OFF ON ON OFF OFF

SW1 6 OFF OFF OFF ON ON -


PC-CAN

4 kBytes

. CAN RAM.

2.2.2.
.

IRQ
(IRQ line) IRQ . IRQ.

IRQ . . , . , PC. ,

-

13


PC-CAN

2.3.

.

ÇÓ
monitor (Error status: Error)

CAN

ÇÓ

Ï
(baud rate) CAN

Ï
Ó

ÇÓ

monitor

Ï Ï ( Ï Ï
ÇÓ

: PC ?memory holeË) (EMM386) `Disable'

BIOS FEATURES SETUP-#-# Shadow.

Ï
14

ISA ( ISA

-8

). BIOS


PC-CAN

SETUP.
Ó Ó

IRQ monitor

ÇÓ ÇÓ
IRQ PC BIOS Setup ISA. PCI,

15


PC-CAN

3.
3.1.
, ,

PC
CAN (hardware reset area). C AN

Base: 0000h - Base: 00FFh Base: 0100h - Base: 01FFh

3.2.
CAN RAM CAN . read write . . (memory mapping)

3.3.

CAN
(hardware reset) CAN ). -

(

.

16


PC-CAN

CAN

4.

CAN
CAN 82 200 SJA1000. Borland C/C++ v.4.5 DOS ANSI C.

C

,

4.1.
0x5E SJA1000. . Output Control

CAN
82 200

4.2.
#define unsigned char BYTE /* // : // : mem_segment // // reg_offset // // // : */

CA N

CAN ( DOS)

BYTE can_hw_read(int mem_segment, BYTE reg_offset) { BYTE huge *can_base_ptr; can_base_ptr = (mem_segment * 0x10000l); return (*(can_base_ptr + reg_offset)); 17


PC-CAN

CAN

} void main(void) { BYTE reg_addr; /* unsigned int segmrnt; /* BYTE value; /* reg_addr = 0x00; segment = 0xc800; value = can_hw_read(segment, reg_addr); }

*/ */ */

4.3.
#define unsigned char BYTE /* // : // : mem_segment // // reg_offset // // value // // : */

CAN

CAN ( DOS)

,

BYTE can_hw_write(int mem_segment, BYTE reg_offset, BYTE value) { BYTE huge *can_base_ptr; can_base_ptr = (mem_segment * 0x10000l); (*(can_base_ptr + reg_offset)) = value; } 18


PC-CAN

CAN

void main(void) { BYTE reg_addr; /* unsigned int segmrnt; /* BYTE value; /* reg_addr = 0x00; segment = 0xc800; value = 1; can_hw_write(segment, reg_addr, value); }

*/ */ */

4.4.
void main(void) { BYTE huge *can_base_ptr; BYTE foo = 1; /* unsigned int segment = 0xc800; can_base_ptr = (segment * 0x10000L); *(can_base_ptr + 0x100) = foo; }

CAN

*/

19


PC-CAN

AN-bus

5.

CAN bus
Sub D 9. Sub D 9. CAN_HIGH , , .

CAN-bus CAN_LOW CAN

5.1.
Sub D 9 - 1 : Sub D 9 - 2

Sub D 9 1 2 3 4 5 6 7 8 9

CAN low

CAN high Bus termination1

1

Sub D 9 - 2

20


PC-CAN

AN-bus

5.2. ISO/IS 11898. 2 ( AN_LOW) Sub D 9 - 2 (CAN_HIGH) 7 (CAN_HIGH) ,

8 (Bus termination) 120 . 7 ,

8 (Bus termination), 8 (Bus termination).

Sub D 9 - 1, Sub D 9 - 2 c .

21


PC-CAN

CAN monitor

6.

CAN monitor
SJA1000 (Basic CAN

MONITOR CAN bus. Philips 82c200, mode). MONITOR CAN bus.

MONITOR :

ÇÓ
(

( . IRQ

) ) .

ÇÓ ÇÓ

ÇÓ ÇÓ ÇÓ ÇÓ

CAN PCA82C200 SJA1000: Output Control, Bus Timing 1, But Timing 2, Acceptance Mask. Bus Timing 1 But Timing 2 ?BaudrateË CAN ( ) (polling mode) CAN

6.1.
MONITOR .

MONITOR'
.

22


PC-CAN

CAN monitor

, MONITOR

:

PC. MONITOR ?Running ModeË, . , , , MONITOR (polling mode), . IRQ. . F3 , i486. ,

,

?CommandË

6.2.
, . , , CAN , . , ??Ë. Status CAN . . ,
23

,

ÇÓ ÇÓ

IRQ. -


PC-CAN

CAN monitor

, .

ÇÓ
ModeË,

-

ModeË

ÇÓ

. : ?No boardË, ?Running ?Reset ModeË. ?No boardË , . ?Running ModeË . . ?Reset , CAN (soft reset). ?Reset ModeË ?F4Ë. CAN . , , RTR .

6.3.

?OperationË
: . .

ÇÓ ÇÓ

?OperationË Test Base Address -

Test IRQ number , . .

ÇÓ ÇÓ
24

Transmission Test . Quit -


PC-CAN

CAN monitor

6.4.

?ConfigË
: ? Ë. IRQ , .

ÇÓ ÇÓ ÇÓ

?ConfigË Base Address IRQ ? Ë. Acceptance Mask CAN ? Ë (ID10 ... ID3) . Acceptance Mask . Output Control Control CAN .

8 , Acceptance Code, Acceptance Code 0xFF. , 0xFF Output

ÇÓ

6.5.
(baud rate) :

?BaudrateË
CAN. , . BTR1 BTR2 , XXX

ÇÓ

XXX Kbaud -

80%
.

25


PC-CAN

CAN monitor

ÇÓ

Manual BTR2. BTR1, :

BTR1

BTR2.

0x83 0xfa ,
BTR2 BTR1

. 6.6.
, CAN, CAN . , . , ?TransmitË ?Ë( ). , , . , ,

.

CAN

: [repeat] [count] ID DATA0 DATA1 ... DATA8 . (repeat count) . ID . . DATA0 ... DATA8 .
26

.


PC-CAN

CAN monitor

count . :

.

repeat, count

repeat 10 0x22 0x44 0x55 0x66 22 44 0x55 66

0x22 .

: 0x44 0x55 0x66. 10 , monitor . ?OperationË .

?Transmission TestË. , ,

,

27


PC-CAN

7.
7.1.
: 1.
Ó

:

D000h DIP SW1-1 OFF Ó DIP SW1-2 OFF Ó DIP SW1-3 OFF Ó DIP SW1-4 OFF Ó DIP SW1-5 ON Ó DIP SW1-6 OFF Ó
Ó

2.

Ó

: IRQ 10

7.2. : 1.
Ó

: 92 x 161 Ó
Ó

17 100

2.

Ó

:
Ó

28


PC-CAN

3.

Ó

: 0 Ó - 70

4.

Ó

: 5 Ó ( ) 5% 500 200

5.

Ó

:

29


PC-CAN

7.3.
SW1:
SW1 C000h C100h C200h C300h C400h C500h C600h C700h C800h C900h CA00h CB00h CC00h CD00h CE00h CF00h D000h D100h D200h D300h D400h D500h D600h D700h 30 OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON SW2 OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON SW3 OFF OFF OFF OFF ON ON ON ON OFF OFF OFF OFF ON ON ON ON OFF OFF OFF OFF ON ON ON ON SW4 OFF OFF OFF OFF OFF OFF OFF OFF ON ON ON ON ON ON ON ON OFF OFF OFF OFF OFF OFF OFF OFF SW5 OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF ON ON ON ON ON ON ON ON SW6 OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF


PC-CAN

D800h D900h DA00h DB00h DC00h DD00h DE00h DF00h E000h E100h E200h E300h E400h E500h E600h E700h E800h E900h EA00h EB00h EC00h ED00h EE00h EF00h F000h F100h F200h F300h F400h F500h F600h F700h

OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON OFF ON

OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON OFF OFF ON ON

OFF OFF OFF OFF ON ON ON ON OFF OFF OFF OFF ON ON ON ON OFF OFF OFF OFF ON ON ON ON OFF OFF OFF OFF ON ON ON ON

ON ON ON ON ON ON ON ON OFF OFF OFF OFF OFF OFF OFF OFF ON ON ON ON ON ON ON ON OFF OFF OFF OFF OFF OFF OFF OFF

ON ON ON ON ON ON ON ON OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF OFF ON ON ON ON ON ON ON ON

OFF OFF OFF OFF OFF OFF OFF OFF ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON ON 31


PC-CAN

F800h F900h FA00h

OFF ON OFF

OFF OFF ON

OFF OFF OFF

ON ON ON

ON ON ON

ON ON ON

32


PC-CAN

Sub D 9 -1

Sub D 9 - 2.

Sub D 9 1 2 3 4 5 6 7 8 9

CAN low

CAN high Bus termination2

2

Sub D 9 - 2 33