[ บทความ : ตัวอย่างสำหรับ CP-SB31 V2 ตอนที่ 3 ] ทดสอบติดต่อกับ 8255 ของ CP-SB31V2 |
ตัวอย่างซอร์สโค้ดสำหรับติดต่อกับพอร์ต 8255 กับบอร์ด CP-SB31V2 ที่ติดตั้ง ET-DEBUG31 เป็นดังนี้
;/*********************************/; ;/* Demo Program For Test Port8255*/; ;/* Hardware : ET-CPSB31 V2.0 */; ;/* Complier : SXA51 */; ;/*********************************/; ; ;/***************************************/; ;/* Equate List Port I/O ET-CPSB31 V2.0 */; ;/***************************************/; ; PORTA EQU 0E0E0H ; Port A 8255 PORTB EQU 0E0E1H ; Port B 8255 PORTC EQU 0E0E2H ; Port C 8255 CONTRL EQU 0E0E3H ; Control Port 8255 ORG 2200H ; Strat Program For "ET-DEBUG31" MAIN: MOV R2,#02H ; Power-on Delay PWR_DLY1: MOV R3,#00H PWR_DLY2: MOV R4,#00H DJNZ R4,$ DJNZ R3,PWR_DLY2 DJNZ R2,PWR_DLY1 ; MOV DPTR,#CONTRL ; Control Port 8255 MOV A,#80H ; PA,PB,PC = Output MOVX @DPTR,A ; LOOP: MOV A,#00H ; OFF ALL LED MOV DPTR,#PORTA MOVX @DPTR,A MOV DPTR,#PORTB MOVX @DPTR,A MOV DPTR,#PORTC MOVX @DPTR,A ; SETB CY MOV DPTR,#PORTA MOV R2,#9 LOOP1: RRC A MOVX @DPTR,A LCALL DELAY DJNZ R2,LOOP1 ; MOV DPTR,#PORTB MOV R2,#9 LOOP2: RRC A MOVX @DPTR,A LCALL DELAY DJNZ R2,LOOP2 ; MOV DPTR,#PORTC MOV R2,#9 LOOP3: RRC A MOVX @DPTR,A LCALL DELAY DJNZ R2,LOOP3 SJMP LOOP ;/**************/; ;/* Delay Time */; ;/**************/; ; DELAY: MOV R3,#02H DLY1: MOV R4,#00H DLY2: MOV R5,#00H DJNZ R5,$ DJNZ R4,DLY2 DJNZ R3,DLY1 RET ENDสามารถ download ไฟล์ตัวอย่างของบอร์ด พร้อม assembler ได้เลยครับ