123LED4567
ATPS/2
8.1.1.1
RC10~15ms
ASCIIASCII
8255200H~203HMOV AL82H 82550PAPBMOV DX203HOUT DXAL
MOV AL0H MOV DX200H OUT DXAL 0 INC DXLOP1 INALDX AND AL0FH CMP AL0FH 0JZLOP1 CALLDELAY 10~20 INALDX AND AL0FHCMP AL0FH 0 JZLOP1 MOV BX0404H BLBH MOV CL0FFH CL= -1 MOV AL11111110B0(=0)
LOP2MOV DX200H OUT DXAL RCL AL1 MOV AHALAH INC DX PB IN ALDX AND AL0FH CMP AL0FH 0 JNZ LOP3 LOP3 ADD CL4+4 MOV ALAH DEC BL1 JMP LOP2
LOP3INCCL1(1)RCR AL1JCLOP3=1LOP4 ; INALDX AND AL0FH CMP AL0FH 0JNZLOP4 MOV ALCLALCMP AL00JZ KEY00CMPAL11JZKEY01
PCPC83Windows104CPUCPUCPU
PC8048PC80428742
80485PC8042TEST0 (CLK)TEST1(DATA)
8042P24IRQ1
IRQ1DATAP27=08742P24=0P27=1CLK8042P26P27CLKDATA
PC5
PC/XT8255A: B: RAMI/OC44DIP
PCROM BIOSPC825560H63HMOVAL99HOUT 63HALMOVAL0C8HOUT 61HALMOVAL48HOUT 61HAL
PCIRQ1INT 09HASCIIIRQ1KEY_IN:INAL60HTEST AL80HJNZ KEY_INPUSH AXIN AL61H8255PB
MOVAHALORAL80HPB7=1OUT61HALXCHGAHALPBOUT61HALPB7=0PB6=1POPAXMOVAHALAHXLATB ASCII
821xy
USB8-7
RS-232RS-232RTSSGNDTxDDTRxy711200/2400bps
Microsoft8-1LBRBX7~X0Y7~Y0Mickeys1=0.0005D6
8-1
8.2.2 INT 33H
DOSMOUSE .SYSCONFIG.SYS1DEVICE=MOUSE.SYS MOUSE.COMAUTOEXEC.BAT1MOUSEWindowsMOUSE.DRV
Microsoftint 33Hint 33HAXint 33H8-3
LEDLED
7810
8-97
8-5
8-108255AS1S3LEDS1S3LED
C #include main(){char led[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07} //LEDunsigned char led_index;outportb(0x203,0x90); //8255A0ABoutportb(0x203,0x08); //PC4(INTEA)=0()outportb(0x201,0); //LEDwhile(!kbhit( ) ){ //led_index=inportb(0x200);//Aled_index=led_index&0x07;//outportb(0x201,led[led_index])//LEDB}}
STBA8255AINTRA8259C
CRT(Cathod-Ray Tube)
VGACRT
CRT
VGA
CRTCPUMDACGAEGAVGASVGAXGA
CRT
CRT
CRTLCDCRTLCD
915D
Red
Green
Blue
Cheek6
Red
1 11
Green
Blue
5 10
Gnd
GndVGA
Horiz
Vert
1
2
3
4
5
VGA 6
7
8
9
10
11
12
13
14
15
VGA
8.4.1.1 CRTCRT
CRT
CRT8-11
1024768
RG(B)8.4.1.2 CRTCRT
1mnnm
MDACGAEGAVGATVGA640200640350640480102476812001200
2
VRAMPC(CPU)CGA4VGA25632
HzVESASVGA70HzVGA72Hz
mm0.28mm0.24mm0.22mm
CRT,
8.4.2.1 mnROMCRT01PC81479d
CLK
ASCII
PC4000B8000HB800F9FHB0000H2ASCII
BI=1MS-DOSD4D68D0D316
8025BMOV AX0B800H MOV ESAXMOV DI0MOV CX2000 MOV AH10010100BMOV ALB REP STOSWAX
08H20HPCDOS
PixelCGAEGAVGASVGAXGAISAPCIAGP
VGA16VRAM44848.140101010141416
3210IRGBVGA16..1010000001008.14 VGA VRAM
8Pixel)(RGB)41603DAC
8040BIOS6.12
VRAMMDA07720 3502C B0000HCGA0406320 2004C640 2002C B8000H B8000HEGA0D0E0F10320 20016C640 20016C640 3504C640 35016C A0000H A0000H A0000H A0000HVGA111213640 4802C640 48016C320 200256C A0000H A0000H A0000HTVGA5B5C5D5E5F62800 60016C640 400256C640 480256C800600256C1024 76816C1024 768256C A0000H A0000H A0000H A0000H A0000H A0000H
CRTCRTCRT601991(Liquid Crystal DisplayLCD)(Liquid Crystal)
LCD
TNSTNDSTNTFTTN-LCDSTN-LCDDSTN-LCDTFT-LCDTNLCDLCD
4TFTTFT-LCD
HPA-LCDDSTNDSTN8-78-7 LCD
PDP(Plasma Display Panel)XY
LCD8-16
909090
90LCD
8-17
LCD8-17LCD
LCDLCD988LCD65()
CENTRONICRS-232USBUniversal Serial Bus215~20USB
dpi400dpi150dpi600dpi
cpslpm600lpmppm6~32ppm
80120180
CPU.,8-18
RAMASCIIASCIICRCF,
8.5.1.1 CENTRONICS CENTRONICS36Amphenol 575,PCDB25PC3625
8-19 CENTRONICS
8-8 CENTRONICS
PCPCLPT1LPT2LPT2LPT138-9
CPU8-9
ASCII
8-20
8-21
8.5.2.1 I/O6AL
MOV AL,DATA ;AL MOV DX,378H OUT DX,AL MOV DX,379HWAIT: IN AL,DX ;TEST AL,80HJZ WAIT ;MOV DX,37AH ;MOV AL,0DHOUT DX,ALMOV AL,0CHOUT DX,ALRET
BIOS INT 17HPCROM BIOSINT 17HROM BIOS012
INT 17H8-10
INT 17HAH8-22
6 This printer is on right!#includeunion REGS inregs,ouregs;char msg[]=This printer is on right!.\n;main(){
int I;I=1;inregs.h.ah=0x01;inregs.x.ah=0;int86(0x17,&inregs,&outregs);while(msg[I]!=0){inregs.h.ah=0x00;inregs.h.al=msg[I];inregs.x.dx=1;int86(0x17,&inregs,&outregs);I++;}}
CPUCPU
8-231/1000
8-24Y5VA/D5VYX
ITO 5V0V
ABBA,
87
CPUIN4b3b0b2b1
8-28 LpenInputDDQLpSTBVRAMMA13MA0R16HR17L
b2=0b1=1R16R17Qb1LpenSW0b2CPUR16R17