├── .gitignore ├── main.c ├── PDProject1 ├── PDProject1 │ ├── lib │ │ ├── PSoCGPIOINT.asm │ │ ├── PSoCGPIOINT.h │ │ ├── PSoCGPIOINT.inc │ │ ├── PSoCAPI.inc │ │ ├── obj │ │ │ ├── psocconfigtbl.o │ │ │ ├── usbint.o │ │ │ ├── usb_descr.o │ │ │ ├── psocconfig.o │ │ │ ├── usb.o │ │ │ ├── usb_std.o │ │ │ └── usb_drv.o │ │ ├── PSoCAPI.h │ │ ├── PSoCConfigTBL.asm │ │ ├── GlobalParams.inc │ │ ├── GlobalParams.h │ │ ├── USB.h │ │ ├── USBINT.asm │ │ ├── USB_macros.inc │ │ └── PSoCConfig.asm │ ├── mkdep │ ├── linkfile │ ├── opts.txt │ ├── BuildMsg.txt │ ├── project.mk │ ├── flashsecurity.txt │ ├── project.dep │ ├── project.dep.bak │ ├── main.c │ ├── backup │ │ ├── psocconfigtbl.asm │ │ ├── globalparams.inc │ │ ├── globalparams.h │ │ ├── usb.h │ │ ├── usb_1.h │ │ ├── usbint.asm │ │ ├── usb_1int.asm │ │ ├── usb_macros.inc │ │ ├── usb_1_macros.inc │ │ ├── psocconfig.asm │ │ └── usb_1_descr.asm │ ├── obj │ │ ├── main.o │ │ ├── boot.o │ │ └── main.lis │ ├── PDProject1.soc │ └── output │ │ ├── PDProject1.hex │ │ ├── PDProject1.rom │ │ └── PDProject1.mp ├── VarOffset.xml ├── PDProject1.app ├── PDProject1.cmx ├── PDProject1.pep └── PDProject1.hex ├── README └── control.py /.gitignore: -------------------------------------------------------------------------------- 1 | .*.swp 2 | -------------------------------------------------------------------------------- /main.c: -------------------------------------------------------------------------------- 1 | PDProject1/PDProject1/main.c -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/PSoCGPIOINT.asm: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/PSoCGPIOINT.h: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/PSoCGPIOINT.inc: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PDProject1/VarOffset.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /PDProject1/PDProject1.app: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/mkdep: -------------------------------------------------------------------------------- 1 | -a -f project.dep -p./std/obj/ -o.o -- -IC:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include -I./lib -I./std -I. -IC:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2 -- 2 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | Simple cheap USB LED Controller. 2 | 3 | 6 channel. 4 | 5 | Want to buy it on kickstarter? 6 | 7 | Actually I want the Chinese to clone this. Then I can buy it on amazon. 8 | 9 | I'm too old to solder shit. 10 | 11 | Oh Cypress why is your windows software. Linux command line no IDE plz. 12 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/linkfile: -------------------------------------------------------------------------------- 1 | -F0x30 -g -blit:0x150.0xbff 2 | -bdata:0.0xFF -rwh:SSCParmBlk:0x00F7.0x00FF 3 | -o"output/PDProject1" 4 | obj/main.o 5 | ./lib/libPSoc.a -LC:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/lib/SMM C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/lib/CY7C63300/cms.a C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/lib/SMM/UASW/NoMAC/arith.a 6 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/opts.txt: -------------------------------------------------------------------------------- 1 | LASTRAM=0x7f 2 | CODECOMPRESSOR= 3 | MORE_CFLAGS=-Wf-nomac -Wf-Osize 4 | RELSTART=0x150 5 | INC_PATH= 6 | CDEFINES= 7 | LIBS= 8 | UMLIBS= 9 | LIB_PATH= 10 | ENABLE_ALIGN_SHIFT=0 11 | LMM= 12 | SYS_INC_CONTENTS:=SYSTEM_STACK_PAGE:_equ_0 SYSTEM_STACK_BASE_ADDR:_equ_0h SYSTEM_LARGE_MEMORY_MODEL:_equ_0 SYSTEM_SMALL_MEMORY_MODEL:_equ_1 IMAGECRAFT:_equ_1 HITECH:_equ_2 TOOLCHAIN:_equ_IMAGECRAFT 13 | SYSTEM_TOOLS=1 14 | CSFLOW= 15 | CONFIG_NAMES=pdproject1 16 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/BuildMsg.txt: -------------------------------------------------------------------------------- 1 | Starting MAKE... 2 | creating project.mk 3 | 4 | lib/psocconfig.asm 5 | 6 | lib/psocconfigtbl.asm 7 | 8 | lib/usb.asm 9 | 10 | lib/usb_descr.asm 11 | 12 | lib/usb_drv.asm 13 | 14 | lib/usb_std.asm 15 | 16 | lib/usbint.asm 17 | 18 | ./boot.asm 19 | 20 | Linking.. 21 | 22 | ROM 74% full. 2252 out of 3072 bytes used (does not include absolute areas). 23 | 24 | RAM 20% full. 49 bytes used (does not include stack usage). 25 | 26 | Built with ICCM8C STD V7.05.00 27 | 28 | 29 | PDProject1 - 0 error(s) 0 warning(s) 10:52:58 30 | 31 | -------------------------------------------------------------------------------- /control.py: -------------------------------------------------------------------------------- 1 | import usb1 2 | import time 3 | import random 4 | 5 | # open the device 6 | context = usb1.USBContext() 7 | handle = context.openByVendorIDAndProductID(0x1337, 0x1337) 8 | print handle 9 | 10 | def off(): 11 | print "*** turning off" 12 | handle.bulkWrite(1, ''.join(map(chr, [0]*6))) 13 | 14 | import atexit 15 | atexit.register(off) 16 | 17 | cnt = 0 18 | while 1: 19 | inten = [0]*6 20 | inten[cnt >> 8] = cnt&0xFF 21 | inten[((cnt >> 8)+1)%3 + 3] = cnt&0xFF 22 | 23 | handle.bulkWrite(1, ''.join(map(chr, inten))) 24 | time.sleep(0.01) 25 | cnt += 4 26 | if cnt >= 0x300: 27 | cnt = 0 28 | 29 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/PSoCAPI.inc: -------------------------------------------------------------------------------- 1 | ; Generated by PSoC Designer 5.4.3191 2 | ; 3 | ; ============================================================================= 4 | ; FILENAME: PSoCAPI.inc 5 | ; 6 | ; Copyright (c) Cypress Semiconductor 2013. All Rights Reserved. 7 | ; 8 | ; NOTES: 9 | ; Do not modify this file. It is generated by PSoC Designer each time the 10 | ; generate application function is run. The values of the parameters in this 11 | ; file can be modified by changing the values of the global parameters in the 12 | ; device editor. 13 | ; 14 | ; ============================================================================= 15 | 16 | include "USB_macros.inc" 17 | include "USB.inc" 18 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/obj/psocconfigtbl.o: -------------------------------------------------------------------------------- 1 | XH 2 | H 3 areas 3 global symbols 3 | M psocconfigtbl.asm 4 | A text size 0 flags 0 5 | dbfile lib/psocconfigtbl.asm 6 | dbfunc 0 ? 0 I 7 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 8 | dbfunc 0 ? 0 I 9 | A lit size 2E flags 0 10 | S LoadConfigTBL_pdproject1_Bank0 Def0000 11 | S LoadConfigTBL_pdproject1_Bank1 Def0029 12 | A psoc_config size 3 flags 0 13 | dbfile lib/psocconfigtbl.asm 14 | dbfunc 0 ? 0 I 15 | dbline 2 0 16 | dbline 38 2 17 | S LoadConfigTBL_pdproject1_Ordered Def0000 18 | T 00 00 32 00 30 00 05 01 06 01 07 01 08 01 09 01 19 | R 00 00 00 01 20 | T 00 0E 0A 01 0B 00 0D 00 0E 00 0F 00 10 00 11 00 21 | R 00 00 00 01 22 | T 00 1C 12 00 13 00 3D 00 2B 00 31 80 2A 00 FF E0 23 | R 00 00 00 01 24 | T 00 2A 03 E3 14 FF 25 | R 00 00 00 01 26 | T 00 00 70 EF 7F 27 | R 00 00 00 02 28 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/PSoCAPI.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Generated by PSoC Designer 5.4.3191 3 | ******************************************************************************/ 4 | // ============================================================================= 5 | // FILENAME: PSoCAPI.h 6 | // 7 | // Copyright (c) Cypress Semiconductor 2013. All Rights Reserved. 8 | // 9 | // NOTES: 10 | // Do not modify this file. It is generated by PSoC Designer each time the 11 | // generate application function is run. The values of the parameters in this 12 | // file can be modified by changing the values of the global parameters in the 13 | // device editor. 14 | // 15 | // ============================================================================= 16 | 17 | #ifndef __PSOCAPI_H 18 | #define __PSOCAPI_H 19 | 20 | #include "USB.h" 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/project.mk: -------------------------------------------------------------------------------- 1 | PROJNAME=PDProject1 2 | DEVICE=CY7C63310-SXC 3 | BASEDEVICE=CY7C63300 4 | PROJPATH=C:/Users/IEUser/DOCUME~1/PSOCDE~1.4PR/PDPROJ~1/PDPROJ~1 5 | PSOCDIR=C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1 6 | INCLUDE_PATH=C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2 7 | CSRCS= main.c 8 | LIBCSRCS= 9 | STDCSRCS= 10 | ASMSRCS= 11 | LIBASMSRCS= psocconfig.asm psocconfigtbl.asm usb.asm usb_descr.asm usb_drv.asm usb_std.asm usbint.asm 12 | STDASMSRCS= 13 | OBJECT_SOURCES= main.c 14 | FILLVALUE=0x30 15 | LASTROM=0xbff 16 | LASTRAM=0x7f 17 | CODECOMPRESSOR= 18 | MORE_CFLAGS=-Wf-nomac -Wf-Osize 19 | RELSTART=0x150 20 | INC_PATH= 21 | CDEFINES= 22 | LIBS= 23 | UMLIBS= 24 | LIB_PATH= 25 | ENABLE_ALIGN_SHIFT=0 26 | LMM= 27 | SYS_INC_CONTENTS:=SYSTEM_STACK_PAGE:_equ_0 SYSTEM_STACK_BASE_ADDR:_equ_0h SYSTEM_LARGE_MEMORY_MODEL:_equ_0 SYSTEM_SMALL_MEMORY_MODEL:_equ_1 IMAGECRAFT:_equ_1 HITECH:_equ_2 TOOLCHAIN:_equ_IMAGECRAFT 28 | SYSTEM_TOOLS=1 29 | CSFLOW= 30 | CONFIG_NAMES=pdproject1 31 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/flashsecurity.txt: -------------------------------------------------------------------------------- 1 | ; @Id: flashsecurity.txt#2 @ 2 | ; 3 | ; Edit this file to adjust the Flash security for this project. 4 | ; Flash security is provided by marking a 64 byte block with a character 5 | ; that corresponds to the type of security for that block, given: 6 | ; 7 | ; W: Full (Write protected) 8 | ; R: Field Upgrade (Read protected) 9 | ; U: Unprotected 10 | ; F: Factory 11 | 12 | ; Note #1: Protection characters can be entered in upper or lower case. 13 | ; Note #2: Refer to the Flash Program Memory Protection section in the Data Sheet. 14 | 15 | ; Comments may be added similar to an assembly language comment, by 16 | ; Using the semicolon (;) followed by your comment. The comment extends 17 | ; to the end of the line. 18 | 19 | ; 0 40 80 C0 100 140 180 1C0 200 240 280 2C0 300 340 380 3C0 (+) Base Address 20 | 21 | W W W W W W W W W W W W W W W W ; Base Address 0 22 | W W W W W W W W W W W W W W W W ; Base Address 400 23 | W W W W W W W W W W W W W W W W ; Base Address 800 24 | ; End 3K parts 25 | 26 | 27 | ; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/obj/usbint.o: -------------------------------------------------------------------------------- 1 | XH 2 | H 2 areas D global symbols 3 | M usbint.asm 4 | S _USB_Start Ref0000 5 | S USB_EPDataToggle Ref0000 6 | S USB_bCurrentDevice Ref0000 7 | S USB_EndpointAPIStatus Ref0000 8 | S USB_bActivity Ref0000 9 | A text size 27 flags 0 10 | dbfile lib/usbint.asm 11 | dbfunc 0 ? 0 I 12 | dbline 3F 0 13 | dbline 40 1 14 | dbline 41 4 15 | dbline 42 6 16 | dbline 43 9 17 | dbline 44 A 18 | dbline 5F B 19 | dbline 60 C 20 | dbline 61 F 21 | dbline 62 11 22 | dbline 63 14 23 | dbline 64 15 24 | dbline 80 16 25 | dbline 81 17 26 | dbline 82 18 27 | dbline 83 1A 28 | dbline 84 1D 29 | dbline 85 1E 30 | dbline 88 1F 31 | dbline 9A 20 32 | dbline 2 23 33 | dbline 9C 26 34 | dbfile ./lib/USB.inc 35 | dbfunc 0 ? 0 I 36 | dbfile lib/usbint.asm 37 | dbfunc 0 ? 0 I 38 | dbfile ./lib/USB_macros.inc 39 | dbfunc 0 ? 0 I 40 | dbfile lib/usbint.asm 41 | dbfunc 0 ? 0 I 42 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 43 | dbfunc 0 ? 0 I 44 | S USB_RESET_ISR Def0016 45 | S USB_EP1_ISR Def0000 46 | S USB_EP2_ISR Def000B 47 | S USB_ACT_ISR Def0020 48 | S _USB_RESET_ISR Def0016 49 | S _USB_EP1_ISR Def0000 50 | S _USB_EP2_ISR Def000B 51 | S _USB_ACT_ISR Def0020 52 | A bss size 0 flags 20 53 | T 00 00 08 36 00 00 02 5D 45 55 00 01 01 18 7E 08 54 | R 00 00 00 00 03 04 00 01 03 0A 00 03 55 | T 00 0C 36 00 00 04 5D 46 55 00 02 01 18 7E 08 10 56 | R 00 00 00 00 03 03 00 01 03 09 00 03 57 | T 00 18 51 00 00 7C 00 00 20 18 7E 55 00 00 01 41 58 | R 00 00 00 00 03 03 00 02 02 06 00 00 03 0C 00 04 59 | T 00 24 E1 EF 7E 60 | R 00 00 00 00 61 | -------------------------------------------------------------------------------- /PDProject1/PDProject1.cmx: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/project.dep: -------------------------------------------------------------------------------- 1 | # DO NOT DELETE 2 | ./obj/boot.o : \ 3 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc\ 4 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8ssc.inc\ 5 | C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\lib\GLOBAL~1.INC\ 6 | C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\memory.inc 7 | ./obj/main.o : ./lib/PSoCAPI.h ./lib/USB.h\ 8 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.h\ 9 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/_const.h\ 10 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/string.h 11 | ./lib/obj/psocconfig.o : ./lib/GLOBAL~1.INC\ 12 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc\ 13 | C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\memory.inc 14 | ./lib/obj/psocconfigtbl.o : \ 15 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 16 | ./lib/obj/usb.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 17 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 18 | ./lib/obj/usb_descr.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 19 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 20 | ./lib/obj/usb_drv.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 21 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 22 | ./lib/obj/usb_std.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 23 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 24 | ./lib/obj/usbint.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 25 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 26 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/project.dep.bak: -------------------------------------------------------------------------------- 1 | # DO NOT DELETE 2 | ./obj/boot.o : \ 3 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc\ 4 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8ssc.inc\ 5 | C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\lib\GLOBAL~1.INC\ 6 | C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\memory.inc 7 | ./obj/main.o : ./lib/PSoCAPI.h ./lib/USB.h\ 8 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.h\ 9 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/_const.h\ 10 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/string.h 11 | ./lib/obj/psocconfig.o : ./lib/GLOBAL~1.INC\ 12 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc\ 13 | C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\memory.inc 14 | ./lib/obj/psocconfigtbl.o : \ 15 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 16 | ./lib/obj/usb.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 17 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 18 | ./lib/obj/usb_descr.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 19 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 20 | ./lib/obj/usb_drv.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 21 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 22 | ./lib/obj/usb_std.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 23 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 24 | ./lib/obj/usbint.o : ./lib/USB.inc ./lib/USB_MA~1.INC\ 25 | C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 26 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/main.c: -------------------------------------------------------------------------------- 1 | //---------------------------------------------------------------------------- 2 | // C main line 3 | //---------------------------------------------------------------------------- 4 | 5 | #include // part specific constants and macros 6 | #include "PSoCAPI.h" // PSoC API definitions for all User Modules 7 | #include 8 | 9 | // Port_0_0 - Port_0_5 are the 6 led pins 10 | #define TOP_BLUE (1 << 4) 11 | #define TOP_RED (1 << 2) 12 | #define TOP_GREEN (1 << 0) 13 | 14 | #define BOT_BLUE (1 << 5) 15 | #define BOT_RED (1 << 3) 16 | #define BOT_GREEN (1 << 1) 17 | 18 | // intensities 19 | unsigned char inten[6]; 20 | 21 | #pragma ioport EP1DATA_0: 0x058 22 | BYTE EP1DATA_0; 23 | #pragma ioport EP1DATA_1: 0x059 24 | BYTE EP1DATA_1; 25 | #pragma ioport EP1DATA_2: 0x05A 26 | BYTE EP1DATA_2; 27 | #pragma ioport EP1DATA_3: 0x05B 28 | BYTE EP1DATA_3; 29 | #pragma ioport EP1DATA_4: 0x05C 30 | BYTE EP1DATA_4; 31 | #pragma ioport EP1DATA_5: 0x05D 32 | BYTE EP1DATA_5; 33 | 34 | void main(void) { 35 | unsigned char cnt, dat; 36 | 37 | // init intensities 38 | memset(inten, 0, 6); 39 | 40 | // testing 41 | //inten[0] = 10; 42 | 43 | // enable sleep timer 44 | //INT_MSK0 |= INT_MSK0_SLEEP; 45 | 46 | // enable all interrupts 47 | M8C_EnableGInt; 48 | 49 | // wait for enumeration 50 | USB_Start(0); 51 | while (!USB_bGetConfiguration()){} 52 | USB_EnableEP(1); 53 | 54 | //USB_bReadOutEP 55 | 56 | cnt = 0; 57 | while (1) { 58 | dat = 0; 59 | 60 | if (USB_bGetEPCount(1) == 6) { 61 | USB_bReadOutEP(1, inten, 6); 62 | USB_EnableEP(1); 63 | } 64 | 65 | // 100% isn't possible...err 66 | if (cnt < inten[0]) dat |= TOP_BLUE; 67 | if (cnt < inten[1]) dat |= TOP_RED; 68 | if (cnt < inten[2]) dat |= TOP_GREEN; 69 | if (cnt < inten[3]) dat |= BOT_BLUE; 70 | if (cnt < inten[4]) dat |= BOT_RED; 71 | if (cnt < inten[5]) dat |= BOT_GREEN; 72 | 73 | P0DATA = dat; 74 | 75 | // will rollover 76 | cnt += 1; 77 | } 78 | } 79 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/psocconfigtbl.asm: -------------------------------------------------------------------------------- 1 | ; Generated by PSoC Designer 5.4.3191 2 | ; 3 | ; ============================================================================= 4 | ; FILENAME: PSoCConfigTBL.asm 5 | ; 6 | ; Copyright (c) Cypress Semiconductor 2013. All Rights Reserved. 7 | ; 8 | ; NOTES: 9 | ; Do not modify this file. It is generated by PSoC Designer each time the 10 | ; generate application function is run. The values of the parameters in this 11 | ; file can be modified by changing the values of the global parameters in the 12 | ; device editor. 13 | ; 14 | ; ============================================================================= 15 | 16 | include "m8c.inc" 17 | ; Personalization tables 18 | export LoadConfigTBL_pdproject1_Bank1 19 | export LoadConfigTBL_pdproject1_Bank0 20 | export LoadConfigTBL_pdproject1_Ordered 21 | AREA lit(rom, rel) 22 | LoadConfigTBL_pdproject1_Bank0: 23 | ; Instance name USB, User Module USB 24 | ; Global Register values Bank 0 25 | db 32h, 00h ; CLKIOCR register (CLKIOCR) 26 | db 30h, 00h ; CPUCLKCR register (CPUCLKCR) 27 | db 05h, 01h ; P00CR register (P00CR) 28 | db 06h, 01h ; P01CR register (P01CR) 29 | db 07h, 01h ; P02CR register (P02CR) 30 | db 08h, 01h ; P03CR register (P03CR) 31 | db 09h, 01h ; P04CR register (P04CR) 32 | db 0ah, 01h ; P05CR register (P05CR) 33 | db 0bh, 00h ; P06CR register (P06CR) 34 | db 0dh, 00h ; P10CR register (P10CR) 35 | db 0eh, 00h ; P11CR register (P11CR) 36 | db 0fh, 00h ; P12CR register (P12CR) 37 | db 10h, 00h ; P13CR register (P13CR) 38 | db 11h, 00h ; P14CR register (P14CR) 39 | db 12h, 00h ; P15CR register (P15CR) 40 | db 13h, 00h ; P16CR register (P16CR) 41 | db 3dh, 00h ; SPICR register (SPICR) 42 | db 2bh, 00h ; TCAPINTE register (TCAPINTE) 43 | db 31h, 80h ; TMRCLKCR register (TMRCLKCR) 44 | db 2ah, 00h ; TMRCR register (TMRCR) 45 | db ffh 46 | LoadConfigTBL_pdproject1_Bank1: 47 | ; Instance name USB, User Module USB 48 | ; Global Register values Bank 1 49 | db e0h, 03h ; OscillatorControl_0 register (OSC_CR0) 50 | db e3h, 14h ; VLDCR register (VLDCR) 51 | db ffh 52 | AREA psoc_config(rom, rel) 53 | LoadConfigTBL_pdproject1_Ordered: 54 | ; Ordered Global Register values 55 | M8C_SetBank0 56 | ret 57 | 58 | 59 | ; PSoC Configuration file trailer PsocConfig.asm 60 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/PSoCConfigTBL.asm: -------------------------------------------------------------------------------- 1 | ; Generated by PSoC Designer 5.4.3191 2 | ; 3 | ; ============================================================================= 4 | ; FILENAME: PSoCConfigTBL.asm 5 | ; 6 | ; Copyright (c) Cypress Semiconductor 2013. All Rights Reserved. 7 | ; 8 | ; NOTES: 9 | ; Do not modify this file. It is generated by PSoC Designer each time the 10 | ; generate application function is run. The values of the parameters in this 11 | ; file can be modified by changing the values of the global parameters in the 12 | ; device editor. 13 | ; 14 | ; ============================================================================= 15 | 16 | include "m8c.inc" 17 | ; Personalization tables 18 | export LoadConfigTBL_pdproject1_Bank1 19 | export LoadConfigTBL_pdproject1_Bank0 20 | export LoadConfigTBL_pdproject1_Ordered 21 | AREA lit(rom, rel) 22 | LoadConfigTBL_pdproject1_Bank0: 23 | ; Instance name USB, User Module USB 24 | ; Global Register values Bank 0 25 | db 32h, 00h ; CLKIOCR register (CLKIOCR) 26 | db 30h, 00h ; CPUCLKCR register (CPUCLKCR) 27 | db 05h, 01h ; P00CR register (P00CR) 28 | db 06h, 01h ; P01CR register (P01CR) 29 | db 07h, 01h ; P02CR register (P02CR) 30 | db 08h, 01h ; P03CR register (P03CR) 31 | db 09h, 01h ; P04CR register (P04CR) 32 | db 0ah, 01h ; P05CR register (P05CR) 33 | db 0bh, 00h ; P06CR register (P06CR) 34 | db 0dh, 00h ; P10CR register (P10CR) 35 | db 0eh, 00h ; P11CR register (P11CR) 36 | db 0fh, 00h ; P12CR register (P12CR) 37 | db 10h, 00h ; P13CR register (P13CR) 38 | db 11h, 00h ; P14CR register (P14CR) 39 | db 12h, 00h ; P15CR register (P15CR) 40 | db 13h, 00h ; P16CR register (P16CR) 41 | db 3dh, 00h ; SPICR register (SPICR) 42 | db 2bh, 00h ; TCAPINTE register (TCAPINTE) 43 | db 31h, 80h ; TMRCLKCR register (TMRCLKCR) 44 | db 2ah, 00h ; TMRCR register (TMRCR) 45 | db ffh 46 | LoadConfigTBL_pdproject1_Bank1: 47 | ; Instance name USB, User Module USB 48 | ; Global Register values Bank 1 49 | db e0h, 03h ; OscillatorControl_0 register (OSC_CR0) 50 | db e3h, 14h ; VLDCR register (VLDCR) 51 | db ffh 52 | AREA psoc_config(rom, rel) 53 | LoadConfigTBL_pdproject1_Ordered: 54 | ; Ordered Global Register values 55 | M8C_SetBank0 56 | ret 57 | 58 | 59 | ; PSoC Configuration file trailer PsocConfig.asm 60 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/obj/main.o: -------------------------------------------------------------------------------- 1 | XH 2 | H 2 areas 8 global symbols 3 | M main.c 4 | S _USB_bReadOutEP Ref0000 5 | S _USB_bGetConfiguration Ref0000 6 | S _USB_EnableEP Ref0000 7 | S _USB_Start Ref0000 8 | S _USB_bGetEPCount Ref0000 9 | S _memset Ref0000 10 | A text size A0 flags 0 11 | dbfile ./main.c 12 | dbfile C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\main.c 13 | dbfunc e main 0 fV 14 | dbsym l dat 1 c 15 | dbsym l cnt 0 c 16 | dbline FFFFFFFF 0 17 | dbline 22 4 18 | dbline 26 4 19 | dbline 2F 19 20 | dbline 32 1B 21 | dbline 33 22 22 | dbline 33 22 23 | dbline 33 22 24 | dbline 34 2B 25 | dbline 38 32 26 | dbline 39 37 27 | dbline 3A 37 28 | dbline 3C 3A 29 | dbline 3D 45 30 | dbline 3D 45 31 | dbline 3E 57 32 | dbline 3F 5D 33 | dbline 42 5D 34 | dbline 42 63 35 | dbline 43 66 36 | dbline 43 6C 37 | dbline 44 6F 38 | dbline 44 75 39 | dbline 45 78 40 | dbline 45 7E 41 | dbline 46 81 42 | dbline 46 87 43 | dbline 47 8A 44 | dbline 47 90 45 | dbline 49 93 46 | dbline 4C 97 47 | dbline 4D 99 48 | dbline 39 99 49 | dbline FFFFFFFE 9B 50 | dbline 0 9E 51 | S _main Def0000 52 | A bss size 6 flags 20 53 | dbfile C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\main.c 54 | dbsym e inten 0 A[6:6]c 55 | S _inten Def0000 56 | T 00 00 10 4F 38 02 50 00 08 50 06 08 50 00 08 08 57 | R 00 00 00 00 58 | T 00 0E 50 00 00 08 50 00 00 08 7C 00 00 38 FA 71 59 | R 00 00 00 00 41 03 00 01 01 07 00 01 02 0B 00 05 60 | T 00 1A 01 10 50 00 7C 00 00 20 10 7C 00 00 20 39 61 | R 00 00 00 00 02 07 00 03 02 0C 00 01 62 | T 00 28 00 AF F8 10 50 01 7C 00 00 20 56 00 00 80 63 | R 00 00 00 00 02 09 00 02 64 | T 00 36 63 56 01 00 10 50 01 7C 00 00 20 39 06 B0 65 | R 00 00 00 00 02 0A 00 04 66 | T 00 44 19 10 50 06 08 50 00 00 08 50 00 00 08 50 67 | R 00 00 00 00 41 08 00 01 01 0C 00 01 68 | T 00 50 01 08 7C 00 00 38 FC 50 01 7C 00 00 20 52 69 | R 00 00 00 00 02 05 00 00 02 0C 00 02 70 | T 00 5E 00 3A 00 00 D0 04 2F 01 10 52 00 3A 00 01 71 | R 00 00 00 00 01 04 00 01 01 0E 00 01 72 | T 00 6A D0 04 2F 01 04 52 00 3A 00 02 D0 04 2F 01 73 | R 00 00 00 00 01 0A 00 01 74 | T 00 77 01 52 00 3A 00 03 D0 04 2F 01 20 52 00 3A 75 | R 00 00 00 00 01 06 00 01 76 | T 00 84 00 04 D0 04 2F 01 08 52 00 3A 00 05 D0 04 77 | R 00 00 00 00 01 02 00 01 01 0C 00 01 78 | T 00 90 2F 01 02 52 01 60 00 77 00 8F 9D 38 FE 20 79 | R 00 00 00 00 80 | T 00 9E 8F FF 81 | R 00 00 00 00 82 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/GlobalParams.inc: -------------------------------------------------------------------------------- 1 | ; Generated by PSoC Designer 5.4.3191 2 | ; 3 | ; 4 | ; This file contains equates to support oscillator register initialization 5 | ; for CY7C63310-SXC 6 | ; 7 | 8 | CPU_CLOCK: equ 0h ;CPU Clock value 9 | CPU_CLOCK_MASK: equ 1h ;CPU Clock mask 10 | CPU_CLOCK_JUST: equ 0h ;CPU Clock value justified 11 | 12 | CPU_CLOCK_SPEED: equ 3h ;CPU Clock Speed value 13 | CPU_CLOCK_SPEED_MASK: equ 7h ;CPU Clock Speed mask 14 | CPU_CLOCK_SPEED_JUST: equ 3h ;CPU Clock Speed value justified 15 | 16 | TIMER_CLOCK: equ 0h ;Timer Clock value 17 | TIMER_CLOCK_MASK: equ 3h ;Timer Clock mask 18 | TIMER_CLOCK_JUST: equ 0h ;Timer Clock value justified 19 | 20 | TIMER_CLOCK_SPEED: equ 0h ;Timer clock speed value 21 | TIMER_CLOCK_SPEED_MASK: equ ch ;Timer clock speed mask 22 | TIMER_CLOCK_SPEED_JUST: equ 0h ;Timer clock speed value justified 23 | 24 | CAPT_CLOCK: equ 0h ;Capture Clock value 25 | CAPT_CLOCK_MASK: equ 30h ;Capture Clock mask 26 | CAPT_CLOCK_JUST: equ 0h ;Capture Clock value justified 27 | 28 | CAPT_CLOCK_SPEED: equ 2h ;Capture Clock speed value 29 | CAPT_CLOCK_SPEED_MASK: equ c0h ;Capture Clock speed mask 30 | CAPT_CLOCK_SPEED_JUST: equ 80h ;Capture Clock speed value justified 31 | 32 | CAPT_EDGE: equ 0h ;Capture Edge value 33 | CAPT_EDGE_MASK: equ 80h ;Capture Edge mask 34 | CAPT_EDGE_JUST: equ 0h ;Capture Edge value justified 35 | 36 | CAPT_PRESCALE: equ 0h ;Capture Prescale value 37 | CAPT_PRESCALE_MASK: equ 70h ;Capture Prescale mask 38 | CAPT_PRESCALE_JUST: equ 0h ;Capture Prescale value justified 39 | 40 | USB_CLOCK: equ 0h ;USB Clock source value 41 | USB_CLOCK_MASK: equ 20h ;USB Clock source mask 42 | USB_CLOCK_JUST: equ 0h ;USB Clock source justified 43 | 44 | USB_CLOCK_SPEED: equ 0h ;USB Clock div by 2 value 45 | USB_CLOCK_SPEED_MASK: equ 40h ;USB Clock div by 2 mask 46 | USB_CLOCK_SPEED_JUST: equ 0h ;USB Clock div by 2 justified 47 | 48 | CLOCK_OUT: equ 0h ;Clock Out value 49 | CLOCK_OUT_MASK: equ 3h ;Clock Out mask 50 | CLOCK_OUT_JUST: equ 0h ;Clock Out value justified 51 | 52 | LV_DETECT_LEVEL: equ 4h ;Low V Detect Level value 53 | LV_DETECT_LEVEL_MASK: equ 7h ;Low V Detect Level mask 54 | LV_DETECT_LEVEL_JUST: equ 4h ;Low V Detect Level value justified 55 | 56 | PWR_ON_RESET_LEVEL: equ 1h ;PowerOn Reset Level value 57 | PWR_ON_RESET_LEVEL_MASK: equ 30h ;PowerOn Reset Level mask 58 | PWR_ON_RESET_LEVEL_JUST: equ 10h ;PowerOn Reset Level value justified 59 | 60 | WATCHDOG_ENABLE: equ 0h ;Watchdog Enable value 61 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/globalparams.inc: -------------------------------------------------------------------------------- 1 | ; Generated by PSoC Designer 5.4.3191 2 | ; 3 | ; 4 | ; This file contains equates to support oscillator register initialization 5 | ; for CY7C63310-SXC 6 | ; 7 | 8 | CPU_CLOCK: equ 0h ;CPU Clock value 9 | CPU_CLOCK_MASK: equ 1h ;CPU Clock mask 10 | CPU_CLOCK_JUST: equ 0h ;CPU Clock value justified 11 | 12 | CPU_CLOCK_SPEED: equ 3h ;CPU Clock Speed value 13 | CPU_CLOCK_SPEED_MASK: equ 7h ;CPU Clock Speed mask 14 | CPU_CLOCK_SPEED_JUST: equ 3h ;CPU Clock Speed value justified 15 | 16 | TIMER_CLOCK: equ 0h ;Timer Clock value 17 | TIMER_CLOCK_MASK: equ 3h ;Timer Clock mask 18 | TIMER_CLOCK_JUST: equ 0h ;Timer Clock value justified 19 | 20 | TIMER_CLOCK_SPEED: equ 0h ;Timer clock speed value 21 | TIMER_CLOCK_SPEED_MASK: equ ch ;Timer clock speed mask 22 | TIMER_CLOCK_SPEED_JUST: equ 0h ;Timer clock speed value justified 23 | 24 | CAPT_CLOCK: equ 0h ;Capture Clock value 25 | CAPT_CLOCK_MASK: equ 30h ;Capture Clock mask 26 | CAPT_CLOCK_JUST: equ 0h ;Capture Clock value justified 27 | 28 | CAPT_CLOCK_SPEED: equ 2h ;Capture Clock speed value 29 | CAPT_CLOCK_SPEED_MASK: equ c0h ;Capture Clock speed mask 30 | CAPT_CLOCK_SPEED_JUST: equ 80h ;Capture Clock speed value justified 31 | 32 | CAPT_EDGE: equ 0h ;Capture Edge value 33 | CAPT_EDGE_MASK: equ 80h ;Capture Edge mask 34 | CAPT_EDGE_JUST: equ 0h ;Capture Edge value justified 35 | 36 | CAPT_PRESCALE: equ 0h ;Capture Prescale value 37 | CAPT_PRESCALE_MASK: equ 70h ;Capture Prescale mask 38 | CAPT_PRESCALE_JUST: equ 0h ;Capture Prescale value justified 39 | 40 | USB_CLOCK: equ 0h ;USB Clock source value 41 | USB_CLOCK_MASK: equ 20h ;USB Clock source mask 42 | USB_CLOCK_JUST: equ 0h ;USB Clock source justified 43 | 44 | USB_CLOCK_SPEED: equ 0h ;USB Clock div by 2 value 45 | USB_CLOCK_SPEED_MASK: equ 40h ;USB Clock div by 2 mask 46 | USB_CLOCK_SPEED_JUST: equ 0h ;USB Clock div by 2 justified 47 | 48 | CLOCK_OUT: equ 0h ;Clock Out value 49 | CLOCK_OUT_MASK: equ 3h ;Clock Out mask 50 | CLOCK_OUT_JUST: equ 0h ;Clock Out value justified 51 | 52 | LV_DETECT_LEVEL: equ 4h ;Low V Detect Level value 53 | LV_DETECT_LEVEL_MASK: equ 7h ;Low V Detect Level mask 54 | LV_DETECT_LEVEL_JUST: equ 4h ;Low V Detect Level value justified 55 | 56 | PWR_ON_RESET_LEVEL: equ 1h ;PowerOn Reset Level value 57 | PWR_ON_RESET_LEVEL_MASK: equ 30h ;PowerOn Reset Level mask 58 | PWR_ON_RESET_LEVEL_JUST: equ 10h ;PowerOn Reset Level value justified 59 | 60 | WATCHDOG_ENABLE: equ 0h ;Watchdog Enable value 61 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/obj/usb_descr.o: -------------------------------------------------------------------------------- 1 | XH 2 | H 2 areas 18 global symbols 3 | M usb_descr.asm 4 | A text size 0 flags 0 5 | dbfile lib/usb_descr.asm 6 | dbfunc 0 ? 0 I 7 | dbfile ./lib/USB_macros.inc 8 | dbfunc 0 ? 0 I 9 | dbfile lib/usb_descr.asm 10 | dbfunc 0 ? 0 I 11 | dbfile ./lib/USB.inc 12 | dbfunc 0 ? 0 I 13 | dbfile lib/usb_descr.asm 14 | dbfunc 0 ? 0 I 15 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 16 | dbfunc 0 ? 0 I 17 | A lit size AB flags 0 18 | S USB_D0_CONFIG_LOOKUP Def0005 19 | S USB_D0_C1_INTERFACE_RPT_LOOKUP Def000C 20 | S $lb$USB_D0_CONFIG_LOOKUP Def0005 21 | S $lb$USB_D0_C1_INTERFACE_RPT_LOOKUP Def000C 22 | S $le$USB_D0_CONFIG_LOOKUP Def000A 23 | S $le$USB_D0_C1_INTERFACE_RPT_LOOKUP Def000E 24 | S USB_D0_C1_HID_CLASS_DESCR_TABLE Def000E 25 | S USB_DEVICE_LOOKUP Def0000 26 | S $lb$USB_D0_C1_HID_CLASS_DESCR_TABLE Def000E 27 | S $lb$USB_DEVICE_LOOKUP Def0000 28 | S $le$USB_D0_C1_HID_CLASS_DESCR_TABLE Def0017 29 | S $le$USB_DEVICE_LOOKUP Def0005 30 | S $lb$USB_D0_CONFIG_DESCR_TABLE Def0017 31 | S $le$USB_D0_CONFIG_DESCR_TABLE Def0020 32 | S $lb$USB_D0_C1_EP_SETUP Def000A 33 | S $le$USB_D0_C1_EP_SETUP Def000C 34 | S $lb$USB_D0_DESCR_START Def0029 35 | S USB_DEVICE_DESCR_TABLE Def0020 36 | S $le$USB_D0_DESCR_START Def0054 37 | S $lb$USB_DEVICE_DESCR_TABLE Def0020 38 | S USB_StringTable Def0054 39 | S $le$USB_DEVICE_DESCR_TABLE Def0029 40 | S $lb$USB_StringTable Def0054 41 | S $le$USB_StringTable Def00AB 42 | T 00 00 01 00 05 00 17 43 | R 00 00 00 01 00 03 00 01 00 05 00 01 44 | T 00 05 01 00 00 00 00 45 | R 00 00 00 01 46 | T 00 0A 00 7F 00 00 47 | R 00 00 00 01 48 | T 00 0E 00 00 00 00 00 00 00 00 DE 49 | R 00 00 00 01 50 | T 00 17 00 00 00 19 00 3B 00 00 DE 51 | R 00 00 00 01 00 06 00 01 52 | T 00 20 00 00 00 12 00 29 00 00 DE 53 | R 00 00 00 01 00 06 00 01 54 | T 00 29 12 01 00 02 00 00 00 08 37 13 37 13 00 00 55 | R 00 00 00 01 56 | T 00 37 02 01 00 01 09 02 19 00 01 01 00 80 32 09 57 | R 00 00 00 01 58 | T 00 45 04 00 00 01 00 00 00 00 07 05 01 03 06 00 59 | R 00 00 00 01 60 | T 00 53 0A 61 | R 00 00 00 01 62 | T 00 54 02 00 00 04 00 6D 00 00 DE 00 00 28 00 71 63 | R 00 00 00 01 00 06 00 01 00 0E 00 01 64 | T 00 62 00 00 DE 00 00 12 00 99 00 00 DE 04 03 65 | R 00 00 00 01 00 08 00 01 66 | T 00 6F 09 04 28 03 31 00 33 00 33 00 37 00 20 00 67 | R 00 00 00 01 68 | T 00 7D 4C 00 45 00 44 00 20 00 63 00 6F 00 6E 00 69 | R 00 00 00 01 70 | T 00 8B 74 00 72 00 6F 00 6C 00 6C 00 65 00 72 00 71 | R 00 00 00 01 72 | T 00 99 12 03 63 00 6F 00 6D 00 6D 00 61 00 2E 00 73 | R 00 00 00 01 74 | T 00 A7 61 00 69 00 75 | R 00 00 00 01 76 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/obj/psocconfig.o: -------------------------------------------------------------------------------- 1 | XH 2 | H 3 areas B global symbols 3 | M psocconfig.asm 4 | S LoadConfigTBL_pdproject1_Bank0 Ref0000 5 | S LoadConfigTBL_pdproject1_Bank1 Ref0000 6 | S LoadConfigTBL_pdproject1_Ordered Ref0000 7 | A text size 0 flags 0 8 | dbfile lib/psocconfig.asm 9 | dbfunc 0 ? 0 I 10 | dbfile ./lib/GlobalParams.inc 11 | dbfunc 0 ? 0 I 12 | dbfile lib/psocconfig.asm 13 | dbfunc 0 ? 0 I 14 | dbfile memory.inc 15 | dbfunc 0 ? 0 I 16 | dbfile lib/psocconfig.asm 17 | dbfunc 0 ? 0 I 18 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 19 | dbfunc 0 ? 0 I 20 | A psoc_config size 61 flags 0 21 | dbfile lib/psocconfig.asm 22 | dbfunc 0 ? 0 I 23 | dbline 3D 0 24 | dbline 3F 3 25 | dbline 40 6 26 | dbline 44 9 27 | dbline 5D A 28 | dbline 2 B 29 | dbline 5F D 30 | dbline 60 F 31 | dbline 62 10 32 | dbline 63 12 33 | dbline 64 14 34 | dbline 66 17 35 | dbline 67 19 36 | dbline 69 1A 37 | dbline 6A 1C 38 | dbline 6B 1E 39 | dbline 2 21 40 | dbline 6E 23 41 | dbline 71 24 42 | dbline 87 25 43 | dbline 88 27 44 | dbline 89 28 45 | dbline 8A 29 46 | dbline 8B 2A 47 | dbline 8C 2D 48 | dbline 8D 2F 49 | dbline 8F 32 50 | dbline 90 33 51 | dbline 2 34 52 | dbline 2 36 53 | dbline 95 39 54 | dbline 96 3A 55 | dbline 97 3B 56 | dbline 98 3C 57 | dbline 99 3E 58 | dbline 9A 40 59 | dbline 9B 41 60 | dbline 9C 44 61 | dbline 2 46 62 | dbline 9F 48 63 | dbline A0 4A 64 | dbline A1 4B 65 | dbline A2 4C 66 | dbline A3 4D 67 | dbline A4 4F 68 | dbline A5 50 69 | dbline A6 51 70 | dbline A7 52 71 | dbline A8 53 72 | dbline A9 55 73 | dbline AA 57 74 | dbline AB 58 75 | dbline AC 59 76 | dbline AD 5A 77 | dbline AE 5C 78 | dbline B0 5E 79 | dbline B2 60 80 | S LoadConfig_pdproject1 Def000A 81 | S LoadConfigInit Def0000 82 | S _LoadConfig_pdproject1 Def000A 83 | S _LoadConfigInit Def0000 84 | A InterruptRAM size 1 flags 20 85 | S _NO_SHADOW Def0000 86 | S _Port_1_Data_SHADE Def0000 87 | S NO_SHADOW Def0000 88 | S Port_1_Data_SHADE Def0000 89 | T 00 00 55 00 00 00 7C 00 0A 7C 00 00 7F 10 70 EF 90 | R 00 00 00 01 01 03 00 02 00 07 00 01 02 0A 00 02 91 | T 00 0D 50 00 67 50 00 00 57 00 00 7C 00 25 50 01 92 | R 00 00 00 01 43 06 00 00 03 09 00 00 00 0C 00 01 93 | T 00 19 67 50 00 00 57 00 00 7C 00 25 70 EF 20 7F 94 | R 00 00 00 01 43 04 00 01 03 07 00 01 00 0A 00 01 95 | T 00 25 38 02 10 08 4F 56 FC 00 D0 04 56 FC 01 18 96 | R 00 00 00 01 97 | T 00 33 20 70 EF 62 E3 00 10 08 28 39 FF A0 1F 4F 98 | R 00 00 00 01 99 | T 00 41 48 FC 01 A0 03 71 10 54 FD 18 20 75 09 00 100 | R 00 00 00 01 101 | T 00 4F 10 08 28 4F 59 FD 61 00 18 20 75 09 00 8F 102 | R 00 00 00 01 103 | T 00 5D D7 38 FC 7F 104 | R 00 00 00 01 105 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/GlobalParams.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Generated by PSoC Designer 5.4.3191 3 | ******************************************************************************/ 4 | /****************************************************************************** 5 | * This file contains defines to support oscillator register initialization 6 | * for CY7C63310-SXC 7 | ******************************************************************************/ 8 | 9 | #define CPU_CLOCK 0x0 //CPU Clock value 10 | #define CPU_CLOCK_MASK 0x1 //CPU Clock mask 11 | #define CPU_CLOCK_JUST 0x0 //CPU Clock value justified 12 | 13 | #define CPU_CLOCK_SPEED 0x3 //CPU Clock Speed value 14 | #define CPU_CLOCK_SPEED_MASK 0x7 //CPU Clock Speed mask 15 | #define CPU_CLOCK_SPEED_JUST 0x3 //CPU Clock Speed value justified 16 | 17 | #define TIMER_CLOCK 0x0 //Timer Clock value 18 | #define TIMER_CLOCK_MASK 0x3 //Timer Clock mask 19 | #define TIMER_CLOCK_JUST 0x0 //Timer Clock value justified 20 | 21 | #define TIMER_CLOCK_SPEED 0x0 //Timer Clock Speed value 22 | #define TIMER_CLOCK_SPEED_MASK 0xc //Timer Clock Speed mask 23 | #define TIMER_CLOCK_SPEED_JUST 0x0 //Timer Clock Speed value justified 24 | 25 | #define CAPT_CLOCK 0x0 //Capture Clock value 26 | #define CAPT_CLOCK_MASK 0x30 //Capture Clock mask 27 | #define CAPT_CLOCK_JUST 0x0 //Capture Clock value justified 28 | 29 | #define CAPT_CLOCK_SPEED 0x2 //Capture Clock Speed value 30 | #define CAPT_CLOCK_SPEED_MASK 0xc0 //Capture Clock Speed mask 31 | #define CAPT_CLOCK_SPEED_JUST 0x80 //Capture Clock Speed value justified 32 | 33 | #define CAPT_EDGE 0x0 //Capture Edge value 34 | #define CAPT_EDGE_MASK 0x80 //Capture Edge mask 35 | #define CAPT_EDGE_JUST 0x0 //Capture Edge value justified 36 | 37 | #define CAPT_PRESCALE 0x0 //Capture Prescale value 38 | #define CAPT_PRESCALE_MASK 0x70 //Capture Prescale mask 39 | #define CAPT_PRESCALE_JUST 0x0 //Capture Prescale value justified 40 | 41 | #define USB_CLOCK 0x0 //USB Clock value 42 | #define USB_CLOCK_MASK 0x20 //USB Clock mask 43 | #define USB_CLOCK_JUST 0x0 //USB Clock value justified 44 | 45 | #define USB_CLOCK_SPEED 0x0 //CPU Clock Speed value 46 | #define USB_CLOCK_SPEED_MASK 0x40 //CPU Clock Speed mask 47 | #define USB_CLOCK_SPEED_JUST 0x0 //CPU Clock Speed value justified 48 | 49 | #define CLOCK_OUT 0x0 //Clock Out value 50 | #define CLOCK_OUT_MASK 0x3 //Clock Out mask 51 | #define CLOCK_OUT_JUST 0x0 //Clock Out value justified 52 | 53 | #define LV_DETECT_LEVEL 0x4 //Low V Detect Level value 54 | #define LV_DETECT_LEVEL_MASK 0x7 //Low V Detect Level mask 55 | #define LV_DETECT_LEVEL_JUST 0x4 //Low V Detect Level value justified 56 | 57 | #define PWR_ON_RESET_LEVEL 0x1 //PowerOn Reset Level value 58 | #define PWR_ON_RESET_LEVEL_MASK 0x30 //PowerOn Reset Level mask 59 | #define PWR_ON_RESET_LEVEL_JUST 0x10 //PowerOn Reset Level value justified 60 | 61 | #define WATCHDOG_ENABLE 0x0 //Watchdog Enable value 62 | 63 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/globalparams.h: -------------------------------------------------------------------------------- 1 | /****************************************************************************** 2 | * Generated by PSoC Designer 5.4.3191 3 | ******************************************************************************/ 4 | /****************************************************************************** 5 | * This file contains defines to support oscillator register initialization 6 | * for CY7C63310-SXC 7 | ******************************************************************************/ 8 | 9 | #define CPU_CLOCK 0x0 //CPU Clock value 10 | #define CPU_CLOCK_MASK 0x1 //CPU Clock mask 11 | #define CPU_CLOCK_JUST 0x0 //CPU Clock value justified 12 | 13 | #define CPU_CLOCK_SPEED 0x3 //CPU Clock Speed value 14 | #define CPU_CLOCK_SPEED_MASK 0x7 //CPU Clock Speed mask 15 | #define CPU_CLOCK_SPEED_JUST 0x3 //CPU Clock Speed value justified 16 | 17 | #define TIMER_CLOCK 0x0 //Timer Clock value 18 | #define TIMER_CLOCK_MASK 0x3 //Timer Clock mask 19 | #define TIMER_CLOCK_JUST 0x0 //Timer Clock value justified 20 | 21 | #define TIMER_CLOCK_SPEED 0x0 //Timer Clock Speed value 22 | #define TIMER_CLOCK_SPEED_MASK 0xc //Timer Clock Speed mask 23 | #define TIMER_CLOCK_SPEED_JUST 0x0 //Timer Clock Speed value justified 24 | 25 | #define CAPT_CLOCK 0x0 //Capture Clock value 26 | #define CAPT_CLOCK_MASK 0x30 //Capture Clock mask 27 | #define CAPT_CLOCK_JUST 0x0 //Capture Clock value justified 28 | 29 | #define CAPT_CLOCK_SPEED 0x2 //Capture Clock Speed value 30 | #define CAPT_CLOCK_SPEED_MASK 0xc0 //Capture Clock Speed mask 31 | #define CAPT_CLOCK_SPEED_JUST 0x80 //Capture Clock Speed value justified 32 | 33 | #define CAPT_EDGE 0x0 //Capture Edge value 34 | #define CAPT_EDGE_MASK 0x80 //Capture Edge mask 35 | #define CAPT_EDGE_JUST 0x0 //Capture Edge value justified 36 | 37 | #define CAPT_PRESCALE 0x0 //Capture Prescale value 38 | #define CAPT_PRESCALE_MASK 0x70 //Capture Prescale mask 39 | #define CAPT_PRESCALE_JUST 0x0 //Capture Prescale value justified 40 | 41 | #define USB_CLOCK 0x0 //USB Clock value 42 | #define USB_CLOCK_MASK 0x20 //USB Clock mask 43 | #define USB_CLOCK_JUST 0x0 //USB Clock value justified 44 | 45 | #define USB_CLOCK_SPEED 0x0 //CPU Clock Speed value 46 | #define USB_CLOCK_SPEED_MASK 0x40 //CPU Clock Speed mask 47 | #define USB_CLOCK_SPEED_JUST 0x0 //CPU Clock Speed value justified 48 | 49 | #define CLOCK_OUT 0x0 //Clock Out value 50 | #define CLOCK_OUT_MASK 0x3 //Clock Out mask 51 | #define CLOCK_OUT_JUST 0x0 //Clock Out value justified 52 | 53 | #define LV_DETECT_LEVEL 0x4 //Low V Detect Level value 54 | #define LV_DETECT_LEVEL_MASK 0x7 //Low V Detect Level mask 55 | #define LV_DETECT_LEVEL_JUST 0x4 //Low V Detect Level value justified 56 | 57 | #define PWR_ON_RESET_LEVEL 0x1 //PowerOn Reset Level value 58 | #define PWR_ON_RESET_LEVEL_MASK 0x30 //PowerOn Reset Level mask 59 | #define PWR_ON_RESET_LEVEL_JUST 0x10 //PowerOn Reset Level value justified 60 | 61 | #define WATCHDOG_ENABLE 0x0 //Watchdog Enable value 62 | 63 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/USB.h: -------------------------------------------------------------------------------- 1 | //***************************************************************************** 2 | //***************************************************************************** 3 | // FILENAME: USB.h 4 | // Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | // Generated by PSoC Designer 5.4.3191 6 | // 7 | // DESCRIPTION: USB User Module C Language interface file 8 | //----------------------------------------------------------------------------- 9 | // Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 10 | //***************************************************************************** 11 | //***************************************************************************** 12 | #ifndef USB_INCLUDE 13 | #define USB_INCLUDE 14 | 15 | #include 16 | 17 | //------------------------------------------------- 18 | // USB Device type support for the USB API. 19 | //------------------------------------------------- 20 | 21 | //------------------------------------------------- 22 | // fastcall16 qualifiers for the USB API. 23 | //------------------------------------------------- 24 | #pragma fastcall16 USB_Start 25 | #pragma fastcall16 USB_Stop 26 | #pragma fastcall16 USB_bCheckActivity 27 | #pragma fastcall16 USB_bGetConfiguration 28 | #pragma fastcall16 USB_bGetEPState 29 | #pragma fastcall16 USB_bGetEPCount 30 | #pragma fastcall16 USB_XLoadEP 31 | #pragma fastcall16 USB_EnableOutEP 32 | #pragma fastcall16 USB_DisableOutEP 33 | #pragma fastcall16 USB_EnableEP 34 | #pragma fastcall16 USB_DisableEP 35 | #pragma fastcall16 USB_Force 36 | #pragma fastcall16 USB_Suspend 37 | #pragma fastcall16 USB_Resume 38 | #pragma fastcall16 USB_bRWUEnabled 39 | #pragma fastcall16 USB_bGetEPAckState 40 | #pragma fastcall16 USB_SetPowerStatus 41 | #pragma fastcall16 USB_bReadOutEP 42 | 43 | //------------------------------------------------- 44 | // Prototypes of the USB API. 45 | //------------------------------------------------- 46 | extern void USB_Start(BYTE); 47 | extern void USB_Stop(void); 48 | extern BYTE USB_bCheckActivity(void); 49 | extern BYTE USB_bGetConfiguration(void); 50 | extern BYTE USB_bGetEPState(BYTE); 51 | extern BYTE USB_bGetEPCount(BYTE); 52 | extern void USB_XLoadEP(BYTE*); 53 | extern void USB_EnableOutEP(BYTE); 54 | extern void USB_DisableOutEP(BYTE); 55 | extern void USB_EnableEP(BYTE); 56 | extern void USB_DisableEP(BYTE); 57 | extern void USB_Force(BYTE); 58 | extern void USB_Suspend(void); 59 | extern void USB_Resume(void); 60 | extern BYTE USB_bRWUEnabled(void); 61 | extern BYTE USB_bReadOutEP(BYTE bEPNumber, BYTE * pData, BYTE bLength); 62 | extern BYTE USB_bGetEPAckState(BYTE bEPNumber); 63 | extern void USB_SetPowerStatus(BYTE bPowerStaus); 64 | 65 | //------------------------------------------------- 66 | // Constants for USB API's. 67 | //------------------------------------------------- 68 | #define NO_EVENT_ALLOWED 2 69 | #define EVENT_PENDING 1 70 | #define NO_EVENT_PENDING 0 71 | 72 | #define IN_BUFFER_FULL NO_EVENT_PENDING 73 | #define IN_BUFFER_EMPTY EVENT_PENDING 74 | #define OUT_BUFFER_FULL EVENT_PENDING 75 | #define OUT_BUFFER_EMPTY NO_EVENT_PENDING 76 | 77 | #define USB_FORCE_J 0x02 78 | #define USB_FORCE_K 0x01 79 | #define USB_FORCE_SE0 0x00 80 | #define USB_FORCE_NONE 0xFF 81 | 82 | //----------------------------------------------- 83 | // Transfer Completion Notification 84 | //----------------------------------------------- 85 | #define USB_XFER_IDLE 0x00 86 | #define USB_XFER_STATUS_ACK 0x01 87 | #define USB_XFER_PREMATURE 0x02 88 | #define USB_XFER_ERROR 0x03 89 | 90 | typedef struct { 91 | BYTE bStatus; 92 | WORD wLength; 93 | } T_USB_XFER_STATUS_BLOCK; 94 | 95 | //------------------------------------------------- 96 | // USB Global helper variables for speed 97 | //------------------------------------------------- 98 | extern BYTE USB_APIEPNumber; 99 | extern BYTE USB_APICount; 100 | 101 | //------------------------------------------------- 102 | // USB Macro 'Functions' 103 | //------------------------------------------------- 104 | #define USB_LoadEP(ep,s,c) \ 105 | USB_APIEPNumber = ep; \ 106 | USB_APICount = c; \ 107 | USB_XLoadEP(s) 108 | 109 | #endif 110 | // end of file USB.h 111 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/usb.h: -------------------------------------------------------------------------------- 1 | //***************************************************************************** 2 | //***************************************************************************** 3 | // FILENAME: USB.h 4 | // Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | // Generated by PSoC Designer 5.4.3191 6 | // 7 | // DESCRIPTION: USB User Module C Language interface file 8 | //----------------------------------------------------------------------------- 9 | // Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 10 | //***************************************************************************** 11 | //***************************************************************************** 12 | #ifndef USB_INCLUDE 13 | #define USB_INCLUDE 14 | 15 | #include 16 | 17 | //------------------------------------------------- 18 | // USB Device type support for the USB API. 19 | //------------------------------------------------- 20 | 21 | //------------------------------------------------- 22 | // fastcall16 qualifiers for the USB API. 23 | //------------------------------------------------- 24 | #pragma fastcall16 USB_Start 25 | #pragma fastcall16 USB_Stop 26 | #pragma fastcall16 USB_bCheckActivity 27 | #pragma fastcall16 USB_bGetConfiguration 28 | #pragma fastcall16 USB_bGetEPState 29 | #pragma fastcall16 USB_bGetEPCount 30 | #pragma fastcall16 USB_XLoadEP 31 | #pragma fastcall16 USB_EnableOutEP 32 | #pragma fastcall16 USB_DisableOutEP 33 | #pragma fastcall16 USB_EnableEP 34 | #pragma fastcall16 USB_DisableEP 35 | #pragma fastcall16 USB_Force 36 | #pragma fastcall16 USB_Suspend 37 | #pragma fastcall16 USB_Resume 38 | #pragma fastcall16 USB_bRWUEnabled 39 | #pragma fastcall16 USB_bGetEPAckState 40 | #pragma fastcall16 USB_SetPowerStatus 41 | #pragma fastcall16 USB_bReadOutEP 42 | 43 | //------------------------------------------------- 44 | // Prototypes of the USB API. 45 | //------------------------------------------------- 46 | extern void USB_Start(BYTE); 47 | extern void USB_Stop(void); 48 | extern BYTE USB_bCheckActivity(void); 49 | extern BYTE USB_bGetConfiguration(void); 50 | extern BYTE USB_bGetEPState(BYTE); 51 | extern BYTE USB_bGetEPCount(BYTE); 52 | extern void USB_XLoadEP(BYTE*); 53 | extern void USB_EnableOutEP(BYTE); 54 | extern void USB_DisableOutEP(BYTE); 55 | extern void USB_EnableEP(BYTE); 56 | extern void USB_DisableEP(BYTE); 57 | extern void USB_Force(BYTE); 58 | extern void USB_Suspend(void); 59 | extern void USB_Resume(void); 60 | extern BYTE USB_bRWUEnabled(void); 61 | extern BYTE USB_bReadOutEP(BYTE bEPNumber, BYTE * pData, BYTE bLength); 62 | extern BYTE USB_bGetEPAckState(BYTE bEPNumber); 63 | extern void USB_SetPowerStatus(BYTE bPowerStaus); 64 | 65 | //------------------------------------------------- 66 | // Constants for USB API's. 67 | //------------------------------------------------- 68 | #define NO_EVENT_ALLOWED 2 69 | #define EVENT_PENDING 1 70 | #define NO_EVENT_PENDING 0 71 | 72 | #define IN_BUFFER_FULL NO_EVENT_PENDING 73 | #define IN_BUFFER_EMPTY EVENT_PENDING 74 | #define OUT_BUFFER_FULL EVENT_PENDING 75 | #define OUT_BUFFER_EMPTY NO_EVENT_PENDING 76 | 77 | #define USB_FORCE_J 0x02 78 | #define USB_FORCE_K 0x01 79 | #define USB_FORCE_SE0 0x00 80 | #define USB_FORCE_NONE 0xFF 81 | 82 | //----------------------------------------------- 83 | // Transfer Completion Notification 84 | //----------------------------------------------- 85 | #define USB_XFER_IDLE 0x00 86 | #define USB_XFER_STATUS_ACK 0x01 87 | #define USB_XFER_PREMATURE 0x02 88 | #define USB_XFER_ERROR 0x03 89 | 90 | typedef struct { 91 | BYTE bStatus; 92 | WORD wLength; 93 | } T_USB_XFER_STATUS_BLOCK; 94 | 95 | //------------------------------------------------- 96 | // USB Global helper variables for speed 97 | //------------------------------------------------- 98 | extern BYTE USB_APIEPNumber; 99 | extern BYTE USB_APICount; 100 | 101 | //------------------------------------------------- 102 | // USB Macro 'Functions' 103 | //------------------------------------------------- 104 | #define USB_LoadEP(ep,s,c) \ 105 | USB_APIEPNumber = ep; \ 106 | USB_APICount = c; \ 107 | USB_XLoadEP(s) 108 | 109 | #endif 110 | // end of file USB.h 111 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/usb_1.h: -------------------------------------------------------------------------------- 1 | //***************************************************************************** 2 | //***************************************************************************** 3 | // FILENAME: USB_1.h 4 | // Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | // Generated by PSoC Designer 5.4.3191 6 | // 7 | // DESCRIPTION: USB User Module C Language interface file 8 | //----------------------------------------------------------------------------- 9 | // Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 10 | //***************************************************************************** 11 | //***************************************************************************** 12 | #ifndef USB_1_INCLUDE 13 | #define USB_1_INCLUDE 14 | 15 | #include 16 | 17 | //------------------------------------------------- 18 | // USB Device type support for the USB_1 API. 19 | //------------------------------------------------- 20 | 21 | //------------------------------------------------- 22 | // fastcall16 qualifiers for the USB_1 API. 23 | //------------------------------------------------- 24 | #pragma fastcall16 USB_1_Start 25 | #pragma fastcall16 USB_1_Stop 26 | #pragma fastcall16 USB_1_bCheckActivity 27 | #pragma fastcall16 USB_1_bGetConfiguration 28 | #pragma fastcall16 USB_1_bGetEPState 29 | #pragma fastcall16 USB_1_bGetEPCount 30 | #pragma fastcall16 USB_1_XLoadEP 31 | #pragma fastcall16 USB_1_EnableOutEP 32 | #pragma fastcall16 USB_1_DisableOutEP 33 | #pragma fastcall16 USB_1_EnableEP 34 | #pragma fastcall16 USB_1_DisableEP 35 | #pragma fastcall16 USB_1_Force 36 | #pragma fastcall16 USB_1_Suspend 37 | #pragma fastcall16 USB_1_Resume 38 | #pragma fastcall16 USB_1_bRWUEnabled 39 | #pragma fastcall16 USB_1_bGetEPAckState 40 | #pragma fastcall16 USB_1_SetPowerStatus 41 | #pragma fastcall16 USB_1_bReadOutEP 42 | 43 | //------------------------------------------------- 44 | // Prototypes of the USB_1 API. 45 | //------------------------------------------------- 46 | extern void USB_1_Start(BYTE); 47 | extern void USB_1_Stop(void); 48 | extern BYTE USB_1_bCheckActivity(void); 49 | extern BYTE USB_1_bGetConfiguration(void); 50 | extern BYTE USB_1_bGetEPState(BYTE); 51 | extern BYTE USB_1_bGetEPCount(BYTE); 52 | extern void USB_1_XLoadEP(BYTE*); 53 | extern void USB_1_EnableOutEP(BYTE); 54 | extern void USB_1_DisableOutEP(BYTE); 55 | extern void USB_1_EnableEP(BYTE); 56 | extern void USB_1_DisableEP(BYTE); 57 | extern void USB_1_Force(BYTE); 58 | extern void USB_1_Suspend(void); 59 | extern void USB_1_Resume(void); 60 | extern BYTE USB_1_bRWUEnabled(void); 61 | extern BYTE USB_1_bReadOutEP(BYTE bEPNumber, BYTE * pData, BYTE bLength); 62 | extern BYTE USB_1_bGetEPAckState(BYTE bEPNumber); 63 | extern void USB_1_SetPowerStatus(BYTE bPowerStaus); 64 | 65 | //------------------------------------------------- 66 | // Constants for USB_1 API's. 67 | //------------------------------------------------- 68 | #define NO_EVENT_ALLOWED 2 69 | #define EVENT_PENDING 1 70 | #define NO_EVENT_PENDING 0 71 | 72 | #define IN_BUFFER_FULL NO_EVENT_PENDING 73 | #define IN_BUFFER_EMPTY EVENT_PENDING 74 | #define OUT_BUFFER_FULL EVENT_PENDING 75 | #define OUT_BUFFER_EMPTY NO_EVENT_PENDING 76 | 77 | #define USB_FORCE_J 0x02 78 | #define USB_FORCE_K 0x01 79 | #define USB_FORCE_SE0 0x00 80 | #define USB_FORCE_NONE 0xFF 81 | 82 | //----------------------------------------------- 83 | // Transfer Completion Notification 84 | //----------------------------------------------- 85 | #define USB_XFER_IDLE 0x00 86 | #define USB_XFER_STATUS_ACK 0x01 87 | #define USB_XFER_PREMATURE 0x02 88 | #define USB_XFER_ERROR 0x03 89 | 90 | typedef struct { 91 | BYTE bStatus; 92 | WORD wLength; 93 | } T_USB_XFER_STATUS_BLOCK; 94 | 95 | //------------------------------------------------- 96 | // USB_1 Global helper variables for speed 97 | //------------------------------------------------- 98 | extern BYTE USB_1_APIEPNumber; 99 | extern BYTE USB_1_APICount; 100 | 101 | //------------------------------------------------- 102 | // USB_1 Macro 'Functions' 103 | //------------------------------------------------- 104 | #define USB_1_LoadEP(ep,s,c) \ 105 | USB_1_APIEPNumber = ep; \ 106 | USB_1_APICount = c; \ 107 | USB_1_XLoadEP(s) 108 | 109 | #endif 110 | // end of file USB_1.h 111 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/obj/boot.o: -------------------------------------------------------------------------------- 1 | XH 2 | H C areas 14 global symbols 3 | M boot.asm 4 | S _main Ref0000 5 | S __r0 Ref0000 6 | S LoadConfigInit Ref0000 7 | S _USB_RESET_ISR Ref0000 8 | S __bss_end Ref0000 9 | S __ramareas_end Ref0000 10 | S _USB_EP0_ISR Ref0000 11 | S _USB_EP1_ISR Ref0000 12 | S _USB_EP2_ISR Ref0000 13 | S _USB_ACT_ISR Ref0000 14 | S __data_end Ref0000 15 | A TOP size A9 flags C 16 | dbfile ./boot.asm 17 | dbfunc 0 ? 0 I 18 | dbline 4F 0 19 | dbline 57 4 20 | dbline 5A 8 21 | dbline 5B B 22 | dbline 5F C 23 | dbline 63 10 24 | dbline 66 14 25 | dbline 67 17 26 | dbline 6A 18 27 | dbline 6B 1B 28 | dbline 6E 1C 29 | dbline 6F 1F 30 | dbline 72 20 31 | dbline 73 23 32 | dbline 76 24 33 | dbline 77 27 34 | dbline 7A 28 35 | dbline 7B 2B 36 | dbline 7E 2C 37 | dbline 7F 2F 38 | dbline 82 30 39 | dbline 83 33 40 | dbline 87 34 41 | dbline 8B 38 42 | dbline 8F 3C 43 | dbline 93 40 44 | dbline 97 44 45 | dbline 9A 48 46 | dbline 9B 4B 47 | dbline 9F 4C 48 | dbline A2 50 49 | dbline A3 53 50 | dbline A6 54 51 | dbline A7 57 52 | dbline AB 58 53 | dbline AF 5C 54 | dbline B3 60 55 | dbline B7 64 56 | dbline 2 68 57 | dbline D3 6B 58 | dbline D5 6E 59 | dbline D6 71 60 | dbline E6 74 61 | dbline E7 76 62 | dbline F9 77 63 | dbline FF 7A 64 | dbline 10B 7C 65 | dbline 113 7F 66 | dbline 115 82 67 | dbline 125 84 68 | dbline 126 86 69 | dbline 128 89 70 | dbline 129 8C 71 | dbline 12A 8E 72 | dbline 12B 90 73 | dbline 130 92 74 | dbline 131 94 75 | dbline 132 96 76 | dbline 134 99 77 | dbline 135 9C 78 | dbline 136 9E 79 | dbline 137 9F 80 | dbline 138 A0 81 | dbline 139 A2 82 | dbline 13A A3 83 | dbline 13B A4 84 | dbline 13C A6 85 | dbline 13E A8 86 | S __Start Def0068 87 | A lit size 0 flags 0 88 | S __lit_start Def0000 89 | A idata size 0 flags 0 90 | S __idata_start Def0000 91 | A func_lit size 0 flags 0 92 | S __func_lit_start Def0000 93 | A psoc_config size 0 flags 0 94 | S __psoc_config_start Def0000 95 | A UserModules size 0 flags 0 96 | S __usermodules_start Def0000 97 | A gpio_isr size 7 flags 0 98 | dbfile ./boot.asm 99 | dbfunc 0 ? 0 I 100 | dbline 186 0 101 | dbline 199 1 102 | dbline 1AC 2 103 | dbline 1C2 3 104 | dbline 1D5 4 105 | dbline 1E8 5 106 | dbline 1FB 6 107 | A text size 0 flags 0 108 | S __text_start Def0000 109 | A data size 0 flags 20 110 | S __data_start Def0000 111 | A virtual_registers size 0 flags 20 112 | A InterruptRAM size 0 flags 20 113 | A bss size 0 flags 20 114 | dbfile ./boot.asm 115 | dbfunc 0 ? 0 I 116 | dbfile memory.inc 117 | dbfunc 0 ? 0 I 118 | dbfile ./boot.asm 119 | dbfunc 0 ? 0 I 120 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8ssc.inc 121 | dbfunc 0 ? 0 I 122 | dbfile ./boot.asm 123 | dbfunc 0 ? 0 I 124 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 125 | dbfunc 0 ? 0 I 126 | dbfile ./boot.asm 127 | dbfunc 0 ? 0 I 128 | dbfile .\lib\GlobalParams.inc 129 | dbfunc 0 ? 0 I 130 | S __bss_start Def0000 131 | T 00 00 80 67 132 | R 00 00 00 00 133 | T 00 04 30 134 | R 00 00 00 00 135 | T 00 08 7D 00 00 7E 136 | R 00 00 00 00 00 03 00 06 137 | T 00 0C 7E 138 | R 00 00 00 00 139 | T 00 10 7E 140 | R 00 00 00 00 141 | T 00 14 7D 00 03 7E 142 | R 00 00 00 00 00 03 00 06 143 | T 00 18 7D 00 04 7E 144 | R 00 00 00 00 00 03 00 06 145 | T 00 1C 7D 00 01 7E 146 | R 00 00 00 00 00 03 00 06 147 | T 00 20 7D 00 00 7E 148 | R 00 00 00 00 02 03 00 06 149 | T 00 24 7D 00 00 7E 150 | R 00 00 00 00 02 03 00 07 151 | T 00 28 7D 00 00 7E 152 | R 00 00 00 00 02 03 00 08 153 | T 00 2C 7D 00 00 7E 154 | R 00 00 00 00 02 03 00 03 155 | T 00 30 7D 00 00 7E 156 | R 00 00 00 00 02 03 00 09 157 | T 00 34 7E 158 | R 00 00 00 00 159 | T 00 38 7E 160 | R 00 00 00 00 161 | T 00 3C 7E 162 | R 00 00 00 00 163 | T 00 40 7E 164 | R 00 00 00 00 165 | T 00 44 7E 166 | R 00 00 00 00 167 | T 00 48 7D 00 02 7E 168 | R 00 00 00 00 00 03 00 06 169 | T 00 4C 7E 170 | R 00 00 00 00 171 | T 00 50 7D 00 05 7E 172 | R 00 00 00 00 00 03 00 06 173 | T 00 54 7D 00 06 7E 174 | R 00 00 00 00 00 03 00 06 175 | T 00 58 7E 176 | R 00 00 00 00 177 | T 00 5C 7E 178 | R 00 00 00 00 179 | T 00 60 7E 180 | R 00 00 00 00 181 | T 00 64 7E 182 | R 00 00 00 00 183 | T 00 68 62 E3 38 43 32 00 55 F8 00 55 F9 00 50 184 | R 00 00 00 00 185 | T 00 75 00 00 4E 7C 00 00 90 08 62 E2 00 7C 00 00 186 | R 00 00 00 00 03 02 00 05 02 06 00 02 02 0E 00 00 187 | T 00 82 8F FF 50 00 55 00 00 00 00 3C 00 00 188 | R 00 00 00 00 03 07 00 01 01 09 00 0B 03 0C 00 01 189 | T 00 8B 00 00 A0 05 3F 00 00 8F F8 50 00 00 57 190 | R 00 00 00 00 03 02 00 04 03 07 00 01 41 0C 00 02 191 | T 00 95 00 00 55 00 00 00 00 3C 192 | R 00 00 00 00 01 02 00 02 03 05 00 01 01 07 00 08 193 | T 00 9A 00 00 00 00 A0 0B 08 28 3F 00 00 18 75 09 194 | R 00 00 00 00 03 02 00 01 03 04 00 0A 03 0B 00 01 195 | T 00 A5 00 8F F2 7F 196 | R 00 00 00 00 197 | T 00 00 7E 7E 7E 7E 7E 7E 7E 198 | R 00 00 00 06 199 | -------------------------------------------------------------------------------- /PDProject1/PDProject1.pep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/PDProject1.soc: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 | 73 | 74 | 84 | -------------------------------------------------------------------------------- /PDProject1/PDProject1.hex: -------------------------------------------------------------------------------- 1 | :4000000080673030303030307d09207e7e3030307e3030307d09237e7d09247e7d09217e7d05187e7d09c77e7d09d27e7d09dd7e7d09e77e7e3030307e3030307e30303056 2 | :400040007e3030307e3030307d09227e7e3030307d09257e7d09267e7e3030307e3030307e3030307e30303062e33843320055f80055f90050314e7c022c900862e2007c47 3 | :4000800009278fff50005502043c0231a0053f028ff8500257295502003c0200a00b08283f02187509008ff27f303030303030303030303030303030303030303030303092 4 | :4000c0003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303000 5 | :4001000030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030bf 6 | :400140003030303030303030303030303030303001015501670100000000007f00000000000000000000de00000019018b0000de0000001201790000de1201000200000060 7 | :4001800008371337130000020100010902190001010080320904000001000000000705010306000a0200000401bd0000de00002801c10000de00001201e90000de04030945 8 | :4001c000042803310033003300370020004c0045004400200063006f006e00740072006f006c006c0065007200120363006f006d006d0061002e0061006900320030000528 9 | :400200000106010701080109010a010b000d000e000f0010001100120013003d002b0031802a00ffe003e314ff70ef7f5503007c02367c02297f1070ef500067500157fb21 10 | :400240007c0251500167500257247c025170ef207f380210084f56fc00d00456fc01182070ef62e30010082839ffa01f4f48fc01a003711054fd18207509001008284f5989 11 | :40028000fd610018207509008fd738fc7f500057037d05340001000200130000de5526005514005f130c5002579482675d53643908dfdbe0018fd780288003803494654bbc 12 | :4002c00001024b0900552627944951275828085d5253261808283a26d004188fb11882335f260a50015770283a26cfa2500182235d525326500157a4283a26cf915001829a 13 | :400300001200010001000b0000de5526005003570182005d523901bf75260cfd81f85d523901a0073902a0088f642e0c0280038f5d81e35525015d52531381da93e65526ff 14 | :400340002793d05d52532651275828283a26cf3e5f0b263c2600a0255127582875090055262793af57007510512758282876280e27002090ac5b3902bfed800c570256295c 15 | :400380000263440079bff8818d0001000200130000de5513005514005526005003578981720001000100130000de5d543901dede5c520d5313552600500357a181555d54e8 16 | :4003c000217f3903dec85c552600551400520e531350025794813c5d523900beb15d54217f3900a0163903dea55c270efe495480b006634408800463440c811a5d5239005a 17 | :40040000be8c5d54217f3900a0163903de805c2f0e01495480b006634489800463448d80f5397fb0027f085b64e00180058008800b43e101800943e102800443e1045bf3d7 18 | :400440007e31ff2424182180b0086344085629007f63440c5629017f8e448e328e308e2e8e2c8e2a8e478e268ea15d513909d00464efe68e198e178e9b8e138ea28e0f8e12 19 | :40048000b38e0b8e098e078eb45d51390ad00464efe48dfa8efd8df68df48df28df08dee8dec8dea8de88de68f013c0b00b0038ddd5d51390bd00464efdb8dd28dd03c0b36 20 | :4004c00000b0038dc95d513901d00464efef8dbe8eed3c0b00b00d5d5553265d542c26a0038dab5d513901d00464efe58da08d9e8ee68d9a8f073c0b00b00d5d5553265d19 21 | :40050000542c26a0038d875d513904d00464efdf8d7c7d06df7d05e108105d445c219f3991a03d2180b0365b21703950a05c3930a066802953285d442180b021512860416b 22 | :400540005d413a28b0175a285d442180b00f512860445d44210f3a28a0038fed20187e5d4460445d442180bff408500291de185d41394aa00382465d5021e3086767675324 23 | :4005800026182a26211f7d07b35d445112e001822c803980af80ba5d445112e001821e802d805e80c6531191b95512025d573a1cb0075d563a1da009d007531d5d57531c36 24 | :4005c0005522005523002e240180aa80a8511104230e220050019174551200500057038f54917f551206500057068f49511b3900a1cb916e5512042e24015000570b8f351e 25 | :400600003624015d41210f1102532650003a1cb00751263a1da006c0045f261d5126141d1e1c0004230e220057005e503f1f755b3a26cff75000570b8efb551200500057f3 26 | :40064000038ef250019105551200500057038ee5500190f83c2501b0095113298060408001552500500057068ecb500390de500057038ec1511104230e2200511c2a1db013 27 | :400680000e3c1108a0475000531157028ea73c1c00b00a3c1d08d005511d80035008141d1e1c00532657003c1b00b01710511e581f761f0e1e0028206150755b3a26cfed28 28 | :4006c000800b3e1f6150755b3a26cff7531150012224a00350802a11362401570f8e5675090008652665266526184b02264b090055261b9026901c901a90185d502180a0df 29 | :40070000038ea38ee8750900652665264b02264b09007f08283f261875090008283f26187509007f5f260a50015750283a265001c0039fd17f9fed5526279fd75d52532682 30 | :40074000512758285f260b7a269fba7f58214b3900a00f4b540051225401512354025521007f51213900a00b4b5600005522005523007f8d158d488d7e80428040803e8000 31 | :400780003c803a80388036803480328030802e802c802a8cd68d148d3a80228020801e801c801a80188016801480128010800e800c800a3920d00464efba80017d028d018b 32 | :4007c0000204620d00620e00530a551200550b00550c00552400624080437480624403405d4443e1197f550a00551200550b00550c0055300062400041747f41e1e07f51c3 33 | :40080000303901a0027f55300043e1107f510b7f3903d0065c5229800350007f470c02b0055000800350017f3903d00a5c5e41211f1102800350007f3c2e03d03f5a2c5129 34 | :400840002ef0395c512f532d7a2dc0083e2c6100758ff6582e5bff672224a00350802a2f61415629005df7532c70fe63440d5e44390dbff8472c01a00371017f505860393a 35 | :4008800000a00e3903d00a5c5629005e446344097f3900a00b3903d0075c5e446344087f39ffa0283902b0092e03022603fe80143901b0092e03012603fd80083900a00f08 36 | :4008c0002603fc510360014374017f4174fe7f41407f7f4340807f4f52fd3903d02f52fa532c52fd5c5e41210f1102532f3a2cd003532c512ca0164f52fc532d52fdff7c2f 37 | :400900005c5e003f2d757a2cbff8512f7f5c5e4421107f3900a0062e0c018004260cfe7f7e7e7e7e7e7e7e104f3802500008500608500008085000085004087c09f938fa40 38 | :4009400071011050007c07c220107c080d203900aff81050017c087f2056000080635601001050017c0828203906b019105006085000085004085001087c08d738fc5001fb 39 | :400980007c087f2052003a04d0042f011052003a05d0042f010452003a06d0042f010152003a07d0042f012052003a08d0042f010852003a09d0042f010252016000770024 40 | :4009c0008f9d38fe208fff083624025d45552a01187e083624045d46552b01187e0810510a7c07c220187e55300141e1ef7e62d000104f52fb60d58003104f52fc5301533e 41 | :400a00000052fb530252fa80083f007bf81ff7003df800bff53df700bff0207f3030303030303030303030303030303030303030303030303030303030303030303030304d 42 | :400a40003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303076 43 | :400a80003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303036 44 | :400ac00030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030f6 45 | :400b000030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030b5 46 | :400b40003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303075 47 | :400b80003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303035 48 | :400bc00030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030f5 49 | :020000040010ea 50 | :40000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 51 | :020000040020da 52 | :02000000352e9b 53 | :00000001ff 54 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/output/PDProject1.hex: -------------------------------------------------------------------------------- 1 | :4000000080673030303030307d09207e7e3030307e3030307d09237e7d09247e7d09217e7d05187e7d09c77e7d09d27e7d09dd7e7d09e77e7e3030307e3030307e30303056 2 | :400040007e3030307e3030307d09227e7e3030307d09257e7d09267e7e3030307e3030307e3030307e30303062e33843320055f80055f90050314e7c022c900862e2007c47 3 | :4000800009278fff50005502043c0231a0053f028ff8500257295502003c0200a00b08283f02187509008ff27f303030303030303030303030303030303030303030303092 4 | :4000c0003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303000 5 | :4001000030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030bf 6 | :400140003030303030303030303030303030303001015501670100000000007f00000000000000000000de00000019018b0000de0000001201790000de1201000200000060 7 | :4001800008371337130000020100010902190001010080320904000001000000000705010306000a0200000401bd0000de00002801c10000de00001201e90000de04030945 8 | :4001c000042803310033003300370020004c0045004400200063006f006e00740072006f006c006c0065007200120363006f006d006d0061002e0061006900320030000528 9 | :400200000106010701080109010a010b000d000e000f0010001100120013003d002b0031802a00ffe003e314ff70ef7f5503007c02367c02297f1070ef500067500157fb21 10 | :400240007c0251500167500257247c025170ef207f380210084f56fc00d00456fc01182070ef62e30010082839ffa01f4f48fc01a003711054fd18207509001008284f5989 11 | :40028000fd610018207509008fd738fc7f500057037d05340001000200130000de5526005514005f130c5002579482675d53643908dfdbe0018fd780288003803494654bbc 12 | :4002c00001024b0900552627944951275828085d5253261808283a26d004188fb11882335f260a50015770283a26cfa2500182235d525326500157a4283a26cf915001829a 13 | :400300001200010001000b0000de5526005003570182005d523901bf75260cfd81f85d523901a0073902a0088f642e0c0280038f5d81e35525015d52531381da93e65526ff 14 | :400340002793d05d52532651275828283a26cf3e5f0b263c2600a0255127582875090055262793af57007510512758282876280e27002090ac5b3902bfed800c570256295c 15 | :400380000263440079bff8818d0001000200130000de5513005514005526005003578981720001000100130000de5d543901dede5c520d5313552600500357a181555d54e8 16 | :4003c000217f3903dec85c552600551400520e531350025794813c5d523900beb15d54217f3900a0163903dea55c270efe495480b006634408800463440c811a5d5239005a 17 | :40040000be8c5d54217f3900a0163903de805c2f0e01495480b006634489800463448d80f5397fb0027f085b64e00180058008800b43e101800943e102800443e1045bf3d7 18 | :400440007e31ff2424182180b0086344085629007f63440c5629017f8e448e328e308e2e8e2c8e2a8e478e268ea15d513909d00464efe68e198e178e9b8e138ea28e0f8e12 19 | :40048000b38e0b8e098e078eb45d51390ad00464efe48dfa8efd8df68df48df28df08dee8dec8dea8de88de68f013c0b00b0038ddd5d51390bd00464efdb8dd28dd03c0b36 20 | :4004c00000b0038dc95d513901d00464efef8dbe8eed3c0b00b00d5d5553265d542c26a0038dab5d513901d00464efe58da08d9e8ee68d9a8f073c0b00b00d5d5553265d19 21 | :40050000542c26a0038d875d513904d00464efdf8d7c7d06df7d05e108105d445c219f3991a03d2180b0365b21703950a05c3930a066802953285d442180b021512860416b 22 | :400540005d413a28b0175a285d442180b00f512860445d44210f3a28a0038fed20187e5d4460445d442180bff408500291de185d41394aa00382465d5021e3086767675324 23 | :4005800026182a26211f7d07b35d445112e001822c803980af80ba5d445112e001821e802d805e80c6531191b95512025d573a1cb0075d563a1da009d007531d5d57531c36 24 | :4005c0005522005523002e240180aa80a8511104230e220050019174551200500057038f54917f551206500057068f49511b3900a1cb916e5512042e24015000570b8f351e 25 | :400600003624015d41210f1102532650003a1cb00751263a1da006c0045f261d5126141d1e1c0004230e220057005e503f1f755b3a26cff75000570b8efb551200500057f3 26 | :40064000038ef250019105551200500057038ee5500190f83c2501b0095113298060408001552500500057068ecb500390de500057038ec1511104230e2200511c2a1db013 27 | :400680000e3c1108a0475000531157028ea73c1c00b00a3c1d08d005511d80035008141d1e1c00532657003c1b00b01710511e581f761f0e1e0028206150755b3a26cfed28 28 | :4006c000800b3e1f6150755b3a26cff7531150012224a00350802a11362401570f8e5675090008652665266526184b02264b090055261b9026901c901a90185d502180a0df 29 | :40070000038ea38ee8750900652665264b02264b09007f08283f261875090008283f26187509007f5f260a50015750283a265001c0039fd17f9fed5526279fd75d52532682 30 | :40074000512758285f260b7a269fba7f58214b3900a00f4b540051225401512354025521007f51213900a00b4b5600005522005523007f8d158d488d7e80428040803e8000 31 | :400780003c803a80388036803480328030802e802c802a8cd68d148d3a80228020801e801c801a80188016801480128010800e800c800a3920d00464efba80017d028d018b 32 | :4007c0000204620d00620e00530a551200550b00550c00552400624080437480624403405d4443e1197f550a00551200550b00550c0055300062400041747f41e1e07f51c3 33 | :40080000303901a0027f55300043e1107f510b7f3903d0065c5229800350007f470c02b0055000800350017f3903d00a5c5e41211f1102800350007f3c2e03d03f5a2c5129 34 | :400840002ef0395c512f532d7a2dc0083e2c6100758ff6582e5bff672224a00350802a2f61415629005df7532c70fe63440d5e44390dbff8472c01a00371017f505860393a 35 | :4008800000a00e3903d00a5c5629005e446344097f3900a00b3903d0075c5e446344087f39ffa0283902b0092e03022603fe80143901b0092e03012603fd80083900a00f08 36 | :4008c0002603fc510360014374017f4174fe7f41407f7f4340807f4f52fd3903d02f52fa532c52fd5c5e41210f1102532f3a2cd003532c512ca0164f52fc532d52fdff7c2f 37 | :400900005c5e003f2d757a2cbff8512f7f5c5e4421107f3900a0062e0c018004260cfe7f7e7e7e7e7e7e7e104f3802500008500608500008085000085004087c09f938fa40 38 | :4009400071011050007c07c220107c080d203900aff81050017c087f2056000080635601001050017c0828203906b019105006085000085004085001087c08d738fc5001fb 39 | :400980007c087f2052003a04d0042f011052003a05d0042f010452003a06d0042f010152003a07d0042f012052003a08d0042f010852003a09d0042f010252016000770024 40 | :4009c0008f9d38fe208fff083624025d45552a01187e083624045d46552b01187e0810510a7c07c220187e55300141e1ef7e62d000104f52fb60d58003104f52fc5301533e 41 | :400a00000052fb530252fa80083f007bf81ff7003df800bff53df700bff0207f3030303030303030303030303030303030303030303030303030303030303030303030304d 42 | :400a40003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303076 43 | :400a80003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303036 44 | :400ac00030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030f6 45 | :400b000030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030b5 46 | :400b40003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303075 47 | :400b80003030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303035 48 | :400bc00030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030303030f5 49 | :020000040010ea 50 | :40000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00 51 | :020000040020da 52 | :02000000352e9b 53 | :00000001ff 54 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/USBINT.asm: -------------------------------------------------------------------------------- 1 | ;;***************************************************************************** 2 | ;;***************************************************************************** 3 | ;; FILENAME: USBINT.asm 4 | ;; Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | ;; Generated by PSoC Designer 5.4.3191 6 | ;; 7 | ;; DESCRIPTION: USB Device User Module software implementation file 8 | ;; 9 | ;; NOTE: User Module APIs conform to the fastcall convention for marshalling 10 | ;; arguments and observe the associated "Registers are volatile" policy. 11 | ;; This means it is the caller's responsibility to preserve any values 12 | ;; in the X and A registers that are still needed after the API 13 | ;; function returns. Even though these registers may be preserved now, 14 | ;; there is no guarantee they will be preserved in future releases. 15 | ;;----------------------------------------------------------------------------- 16 | ;; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 17 | ;;***************************************************************************** 18 | ;;***************************************************************************** 19 | 20 | include "m8c.inc" 21 | include "USB_macros.inc" 22 | include "USB.inc" 23 | 24 | ;----------------------------------------------- 25 | ; Global Symbols 26 | ;----------------------------------------------- 27 | 28 | AREA bss (RAM,REL) 29 | 30 | ;----------------------------------------------- 31 | ; Constant Definitions 32 | ;----------------------------------------------- 33 | ;----------------------------------------------- 34 | ; Variable Allocation 35 | ;----------------------------------------------- 36 | 37 | AREA text (ROM, REL) 38 | ;----------------------------------------------------------------------------- 39 | ; FUNCTION NAME: USB_EP1_ISR 40 | ; 41 | ; DESCRIPTION: Handle the Endpoint 1 event by updating the data toggle 42 | ; and setting the endpoint state to EVENT_PENDING. The SIE 43 | ; automatically set the mode to NAK both IN and out transfers 44 | ;----------------------------------------------------------------------------- 45 | export USB_EP1_ISR 46 | export _USB_EP1_ISR 47 | USB_EP1_ISR: 48 | _USB_EP1_ISR: 49 | ;@PSoC_UserCode_BODY_EP1@ (Do not change this line.) 50 | ;--------------------------------------------------- 51 | ; Insert your custom code below this banner 52 | ;--------------------------------------------------- 53 | ; NOTE: interrupt service routines must preserve 54 | ; the values of the A and X CPU registers. 55 | STD_EP1: EQU 1 ; Set this equate to 0 to remove the standard 56 | ; endpoint handling code 57 | ;--------------------------------------------------- 58 | ; Insert your custom code above this banner 59 | ;--------------------------------------------------- 60 | ;@PSoC_UserCode_END@ (Do not change this line.) 61 | 62 | IF STD_EP1 63 | PUSH A 64 | XOR [USB_EPDataToggle], 2 ; Update EP1 data toggle 65 | MOV A, REG[EP1MODE] ; Get the mode 66 | MOV [USB_EndpointAPIStatus+1], EVENT_PENDING ; For the API 67 | POP A 68 | RETI 69 | ENDIF 70 | ;----------------------------------------------------------------------------- 71 | ; FUNCTION NAME: USB_EP2_ISR 72 | ; 73 | ; DESCRIPTION: Handle the Endpoint 2 event by updating the data toggle 74 | ; and setting the endpoint state to EVENT_PENDING. The SIE 75 | ; automatically set the mode to NAK both IN and out transfers 76 | ;----------------------------------------------------------------------------- 77 | export USB_EP2_ISR 78 | export _USB_EP2_ISR 79 | USB_EP2_ISR: 80 | _USB_EP2_ISR: 81 | ;@PSoC_UserCode_BODY_EP2@ (Do not change this line.) 82 | ;--------------------------------------------------- 83 | ; Insert your custom code below this banner 84 | ;--------------------------------------------------- 85 | ; NOTE: interrupt service routines must preserve 86 | ; the values of the A and X CPU registers. 87 | STD_EP2: EQU 1 ; Set this equate to 0 to remove the standard 88 | ; endpoint handling code 89 | ;--------------------------------------------------- 90 | ; Insert your custom code above this banner 91 | ;--------------------------------------------------- 92 | ;@PSoC_UserCode_END@ (Do not change this line.) 93 | 94 | IF STD_EP2 95 | PUSH A 96 | XOR [USB_EPDataToggle], 4 ; Update EP2 data toggle 97 | MOV A, REG[EP2MODE] ; Get the mode 98 | MOV [USB_EndpointAPIStatus + 2], EVENT_PENDING ; For the API 99 | POP A 100 | RETI 101 | ENDIF 102 | ;----------------------------------------------------------------------------- 103 | ; FUNCTION NAME: USB_RESET_ISR 104 | ; 105 | ; DESCRIPTION: Handle the USB Bus Reset Interrupt 106 | ;----------------------------------------------------------------------------- 107 | export USB_RESET_ISR 108 | export _USB_RESET_ISR 109 | USB_RESET_ISR: 110 | _USB_RESET_ISR: 111 | 112 | ;@PSoC_UserCode_BODY_USB_RESET@ (Do not change this line.) 113 | ;--------------------------------------------------- 114 | ; Insert your custom code below this banner 115 | ;--------------------------------------------------- 116 | ; NOTE: interrupt service routines must preserve 117 | ; the values of the A and X CPU registers. 118 | 119 | STD_USB_RESET: EQU 1 ; Set this equate to 0 to remove the standard 120 | ; USB reset handling code below 121 | 122 | ;--------------------------------------------------- 123 | ; Insert your custom code above this banner 124 | ;--------------------------------------------------- 125 | ;@PSoC_UserCode_END@ (Do not change this line.) 126 | 127 | IF STD_USB_RESET 128 | PUSH A 129 | PUSH X 130 | MOV A, [USB_bCurrentDevice] ; Select the current device 131 | LCALL _USB_Start ; Restart USB 132 | POP X 133 | POP A 134 | ENDIF 135 | 136 | RETI 137 | ;----------------------------------------------------------------------------- 138 | ; FUNCTION NAME: USB_ACT_ISR 139 | ; 140 | ; DESCRIPTION: Handle the activity ISR 141 | ; 142 | ; THEORY of OPERATION or PROCEDURE: 143 | ; 144 | ; The activity interrupt sets a RAM flag indicating activity and disables the 145 | ; interrupt. Disabling the interrupt keeps the bus activity from creating too 146 | ; many interrupts. bCheckActivity checks and clears the flag, the enables 147 | ; interrupts for the next interval. 148 | ; 149 | ;----------------------------------------------------------------------------- 150 | export USB_ACT_ISR 151 | export _USB_ACT_ISR 152 | USB_ACT_ISR: 153 | _USB_ACT_ISR: 154 | MOV [USB_bActivity], 1 ; Set the activity flag 155 | M8C_DisableIntMask INT_MSK1, INT_MSK1_USB_ACTIVITY 156 | RETI 157 | ; End of File USB_std.asm 158 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/usbint.asm: -------------------------------------------------------------------------------- 1 | ;;***************************************************************************** 2 | ;;***************************************************************************** 3 | ;; FILENAME: USBINT.asm 4 | ;; Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | ;; Generated by PSoC Designer 5.4.3191 6 | ;; 7 | ;; DESCRIPTION: USB Device User Module software implementation file 8 | ;; 9 | ;; NOTE: User Module APIs conform to the fastcall convention for marshalling 10 | ;; arguments and observe the associated "Registers are volatile" policy. 11 | ;; This means it is the caller's responsibility to preserve any values 12 | ;; in the X and A registers that are still needed after the API 13 | ;; function returns. Even though these registers may be preserved now, 14 | ;; there is no guarantee they will be preserved in future releases. 15 | ;;----------------------------------------------------------------------------- 16 | ;; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 17 | ;;***************************************************************************** 18 | ;;***************************************************************************** 19 | 20 | include "m8c.inc" 21 | include "USB_macros.inc" 22 | include "USB.inc" 23 | 24 | ;----------------------------------------------- 25 | ; Global Symbols 26 | ;----------------------------------------------- 27 | 28 | AREA bss (RAM,REL) 29 | 30 | ;----------------------------------------------- 31 | ; Constant Definitions 32 | ;----------------------------------------------- 33 | ;----------------------------------------------- 34 | ; Variable Allocation 35 | ;----------------------------------------------- 36 | 37 | AREA text (ROM, REL) 38 | ;----------------------------------------------------------------------------- 39 | ; FUNCTION NAME: USB_EP1_ISR 40 | ; 41 | ; DESCRIPTION: Handle the Endpoint 1 event by updating the data toggle 42 | ; and setting the endpoint state to EVENT_PENDING. The SIE 43 | ; automatically set the mode to NAK both IN and out transfers 44 | ;----------------------------------------------------------------------------- 45 | export USB_EP1_ISR 46 | export _USB_EP1_ISR 47 | USB_EP1_ISR: 48 | _USB_EP1_ISR: 49 | ;@PSoC_UserCode_BODY_EP1@ (Do not change this line.) 50 | ;--------------------------------------------------- 51 | ; Insert your custom code below this banner 52 | ;--------------------------------------------------- 53 | ; NOTE: interrupt service routines must preserve 54 | ; the values of the A and X CPU registers. 55 | STD_EP1: EQU 1 ; Set this equate to 0 to remove the standard 56 | ; endpoint handling code 57 | ;--------------------------------------------------- 58 | ; Insert your custom code above this banner 59 | ;--------------------------------------------------- 60 | ;@PSoC_UserCode_END@ (Do not change this line.) 61 | 62 | IF STD_EP1 63 | PUSH A 64 | XOR [USB_EPDataToggle], 2 ; Update EP1 data toggle 65 | MOV A, REG[EP1MODE] ; Get the mode 66 | MOV [USB_EndpointAPIStatus+1], EVENT_PENDING ; For the API 67 | POP A 68 | RETI 69 | ENDIF 70 | ;----------------------------------------------------------------------------- 71 | ; FUNCTION NAME: USB_EP2_ISR 72 | ; 73 | ; DESCRIPTION: Handle the Endpoint 2 event by updating the data toggle 74 | ; and setting the endpoint state to EVENT_PENDING. The SIE 75 | ; automatically set the mode to NAK both IN and out transfers 76 | ;----------------------------------------------------------------------------- 77 | export USB_EP2_ISR 78 | export _USB_EP2_ISR 79 | USB_EP2_ISR: 80 | _USB_EP2_ISR: 81 | ;@PSoC_UserCode_BODY_EP2@ (Do not change this line.) 82 | ;--------------------------------------------------- 83 | ; Insert your custom code below this banner 84 | ;--------------------------------------------------- 85 | ; NOTE: interrupt service routines must preserve 86 | ; the values of the A and X CPU registers. 87 | STD_EP2: EQU 1 ; Set this equate to 0 to remove the standard 88 | ; endpoint handling code 89 | ;--------------------------------------------------- 90 | ; Insert your custom code above this banner 91 | ;--------------------------------------------------- 92 | ;@PSoC_UserCode_END@ (Do not change this line.) 93 | 94 | IF STD_EP2 95 | PUSH A 96 | XOR [USB_EPDataToggle], 4 ; Update EP2 data toggle 97 | MOV A, REG[EP2MODE] ; Get the mode 98 | MOV [USB_EndpointAPIStatus + 2], EVENT_PENDING ; For the API 99 | POP A 100 | RETI 101 | ENDIF 102 | ;----------------------------------------------------------------------------- 103 | ; FUNCTION NAME: USB_RESET_ISR 104 | ; 105 | ; DESCRIPTION: Handle the USB Bus Reset Interrupt 106 | ;----------------------------------------------------------------------------- 107 | export USB_RESET_ISR 108 | export _USB_RESET_ISR 109 | USB_RESET_ISR: 110 | _USB_RESET_ISR: 111 | 112 | ;@PSoC_UserCode_BODY_USB_RESET@ (Do not change this line.) 113 | ;--------------------------------------------------- 114 | ; Insert your custom code below this banner 115 | ;--------------------------------------------------- 116 | ; NOTE: interrupt service routines must preserve 117 | ; the values of the A and X CPU registers. 118 | 119 | STD_USB_RESET: EQU 1 ; Set this equate to 0 to remove the standard 120 | ; USB reset handling code below 121 | 122 | ;--------------------------------------------------- 123 | ; Insert your custom code above this banner 124 | ;--------------------------------------------------- 125 | ;@PSoC_UserCode_END@ (Do not change this line.) 126 | 127 | IF STD_USB_RESET 128 | PUSH A 129 | PUSH X 130 | MOV A, [USB_bCurrentDevice] ; Select the current device 131 | LCALL _USB_Start ; Restart USB 132 | POP X 133 | POP A 134 | ENDIF 135 | 136 | RETI 137 | ;----------------------------------------------------------------------------- 138 | ; FUNCTION NAME: USB_ACT_ISR 139 | ; 140 | ; DESCRIPTION: Handle the activity ISR 141 | ; 142 | ; THEORY of OPERATION or PROCEDURE: 143 | ; 144 | ; The activity interrupt sets a RAM flag indicating activity and disables the 145 | ; interrupt. Disabling the interrupt keeps the bus activity from creating too 146 | ; many interrupts. bCheckActivity checks and clears the flag, the enables 147 | ; interrupts for the next interval. 148 | ; 149 | ;----------------------------------------------------------------------------- 150 | export USB_ACT_ISR 151 | export _USB_ACT_ISR 152 | USB_ACT_ISR: 153 | _USB_ACT_ISR: 154 | MOV [USB_bActivity], 1 ; Set the activity flag 155 | M8C_DisableIntMask INT_MSK1, INT_MSK1_USB_ACTIVITY 156 | RETI 157 | ; End of File USB_std.asm 158 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/usb_1int.asm: -------------------------------------------------------------------------------- 1 | ;;***************************************************************************** 2 | ;;***************************************************************************** 3 | ;; FILENAME: USB_1INT.asm 4 | ;; Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | ;; Generated by PSoC Designer 5.4.3191 6 | ;; 7 | ;; DESCRIPTION: USB Device User Module software implementation file 8 | ;; 9 | ;; NOTE: User Module APIs conform to the fastcall convention for marshalling 10 | ;; arguments and observe the associated "Registers are volatile" policy. 11 | ;; This means it is the caller's responsibility to preserve any values 12 | ;; in the X and A registers that are still needed after the API 13 | ;; function returns. Even though these registers may be preserved now, 14 | ;; there is no guarantee they will be preserved in future releases. 15 | ;;----------------------------------------------------------------------------- 16 | ;; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 17 | ;;***************************************************************************** 18 | ;;***************************************************************************** 19 | 20 | include "m8c.inc" 21 | include "USB_1_macros.inc" 22 | include "USB_1.inc" 23 | 24 | ;----------------------------------------------- 25 | ; Global Symbols 26 | ;----------------------------------------------- 27 | 28 | AREA bss (RAM,REL) 29 | 30 | ;----------------------------------------------- 31 | ; Constant Definitions 32 | ;----------------------------------------------- 33 | ;----------------------------------------------- 34 | ; Variable Allocation 35 | ;----------------------------------------------- 36 | 37 | AREA text (ROM, REL) 38 | ;----------------------------------------------------------------------------- 39 | ; FUNCTION NAME: USB_1_EP1_ISR 40 | ; 41 | ; DESCRIPTION: Handle the Endpoint 1 event by updating the data toggle 42 | ; and setting the endpoint state to EVENT_PENDING. The SIE 43 | ; automatically set the mode to NAK both IN and out transfers 44 | ;----------------------------------------------------------------------------- 45 | export USB_1_EP1_ISR 46 | export _USB_1_EP1_ISR 47 | USB_1_EP1_ISR: 48 | _USB_1_EP1_ISR: 49 | ;@PSoC_UserCode_BODY_EP1@ (Do not change this line.) 50 | ;--------------------------------------------------- 51 | ; Insert your custom code below this banner 52 | ;--------------------------------------------------- 53 | ; NOTE: interrupt service routines must preserve 54 | ; the values of the A and X CPU registers. 55 | STD_EP1: EQU 1 ; Set this equate to 0 to remove the standard 56 | ; endpoint handling code 57 | ;--------------------------------------------------- 58 | ; Insert your custom code above this banner 59 | ;--------------------------------------------------- 60 | ;@PSoC_UserCode_END@ (Do not change this line.) 61 | 62 | IF STD_EP1 63 | PUSH A 64 | XOR [USB_1_EPDataToggle], 2 ; Update EP1 data toggle 65 | MOV A, REG[EP1MODE] ; Get the mode 66 | MOV [USB_1_EndpointAPIStatus+1], EVENT_PENDING ; For the API 67 | POP A 68 | RETI 69 | ENDIF 70 | ;----------------------------------------------------------------------------- 71 | ; FUNCTION NAME: USB_1_EP2_ISR 72 | ; 73 | ; DESCRIPTION: Handle the Endpoint 2 event by updating the data toggle 74 | ; and setting the endpoint state to EVENT_PENDING. The SIE 75 | ; automatically set the mode to NAK both IN and out transfers 76 | ;----------------------------------------------------------------------------- 77 | export USB_1_EP2_ISR 78 | export _USB_1_EP2_ISR 79 | USB_1_EP2_ISR: 80 | _USB_1_EP2_ISR: 81 | ;@PSoC_UserCode_BODY_EP2@ (Do not change this line.) 82 | ;--------------------------------------------------- 83 | ; Insert your custom code below this banner 84 | ;--------------------------------------------------- 85 | ; NOTE: interrupt service routines must preserve 86 | ; the values of the A and X CPU registers. 87 | STD_EP2: EQU 1 ; Set this equate to 0 to remove the standard 88 | ; endpoint handling code 89 | ;--------------------------------------------------- 90 | ; Insert your custom code above this banner 91 | ;--------------------------------------------------- 92 | ;@PSoC_UserCode_END@ (Do not change this line.) 93 | 94 | IF STD_EP2 95 | PUSH A 96 | XOR [USB_1_EPDataToggle], 4 ; Update EP2 data toggle 97 | MOV A, REG[EP2MODE] ; Get the mode 98 | MOV [USB_1_EndpointAPIStatus + 2], EVENT_PENDING ; For the API 99 | POP A 100 | RETI 101 | ENDIF 102 | ;----------------------------------------------------------------------------- 103 | ; FUNCTION NAME: USB_1_RESET_ISR 104 | ; 105 | ; DESCRIPTION: Handle the USB Bus Reset Interrupt 106 | ;----------------------------------------------------------------------------- 107 | export USB_1_RESET_ISR 108 | export _USB_1_RESET_ISR 109 | USB_1_RESET_ISR: 110 | _USB_1_RESET_ISR: 111 | 112 | ;@PSoC_UserCode_BODY_USB_RESET@ (Do not change this line.) 113 | ;--------------------------------------------------- 114 | ; Insert your custom code below this banner 115 | ;--------------------------------------------------- 116 | ; NOTE: interrupt service routines must preserve 117 | ; the values of the A and X CPU registers. 118 | 119 | STD_USB_RESET: EQU 1 ; Set this equate to 0 to remove the standard 120 | ; USB reset handling code below 121 | 122 | ;--------------------------------------------------- 123 | ; Insert your custom code above this banner 124 | ;--------------------------------------------------- 125 | ;@PSoC_UserCode_END@ (Do not change this line.) 126 | 127 | IF STD_USB_RESET 128 | PUSH A 129 | PUSH X 130 | MOV A, [USB_1_bCurrentDevice] ; Select the current device 131 | LCALL _USB_1_Start ; Restart USB 132 | POP X 133 | POP A 134 | ENDIF 135 | 136 | RETI 137 | ;----------------------------------------------------------------------------- 138 | ; FUNCTION NAME: USB_1_ACT_ISR 139 | ; 140 | ; DESCRIPTION: Handle the activity ISR 141 | ; 142 | ; THEORY of OPERATION or PROCEDURE: 143 | ; 144 | ; The activity interrupt sets a RAM flag indicating activity and disables the 145 | ; interrupt. Disabling the interrupt keeps the bus activity from creating too 146 | ; many interrupts. bCheckActivity checks and clears the flag, the enables 147 | ; interrupts for the next interval. 148 | ; 149 | ;----------------------------------------------------------------------------- 150 | export USB_1_ACT_ISR 151 | export _USB_1_ACT_ISR 152 | USB_1_ACT_ISR: 153 | _USB_1_ACT_ISR: 154 | MOV [USB_1_bActivity], 1 ; Set the activity flag 155 | M8C_DisableIntMask INT_MSK1, INT_MSK1_USB_ACTIVITY 156 | RETI 157 | ; End of File USB_1_std.asm 158 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/USB_macros.inc: -------------------------------------------------------------------------------- 1 | ;;***************************************************************************** 2 | ;;***************************************************************************** 3 | ;; FILENAME: USBmacros.inc 4 | ;; Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | ;; Generated by PSoC Designer 5.4.3191 6 | ;; 7 | ;; DESCRIPTION: Macros supporting the USB user module interface 8 | ;;----------------------------------------------------------------------------- 9 | ;; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 10 | ;;***************************************************************************** 11 | ;;***************************************************************************** 12 | 13 | ;-------------------------------------------------- 14 | ; Macros for USB API's. 15 | ;-------------------------------------------------- 16 | 17 | ;-------------------------------------------------- 18 | ; GET_WORD MACRO 19 | ;-------------------------------------------------- 20 | ; Parameters: 21 | ; None 22 | ; Register setup 23 | ; A = ROM Source Address MSB 24 | ; X = ROM Source Address LSB 25 | MACRO GET_WORD 26 | PUSH A ; Quickly get a RAM temp 27 | PUSH A ; Save the source MSB 28 | ROMX ; Get the first byte 29 | PUSH X ; Save X 30 | MOV X,SP ; Get SP, to index to the temp 31 | MOV [X - 3],A ; Save the first byte 32 | POP X ; Get back the source LSB 33 | POP A ; And the MSB 34 | INC X ; Point to the second byte 35 | ADC A, 0 ; 36 | ROMX ; Get the second byte 37 | MOV X,A ; Save it in X 38 | POP A ; And the first byte in A 39 | ENDM 40 | 41 | ;-------------------------------------------------- 42 | ; NULL_PTR_CHECK MACRO 43 | ;-------------------------------------------------- 44 | ; Parameters: 45 | ; Address to jump to on a NULL Pointer 46 | ; Register setup 47 | ; A = ROM Address MSB 48 | ; X = ROM Address LSB 49 | MACRO NULL_PTR_CHECK 50 | SWAP A, X ; LSB non-zero? 51 | JNZ .ok ; Exit on non-zero 52 | SWAP A, X ; MSB zero 53 | JZ @0 ; Jump to the null pointer handler 54 | JMP .exit 55 | .ok: 56 | SWAP A, X ; Put them back 57 | .exit: 58 | ENDM 59 | 60 | NULL_PTR: EQU 0 ; Null pointer value 61 | 62 | ;-------------------------------------------------- 63 | ; TRANSFER DESCRIPTOR MACROS 64 | ;-------------------------------------------------- 65 | 66 | ;----------------------------------------------- 67 | ; TD_START_TABLE MACRO 68 | ;----------------------------------------------- 69 | ; Parameters: 70 | ; @0 = Number of table entries 71 | ; Register setup 72 | ; N/A (builds ROM data at assembly time) 73 | ;----------------------------------------------- 74 | MACRO TD_START_TABLE 75 | DB ((@0) - 1) ; Number of table entries - 1 76 | ENDM 77 | ;----------------------------------------------- 78 | ; TD_START_TABLE MACRO 79 | ;----------------------------------------------- 80 | ; Parameters: 81 | ; @0 = Data source (USB_DATA_SRC_*) 82 | ; @1 = Transfer size 83 | ; @2 = Data source address 84 | ; @3 = Transfer Completion Status Block Address 85 | ; Register setup 86 | ; N/A (builds ROM data at assembly time) 87 | ;----------------------------------------------- 88 | MACRO TD_ENTRY 89 | DB @0 ; Data source (USB_DS_*) 90 | DW @1 ; Transfer size 91 | DW @2 ; Data source address 92 | DW @3 ; Transfer Completion Status Block Address 93 | DB 0xde ; Reserved 94 | ENDM 95 | TD_ENTRY_SIZE: EQU 8 96 | TD_START_SIZE: EQU 1 97 | ;----------------------------------------------- 98 | ; TD_INDEX_TO_OFFSET MACRO 99 | ;----------------------------------------------- 100 | ; Parameters: 101 | ; @0 = RAM address of Index 102 | ; Register setup 103 | ; A = DC (restored) 104 | ; X = DC (not used) 105 | ;-------------------------------------------------- 106 | MACRO TD_INDEX_TO_OFFSET 107 | PUSH A ; Save a work register 108 | ASL [@0] ; Index * 2 109 | ASL [@0] ; Index * 4 110 | ASL [@0] ; Index * 4 111 | POP A ; Restore the work register 112 | ENDM 113 | 114 | ;-------------------------------------------------- 115 | ; LOOKUP TABLE MACROS 116 | ;-------------------------------------------------- 117 | ;-------------------------------------------------- 118 | ; LT_START 119 | ;-------------------------------------------------- 120 | ; Start a lookup table 121 | ; Parameters: 122 | ; @0 Table Size 123 | ; Register setup 124 | ; N/A (builds ROM data at assembly time) 125 | ;-------------------------------------------------- 126 | MACRO LT_START 127 | DB (@0) ; Table size 128 | ENDM 129 | 130 | ;-------------------------------------------------- 131 | ; LT_ENTRY 132 | ;-------------------------------------------------- 133 | ; Insert a lookup table entry 134 | ; Parameters: 135 | ; @0 Table entry 0 136 | ; @1 Table entry 1 137 | ; Register setup 138 | ; N/A (builds ROM data at assembly time) 139 | ;-------------------------------------------------- 140 | MACRO LT_ENTRY 141 | DW (@0) ; Table entry 142 | DW (@1) ; Table entry 143 | ENDM 144 | LT_ENTRY_SIZE: EQU 2 145 | LT_START_SIZE: EQU 1 146 | 147 | ;----------------------------------------------- 148 | ; LT_INDEX_TO_OFFSET MACRO 149 | ;----------------------------------------------- 150 | ; Parameters: 151 | ; @0 = RAM address of Index 152 | ; Register setup 153 | ; A = DC (not used) 154 | ; X = DC (not used) 155 | ;-------------------------------------------------- 156 | MACRO LT_INDEX_TO_OFFSET 157 | ASL [@0] ; Simply shift (mult by 2) 158 | ASL [@0] ; (mult by 4) 159 | ENDM 160 | ;-------------------------------------------------- 161 | ; DISPATCH Macros 162 | ;-------------------------------------------------- 163 | ;-------------------------------------------------- 164 | ; DISPATCHER MACRO 165 | ;-------------------------------------------------- 166 | ; Dispatch through JACC Instruction 167 | ; Parameters: 168 | ; @0 Address of the jump table 169 | ; @1 Jump Table Size 170 | ; @2 Address of the index out of range handler 171 | ; Register setup 172 | ; A = Function Index 173 | ;-------------------------------------------------- 174 | MACRO DISPATCHER 175 | CMP A,@1 176 | JNC .dispatch_not_supported 177 | ASL A 178 | JACC @0 179 | .dispatch_not_supported: 180 | JMP @2 181 | ENDM 182 | ; end of file USB_macro.inc 183 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/usb_macros.inc: -------------------------------------------------------------------------------- 1 | ;;***************************************************************************** 2 | ;;***************************************************************************** 3 | ;; FILENAME: USBmacros.inc 4 | ;; Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | ;; Generated by PSoC Designer 5.4.3191 6 | ;; 7 | ;; DESCRIPTION: Macros supporting the USB user module interface 8 | ;;----------------------------------------------------------------------------- 9 | ;; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 10 | ;;***************************************************************************** 11 | ;;***************************************************************************** 12 | 13 | ;-------------------------------------------------- 14 | ; Macros for USB API's. 15 | ;-------------------------------------------------- 16 | 17 | ;-------------------------------------------------- 18 | ; GET_WORD MACRO 19 | ;-------------------------------------------------- 20 | ; Parameters: 21 | ; None 22 | ; Register setup 23 | ; A = ROM Source Address MSB 24 | ; X = ROM Source Address LSB 25 | MACRO GET_WORD 26 | PUSH A ; Quickly get a RAM temp 27 | PUSH A ; Save the source MSB 28 | ROMX ; Get the first byte 29 | PUSH X ; Save X 30 | MOV X,SP ; Get SP, to index to the temp 31 | MOV [X - 3],A ; Save the first byte 32 | POP X ; Get back the source LSB 33 | POP A ; And the MSB 34 | INC X ; Point to the second byte 35 | ADC A, 0 ; 36 | ROMX ; Get the second byte 37 | MOV X,A ; Save it in X 38 | POP A ; And the first byte in A 39 | ENDM 40 | 41 | ;-------------------------------------------------- 42 | ; NULL_PTR_CHECK MACRO 43 | ;-------------------------------------------------- 44 | ; Parameters: 45 | ; Address to jump to on a NULL Pointer 46 | ; Register setup 47 | ; A = ROM Address MSB 48 | ; X = ROM Address LSB 49 | MACRO NULL_PTR_CHECK 50 | SWAP A, X ; LSB non-zero? 51 | JNZ .ok ; Exit on non-zero 52 | SWAP A, X ; MSB zero 53 | JZ @0 ; Jump to the null pointer handler 54 | JMP .exit 55 | .ok: 56 | SWAP A, X ; Put them back 57 | .exit: 58 | ENDM 59 | 60 | NULL_PTR: EQU 0 ; Null pointer value 61 | 62 | ;-------------------------------------------------- 63 | ; TRANSFER DESCRIPTOR MACROS 64 | ;-------------------------------------------------- 65 | 66 | ;----------------------------------------------- 67 | ; TD_START_TABLE MACRO 68 | ;----------------------------------------------- 69 | ; Parameters: 70 | ; @0 = Number of table entries 71 | ; Register setup 72 | ; N/A (builds ROM data at assembly time) 73 | ;----------------------------------------------- 74 | MACRO TD_START_TABLE 75 | DB ((@0) - 1) ; Number of table entries - 1 76 | ENDM 77 | ;----------------------------------------------- 78 | ; TD_START_TABLE MACRO 79 | ;----------------------------------------------- 80 | ; Parameters: 81 | ; @0 = Data source (USB_DATA_SRC_*) 82 | ; @1 = Transfer size 83 | ; @2 = Data source address 84 | ; @3 = Transfer Completion Status Block Address 85 | ; Register setup 86 | ; N/A (builds ROM data at assembly time) 87 | ;----------------------------------------------- 88 | MACRO TD_ENTRY 89 | DB @0 ; Data source (USB_DS_*) 90 | DW @1 ; Transfer size 91 | DW @2 ; Data source address 92 | DW @3 ; Transfer Completion Status Block Address 93 | DB 0xde ; Reserved 94 | ENDM 95 | TD_ENTRY_SIZE: EQU 8 96 | TD_START_SIZE: EQU 1 97 | ;----------------------------------------------- 98 | ; TD_INDEX_TO_OFFSET MACRO 99 | ;----------------------------------------------- 100 | ; Parameters: 101 | ; @0 = RAM address of Index 102 | ; Register setup 103 | ; A = DC (restored) 104 | ; X = DC (not used) 105 | ;-------------------------------------------------- 106 | MACRO TD_INDEX_TO_OFFSET 107 | PUSH A ; Save a work register 108 | ASL [@0] ; Index * 2 109 | ASL [@0] ; Index * 4 110 | ASL [@0] ; Index * 4 111 | POP A ; Restore the work register 112 | ENDM 113 | 114 | ;-------------------------------------------------- 115 | ; LOOKUP TABLE MACROS 116 | ;-------------------------------------------------- 117 | ;-------------------------------------------------- 118 | ; LT_START 119 | ;-------------------------------------------------- 120 | ; Start a lookup table 121 | ; Parameters: 122 | ; @0 Table Size 123 | ; Register setup 124 | ; N/A (builds ROM data at assembly time) 125 | ;-------------------------------------------------- 126 | MACRO LT_START 127 | DB (@0) ; Table size 128 | ENDM 129 | 130 | ;-------------------------------------------------- 131 | ; LT_ENTRY 132 | ;-------------------------------------------------- 133 | ; Insert a lookup table entry 134 | ; Parameters: 135 | ; @0 Table entry 0 136 | ; @1 Table entry 1 137 | ; Register setup 138 | ; N/A (builds ROM data at assembly time) 139 | ;-------------------------------------------------- 140 | MACRO LT_ENTRY 141 | DW (@0) ; Table entry 142 | DW (@1) ; Table entry 143 | ENDM 144 | LT_ENTRY_SIZE: EQU 2 145 | LT_START_SIZE: EQU 1 146 | 147 | ;----------------------------------------------- 148 | ; LT_INDEX_TO_OFFSET MACRO 149 | ;----------------------------------------------- 150 | ; Parameters: 151 | ; @0 = RAM address of Index 152 | ; Register setup 153 | ; A = DC (not used) 154 | ; X = DC (not used) 155 | ;-------------------------------------------------- 156 | MACRO LT_INDEX_TO_OFFSET 157 | ASL [@0] ; Simply shift (mult by 2) 158 | ASL [@0] ; (mult by 4) 159 | ENDM 160 | ;-------------------------------------------------- 161 | ; DISPATCH Macros 162 | ;-------------------------------------------------- 163 | ;-------------------------------------------------- 164 | ; DISPATCHER MACRO 165 | ;-------------------------------------------------- 166 | ; Dispatch through JACC Instruction 167 | ; Parameters: 168 | ; @0 Address of the jump table 169 | ; @1 Jump Table Size 170 | ; @2 Address of the index out of range handler 171 | ; Register setup 172 | ; A = Function Index 173 | ;-------------------------------------------------- 174 | MACRO DISPATCHER 175 | CMP A,@1 176 | JNC .dispatch_not_supported 177 | ASL A 178 | JACC @0 179 | .dispatch_not_supported: 180 | JMP @2 181 | ENDM 182 | ; end of file USB_macro.inc 183 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/usb_1_macros.inc: -------------------------------------------------------------------------------- 1 | ;;***************************************************************************** 2 | ;;***************************************************************************** 3 | ;; FILENAME: USB_1macros.inc 4 | ;; Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | ;; Generated by PSoC Designer 5.4.3191 6 | ;; 7 | ;; DESCRIPTION: Macros supporting the USB user module interface 8 | ;;----------------------------------------------------------------------------- 9 | ;; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 10 | ;;***************************************************************************** 11 | ;;***************************************************************************** 12 | 13 | ;-------------------------------------------------- 14 | ; Macros for USB_1 API's. 15 | ;-------------------------------------------------- 16 | 17 | ;-------------------------------------------------- 18 | ; GET_WORD MACRO 19 | ;-------------------------------------------------- 20 | ; Parameters: 21 | ; None 22 | ; Register setup 23 | ; A = ROM Source Address MSB 24 | ; X = ROM Source Address LSB 25 | MACRO GET_WORD 26 | PUSH A ; Quickly get a RAM temp 27 | PUSH A ; Save the source MSB 28 | ROMX ; Get the first byte 29 | PUSH X ; Save X 30 | MOV X,SP ; Get SP, to index to the temp 31 | MOV [X - 3],A ; Save the first byte 32 | POP X ; Get back the source LSB 33 | POP A ; And the MSB 34 | INC X ; Point to the second byte 35 | ADC A, 0 ; 36 | ROMX ; Get the second byte 37 | MOV X,A ; Save it in X 38 | POP A ; And the first byte in A 39 | ENDM 40 | 41 | ;-------------------------------------------------- 42 | ; NULL_PTR_CHECK MACRO 43 | ;-------------------------------------------------- 44 | ; Parameters: 45 | ; Address to jump to on a NULL Pointer 46 | ; Register setup 47 | ; A = ROM Address MSB 48 | ; X = ROM Address LSB 49 | MACRO NULL_PTR_CHECK 50 | SWAP A, X ; LSB non-zero? 51 | JNZ .ok ; Exit on non-zero 52 | SWAP A, X ; MSB zero 53 | JZ @0 ; Jump to the null pointer handler 54 | JMP .exit 55 | .ok: 56 | SWAP A, X ; Put them back 57 | .exit: 58 | ENDM 59 | 60 | NULL_PTR: EQU 0 ; Null pointer value 61 | 62 | ;-------------------------------------------------- 63 | ; TRANSFER DESCRIPTOR MACROS 64 | ;-------------------------------------------------- 65 | 66 | ;----------------------------------------------- 67 | ; TD_START_TABLE MACRO 68 | ;----------------------------------------------- 69 | ; Parameters: 70 | ; @0 = Number of table entries 71 | ; Register setup 72 | ; N/A (builds ROM data at assembly time) 73 | ;----------------------------------------------- 74 | MACRO TD_START_TABLE 75 | DB ((@0) - 1) ; Number of table entries - 1 76 | ENDM 77 | ;----------------------------------------------- 78 | ; TD_START_TABLE MACRO 79 | ;----------------------------------------------- 80 | ; Parameters: 81 | ; @0 = Data source (USB_DATA_SRC_*) 82 | ; @1 = Transfer size 83 | ; @2 = Data source address 84 | ; @3 = Transfer Completion Status Block Address 85 | ; Register setup 86 | ; N/A (builds ROM data at assembly time) 87 | ;----------------------------------------------- 88 | MACRO TD_ENTRY 89 | DB @0 ; Data source (USB_DS_*) 90 | DW @1 ; Transfer size 91 | DW @2 ; Data source address 92 | DW @3 ; Transfer Completion Status Block Address 93 | DB 0xde ; Reserved 94 | ENDM 95 | TD_ENTRY_SIZE: EQU 8 96 | TD_START_SIZE: EQU 1 97 | ;----------------------------------------------- 98 | ; TD_INDEX_TO_OFFSET MACRO 99 | ;----------------------------------------------- 100 | ; Parameters: 101 | ; @0 = RAM address of Index 102 | ; Register setup 103 | ; A = DC (restored) 104 | ; X = DC (not used) 105 | ;-------------------------------------------------- 106 | MACRO TD_INDEX_TO_OFFSET 107 | PUSH A ; Save a work register 108 | ASL [@0] ; Index * 2 109 | ASL [@0] ; Index * 4 110 | ASL [@0] ; Index * 4 111 | POP A ; Restore the work register 112 | ENDM 113 | 114 | ;-------------------------------------------------- 115 | ; LOOKUP TABLE MACROS 116 | ;-------------------------------------------------- 117 | ;-------------------------------------------------- 118 | ; LT_START 119 | ;-------------------------------------------------- 120 | ; Start a lookup table 121 | ; Parameters: 122 | ; @0 Table Size 123 | ; Register setup 124 | ; N/A (builds ROM data at assembly time) 125 | ;-------------------------------------------------- 126 | MACRO LT_START 127 | DB (@0) ; Table size 128 | ENDM 129 | 130 | ;-------------------------------------------------- 131 | ; LT_ENTRY 132 | ;-------------------------------------------------- 133 | ; Insert a lookup table entry 134 | ; Parameters: 135 | ; @0 Table entry 0 136 | ; @1 Table entry 1 137 | ; Register setup 138 | ; N/A (builds ROM data at assembly time) 139 | ;-------------------------------------------------- 140 | MACRO LT_ENTRY 141 | DW (@0) ; Table entry 142 | DW (@1) ; Table entry 143 | ENDM 144 | LT_ENTRY_SIZE: EQU 2 145 | LT_START_SIZE: EQU 1 146 | 147 | ;----------------------------------------------- 148 | ; LT_INDEX_TO_OFFSET MACRO 149 | ;----------------------------------------------- 150 | ; Parameters: 151 | ; @0 = RAM address of Index 152 | ; Register setup 153 | ; A = DC (not used) 154 | ; X = DC (not used) 155 | ;-------------------------------------------------- 156 | MACRO LT_INDEX_TO_OFFSET 157 | ASL [@0] ; Simply shift (mult by 2) 158 | ASL [@0] ; (mult by 4) 159 | ENDM 160 | ;-------------------------------------------------- 161 | ; DISPATCH Macros 162 | ;-------------------------------------------------- 163 | ;-------------------------------------------------- 164 | ; DISPATCHER MACRO 165 | ;-------------------------------------------------- 166 | ; Dispatch through JACC Instruction 167 | ; Parameters: 168 | ; @0 Address of the jump table 169 | ; @1 Jump Table Size 170 | ; @2 Address of the index out of range handler 171 | ; Register setup 172 | ; A = Function Index 173 | ;-------------------------------------------------- 174 | MACRO DISPATCHER 175 | CMP A,@1 176 | JNC .dispatch_not_supported 177 | ASL A 178 | JACC @0 179 | .dispatch_not_supported: 180 | JMP @2 181 | ENDM 182 | ; end of file USB_1_macro.inc 183 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/psocconfig.asm: -------------------------------------------------------------------------------- 1 | ; Generated by PSoC Designer 5.4.3191 2 | ; 3 | ;========================================================================== 4 | ; PSoCConfig.asm 5 | ; @PSOC_VERSION 6 | ; 7 | ; Version: 0.85 8 | ; Revised: June 22, 2004 9 | ; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 10 | ; 11 | ; This file is generated by the Device Editor on Application Generation. 12 | ; It contains code which loads the configuration data table generated in 13 | ; the file PSoCConfigTBL.asm 14 | ; 15 | ; DO NOT EDIT THIS FILE MANUALLY, AS IT IS OVERWRITTEN!!! 16 | ; Edits to this file will not be preserved. 17 | ;========================================================================== 18 | ; 19 | include "m8c.inc" 20 | include "memory.inc" 21 | include "GlobalParams.inc" 22 | 23 | export LoadConfigInit 24 | export _LoadConfigInit 25 | export LoadConfig_pdproject1 26 | export _LoadConfig_pdproject1 27 | export Port_1_Data_SHADE 28 | export _Port_1_Data_SHADE 29 | 30 | 31 | export NO_SHADOW 32 | export _NO_SHADOW 33 | 34 | FLAG_CFG_MASK: equ 10h ;M8C flag register REG address bit mask 35 | END_CONFIG_TABLE: equ ffh ;end of config table indicator 36 | 37 | AREA psoc_config(rom, rel) 38 | 39 | ;--------------------------------------------------------------------------- 40 | ; LoadConfigInit - Establish the start-up configuration (except for a few 41 | ; parameters handled by boot code, like CPU speed). This 42 | ; function can be called from user code, but typically it 43 | ; is only called from boot. 44 | ; 45 | ; INPUTS: None. 46 | ; RETURNS: Nothing. 47 | ; SIDE EFFECTS: Registers are volatile: the A and X registers can be modified! 48 | ; In the large memory model currently only the page 49 | ; pointer registers listed below are modified. This does 50 | ; not guarantee that in future implementations of this 51 | ; function other page pointer registers will not be 52 | ; modified. 53 | ; 54 | ; Page Pointer Registers Modified: 55 | ; CUR_PP 56 | ; 57 | _LoadConfigInit: 58 | LoadConfigInit: 59 | RAM_PROLOGUE RAM_USE_CLASS_4 60 | 61 | mov [Port_1_Data_SHADE], 0h 62 | 63 | lcall LoadConfig_pdproject1 64 | lcall LoadConfigTBL_pdproject1_Ordered 65 | 66 | 67 | RAM_EPILOGUE RAM_USE_CLASS_4 68 | ret 69 | 70 | ;--------------------------------------------------------------------------- 71 | ; Load Configuration pdproject1 72 | ; 73 | ; Load configuration registers for pdproject1. 74 | ; IO Bank 0 registers a loaded first,then those in IO Bank 1. 75 | ; 76 | ; INPUTS: None. 77 | ; RETURNS: Nothing. 78 | ; SIDE EFFECTS: Registers are volatile: the CPU A and X registers may be 79 | ; modified as may the Page Pointer registers! 80 | ; In the large memory model currently only the page 81 | ; pointer registers listed below are modified. This does 82 | ; not guarantee that in future implementations of this 83 | ; function other page pointer registers will not be 84 | ; modified. 85 | ; 86 | ; Page Pointer Registers Modified: 87 | ; CUR_PP 88 | ; 89 | _LoadConfig_pdproject1: 90 | LoadConfig_pdproject1: 91 | RAM_PROLOGUE RAM_USE_CLASS_4 92 | 93 | push x 94 | M8C_SetBank0 ; Force bank 0 95 | mov a, 0 ; Specify bank 0 96 | asr a ; Store in carry flag 97 | ; Load bank 0 table: 98 | mov A, >LoadConfigTBL_pdproject1_Bank0 99 | mov X, LoadConfigTBL_pdproject1_Bank1 106 | mov X, Bank 0; Carry=1 => Bank 1) 125 | ; 126 | ; RETURNS: nothing. 127 | ; 128 | ; STACK FRAME: X-4 I/O Bank 0/1 indicator 129 | ; X-3 Temporary store for register address 130 | ; X-2 LSB of config table address 131 | ; X-1 MSB of config table address 132 | ; 133 | LoadConfig: 134 | RAM_PROLOGUE RAM_USE_CLASS_2 135 | add SP, 2 ; Set up local vars 136 | push X ; Save config table address on stack 137 | push A 138 | mov X, SP 139 | mov [X-4], 0 ; Set default Destination to Bank 0 140 | jnc .BankSelectSaved ; Carry says Bank 0 is OK 141 | mov [X-4], 1 ; No Carry: default to Bank 1 142 | .BankSelectSaved: 143 | pop A 144 | pop X 145 | 146 | LoadConfigLp: 147 | M8C_SetBank0 ; Switch to bank 0 148 | M8C_ClearWDT ; Clear the watchdog for long inits 149 | push X ; Preserve the config table address 150 | push A 151 | romx ; Load register address from table 152 | cmp A, END_CONFIG_TABLE ; End of table? 153 | jz EndLoadConfig ; Yes, go wrap it up 154 | mov X, SP ; 155 | tst [X-4], 1 ; Loading IO Bank 1? 156 | jz .IOBankNowSet ; No, Bank 0 is fine 157 | M8C_SetBank1 ; Yes, switch to Bank 1 158 | .IOBankNowSet: 159 | mov [X-3], A ; Stash the register address 160 | pop A ; Retrieve the table address 161 | pop X 162 | inc X ; Advance to the data byte 163 | adc A, 0 164 | push X ; Save the config table address again 165 | push A 166 | romx ; load config data from the table 167 | mov X, SP ; retrieve the register address 168 | mov X, [X-3] 169 | mov reg[X], A ; Configure the register 170 | pop A ; retrieve the table address 171 | pop X 172 | inc X ; advance to next table entry 173 | adc A, 0 174 | jmp LoadConfigLp ; loop to configure another register 175 | EndLoadConfig: 176 | add SP, -4 177 | RAM_EPILOGUE RAM_USE_CLASS_2 178 | ret 179 | 180 | AREA InterruptRAM(ram, rel) 181 | 182 | NO_SHADOW: 183 | _NO_SHADOW: 184 | ; write only register shadows 185 | _Port_1_Data_SHADE: 186 | Port_1_Data_SHADE: BLK 1 187 | 188 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/PSoCConfig.asm: -------------------------------------------------------------------------------- 1 | ; Generated by PSoC Designer 5.4.3191 2 | ; 3 | ;========================================================================== 4 | ; PSoCConfig.asm 5 | ; @PSOC_VERSION 6 | ; 7 | ; Version: 0.85 8 | ; Revised: June 22, 2004 9 | ; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 10 | ; 11 | ; This file is generated by the Device Editor on Application Generation. 12 | ; It contains code which loads the configuration data table generated in 13 | ; the file PSoCConfigTBL.asm 14 | ; 15 | ; DO NOT EDIT THIS FILE MANUALLY, AS IT IS OVERWRITTEN!!! 16 | ; Edits to this file will not be preserved. 17 | ;========================================================================== 18 | ; 19 | include "m8c.inc" 20 | include "memory.inc" 21 | include "GlobalParams.inc" 22 | 23 | export LoadConfigInit 24 | export _LoadConfigInit 25 | export LoadConfig_pdproject1 26 | export _LoadConfig_pdproject1 27 | export Port_1_Data_SHADE 28 | export _Port_1_Data_SHADE 29 | 30 | 31 | export NO_SHADOW 32 | export _NO_SHADOW 33 | 34 | FLAG_CFG_MASK: equ 10h ;M8C flag register REG address bit mask 35 | END_CONFIG_TABLE: equ ffh ;end of config table indicator 36 | 37 | AREA psoc_config(rom, rel) 38 | 39 | ;--------------------------------------------------------------------------- 40 | ; LoadConfigInit - Establish the start-up configuration (except for a few 41 | ; parameters handled by boot code, like CPU speed). This 42 | ; function can be called from user code, but typically it 43 | ; is only called from boot. 44 | ; 45 | ; INPUTS: None. 46 | ; RETURNS: Nothing. 47 | ; SIDE EFFECTS: Registers are volatile: the A and X registers can be modified! 48 | ; In the large memory model currently only the page 49 | ; pointer registers listed below are modified. This does 50 | ; not guarantee that in future implementations of this 51 | ; function other page pointer registers will not be 52 | ; modified. 53 | ; 54 | ; Page Pointer Registers Modified: 55 | ; CUR_PP 56 | ; 57 | _LoadConfigInit: 58 | LoadConfigInit: 59 | RAM_PROLOGUE RAM_USE_CLASS_4 60 | 61 | mov [Port_1_Data_SHADE], 0h 62 | 63 | lcall LoadConfig_pdproject1 64 | lcall LoadConfigTBL_pdproject1_Ordered 65 | 66 | 67 | RAM_EPILOGUE RAM_USE_CLASS_4 68 | ret 69 | 70 | ;--------------------------------------------------------------------------- 71 | ; Load Configuration pdproject1 72 | ; 73 | ; Load configuration registers for pdproject1. 74 | ; IO Bank 0 registers a loaded first,then those in IO Bank 1. 75 | ; 76 | ; INPUTS: None. 77 | ; RETURNS: Nothing. 78 | ; SIDE EFFECTS: Registers are volatile: the CPU A and X registers may be 79 | ; modified as may the Page Pointer registers! 80 | ; In the large memory model currently only the page 81 | ; pointer registers listed below are modified. This does 82 | ; not guarantee that in future implementations of this 83 | ; function other page pointer registers will not be 84 | ; modified. 85 | ; 86 | ; Page Pointer Registers Modified: 87 | ; CUR_PP 88 | ; 89 | _LoadConfig_pdproject1: 90 | LoadConfig_pdproject1: 91 | RAM_PROLOGUE RAM_USE_CLASS_4 92 | 93 | push x 94 | M8C_SetBank0 ; Force bank 0 95 | mov a, 0 ; Specify bank 0 96 | asr a ; Store in carry flag 97 | ; Load bank 0 table: 98 | mov A, >LoadConfigTBL_pdproject1_Bank0 99 | mov X, LoadConfigTBL_pdproject1_Bank1 106 | mov X, Bank 0; Carry=1 => Bank 1) 125 | ; 126 | ; RETURNS: nothing. 127 | ; 128 | ; STACK FRAME: X-4 I/O Bank 0/1 indicator 129 | ; X-3 Temporary store for register address 130 | ; X-2 LSB of config table address 131 | ; X-1 MSB of config table address 132 | ; 133 | LoadConfig: 134 | RAM_PROLOGUE RAM_USE_CLASS_2 135 | add SP, 2 ; Set up local vars 136 | push X ; Save config table address on stack 137 | push A 138 | mov X, SP 139 | mov [X-4], 0 ; Set default Destination to Bank 0 140 | jnc .BankSelectSaved ; Carry says Bank 0 is OK 141 | mov [X-4], 1 ; No Carry: default to Bank 1 142 | .BankSelectSaved: 143 | pop A 144 | pop X 145 | 146 | LoadConfigLp: 147 | M8C_SetBank0 ; Switch to bank 0 148 | M8C_ClearWDT ; Clear the watchdog for long inits 149 | push X ; Preserve the config table address 150 | push A 151 | romx ; Load register address from table 152 | cmp A, END_CONFIG_TABLE ; End of table? 153 | jz EndLoadConfig ; Yes, go wrap it up 154 | mov X, SP ; 155 | tst [X-4], 1 ; Loading IO Bank 1? 156 | jz .IOBankNowSet ; No, Bank 0 is fine 157 | M8C_SetBank1 ; Yes, switch to Bank 1 158 | .IOBankNowSet: 159 | mov [X-3], A ; Stash the register address 160 | pop A ; Retrieve the table address 161 | pop X 162 | inc X ; Advance to the data byte 163 | adc A, 0 164 | push X ; Save the config table address again 165 | push A 166 | romx ; load config data from the table 167 | mov X, SP ; retrieve the register address 168 | mov X, [X-3] 169 | mov reg[X], A ; Configure the register 170 | pop A ; retrieve the table address 171 | pop X 172 | inc X ; advance to next table entry 173 | adc A, 0 174 | jmp LoadConfigLp ; loop to configure another register 175 | EndLoadConfig: 176 | add SP, -4 177 | RAM_EPILOGUE RAM_USE_CLASS_2 178 | ret 179 | 180 | AREA InterruptRAM(ram, rel) 181 | 182 | NO_SHADOW: 183 | _NO_SHADOW: 184 | ; write only register shadows 185 | _Port_1_Data_SHADE: 186 | Port_1_Data_SHADE: BLK 1 187 | 188 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/obj/usb.o: -------------------------------------------------------------------------------- 1 | XH 2 | H 3 areas 56 global symbols 3 | M usb.asm 4 | S USB_DeviceStatus Ref0000 5 | S USB_TransferType Ref0000 6 | S USB_Configuration Ref0000 7 | S USB_EPDataToggle Ref0000 8 | S Port_1_Data_SHADE Ref0000 9 | S USB_bCurrentDevice Ref0000 10 | S USB_EndpointAPIStatus Ref0000 11 | A text size 0 flags 0 12 | dbfile lib/usb.asm 13 | dbfunc 0 ? 0 I 14 | dbfile ./lib/USB.inc 15 | dbfunc 0 ? 0 I 16 | dbfile lib/usb.asm 17 | dbfunc 0 ? 0 I 18 | dbfile ./lib/USB_macros.inc 19 | dbfunc 0 ? 0 I 20 | dbfile lib/usb.asm 21 | dbfunc 0 ? 0 I 22 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 23 | dbfunc 0 ? 0 I 24 | A bss size 5 flags 20 25 | S USB_APIEPNumber Def0002 26 | S USB_APICount Def0003 27 | S _USB_APIEPNumber Def0002 28 | S _USB_APICount Def0003 29 | S USB_APITemp Def0000 30 | S USB_bActivity Def0004 31 | A UserModules size 161 flags 0 32 | dbfile lib/usb.asm 33 | dbfunc 0 ? 3 I 34 | dbline 7E 3 35 | dbline 7F 6 36 | dbline 81 9 37 | dbline 83 B 38 | dbline 84 E 39 | dbline 85 11 40 | dbline 87 14 41 | dbline 94 17 42 | dbline 95 1A 43 | dbline 96 1D 44 | dbline 97 20 45 | dbline 98 21 46 | dbline 2 23 47 | dbline 9B 26 48 | dbline B0 27 49 | dbline B2 2A 50 | dbline B3 2D 51 | dbline B4 30 52 | dbline B5 33 53 | dbline B6 36 54 | dbline B7 39 55 | dbline 2 3C 56 | dbline BA 3F 57 | dbline D4 40 58 | dbline D5 42 59 | dbline D6 44 60 | dbline D8 46 61 | dbline DB 47 62 | dbline 2 4A 63 | dbline DD 4D 64 | dbline F2 4E 65 | dbline F3 50 66 | dbline 10A 51 67 | dbline 10B 53 68 | dbline 10D 55 69 | dbline 10E 56 70 | dbline 10F 58 71 | dbline 112 5A 72 | dbline 115 5C 73 | dbline 12B 5D 74 | dbline 12C 60 75 | dbline 12E 62 76 | dbline 12F 64 77 | dbline 132 66 78 | dbline 135 68 79 | dbline 14A 69 80 | dbline 14B 6B 81 | dbline 14D 6D 82 | dbline 14E 6E 83 | dbline 14F 70 84 | dbline 150 72 85 | dbline 151 74 86 | dbline 154 76 87 | dbline 157 78 88 | dbline 171 79 89 | dbline 172 7C 90 | dbline 174 7E 91 | dbline 176 80 92 | dbline 177 82 93 | dbline 178 84 94 | dbline 17A 85 95 | dbline 17B 87 96 | dbline 17E 89 97 | dbline 17F 8B 98 | dbline 180 8D 99 | dbline 181 8F 100 | dbline 182 91 101 | dbline 183 92 102 | dbline 187 94 103 | dbline 188 96 104 | dbline 189 97 105 | dbline 18A 99 106 | dbline 18B 9B 107 | dbline 18C 9D 108 | dbline 18F 9F 109 | dbline 190 A1 110 | dbline 192 A3 111 | dbline 194 A6 112 | dbline 195 A8 113 | dbline 2 AA 114 | dbline 198 AC 115 | dbline 199 AF 116 | dbline 19A B1 117 | dbline 19B B3 118 | dbline 19C B5 119 | dbline 19D B8 120 | dbline 2 BA 121 | dbline 1A2 BC 122 | dbline 1BD C0 123 | dbline 1BE C2 124 | dbline 1BF C4 125 | dbline 1C0 C6 126 | dbline 1C2 C8 127 | dbline 1C3 C9 128 | dbline 1C4 CC 129 | dbline 1C5 CE 130 | dbline 1C8 D1 131 | dbline 1E0 D2 132 | dbline 1E1 D4 133 | dbline 1E2 D6 134 | dbline 1E3 D8 135 | dbline 1E5 DA 136 | dbline 1E6 DB 137 | dbline 1E7 DD 138 | dbline 1EA E0 139 | dbline 202 E1 140 | dbline 203 E3 141 | dbline 205 E5 142 | dbline 206 E7 143 | dbline 208 E9 144 | dbline 209 EC 145 | dbline 20A EF 146 | dbline 20D F1 147 | dbline 20E F3 148 | dbline 210 F5 149 | dbline 211 F8 150 | dbline 212 FB 151 | dbline 215 FD 152 | dbline 216 FF 153 | dbline 218 101 154 | dbline 21B 104 155 | dbline 21C 106 156 | dbline 21D 108 157 | dbline 21E 10B 158 | dbline 221 10C 159 | dbline 224 10F 160 | dbline 23C 110 161 | dbline 23D 113 162 | dbline 254 114 163 | dbline 255 117 164 | dbline 276 118 165 | dbline 277 119 166 | dbline 278 11B 167 | dbline 279 11D 168 | dbline 27C 11F 169 | dbline 27D 121 170 | dbline 280 123 171 | dbline 281 125 172 | dbline 282 126 173 | dbline 283 128 174 | dbline 284 12A 175 | dbline 285 12C 176 | dbline 286 12E 177 | dbline 287 130 178 | dbline 288 132 179 | dbline 28C 134 180 | dbline 28D 136 181 | dbline 28F 138 182 | dbline 290 139 183 | dbline 291 13B 184 | dbline 293 13D 185 | dbline 294 13F 186 | dbline 295 141 187 | dbline 298 142 188 | dbline 299 144 189 | dbline 29A 146 190 | dbline 29B 147 191 | dbline 29C 149 192 | dbline 29F 14B 193 | dbline 2A2 14D 194 | dbline 2B7 14E 195 | dbline 2B8 14F 196 | dbline 2B9 151 197 | dbline 2BA 153 198 | dbline 2CD 154 199 | dbline 2CE 156 200 | dbline 2CF 158 201 | dbline 2D0 15B 202 | dbline 2D2 15D 203 | dbline 2D4 160 204 | S USB_SetPowerStatus Def0154 205 | S $sb$USB_Stop Def0027 206 | S $se$USB_Stop Def0040 207 | S $sb$USB_bReadOutEP Def0118 208 | S $se$USB_bReadOutEP Def014E 209 | S _USB_XLoadEP Def0079 210 | S _USB_Resume Def0114 211 | S $sb$USB_SetPowerStatus Def0154 212 | S USB_bGetConfiguration Def004E 213 | S USB_EnableEP Def00C0 214 | S $se$USB_SetPowerStatus Def0161 215 | S _USB_DisableOutEP Def00D2 216 | S USB_Suspend Def0110 217 | S _USB_bCheckActivity Def0040 218 | S USB_Force Def00E1 219 | S $sb$USB_bGetConfiguration Def004E 220 | S $se$USB_bGetConfiguration Def0051 221 | S $sb$USB_Suspend Def0110 222 | S $se$USB_Suspend Def0114 223 | S _USB_Stop Def0027 224 | S _USB_bReadOutEP Def0118 225 | S USB_bRWUEnabled Def005D 226 | S $sb$USB_Force Def00E1 227 | S USB_Start Def0003 228 | S $se$USB_Force Def0110 229 | S USB_EnableOutEP Def00C0 230 | S USB_bGetEPState Def0051 231 | S _USB_SetPowerStatus Def0154 232 | S USB_bGetEPCount Def0069 233 | S USB_bGetEPAckState Def014E 234 | S $sb$USB_bRWUEnabled Def005D 235 | S $se$USB_bRWUEnabled Def0069 236 | S $sb$USB_Start Def0003 237 | S $se$USB_Start Def0027 238 | S $sb$USB_EnableOutEP Def00C0 239 | S $se$USB_EnableOutEP Def00D2 240 | S $sb$USB_bGetEPState Def0051 241 | S $lb$EPREGPTR Def00BD 242 | S $se$USB_bGetEPState Def005D 243 | S $le$EPREGPTR Def00C0 244 | S _USB_bGetConfiguration Def004E 245 | S _USB_EnableEP Def00C0 246 | S $sb$USB_bGetEPCount Def0069 247 | S $se$USB_bGetEPCount Def0079 248 | S _USB_Suspend Def0110 249 | S $sb$USB_bGetEPAckState Def014E 250 | S $se$USB_bGetEPAckState Def0154 251 | S USB_DisableEP Def00D2 252 | S _USB_Force Def00E1 253 | S USB_USB_EP_BIT_LOOKUP Def0000 254 | S _USB_bRWUEnabled Def005D 255 | S $lb$USB_USB_EP_BIT_LOOKUP Def0000 256 | S USB_XLoadEP Def0079 257 | S _USB_Start Def0003 258 | S $le$USB_USB_EP_BIT_LOOKUP Def0003 259 | S USB_Resume Def0114 260 | S _USB_EnableOutEP Def00C0 261 | S _USB_bGetEPState Def0051 262 | S _USB_bGetEPCount Def0069 263 | S USB_DisableOutEP Def00D2 264 | S _USB_bGetEPAckState Def014E 265 | S $sb$USB_XLoadEP Def0079 266 | S $se$USB_XLoadEP Def00C0 267 | S USB_bCheckActivity Def0040 268 | S $sb$USB_Resume Def0114 269 | S $se$USB_Resume Def0118 270 | S $sb$USB_DisableOutEP Def00D2 271 | S $se$USB_DisableOutEP Def00E1 272 | S USB_Stop Def0027 273 | S _USB_DisableEP Def00D2 274 | S $sb$USB_bCheckActivity Def0040 275 | S USB_bReadOutEP Def0118 276 | S $se$USB_bCheckActivity Def004E 277 | T 00 00 01 02 04 278 | R 00 00 00 02 279 | T 00 03 62 0D 00 62 0E 00 53 00 00 55 00 00 00 55 280 | R 00 00 00 02 03 09 00 05 03 0C 00 01 281 | T 00 0F 00 00 00 55 00 00 00 55 00 00 00 62 40 80 282 | R 00 00 00 02 03 02 00 02 03 06 00 00 03 0A 00 03 283 | T 00 1A 43 74 80 62 44 03 40 5D 44 43 E1 19 7F 55 284 | R 00 00 00 02 285 | T 00 28 00 00 00 55 00 00 00 55 00 00 00 55 286 | R 00 00 00 02 03 02 00 05 03 06 00 01 03 0A 00 02 287 | T 00 31 00 00 00 55 00 04 00 62 40 00 41 74 7F 41 288 | R 00 00 00 02 03 02 00 00 01 06 00 01 289 | T 00 3D E1 E0 7F 51 00 04 39 01 A0 02 7F 55 00 04 290 | R 00 00 00 02 01 06 00 01 01 0E 00 01 291 | T 00 49 00 43 E1 10 7F 51 00 00 7F 39 03 D0 06 5C 292 | R 00 00 00 02 03 08 00 02 293 | T 00 56 52 00 00 80 03 50 00 7F 47 00 00 02 B0 05 294 | R 00 00 00 02 03 03 00 06 03 0B 00 00 295 | T 00 62 50 00 80 03 50 01 7F 39 03 D0 0A 5C 5E 41 296 | R 00 00 00 02 297 | T 00 70 21 1F 11 02 80 03 50 00 7F 3C 00 02 03 D0 298 | R 00 00 00 02 01 0C 00 01 299 | T 00 7D 3F 5A 00 00 51 00 02 F0 39 5C 51 00 03 53 300 | R 00 00 00 02 01 04 00 01 01 07 00 01 01 0D 00 01 301 | T 00 88 00 01 7A 00 01 C0 08 3E 00 00 61 00 75 8F 302 | R 00 00 00 02 01 02 00 01 01 05 00 01 01 0A 00 01 303 | T 00 93 F6 58 00 02 5B FF 67 22 00 00 A0 03 50 80 304 | R 00 00 00 02 01 04 00 01 03 0A 00 03 305 | T 00 9F 2A 00 03 61 41 56 00 00 00 5D F7 53 00 00 306 | R 00 00 00 02 01 03 00 01 03 08 00 06 01 0E 00 01 307 | T 00 AA 70 FE 63 44 0D 5E 44 39 0D BF F8 47 00 00 308 | R 00 00 00 02 01 0E 00 01 309 | T 00 B7 01 A0 03 71 01 7F 50 58 60 39 00 A0 0E 39 310 | R 00 00 00 02 311 | T 00 C5 03 D0 0A 5C 56 00 00 00 5E 44 63 44 09 7F 312 | R 00 00 00 02 03 07 00 06 313 | T 00 D2 39 00 A0 0B 39 03 D0 07 5C 5E 44 63 44 08 314 | R 00 00 00 02 315 | T 00 E0 7F 39 FF A0 28 39 02 B0 09 2E 00 00 02 26 316 | R 00 00 00 02 03 0C 00 04 317 | T 00 ED 00 00 FE 80 14 39 01 B0 09 2E 00 00 01 26 318 | R 00 00 00 02 03 02 00 04 03 0C 00 04 319 | T 00 F9 00 00 FD 80 08 39 00 A0 0F 26 00 00 FC 51 320 | R 00 00 00 02 03 02 00 04 03 0C 00 04 321 | T 01 05 00 00 60 01 43 74 01 7F 41 74 FE 7F 41 40 322 | R 00 00 00 02 03 02 00 04 323 | T 01 12 7F 7F 43 40 80 7F 4F 52 FD 39 03 D0 2F 52 324 | R 00 00 00 02 325 | T 01 20 FA 53 00 00 52 FD 5C 5E 41 21 0F 11 02 53 326 | R 00 00 00 02 01 04 00 01 327 | T 01 2D 00 03 3A 00 00 D0 03 53 00 00 51 328 | R 00 00 00 02 01 02 00 01 01 05 00 01 01 0A 00 01 329 | T 01 35 00 00 A0 16 4F 52 FC 53 00 01 52 FD FF 7C 330 | R 00 00 00 02 01 02 00 01 01 0A 00 01 331 | T 01 41 5C 5E 00 3F 00 01 75 7A 00 00 BF F8 51 332 | R 00 00 00 02 01 06 00 01 01 0A 00 01 333 | T 01 4C 00 03 7F 5C 5E 44 21 10 7F 39 00 A0 06 2E 334 | R 00 00 00 02 01 02 00 01 335 | T 01 59 00 00 01 80 04 26 00 00 FE 7F 336 | R 00 00 00 02 03 02 00 00 03 08 00 00 337 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/output/PDProject1.rom: -------------------------------------------------------------------------------- 1 | 80 67 30 30 30 30 30 30 2 | 7D 09 20 7E 7E 30 30 30 3 | 7E 30 30 30 7D 09 23 7E 4 | 7D 09 24 7E 7D 09 21 7E 5 | 7D 05 18 7E 7D 09 C7 7E 6 | 7D 09 D2 7E 7D 09 DD 7E 7 | 7D 09 E7 7E 7E 30 30 30 8 | 7E 30 30 30 7E 30 30 30 9 | 7E 30 30 30 7E 30 30 30 10 | 7D 09 22 7E 7E 30 30 30 11 | 7D 09 25 7E 7D 09 26 7E 12 | 7E 30 30 30 7E 30 30 30 13 | 7E 30 30 30 7E 30 30 30 14 | 62 E3 38 43 32 00 55 F8 15 | 00 55 F9 00 50 31 4E 7C 16 | 02 2C 90 08 62 E2 00 7C 17 | 09 27 8F FF 50 00 55 02 18 | 04 3C 02 31 A0 05 3F 02 19 | 8F F8 50 02 57 29 55 02 20 | 00 3C 02 00 A0 0B 08 28 21 | 3F 02 18 75 09 00 8F F2 22 | 7F 30 30 30 30 30 30 30 23 | 30 30 30 30 30 30 30 30 24 | 30 30 30 30 30 30 30 30 25 | 30 30 30 30 30 30 30 30 26 | 30 30 30 30 30 30 30 30 27 | 30 30 30 30 30 30 30 30 28 | 30 30 30 30 30 30 30 30 29 | 30 30 30 30 30 30 30 30 30 | 30 30 30 30 30 30 30 30 31 | 30 30 30 30 30 30 30 30 32 | 30 30 30 30 30 30 30 30 33 | 30 30 30 30 30 30 30 30 34 | 30 30 30 30 30 30 30 30 35 | 30 30 30 30 30 30 30 30 36 | 30 30 30 30 30 30 30 30 37 | 30 30 30 30 30 30 30 30 38 | 30 30 30 30 30 30 30 30 39 | 30 30 30 30 30 30 30 30 40 | 30 30 30 30 30 30 30 30 41 | 30 30 30 30 30 30 30 30 42 | 30 30 30 30 30 30 30 30 43 | 01 01 55 01 67 01 00 00 44 | 00 00 00 7F 00 00 00 00 45 | 00 00 00 00 00 00 DE 00 46 | 00 00 19 01 8B 00 00 DE 47 | 00 00 00 12 01 79 00 00 48 | DE 12 01 00 02 00 00 00 49 | 08 37 13 37 13 00 00 02 50 | 01 00 01 09 02 19 00 01 51 | 01 00 80 32 09 04 00 00 52 | 01 00 00 00 00 07 05 01 53 | 03 06 00 0A 02 00 00 04 54 | 01 BD 00 00 DE 00 00 28 55 | 01 C1 00 00 DE 00 00 12 56 | 01 E9 00 00 DE 04 03 09 57 | 04 28 03 31 00 33 00 33 58 | 00 37 00 20 00 4C 00 45 59 | 00 44 00 20 00 63 00 6F 60 | 00 6E 00 74 00 72 00 6F 61 | 00 6C 00 6C 00 65 00 72 62 | 00 12 03 63 00 6F 00 6D 63 | 00 6D 00 61 00 2E 00 61 64 | 00 69 00 32 00 30 00 05 65 | 01 06 01 07 01 08 01 09 66 | 01 0A 01 0B 00 0D 00 0E 67 | 00 0F 00 10 00 11 00 12 68 | 00 13 00 3D 00 2B 00 31 69 | 80 2A 00 FF E0 03 E3 14 70 | FF 70 EF 7F 55 03 00 7C 71 | 02 36 7C 02 29 7F 10 70 72 | EF 50 00 67 50 01 57 FB 73 | 7C 02 51 50 01 67 50 02 74 | 57 24 7C 02 51 70 EF 20 75 | 7F 38 02 10 08 4F 56 FC 76 | 00 D0 04 56 FC 01 18 20 77 | 70 EF 62 E3 00 10 08 28 78 | 39 FF A0 1F 4F 48 FC 01 79 | A0 03 71 10 54 FD 18 20 80 | 75 09 00 10 08 28 4F 59 81 | FD 61 00 18 20 75 09 00 82 | 8F D7 38 FC 7F 50 00 57 83 | 03 7D 05 34 00 01 00 02 84 | 00 13 00 00 DE 55 26 00 85 | 55 14 00 5F 13 0C 50 02 86 | 57 94 82 67 5D 53 64 39 87 | 08 DF DB E0 01 8F D7 80 88 | 28 80 03 80 34 94 65 4B 89 | 01 02 4B 09 00 55 26 27 90 | 94 49 51 27 58 28 08 5D 91 | 52 53 26 18 08 28 3A 26 92 | D0 04 18 8F B1 18 82 33 93 | 5F 26 0A 50 01 57 70 28 94 | 3A 26 CF A2 50 01 82 23 95 | 5D 52 53 26 50 01 57 A4 96 | 28 3A 26 CF 91 50 01 82 97 | 12 00 01 00 01 00 0B 00 98 | 00 DE 55 26 00 50 03 57 99 | 01 82 00 5D 52 39 01 BF 100 | 75 26 0C FD 81 F8 5D 52 101 | 39 01 A0 07 39 02 A0 08 102 | 8F 64 2E 0C 02 80 03 8F 103 | 5D 81 E3 55 25 01 5D 52 104 | 53 13 81 DA 93 E6 55 26 105 | 27 93 D0 5D 52 53 26 51 106 | 27 58 28 28 3A 26 CF 3E 107 | 5F 0B 26 3C 26 00 A0 25 108 | 51 27 58 28 75 09 00 55 109 | 26 27 93 AF 57 00 75 10 110 | 51 27 58 28 28 76 28 0E 111 | 27 00 20 90 AC 5B 39 02 112 | BF ED 80 0C 57 02 56 29 113 | 02 63 44 00 79 BF F8 81 114 | 8D 00 01 00 02 00 13 00 115 | 00 DE 55 13 00 55 14 00 116 | 55 26 00 50 03 57 89 81 117 | 72 00 01 00 01 00 13 00 118 | 00 DE 5D 54 39 01 DE DE 119 | 5C 52 0D 53 13 55 26 00 120 | 50 03 57 A1 81 55 5D 54 121 | 21 7F 39 03 DE C8 5C 55 122 | 26 00 55 14 00 52 0E 53 123 | 13 50 02 57 94 81 3C 5D 124 | 52 39 00 BE B1 5D 54 21 125 | 7F 39 00 A0 16 39 03 DE 126 | A5 5C 27 0E FE 49 54 80 127 | B0 06 63 44 08 80 04 63 128 | 44 0C 81 1A 5D 52 39 00 129 | BE 8C 5D 54 21 7F 39 00 130 | A0 16 39 03 DE 80 5C 2F 131 | 0E 01 49 54 80 B0 06 63 132 | 44 89 80 04 63 44 8D 80 133 | F5 39 7F B0 02 7F 08 5B 134 | 64 E0 01 80 05 80 08 80 135 | 0B 43 E1 01 80 09 43 E1 136 | 02 80 04 43 E1 04 5B F3 137 | 7E 31 FF 24 24 18 21 80 138 | B0 08 63 44 08 56 29 00 139 | 7F 63 44 0C 56 29 01 7F 140 | 8E 44 8E 32 8E 30 8E 2E 141 | 8E 2C 8E 2A 8E 47 8E 26 142 | 8E A1 5D 51 39 09 D0 04 143 | 64 EF E6 8E 19 8E 17 8E 144 | 9B 8E 13 8E A2 8E 0F 8E 145 | B3 8E 0B 8E 09 8E 07 8E 146 | B4 5D 51 39 0A D0 04 64 147 | EF E4 8D FA 8E FD 8D F6 148 | 8D F4 8D F2 8D F0 8D EE 149 | 8D EC 8D EA 8D E8 8D E6 150 | 8F 01 3C 0B 00 B0 03 8D 151 | DD 5D 51 39 0B D0 04 64 152 | EF DB 8D D2 8D D0 3C 0B 153 | 00 B0 03 8D C9 5D 51 39 154 | 01 D0 04 64 EF EF 8D BE 155 | 8E ED 3C 0B 00 B0 0D 5D 156 | 55 53 26 5D 54 2C 26 A0 157 | 03 8D AB 5D 51 39 01 D0 158 | 04 64 EF E5 8D A0 8D 9E 159 | 8E E6 8D 9A 8F 07 3C 0B 160 | 00 B0 0D 5D 55 53 26 5D 161 | 54 2C 26 A0 03 8D 87 5D 162 | 51 39 04 D0 04 64 EF DF 163 | 8D 7C 7D 06 DF 7D 05 E1 164 | 08 10 5D 44 5C 21 9F 39 165 | 91 A0 3D 21 80 B0 36 5B 166 | 21 70 39 50 A0 5C 39 30 167 | A0 66 80 29 53 28 5D 44 168 | 21 80 B0 21 51 28 60 41 169 | 5D 41 3A 28 B0 17 5A 28 170 | 5D 44 21 80 B0 0F 51 28 171 | 60 44 5D 44 21 0F 3A 28 172 | A0 03 8F ED 20 18 7E 5D 173 | 44 60 44 5D 44 21 80 BF 174 | F4 08 50 02 91 DE 18 5D 175 | 41 39 4A A0 03 82 46 5D 176 | 50 21 E3 08 67 67 67 53 177 | 26 18 2A 26 21 1F 7D 07 178 | B3 5D 44 51 12 E0 01 82 179 | 2C 80 39 80 AF 80 BA 5D 180 | 44 51 12 E0 01 82 1E 80 181 | 2D 80 5E 80 C6 53 11 91 182 | B9 55 12 02 5D 57 3A 1C 183 | B0 07 5D 56 3A 1D A0 09 184 | D0 07 53 1D 5D 57 53 1C 185 | 55 22 00 55 23 00 2E 24 186 | 01 80 AA 80 A8 51 11 04 187 | 23 0E 22 00 50 01 91 74 188 | 55 12 00 50 00 57 03 8F 189 | 54 91 7F 55 12 06 50 00 190 | 57 06 8F 49 51 1B 39 00 191 | A1 CB 91 6E 55 12 04 2E 192 | 24 01 50 00 57 0B 8F 35 193 | 36 24 01 5D 41 21 0F 11 194 | 02 53 26 50 00 3A 1C B0 195 | 07 51 26 3A 1D A0 06 C0 196 | 04 5F 26 1D 51 26 14 1D 197 | 1E 1C 00 04 23 0E 22 00 198 | 57 00 5E 50 3F 1F 75 5B 199 | 3A 26 CF F7 50 00 57 0B 200 | 8E FB 55 12 00 50 00 57 201 | 03 8E F2 50 01 91 05 55 202 | 12 00 50 00 57 03 8E E5 203 | 50 01 90 F8 3C 25 01 B0 204 | 09 51 13 29 80 60 40 80 205 | 01 55 25 00 50 00 57 06 206 | 8E CB 50 03 90 DE 50 00 207 | 57 03 8E C1 51 11 04 23 208 | 0E 22 00 51 1C 2A 1D B0 209 | 0E 3C 11 08 A0 47 50 00 210 | 53 11 57 02 8E A7 3C 1C 211 | 00 B0 0A 3C 1D 08 D0 05 212 | 51 1D 80 03 50 08 14 1D 213 | 1E 1C 00 53 26 57 00 3C 214 | 1B 00 B0 17 10 51 1E 58 215 | 1F 76 1F 0E 1E 00 28 20 216 | 61 50 75 5B 3A 26 CF ED 217 | 80 0B 3E 1F 61 50 75 5B 218 | 3A 26 CF F7 53 11 50 01 219 | 22 24 A0 03 50 80 2A 11 220 | 36 24 01 57 0F 8E 56 75 221 | 09 00 08 65 26 65 26 65 222 | 26 18 4B 02 26 4B 09 00 223 | 55 26 1B 90 26 90 1C 90 224 | 1A 90 18 5D 50 21 80 A0 225 | 03 8E A3 8E E8 75 09 00 226 | 65 26 65 26 4B 02 26 4B 227 | 09 00 7F 08 28 3F 26 18 228 | 75 09 00 08 28 3F 26 18 229 | 75 09 00 7F 5F 26 0A 50 230 | 01 57 50 28 3A 26 50 01 231 | C0 03 9F D1 7F 9F ED 55 232 | 26 27 9F D7 5D 52 53 26 233 | 51 27 58 28 5F 26 0B 7A 234 | 26 9F BA 7F 58 21 4B 39 235 | 00 A0 0F 4B 54 00 51 22 236 | 54 01 51 23 54 02 55 21 237 | 00 7F 51 21 39 00 A0 0B 238 | 4B 56 00 00 55 22 00 55 239 | 23 00 7F 8D 15 8D 48 8D 240 | 7E 80 42 80 40 80 3E 80 241 | 3C 80 3A 80 38 80 36 80 242 | 34 80 32 80 30 80 2E 80 243 | 2C 80 2A 8C D6 8D 14 8D 244 | 3A 80 22 80 20 80 1E 80 245 | 1C 80 1A 80 18 80 16 80 246 | 14 80 12 80 10 80 0E 80 247 | 0C 80 0A 39 20 D0 04 64 248 | EF BA 80 01 7D 02 8D 01 249 | 02 04 62 0D 00 62 0E 00 250 | 53 0A 55 12 00 55 0B 00 251 | 55 0C 00 55 24 00 62 40 252 | 80 43 74 80 62 44 03 40 253 | 5D 44 43 E1 19 7F 55 0A 254 | 00 55 12 00 55 0B 00 55 255 | 0C 00 55 30 00 62 40 00 256 | 41 74 7F 41 E1 E0 7F 51 257 | 30 39 01 A0 02 7F 55 30 258 | 00 43 E1 10 7F 51 0B 7F 259 | 39 03 D0 06 5C 52 29 80 260 | 03 50 00 7F 47 0C 02 B0 261 | 05 50 00 80 03 50 01 7F 262 | 39 03 D0 0A 5C 5E 41 21 263 | 1F 11 02 80 03 50 00 7F 264 | 3C 2E 03 D0 3F 5A 2C 51 265 | 2E F0 39 5C 51 2F 53 2D 266 | 7A 2D C0 08 3E 2C 61 00 267 | 75 8F F6 58 2E 5B FF 67 268 | 22 24 A0 03 50 80 2A 2F 269 | 61 41 56 29 00 5D F7 53 270 | 2C 70 FE 63 44 0D 5E 44 271 | 39 0D BF F8 47 2C 01 A0 272 | 03 71 01 7F 50 58 60 39 273 | 00 A0 0E 39 03 D0 0A 5C 274 | 56 29 00 5E 44 63 44 09 275 | 7F 39 00 A0 0B 39 03 D0 276 | 07 5C 5E 44 63 44 08 7F 277 | 39 FF A0 28 39 02 B0 09 278 | 2E 03 02 26 03 FE 80 14 279 | 39 01 B0 09 2E 03 01 26 280 | 03 FD 80 08 39 00 A0 0F 281 | 26 03 FC 51 03 60 01 43 282 | 74 01 7F 41 74 FE 7F 41 283 | 40 7F 7F 43 40 80 7F 4F 284 | 52 FD 39 03 D0 2F 52 FA 285 | 53 2C 52 FD 5C 5E 41 21 286 | 0F 11 02 53 2F 3A 2C D0 287 | 03 53 2C 51 2C A0 16 4F 288 | 52 FC 53 2D 52 FD FF 7C 289 | 5C 5E 00 3F 2D 75 7A 2C 290 | BF F8 51 2F 7F 5C 5E 44 291 | 21 10 7F 39 00 A0 06 2E 292 | 0C 01 80 04 26 0C FE 7F 293 | 7E 7E 7E 7E 7E 7E 7E 10 294 | 4F 38 02 50 00 08 50 06 295 | 08 50 00 08 08 50 00 08 296 | 50 04 08 7C 09 F9 38 FA 297 | 71 01 10 50 00 7C 07 C2 298 | 20 10 7C 08 0D 20 39 00 299 | AF F8 10 50 01 7C 08 7F 300 | 20 56 00 00 80 63 56 01 301 | 00 10 50 01 7C 08 28 20 302 | 39 06 B0 19 10 50 06 08 303 | 50 00 08 50 04 08 50 01 304 | 08 7C 08 D7 38 FC 50 01 305 | 7C 08 7F 20 52 00 3A 04 306 | D0 04 2F 01 10 52 00 3A 307 | 05 D0 04 2F 01 04 52 00 308 | 3A 06 D0 04 2F 01 01 52 309 | 00 3A 07 D0 04 2F 01 20 310 | 52 00 3A 08 D0 04 2F 01 311 | 08 52 00 3A 09 D0 04 2F 312 | 01 02 52 01 60 00 77 00 313 | 8F 9D 38 FE 20 8F FF 08 314 | 36 24 02 5D 45 55 2A 01 315 | 18 7E 08 36 24 04 5D 46 316 | 55 2B 01 18 7E 08 10 51 317 | 0A 7C 07 C2 20 18 7E 55 318 | 30 01 41 E1 EF 7E 62 D0 319 | 00 10 4F 52 FB 60 D5 80 320 | 03 10 4F 52 FC 53 01 53 321 | 00 52 FB 53 02 52 FA 80 322 | 08 3F 00 7B F8 1F F7 00 323 | 3D F8 00 BF F5 3D F7 00 324 | BF F0 20 7F -------------------------------------------------------------------------------- /PDProject1/PDProject1/obj/main.lis: -------------------------------------------------------------------------------- 1 | .module main.c 2 | .area text(rom, con, rel) 3 | 0000 .dbfile ./main.c 4 | 0000 .dbfile C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\main.c 5 | 0000 .dbfunc e main _main fV 6 | 0000 ; dat -> X+1 7 | 0000 ; cnt -> X+0 8 | 0000 _main:: 9 | 0000 .dbline -1 10 | 0000 10 push X 11 | 0001 4F mov X,SP 12 | 0002 3802 add SP,2 13 | 0004 .dbline 34 14 | 0004 ; //---------------------------------------------------------------------------- 15 | 0004 ; // C main line 16 | 0004 ; //---------------------------------------------------------------------------- 17 | 0004 ; 18 | 0004 ; #include // part specific constants and macros 19 | 0004 ; #include "PSoCAPI.h" // PSoC API definitions for all User Modules 20 | 0004 ; #include 21 | 0004 ; 22 | 0004 ; // Port_0_0 - Port_0_5 are the 6 led pins 23 | 0004 ; #define TOP_BLUE (1 << 4) 24 | 0004 ; #define TOP_RED (1 << 2) 25 | 0004 ; #define TOP_GREEN (1 << 0) 26 | 0004 ; 27 | 0004 ; #define BOT_BLUE (1 << 5) 28 | 0004 ; #define BOT_RED (1 << 3) 29 | 0004 ; #define BOT_GREEN (1 << 1) 30 | 0004 ; 31 | 0004 ; // intensities 32 | 0004 ; unsigned char inten[6]; 33 | 0004 ; 34 | 0004 ; #pragma ioport EP1DATA_0: 0x058 35 | 0004 ; BYTE EP1DATA_0; 36 | 0004 ; #pragma ioport EP1DATA_1: 0x059 37 | 0004 ; BYTE EP1DATA_1; 38 | 0004 ; #pragma ioport EP1DATA_2: 0x05A 39 | 0004 ; BYTE EP1DATA_2; 40 | 0004 ; #pragma ioport EP1DATA_3: 0x05B 41 | 0004 ; BYTE EP1DATA_3; 42 | 0004 ; #pragma ioport EP1DATA_4: 0x05C 43 | 0004 ; BYTE EP1DATA_4; 44 | 0004 ; #pragma ioport EP1DATA_5: 0x05D 45 | 0004 ; BYTE EP1DATA_5; 46 | 0004 ; 47 | 0004 ; void main(void) { 48 | 0004 .dbline 38 49 | 0004 ; unsigned char cnt, dat; 50 | 0004 ; 51 | 0004 ; // init intensities 52 | 0004 ; memset(inten, 0, 6); 53 | 0004 5000 mov A,0 54 | 0006 08 push A 55 | 0007 5006 mov A,6 56 | 0009 08 push A 57 | 000A 5000 mov A,0 58 | 000C 08 push A 59 | 000D 08 push A 60 | 000E 5000 mov A,>_inten 61 | 0010 08 push A 62 | 0011 5000 mov A,<_inten 63 | 0013 08 push A 64 | 0014 7C0000 xcall _memset 65 | 0017 38FA add SP,-6 66 | 0019 .dbline 47 67 | 0019 ; 68 | 0019 ; // testing 69 | 0019 ; //inten[0] = 10; 70 | 0019 ; 71 | 0019 ; // enable sleep timer 72 | 0019 ; //INT_MSK0 |= INT_MSK0_SLEEP; 73 | 0019 ; 74 | 0019 ; // enable all interrupts 75 | 0019 ; M8C_EnableGInt; 76 | 0019 7101 or F, 01h 77 | 001B 78 | 001B .dbline 50 79 | 001B ; 80 | 001B ; // wait for enumeration 81 | 001B ; USB_Start(0); 82 | 001B 10 push X 83 | 001C 5000 mov A,0 84 | 001E 7C0000 xcall _USB_Start 85 | 0021 20 pop X 86 | 0022 L3: 87 | 0022 .dbline 51 88 | 0022 ; while (!USB_bGetConfiguration()){} 89 | 0022 .dbline 51 90 | 0022 L4: 91 | 0022 .dbline 51 92 | 0022 10 push X 93 | 0023 7C0000 xcall _USB_bGetConfiguration 94 | 0026 20 pop X 95 | 0027 3900 cmp A,0 96 | 0029 AFF8 jz L3 97 | 002B .dbline 52 98 | 002B ; USB_EnableEP(1); 99 | 002B 10 push X 100 | 002C 5001 mov A,1 101 | 002E 7C0000 xcall _USB_EnableEP 102 | 0031 20 pop X 103 | 0032 .dbline 56 104 | 0032 ; 105 | 0032 ; //USB_bReadOutEP 106 | 0032 ; 107 | 0032 ; cnt = 0; 108 | 0032 560000 mov [X+0],0 109 | 0035 8063 xjmp L7 110 | 0037 L6: 111 | 0037 .dbline 57 112 | 0037 ; while (1) { 113 | 0037 .dbline 58 114 | 0037 ; dat = 0; 115 | 0037 560100 mov [X+1],0 116 | 003A .dbline 60 117 | 003A ; 118 | 003A ; if (USB_bGetEPCount(1) == 6) { 119 | 003A 10 push X 120 | 003B 5001 mov A,1 121 | 003D 7C0000 xcall _USB_bGetEPCount 122 | 0040 20 pop X 123 | 0041 3906 cmp A,6 124 | 0043 B019 jnz L9 125 | 0045 .dbline 61 126 | 0045 ; USB_bReadOutEP(1, inten, 6); 127 | 0045 .dbline 61 128 | 0045 10 push X 129 | 0046 5006 mov A,6 130 | 0048 08 push A 131 | 0049 5000 mov A,>_inten 132 | 004B 08 push A 133 | 004C 5000 mov A,<_inten 134 | 004E 08 push A 135 | 004F 5001 mov A,1 136 | 0051 08 push A 137 | 0052 7C0000 xcall _USB_bReadOutEP 138 | 0055 38FC add SP,-4 139 | 0057 .dbline 62 140 | 0057 ; USB_EnableEP(1); 141 | 0057 5001 mov A,1 142 | 0059 7C0000 xcall _USB_EnableEP 143 | 005C 20 pop X 144 | 005D .dbline 63 145 | 005D ; } 146 | 005D L9: 147 | 005D .dbline 66 148 | 005D ; 149 | 005D ; // 100% isn't possible...err 150 | 005D ; if (cnt < inten[0]) dat |= TOP_BLUE; 151 | 005D 5200 mov A,[X+0] 152 | 005F 3A00 cmp A,[_inten] 153 | 0061 D004 jnc L11 154 | 0063 X1: 155 | 0063 .dbline 66 156 | 0063 2F0110 or [X+1],16 157 | 0066 L11: 158 | 0066 .dbline 67 159 | 0066 ; if (cnt < inten[1]) dat |= TOP_RED; 160 | 0066 5200 mov A,[X+0] 161 | 0068 3A01 cmp A,[_inten+1] 162 | 006A D004 jnc L13 163 | 006C X2: 164 | 006C .dbline 67 165 | 006C 2F0104 or [X+1],4 166 | 006F L13: 167 | 006F .dbline 68 168 | 006F ; if (cnt < inten[2]) dat |= TOP_GREEN; 169 | 006F 5200 mov A,[X+0] 170 | 0071 3A02 cmp A,[_inten+2] 171 | 0073 D004 jnc L16 172 | 0075 X3: 173 | 0075 .dbline 68 174 | 0075 2F0101 or [X+1],1 175 | 0078 L16: 176 | 0078 .dbline 69 177 | 0078 ; if (cnt < inten[3]) dat |= BOT_BLUE; 178 | 0078 5200 mov A,[X+0] 179 | 007A 3A03 cmp A,[_inten+3] 180 | 007C D004 jnc L19 181 | 007E X4: 182 | 007E .dbline 69 183 | 007E 2F0120 or [X+1],32 184 | 0081 L19: 185 | 0081 .dbline 70 186 | 0081 ; if (cnt < inten[4]) dat |= BOT_RED; 187 | 0081 5200 mov A,[X+0] 188 | 0083 3A04 cmp A,[_inten+4] 189 | 0085 D004 jnc L22 190 | 0087 X5: 191 | 0087 .dbline 70 192 | 0087 2F0108 or [X+1],8 193 | 008A L22: 194 | 008A .dbline 71 195 | 008A ; if (cnt < inten[5]) dat |= BOT_GREEN; 196 | 008A 5200 mov A,[X+0] 197 | 008C 3A05 cmp A,[_inten+5] 198 | 008E D004 jnc L25 199 | 0090 X6: 200 | 0090 .dbline 71 201 | 0090 2F0102 or [X+1],2 202 | 0093 L25: 203 | 0093 .dbline 73 204 | 0093 ; 205 | 0093 ; P0DATA = dat; 206 | 0093 5201 mov A,[X+1] 207 | 0095 6000 mov REG[0],A 208 | 0097 .dbline 76 209 | 0097 ; 210 | 0097 ; // will rollover 211 | 0097 ; cnt += 1; 212 | 0097 7700 inc [X+0] 213 | 0099 .dbline 77 214 | 0099 ; } 215 | 0099 L7: 216 | 0099 .dbline 57 217 | 0099 8F9D xjmp L6 218 | 009B X0: 219 | 009B .dbline -2 220 | 009B L2: 221 | 009B 38FE add SP,-2 222 | 009D 20 pop X 223 | 009E .dbline 0 ; func end 224 | 009E 8FFF jmp . 225 | 00A0 .dbsym l dat 1 c 226 | 00A0 .dbsym l cnt 0 c 227 | 00A0 .dbend 228 | .area bss(ram, con, rel) 229 | 0000 .dbfile C:\Users\IEUser\DOCUME~1\PSOCDE~1.4PR\PDPROJ~1\PDPROJ~1\main.c 230 | 0000 _inten:: 231 | 0000 .blkb 6 232 | 0006 .dbsym e inten _inten A[6:6]c 233 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/output/PDProject1.mp: -------------------------------------------------------------------------------- 1 | Project: output/PDProject1 2 | Build Number: 0 3 | Date: Mon Dec 07 10:52:58 2015 4 | Compiler: ICCM8C 5 | Version: 7.05.00 6 | 7 | 8 | Area Addr Size Decimal Bytes (Attributes) 9 | -------------------------------- ---- ---- ------- ----- ------------ 10 | lit 0150 00D9 = 217. bytes (rel,con,rom,lit) 11 | 12 | Addr Global Symbol 13 | ----- -------------------------------- 14 | 0150 USB_DEVICE_LOOKUP 15 | 0150 __lit_start 16 | 0155 USB_D0_CONFIG_LOOKUP 17 | 015C USB_D0_C1_INTERFACE_RPT_LOOKUP 18 | 015E USB_D0_C1_HID_CLASS_DESCR_TABLE 19 | 0170 USB_DEVICE_DESCR_TABLE 20 | 01A4 USB_StringTable 21 | 01FB LoadConfigTBL_pdproject1_Bank0 22 | 0224 LoadConfigTBL_pdproject1_Bank1 23 | 0229 __lit_end 24 | 25 | Area Addr Size Decimal Bytes (Attributes) 26 | -------------------------------- ---- ---- ------- ----- ------------ 27 | psoc_config 0229 0064 = 100. bytes (rel,con,rom,code) 28 | 29 | Addr Global Symbol 30 | ----- -------------------------------- 31 | 0229 LoadConfigTBL_pdproject1_Ordered 32 | 0229 __psoc_config_start 33 | 022C LoadConfigInit 34 | 022C _LoadConfigInit 35 | 0236 _LoadConfig_pdproject1 36 | 0236 LoadConfig_pdproject1 37 | 028D __psoc_config_end 38 | 39 | Area Addr Size Decimal Bytes (Attributes) 40 | -------------------------------- ---- ---- ------- ----- ------------ 41 | UserModules 028D 0693 = 1683. bytes (rel,con,rom,code) 42 | 43 | Addr Global Symbol 44 | ----- -------------------------------- 45 | 028D __usermodules_start 46 | 028D USB_CB_h2d_std_dev_08 47 | 028D USB_CB_h2d_std_dev_07 48 | 028D USB_CB_d2h_std_dev_07 49 | 028D USB_CB_h2d_std_dev_06 50 | 028D USB_CB_d2h_std_dev_05 51 | 028D USB_CB_h2d_std_dev_04 52 | 028D USB_CB_d2h_std_dev_04 53 | 028D USB_CB_d2h_std_dev_03 54 | 028D USB_CB_h2d_std_dev_02 55 | 028D USB_CB_d2h_std_dev_02 56 | 028D USB_CB_d2h_std_dev_01 57 | 028D USB_CB_h2d_std_dev_00 58 | 028D USB_CB_d2h_std_ifc_09 59 | 028D USB_CB_d2h_std_ifc_08 60 | 028D USB_CB_d2h_std_ifc_07 61 | 028D USB_CB_d2h_std_ifc_06 62 | 028D USB_CB_d2h_std_ifc_05 63 | 028D USB_CB_d2h_std_ifc_04 64 | 028D USB_CB_d2h_std_ifc_03 65 | 028D USB_CB_d2h_std_ifc_02 66 | 028D USB_CB_d2h_std_ifc_01 67 | 028D USB_CB_h2d_std_ifc_00 68 | 028D _USB_Not_Supported 69 | 028D USB_CB_h2d_std_ep_02 70 | 028D USB_CB_h2d_std_ep_00 71 | 028D USB_Not_Supported 72 | 029D USB_CB_d2h_std_dev_00 73 | 02AC USB_CB_d2h_std_dev_06 74 | 030A USB_CB_d2h_std_dev_08 75 | 0313 USB_CB_h2d_std_dev_01 76 | 031E USB_CB_h2d_std_dev_03 77 | 0333 USB_CB_h2d_std_dev_05 78 | 033C USB_CB_h2d_std_dev_09 79 | 0392 USB_CB_d2h_std_ifc_00 80 | 03AA USB_CB_d2h_std_ifc_10 81 | 03BE USB_CB_d2h_std_ep_00 82 | 03D7 USB_CB_h2d_std_ep_01 83 | 03FC USB_CB_h2d_std_ep_03 84 | 046A USB_DT_d2h_std_dev_Dispatch 85 | 0489 USB_DT_h2d_std_dev_Dispatch 86 | 04AA USB_DT_d2h_std_ifc_Dispatch 87 | 04BE USB_DT_h2d_std_ifc_Dispatch 88 | 04D2 USB_DT_d2h_std_ep_Dispatch 89 | 04F6 USB_DT_h2d_std_ep_Dispatch 90 | 0518 _USB_EP0_ISR 91 | 051A USB_mode_read 92 | 0534 USB_EP0_UPD_MODE_EXIT 93 | 05A5 USB_InitControlRead 94 | 05E1 USB_InitNoDataStageControlTransfer 95 | 05E1 USB_NoDataStageControlTransfer 96 | 05EC USB_InitControlWrite 97 | 06DF USB_GetTableEntry 98 | 0705 USB_LOOKUP 99 | 0713 USB_GETWORD 100 | 071B USB_GETBYTE 101 | 0724 USB_GET_DEVICE_TABLE_ENTRY 102 | 0735 USB_GET_CONFIG_TABLE_ENTRY 103 | 0773 USB_DT_bmRequestType 104 | 07B3 USB_bmRequestType_Dispatch 105 | 07BF USB_USB_EP_BIT_LOOKUP 106 | 07C2 _USB_Start 107 | 07C2 USB_Start 108 | 07E6 USB_Stop 109 | 07E6 _USB_Stop 110 | 07FF _USB_bCheckActivity 111 | 07FF USB_bCheckActivity 112 | 080D USB_bGetConfiguration 113 | 080D _USB_bGetConfiguration 114 | 0810 USB_bGetEPState 115 | 0810 _USB_bGetEPState 116 | 081C USB_bRWUEnabled 117 | 081C _USB_bRWUEnabled 118 | 0828 _USB_bGetEPCount 119 | 0828 USB_bGetEPCount 120 | 0838 USB_XLoadEP 121 | 0838 _USB_XLoadEP 122 | 087F _USB_EnableOutEP 123 | 087F USB_EnableOutEP 124 | 087F _USB_EnableEP 125 | 087F USB_EnableEP 126 | 0891 USB_DisableOutEP 127 | 0891 USB_DisableEP 128 | 0891 _USB_DisableOutEP 129 | 0891 _USB_DisableEP 130 | 08A0 USB_Force 131 | 08A0 _USB_Force 132 | 08CF USB_Suspend 133 | 08CF _USB_Suspend 134 | 08D3 USB_Resume 135 | 08D3 _USB_Resume 136 | 08D7 _USB_bReadOutEP 137 | 08D7 USB_bReadOutEP 138 | 090D USB_bGetEPAckState 139 | 090D _USB_bGetEPAckState 140 | 0913 _USB_SetPowerStatus 141 | 0913 USB_SetPowerStatus 142 | 0920 __UserModules_end 143 | 144 | Area Addr Size Decimal Bytes (Attributes) 145 | -------------------------------- ---- ---- ------- ----- ------------ 146 | gpio_isr 0920 0007 = 7. bytes (rel,con,rom,code) 147 | 148 | Addr Global Symbol 149 | ----- -------------------------------- 150 | 0927 __gpio_isr_end 151 | 152 | Area Addr Size Decimal Bytes (Attributes) 153 | -------------------------------- ---- ---- ------- ----- ------------ 154 | text 0927 00F5 = 245. bytes (rel,con,rom,code) 155 | 156 | Addr Global Symbol 157 | ----- -------------------------------- 158 | 0927 __text_start 159 | 0927 _main 160 | 09C7 USB_EP1_ISR 161 | 09C7 _USB_EP1_ISR 162 | 09D2 USB_EP2_ISR 163 | 09D2 _USB_EP2_ISR 164 | 09DD USB_RESET_ISR 165 | 09DD _USB_RESET_ISR 166 | 09E7 _USB_ACT_ISR 167 | 09E7 USB_ACT_ISR 168 | 09EE _memsetLMM 169 | 09F9 _memset 170 | 0A1C __text_end 171 | 172 | Area Addr Size Decimal Bytes (Attributes) 173 | -------------------------------- ---- ---- ------- ----- ------------ 174 | virtual_registers 0000 0003 = 3. bytes (rel,con,ram) 175 | 176 | Addr Global Symbol 177 | ----- -------------------------------- 178 | 0000 __r2 179 | 0001 __r1 180 | 0002 __r0 181 | 0003 __virtual_registers_end 182 | 183 | Area Addr Size Decimal Bytes (Attributes) 184 | -------------------------------- ---- ---- ------- ----- ------------ 185 | InterruptRAM 0003 0001 = 1. bytes (rel,con,ram) 186 | 187 | Addr Global Symbol 188 | ----- -------------------------------- 189 | 0003 NO_SHADOW 190 | 0003 Port_1_Data_SHADE 191 | 0003 _NO_SHADOW 192 | 0003 _Port_1_Data_SHADE 193 | 0004 __InterruptRAM_end 194 | 195 | Area Addr Size Decimal Bytes (Attributes) 196 | -------------------------------- ---- ---- ------- ----- ------------ 197 | bss 0004 002D = 45. bytes (rel,con,ram) 198 | 199 | Addr Global Symbol 200 | ----- -------------------------------- 201 | 0004 __bss_start 202 | 0004 _inten 203 | 000A USB_bCurrentDevice 204 | 000B _USB_Configuration 205 | 000B USB_Configuration 206 | 000C USB_DeviceStatus 207 | 000D USB_InterfaceSetting 208 | 000E USB_EndpointStatus 209 | 0011 USB_LastSize 210 | 0012 USB_TransferType 211 | 0013 USB_TransferBuffer 212 | 001B USB_CurrentTD 213 | 001B _USB_CurrentTD 214 | 001B USB_DataSource 215 | 001B _USB_DataSource 216 | 001C USB_TransferSize 217 | 001C _USB_TransferSize 218 | 001E _USB_DataPtr 219 | 001E USB_DataPtr 220 | 0020 USB_StatusBlockPtr 221 | 0020 _USB_StatusBlockPtr 222 | 0024 USB_EPDataToggle 223 | 0025 USB_fDataPending 224 | 0026 USB_t2 225 | 0027 USB_t1 226 | 0028 USB_t0 227 | 0029 USB_EndpointAPIStatus 228 | 0029 _USB_EndpointAPIStatus 229 | 002C USB_APITemp 230 | 002E _USB_APIEPNumber 231 | 002E USB_APIEPNumber 232 | 002F USB_APICount 233 | 002F _USB_APICount 234 | 0030 USB_bActivity 235 | 0031 __bss_end 236 | 0031 __ramareas_end 237 | 238 | Area Start End Decimal Bytes (Attributes) 239 | -------------------------------- ---- ---- ------- ----- ------------ 240 | TOP 0000 00A9 = 169. bytes (abs,ovr,rom,code) 241 | 242 | Addr Global Symbol 243 | ----- -------------------------------- 244 | 0068 __Start 245 | 246 | Files Linked [ module(s) ] 247 | 248 | ./obj/boot.o [ boot.asm ] 249 | obj/main.o [ main.c ] 250 | [ usbint.asm, usb_std.asm, usb_drv.asm, usb_descr.asm, usb.asm, psocconfigtbl.asm, psocconfig.asm ] 251 | [ r2.asm, r1.asm, r0.asm, memset.s ] 252 | 253 | Area Definitions 254 | 255 | -blit:0x150.0xbff 256 | -bdata:0.0xff 257 | -rwh:SSCParmBlk:0xf7.0xff 258 | 259 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/backup/usb_1_descr.asm: -------------------------------------------------------------------------------- 1 | ;;***************************************************************************** 2 | ;;***************************************************************************** 3 | ;; FILENAME: USB_1_descr.asm 4 | ;; Version: 1.90, Updated on 2015/3/4 at 22:20:18 5 | ;; Generated by PSoC Designer 5.4.3191 6 | ;; 7 | ;; DESCRIPTION: USB User Module Descriptors 8 | ;; 9 | ;; NOTE: User Module APIs conform to the fastcall convention for marshalling 10 | ;; arguments and observe the associated "Registers are volatile" policy. 11 | ;; This means it is the caller's responsibility to preserve any values 12 | ;; in the X and A registers that are still needed after the API 13 | ;; function returns. Even though these registers may be preserved now, 14 | ;; there is no guarantee they will be preserved in future releases. 15 | ;;----------------------------------------------------------------------------- 16 | ;; Copyright (c) Cypress Semiconductor 2015. All Rights Reserved. 17 | ;;***************************************************************************** 18 | ;;***************************************************************************** 19 | 20 | include "m8c.inc" 21 | include "USB_1.inc" 22 | include "USB_1_macros.inc" 23 | 24 | WIZARD: equ 1 25 | WIZARD_DEFINED_REPORT_STORAGE: EQU 1 26 | ;--------------------------------------------------- 27 | ;@PSoC_UserCode_BODY_1@ (Do not change this line.) 28 | ;--------------------------------------------------- 29 | ; Insert your custom code below this banner 30 | ;--------------------------------------------------- 31 | ; Redefine the WIZARD equate to 0 below by 32 | ; uncommenting the WIZARD: equ 0 line 33 | ; to allow your custom descriptor to take effect 34 | ;--------------------------------------------------- 35 | 36 | ; WIZARD: equ 0 37 | ; WIZARD_DEFINED_REPORT_STORAGE: EQU 0 38 | 39 | ;--------------------------------------------------- 40 | ; Insert your custom code above this banner 41 | ;--------------------------------------------------- 42 | ;@PSoC_UserCode_END@ (Do not change this line.) 43 | 44 | IF WIZARD 45 | ;----------------------------------------------- 46 | ; USB Descriptors--Generated by the USB Setup Wizard 47 | ;----------------------------------------------- 48 | AREA lit (ROM,REL,CON) 49 | ;---------------------------------------------------------------------- 50 | ; Descriptor Dispatch Tables 51 | ; The following tables provide the dispatching pointers and 52 | ; descriptor lengths necessary for the request handler to 53 | ; respond to USB requests. 54 | ;---------------------------------------------------------------------- 55 | 56 | ;---------------------------------------------------------------------- 57 | ; Device Dispatch Table 58 | ; for User Module: (USB_1) 59 | ;---------------------------------------------------------------------- 60 | AREA lit (ROM,REL,CON) 61 | EXPORT USB_1_DEVICE_LOOKUP 62 | .LITERAL 63 | USB_1_DEVICE_LOOKUP: ; 64 | LT_START 1 ; Number of devices defined for USB_1 65 | LT_ENTRY USB_1_D0_CONFIG_LOOKUP, USB_1_D0_CONFIG_DESCR_TABLE 66 | .ENDLITERAL 67 | 68 | ;---------------------------------------------------------------------- 69 | ; Configuration Dispatch Table 70 | ; for Device: (USB_1_D0) 71 | ;---------------------------------------------------------------------- 72 | AREA lit (ROM,REL,CON) 73 | EXPORT USB_1_D0_CONFIG_LOOKUP 74 | .LITERAL 75 | USB_1_D0_CONFIG_LOOKUP: ; 76 | LT_START 1 ; Number of configurations 77 | LT_ENTRY NULL_PTR, NULL_PTR ; No HID Class Descriptors 78 | .ENDLITERAL 79 | 80 | ;---------------------------------------------------------------------- 81 | ; Endpoint Setup Table 82 | ; 83 | ; This table provides the data to configure the endpoint mode registers 84 | ; for IN/OUT direction. 85 | ;---------------------------------------------------------------------- 86 | AREA lit (ROM,REL,CON) 87 | .LITERAL 88 | USB_1_D0_C1_EP_SETUP: ; 89 | DB USB_DIR_IN ; Endpoint EP1(IN) 90 | DB USB_DIR_UNUSED ; Endpoint EP2 not used for this configuration 91 | .ENDLITERAL 92 | 93 | ;---------------------------------------------------------------------- 94 | ; Interface Lookup Table 95 | ; 96 | ; This table is indexed by interface number. 97 | ; 98 | ;---------------------------------------------------------------------- 99 | EXPORT USB_1_D0_C1_INTERFACE_RPT_LOOKUP 100 | .LITERAL 101 | USB_1_D0_C1_INTERFACE_RPT_LOOKUP: ; 102 | DW 0 ; HID Class Reports not defined for this interface 103 | .ENDLITERAL 104 | 105 | ;---------------------------------------------------------------------- 106 | ; HID Class Descriptor transfer descriptor table 107 | ;---------------------------------------------------------------------- 108 | AREA lit (ROM,REL,CON) 109 | EXPORT USB_1_D0_C1_HID_CLASS_DESCR_TABLE 110 | .LITERAL 111 | USB_1_D0_C1_HID_CLASS_DESCR_TABLE: ; 112 | TD_START_TABLE 1 ; Number of interfaces/HID Class Descriptors 113 | TD_ENTRY USB_DS_ROM, 0, NULL_PTR, NULL_PTR 114 | .ENDLITERAL 115 | 116 | ;---------------------------------------------------------------------- 117 | ; Configuration Descriptor Table 118 | ; for (USB_1_D0) 119 | ; 120 | ; This table provides transfer descriptors for each USB Configuration 121 | ; Descriptor 122 | ;---------------------------------------------------------------------- 123 | AREA lit (ROM,REL,CON) 124 | .LITERAL 125 | USB_1_D0_CONFIG_DESCR_TABLE: ; 126 | TD_START_TABLE 1 ; Number of configurations 127 | TD_ENTRY USB_DS_ROM, USB_1_D0_C1_DESCR_SIZE, USB_1_D0_C1_DESCR_START, NULL_PTR 128 | .ENDLITERAL 129 | 130 | ;---------------------------------------------------------------------- 131 | ; Device Descriptor Table 132 | ; 133 | ; This table provides transfer descriptors for each USB Device Descriptor 134 | ;---------------------------------------------------------------------- 135 | AREA lit (ROM,REL,CON) 136 | EXPORT USB_1_DEVICE_DESCR_TABLE 137 | .LITERAL 138 | USB_1_DEVICE_DESCR_TABLE: 139 | TD_START_TABLE 1 ; Number of devices 140 | TD_ENTRY USB_DS_ROM, USB_1_D0_DESCR_SIZE, USB_1_D0_DESCR_START, NULL_PTR 141 | .ENDLITERAL 142 | ;---------------------------------------------------------------------- 143 | ;---------------------------------------------------------------------- 144 | ; Device Descriptor (USB_1_D0) 145 | ; This marks the beginning of the Device Descriptor. This descriptor 146 | ; concatenates all of the descriptors in the following format: 147 | ; Device Descriptor 148 | ; Configuration Descriptor (1) 149 | ; Interface 1 Descriptor 150 | ; HID Descriptor 1 151 | ; Endpoint Descriptor(s) 152 | ; Interface 2 Descriptor 153 | ; HID Descriptor 2 154 | ; Endpoint Descriptor(s) 155 | ; Configuration Descriptor (2) 156 | ; Interface/HID/Endpoint... 157 | ;---------------------------------------------------------------------- 158 | AREA lit (ROM,REL,CON) 159 | .LITERAL 160 | USB_1_D0_DESCR_START: ; 161 | DB 18 ; Device Descriptor Length (18) 162 | DB 1 ; bDescriptorType: DEVICE 163 | DWL 0200H ; bcdUSB (ver 2.0) 164 | DB 0 ; bDeviceClass 165 | DB 0 ; bDeviceSubClass 166 | DB 0 ; bDeviceProtocol 167 | DB 8 ; bMaxPacketSize0 168 | DWL 1337H ; idVendor 169 | DWL 1337H ; idProduct 170 | DWL 0000H ; bcdDevice 171 | DB STR_HASH_0 ; iManufacturer 172 | DB STR_HASH_0 ; iProduct 173 | DB STR_HASH_0 ; iSerialNumber 174 | DB 1 ; bNumConfigurations 175 | USB_1_D0_DESCR_END: ; 176 | USB_1_D0_DESCR_SIZE: EQU USB_1_D0_DESCR_END - USB_1_D0_DESCR_START 177 | 178 | ;---------------------------------------------------------------------- 179 | ; Configuration Descriptor (USB_1_D0_C1) 180 | ; This marks the beginning of the Configuration Descriptor. This descriptor 181 | ; concatenates all of the descriptors in the following format: 182 | ; Configuration Descriptor 183 | ; Interface 1 Descriptor 184 | ; HID Descriptor 1 185 | ; Endpoint Descriptor(s) 186 | ; Interface 2 Descriptor 187 | ; HID Descriptor 2 188 | ; Endpoint Descriptor(s) 189 | ;---------------------------------------------------------------------- 190 | USB_1_D0_C1_DESCR_START: ; 191 | DB 9 ; Configuration Descriptor Length (9) 192 | DB 2 ; bDescriptorType: CONFIGURATION 193 | DWL USB_1_D0_C1_DESCR_SIZE ; wTotalLength 194 | DB 1 ; bNumInterfaces 195 | DB 1 ; bConfigurationValue 196 | DB STR_HASH_0 ; iConfiguration 197 | DB 80H | (0 << 6) | (0 << 5) ; bmAttributes > 198 | DB 50 ; bMaxPower 199 | ;---------------------------------------------------------------------- 200 | ; Interface Descriptor (USB_1_D0_C1_I0) 201 | ;---------------------------------------------------------------------- 202 | DB 9 ; Interface Descriptor Length (9) 203 | DB 4 ; bDescriptorType: INTERFACE 204 | DB 0 ; bInterfaceNumber (zero based) 205 | DB 0 ; bAlternateSetting 206 | DB 1 ; bNumEndpoints 207 | DB 0 ; bInterfaceClass 208 | DB 0 ; bInterfaceSubClass 209 | DB 0 ; bInterfaceProtocol 210 | DB STR_HASH_0 ; iInterface 211 | ;---------------------------------------------------------------------- 212 | ; Endpoint Descriptor (USB_1_D0_C1_I0_E0) 213 | ;---------------------------------------------------------------------- 214 | DB 7 ; Endpoint Descriptor Length (7) 215 | DB 5 ; bDescriptorType: ENDPOINT 216 | DB (EP1 | USB_DIR_IN) ; bEndpointAddress 217 | DB 3 ; bmAttributes 218 | DWL 8 ; wMaxPacketSize 219 | DB 10 ; bInterval 220 | ;---------------------------------------------------------------------- 221 | USB_1_D0_C1_DESCR_END: 222 | USB_1_D0_C1_DESCR_SIZE: EQU (USB_1_D0_C1_DESCR_END - USB_1_D0_C1_DESCR_START) 223 | .ENDLITERAL 224 | ;---------------------------------------------------------------------- 225 | ; USB String Descriptors 226 | ; 227 | ; No string descriptors were entered into the string descriptor 228 | ; section of the USB Setup wizard. 229 | ;---------------------------------------------------------------------- 230 | STR_HASH_0: EQU 0 ; String Hash for the null string 231 | 232 | ;----------------------------------------------- 233 | ; End of Descriptors 234 | ;----------------------------------------------- 235 | 236 | ENDIF 237 | ;--------------------------------------------------- 238 | ;@PSoC_UserCode_BODY_2@ (Do not change this line.) 239 | ;--------------------------------------------------- 240 | ; Redefine your descriptor table below. You might 241 | ; cut and paste code from the WIZARD descriptor 242 | ; above and then make your changes. 243 | ;--------------------------------------------------- 244 | 245 | 246 | ;--------------------------------------------------- 247 | ; Insert your custom code above this banner 248 | ;--------------------------------------------------- 249 | ;@PSoC_UserCode_END@ (Do not change this line.) 250 | 251 | ; End of File USB_1_descr.asm 252 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/obj/usb_std.o: -------------------------------------------------------------------------------- 1 | XH 2 | H 3 areas 47 global symbols 3 | M usb_std.asm 4 | S USB_EndpointStatus Ref0000 5 | S USB_DeviceStatus Ref0000 6 | S USB_GetTableEntry Ref0000 7 | S USB_GETWORD Ref0000 8 | S USB_EP0_UPD_MODE_EXIT Ref0000 9 | S USB_DEVICE_DESCR_TABLE Ref0000 10 | S USB_NoDataStageControlTransfer Ref0000 11 | S USB_USB_EP_BIT_LOOKUP Ref0000 12 | S USB_Configuration Ref0000 13 | S USB_StringTable Ref0000 14 | S USB_InterfaceSetting Ref0000 15 | S USB_EPDataToggle Ref0000 16 | S USB_bCurrentDevice Ref0000 17 | S USB_EndpointAPIStatus Ref0000 18 | S USB_TransferBuffer Ref0000 19 | S USB_fDataPending Ref0000 20 | S USB_t1 Ref0000 21 | S USB_t2 Ref0000 22 | S USB_GET_DEVICE_TABLE_ENTRY Ref0000 23 | A text size 0 flags 0 24 | dbfile lib/usb_std.asm 25 | dbfunc 0 ? 0 I 26 | dbfile ./lib/USB.inc 27 | dbfunc 0 ? 0 I 28 | dbfile lib/usb_std.asm 29 | dbfunc 0 ? 0 I 30 | dbfile ./lib/USB_macros.inc 31 | dbfunc 0 ? 0 I 32 | dbfile lib/usb_std.asm 33 | dbfunc 0 ? 0 I 34 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 35 | dbfunc 0 ? 0 I 36 | A bss size 0 flags 20 37 | A UserModules size 28B flags 0 38 | dbfile lib/usb_std.asm 39 | dbfunc 0 ? 0 I 40 | dbline DB 0 41 | dbline DC 2 42 | dbline DD 4 43 | dbline 103 10 44 | dbline 105 13 45 | dbline 106 16 46 | dbline 108 19 47 | dbline 109 1B 48 | dbline 10A 1D 49 | dbline 13D 1F 50 | dbline 13E 21 51 | dbline 13F 22 52 | dbline 140 24 53 | dbline 142 26 54 | dbline 145 28 55 | dbline 146 2A 56 | dbline 147 2C 57 | dbline 149 2E 58 | dbline 154 30 59 | dbline 155 32 60 | dbline 156 33 61 | dbline 157 35 62 | dbline 158 36 63 | dbline 159 38 64 | dbline 15A 3B 65 | dbline 15C 3D 66 | dbline 15D 3F 67 | dbline 15F 41 68 | dbline 161 42 69 | dbline 162 44 70 | dbline 163 46 71 | dbline 164 47 72 | dbline 165 48 73 | dbline 166 49 74 | dbline 167 4B 75 | dbline 169 4D 76 | dbline 16A 4E 77 | dbline 16D 50 78 | dbline 16E 51 79 | dbline 173 53 80 | dbline 174 56 81 | dbline 175 58 82 | dbline 176 5A 83 | dbline 177 5B 84 | dbline 178 5D 85 | dbline 17A 5F 86 | dbline 17C 61 87 | dbline 182 63 88 | dbline 183 65 89 | dbline 185 67 90 | dbline 186 69 91 | dbline 187 6B 92 | dbline 188 6C 93 | dbline 189 6E 94 | dbline 18B 70 95 | dbline 18D 72 96 | dbline 1BF 7D 97 | dbline 1C0 80 98 | dbline 1C1 82 99 | dbline 1C2 84 100 | dbline 1EC 86 101 | dbline 1EF 88 102 | dbline 1F0 8A 103 | dbline 1F1 8C 104 | dbline 1F2 8F 105 | dbline 21C 91 106 | dbline 21F 93 107 | dbline 220 95 108 | dbline 222 97 109 | dbline 223 99 110 | dbline 225 9B 111 | dbline 228 9D 112 | dbline 229 A0 113 | dbline 22C A2 114 | dbline 22E A4 115 | dbline 25A A6 116 | dbline 25B A9 117 | dbline 25C AB 118 | dbline 25E AD 119 | dbline 287 AF 120 | dbline 288 B1 121 | dbline 289 B4 122 | dbline 28B B6 123 | dbline 28C B8 124 | dbline 28D BA 125 | dbline 28E BC 126 | dbline 28F BE 127 | dbline 290 BF 128 | dbline 291 C1 129 | dbline 294 C3 130 | dbline 296 C6 131 | dbline 297 C9 132 | dbline 29A CB 133 | dbline 29B CD 134 | dbline 29C CF 135 | dbline 29D D0 136 | dbline 29E D2 137 | dbline 29F D5 138 | dbline 2A1 D7 139 | dbline 2A3 D9 140 | dbline 2A4 DA 141 | dbline 2A5 DB 142 | dbline 2A6 DD 143 | dbline 2A7 DF 144 | dbline 2A8 E0 145 | dbline 2A9 E2 146 | dbline 2AA E5 147 | dbline 2AB E6 148 | dbline 2AD E8 149 | dbline 2AE E9 150 | dbline 2AF EB 151 | dbline 2B1 ED 152 | dbline 2B5 EF 153 | dbline 2B7 F1 154 | dbline 2B8 F4 155 | dbline 2B9 F7 156 | dbline 2BA F8 157 | dbline 2BC FA 158 | dbline 2EB 105 159 | dbline 2EC 108 160 | dbline 2EE 10B 161 | dbline 2EF 10E 162 | dbline 2F0 110 163 | dbline 2F2 112 164 | dbline 321 11D 165 | dbline 322 11F 166 | dbline 323 121 167 | dbline 325 123 168 | dbline 327 124 169 | dbline 328 126 170 | dbline 32A 128 171 | dbline 32B 12B 172 | dbline 32C 12D 173 | dbline 32E 12F 174 | dbline 357 131 175 | dbline 358 133 176 | dbline 359 135 177 | dbline 35A 137 178 | dbline 35C 139 179 | dbline 35E 13A 180 | dbline 360 13D 181 | dbline 361 140 182 | dbline 362 142 183 | dbline 364 144 184 | dbline 365 146 185 | dbline 367 148 186 | dbline 394 14A 187 | dbline 395 14C 188 | dbline 396 14E 189 | dbline 398 150 190 | dbline 399 152 191 | dbline 39A 154 192 | dbline 39B 156 193 | dbline 39D 158 194 | dbline 39E 15A 195 | dbline 3A0 15C 196 | dbline 3A1 15D 197 | dbline 3A3 160 198 | dbline 3A4 163 199 | dbline 3A6 165 200 | dbline 3A7 168 201 | dbline 3A9 16A 202 | dbline 3AB 16D 203 | dbline 3D5 16F 204 | dbline 3D6 171 205 | dbline 3D7 173 206 | dbline 3D9 175 207 | dbline 3DA 177 208 | dbline 3DB 179 209 | dbline 3DC 17B 210 | dbline 3DE 17D 211 | dbline 3DF 17F 212 | dbline 3E1 181 213 | dbline 3E3 182 214 | dbline 3E5 185 215 | dbline 3E6 188 216 | dbline 3E8 18A 217 | dbline 3E9 18D 218 | dbline 3EB 18F 219 | dbline 3ED 192 220 | dbline 405 194 221 | dbline 406 196 222 | dbline 407 198 223 | dbline 40B 199 224 | dbline 40C 19A 225 | dbline 40D 19B 226 | dbline 40E 19C 227 | dbline 410 19E 228 | dbline 411 1A0 229 | dbline 412 1A2 230 | dbline 2 1A4 231 | dbline 416 1A7 232 | dbline 2 1A9 233 | dbline 419 1AC 234 | dbline 2 1AE 235 | dbline 41F 1B1 236 | dbline 420 1B2 237 | dbline 421 1B4 238 | dbline 422 1B6 239 | dbline 424 1B8 240 | dbline 425 1B9 241 | dbline 426 1BB 242 | dbline 428 1BD 243 | dbline 429 1C0 244 | dbline 42A 1C3 245 | dbline 42D 1C4 246 | dbline 42E 1C7 247 | dbline 42F 1CA 248 | dbline 445 1CB 249 | dbline 446 1CD 250 | dbline 447 1CF 251 | dbline 448 1D1 252 | dbline 449 1D3 253 | dbline 44A 1D5 254 | dbline 44B 1D7 255 | dbline 44C 1D9 256 | dbline 44D 1DB 257 | dbline 452 1DD 258 | dbline 2 1DF 259 | dbline 3 1E1 260 | dbline 4 1E3 261 | dbline 5 1E4 262 | dbline 7 1E6 263 | dbline 457 1E8 264 | dbline 458 1EA 265 | dbline 459 1EC 266 | dbline 45A 1EE 267 | dbline 45B 1F0 268 | dbline 45C 1F2 269 | dbline 45D 1F4 270 | dbline 45E 1F6 271 | dbline 45F 1F8 272 | dbline 460 1FA 273 | dbline 466 1FC 274 | dbline 2 1FE 275 | dbline 3 200 276 | dbline 4 202 277 | dbline 5 203 278 | dbline 7 205 279 | dbline 46C 207 280 | dbline 46D 209 281 | dbline 46E 20B 282 | dbline 46F 20D 283 | dbline 470 20F 284 | dbline 471 211 285 | dbline 472 213 286 | dbline 473 215 287 | dbline 474 217 288 | dbline 475 219 289 | dbline 476 21B 290 | dbline 47A 21D 291 | dbline 47B 220 292 | dbline 47C 222 293 | dbline 47F 224 294 | dbline 2 226 295 | dbline 3 228 296 | dbline 4 22A 297 | dbline 5 22B 298 | dbline 7 22D 299 | dbline 485 22F 300 | dbline 48A 231 301 | dbline 48B 234 302 | dbline 48C 236 303 | dbline 48F 238 304 | dbline 2 23A 305 | dbline 3 23C 306 | dbline 4 23E 307 | dbline 5 23F 308 | dbline 7 241 309 | dbline 495 243 310 | dbline 49A 245 311 | dbline 49B 248 312 | dbline 49D 24A 313 | dbline 49E 24C 314 | dbline 49F 24E 315 | dbline 4A0 250 316 | dbline 4A1 252 317 | dbline 4A3 254 318 | dbline 4A7 256 319 | dbline 2 258 320 | dbline 3 25A 321 | dbline 4 25C 322 | dbline 5 25D 323 | dbline 7 25F 324 | dbline 4AD 261 325 | dbline 4AE 263 326 | dbline 4AF 265 327 | dbline 4B0 267 328 | dbline 4B5 269 329 | dbline 4B6 26C 330 | dbline 4B8 26E 331 | dbline 4B9 270 332 | dbline 4BA 272 333 | dbline 4BB 274 334 | dbline 4BC 276 335 | dbline 4BE 278 336 | dbline 4C2 27A 337 | dbline 2 27C 338 | dbline 3 27E 339 | dbline 4 280 340 | dbline 5 281 341 | dbline 7 283 342 | dbline 4C6 285 343 | dbline 4C9 288 344 | S USB_DT_h2d_std_ifc_Dispatch Def0231 345 | S USB_DT_d2h_std_ifc_Dispatch Def021D 346 | S USB_DT_h2d_std_dev_Dispatch Def01FC 347 | S USB_DT_d2h_std_dev_Dispatch Def01DD 348 | S USB_CB_d2h_std_ifc_00 Def0105 349 | S USB_CB_h2d_std_ifc_00 Def0000 350 | S USB_CB_d2h_std_ifc_10 Def011D 351 | S USB_CB_d2h_std_ifc_01 Def0000 352 | S USB_CB_d2h_std_ifc_02 Def0000 353 | S USB_CB_d2h_std_ifc_03 Def0000 354 | S USB_CB_d2h_std_ifc_04 Def0000 355 | S USB_CB_d2h_std_ifc_05 Def0000 356 | S USB_CB_d2h_std_ifc_06 Def0000 357 | S USB_CB_d2h_std_ifc_07 Def0000 358 | S USB_CB_d2h_std_ifc_08 Def0000 359 | S USB_CB_d2h_std_ifc_09 Def0000 360 | S USB_CB_d2h_std_dev_00 Def0010 361 | S USB_CB_h2d_std_dev_00 Def0000 362 | S USB_CB_h2d_std_dev_01 Def0086 363 | S USB_CB_d2h_std_dev_01 Def0000 364 | S USB_CB_h2d_std_dev_02 Def0000 365 | S USB_CB_d2h_std_dev_02 Def0000 366 | S USB_CB_h2d_std_dev_03 Def0091 367 | S USB_CB_d2h_std_dev_03 Def0000 368 | S USB_CB_h2d_std_dev_04 Def0000 369 | S USB_CB_d2h_std_dev_04 Def0000 370 | S USB_CB_h2d_std_dev_05 Def00A6 371 | S USB_CB_d2h_std_dev_05 Def0000 372 | S USB_CB_d2h_std_dev_06 Def001F 373 | S USB_CB_h2d_std_dev_06 Def0000 374 | S USB_CB_h2d_std_dev_07 Def0000 375 | S USB_CB_d2h_std_dev_07 Def0000 376 | S USB_CB_d2h_std_dev_08 Def007D 377 | S USB_CB_h2d_std_dev_08 Def0000 378 | S USB_CB_h2d_std_dev_09 Def00AF 379 | S $lb$GetInterfaceStatusTransferDescrTable Def00FC 380 | S $le$GetInterfaceStatusTransferDescrTable Def0105 381 | S USB_Not_Supported Def0000 382 | S $lb$GetConfigTransferDescrTable Def0074 383 | S USB_DT_h2d_std_ep_Dispatch Def0269 384 | S USB_DT_d2h_std_ep_Dispatch Def0245 385 | S $le$GetConfigTransferDescrTable Def007D 386 | S USB_CB_d2h_std_ep_00 Def0131 387 | S USB_CB_h2d_std_ep_00 Def0000 388 | S USB_CB_h2d_std_ep_01 Def014A 389 | S USB_CB_h2d_std_ep_02 Def0000 390 | S USB_CB_h2d_std_ep_03 Def016F 391 | S $lb$GetStatusTransferDescrTable Def0007 392 | S $le$GetStatusTransferDescrTable Def0010 393 | S $lb$GetInterfaceTransferDescrTable Def0114 394 | S $le$GetInterfaceTransferDescrTable Def011D 395 | S _USB_Not_Supported Def0000 396 | T 00 00 50 00 57 03 7D 00 00 00 01 00 02 00 00 397 | R 00 00 00 02 02 07 00 04 02 0D 00 0E 398 | T 00 0D 00 00 DE 55 00 00 00 55 00 01 00 5F 00 00 399 | R 00 00 00 02 03 06 00 11 03 0A 00 0E 03 0E 00 0E 400 | T 00 18 00 00 50 00 07 57 00 07 82 67 5D 53 64 39 401 | R 00 00 00 02 03 02 00 01 41 05 00 02 01 08 00 02 402 | T 00 23 08 DF DB E0 01 8F D7 80 28 80 03 80 34 403 | R 00 00 00 02 404 | T 00 30 90 00 4B 01 02 4B 09 00 55 00 00 405 | R 00 00 00 02 06 02 00 12 00 00 03 0B 00 11 406 | T 00 3A 00 00 90 00 51 407 | R 00 00 00 02 03 02 00 10 06 04 00 03 00 00 408 | T 00 3E 00 00 58 00 01 08 5D 52 53 00 00 18 08 28 409 | R 00 00 00 02 03 02 00 10 03 05 00 10 03 0B 00 11 410 | T 00 49 3A 00 00 D0 04 18 8F B1 18 82 33 5F 00 00 411 | R 00 00 00 02 03 03 00 11 03 0E 00 11 412 | T 00 55 00 00 50 00 00 57 00 00 28 3A 413 | R 00 00 00 02 03 02 00 0C 43 05 00 05 03 08 00 05 414 | T 00 5C 00 00 CF A2 50 00 00 82 23 5D 52 53 00 00 415 | R 00 00 00 02 03 02 00 11 43 07 00 05 03 0E 00 11 416 | T 00 67 50 00 00 57 00 00 28 3A 00 00 CF 91 50 417 | R 00 00 00 02 43 03 00 09 03 06 00 09 03 0A 00 11 418 | T 00 71 00 00 82 12 00 01 00 01 00 00 00 00 DE 55 419 | R 00 00 00 02 43 02 00 09 02 0A 00 08 420 | T 00 7E 00 00 00 50 00 74 57 00 74 82 00 5D 52 39 421 | R 00 00 00 02 03 02 00 11 41 06 00 02 01 09 00 02 422 | T 00 89 01 BF 75 26 00 00 FD 81 F8 5D 52 39 01 A0 423 | R 00 00 00 02 03 06 00 01 424 | T 00 96 07 39 02 A0 08 8F 64 2E 00 00 02 80 03 8F 425 | R 00 00 00 02 03 0A 00 01 426 | T 00 A3 5D 81 E3 55 00 00 01 5D 52 53 00 00 81 DA 427 | R 00 00 00 02 03 06 00 0F 03 0C 00 0E 428 | T 00 AF 90 00 55 00 00 429 | R 00 00 00 02 06 02 00 12 00 00 03 05 00 11 430 | T 00 B3 00 00 90 00 5D 52 53 431 | R 00 00 00 02 03 02 00 10 06 04 00 03 00 00 432 | T 00 B9 00 00 51 00 00 58 00 01 28 3A 433 | R 00 00 00 02 03 02 00 11 03 05 00 10 03 08 00 10 434 | T 00 C0 00 00 CF 3E 5F 00 00 00 00 3C 435 | R 00 00 00 02 03 02 00 11 03 07 00 08 03 09 00 11 436 | T 00 C7 00 00 00 A0 25 51 00 00 58 00 01 75 09 00 437 | R 00 00 00 02 03 02 00 11 03 08 00 10 03 0B 00 10 438 | T 00 D2 55 00 00 00 00 439 | R 00 00 00 02 03 03 00 11 03 05 00 10 440 | T 00 D5 90 00 57 00 75 10 51 00 00 58 441 | R 00 00 00 02 06 02 00 03 00 00 03 09 00 10 442 | T 00 DE 00 01 28 76 00 01 0E 00 00 00 20 90 AC 5B 443 | R 00 00 00 02 03 02 00 10 03 06 00 10 03 09 00 10 444 | T 00 E9 39 02 BF ED 80 0C 57 02 56 00 00 02 63 44 445 | R 00 00 00 02 03 0B 00 0D 446 | T 00 F6 00 79 BF F8 81 8D 00 01 00 02 00 00 00 00 447 | R 00 00 00 02 02 0C 00 0E 448 | T 01 04 DE 55 00 00 00 55 00 01 00 55 00 00 00 50 449 | R 00 00 00 02 03 04 00 0E 03 08 00 0E 03 0C 00 11 450 | T 01 0F 00 FC 57 00 FC 81 72 00 01 00 01 00 00 451 | R 00 00 00 02 41 02 00 02 01 05 00 02 02 0D 00 0E 452 | T 01 1A 00 00 DE 5D 54 39 01 DE DE 5C 52 00 00 53 453 | R 00 00 00 02 03 0D 00 0A 454 | T 01 27 00 00 55 00 00 00 50 01 14 57 455 | R 00 00 00 02 03 02 00 0E 03 05 00 11 41 09 00 02 456 | T 01 2E 01 14 81 55 5D 54 21 7F 39 03 DE C8 5C 55 457 | R 00 00 00 02 01 02 00 02 458 | T 01 3B 00 00 00 55 00 01 00 52 00 00 53 459 | R 00 00 00 02 03 02 00 11 03 06 00 0E 03 0A 00 00 460 | T 01 43 00 00 50 00 07 57 00 07 81 3C 5D 52 39 00 461 | R 00 00 00 02 03 02 00 0E 41 05 00 02 01 08 00 02 462 | T 01 4E BE B1 5D 54 21 7F 39 00 A0 16 39 03 DE A5 463 | R 00 00 00 02 464 | T 01 5C 5C 27 00 00 FE 49 54 80 B0 06 63 44 08 80 465 | R 00 00 00 02 03 04 00 00 466 | T 01 69 04 63 44 0C 81 1A 5D 52 39 00 BE 8C 5D 54 467 | R 00 00 00 02 468 | T 01 77 21 7F 39 00 A0 16 39 03 DE 80 5C 2F 00 00 469 | R 00 00 00 02 03 0E 00 00 470 | T 01 84 01 49 54 80 B0 06 63 44 89 80 04 63 44 8D 471 | R 00 00 00 02 472 | T 01 92 80 F5 39 7F B0 02 7F 08 5B 64 E0 01 80 05 473 | R 00 00 00 02 474 | T 01 A0 80 08 80 0B 43 E1 01 80 09 43 E1 02 80 04 475 | R 00 00 00 02 476 | T 01 AE 43 E1 04 5B F0 00 31 FF 24 00 00 18 21 80 477 | R 00 00 00 02 06 06 00 07 00 00 03 0B 00 0B 478 | T 01 BB B0 08 63 44 08 56 00 00 00 7F 63 44 0C 56 479 | R 00 00 00 02 03 08 00 0D 480 | T 01 C8 00 00 01 7F 8E 44 8E 32 8E 30 8E 2E 8E 2C 481 | R 00 00 00 02 03 02 00 0D 482 | T 01 D5 8E 2A 8E 47 8E 26 8E A1 5D 51 39 09 D0 04 483 | R 00 00 00 02 484 | T 01 E3 64 EF E6 8E 19 8E 17 8E 9B 8E 13 8E A2 8E 485 | R 00 00 00 02 486 | T 01 F1 0F 8E B3 8E 0B 8E 09 8E 07 8E B4 5D 51 39 487 | R 00 00 00 02 488 | T 01 FF 0A D0 04 64 EF E4 8D FA 8E FD 8D F6 8D F4 489 | R 00 00 00 02 490 | T 02 0D 8D F2 8D F0 8D EE 8D EC 8D EA 8D E8 8D E6 491 | R 00 00 00 02 492 | T 02 1B 8F 01 3C 00 00 00 B0 03 8D DD 5D 51 39 0B 493 | R 00 00 00 02 03 05 00 08 494 | T 02 28 D0 04 64 EF DB 8D D2 8D D0 3C 00 00 00 B0 495 | R 00 00 00 02 03 0C 00 08 496 | T 02 35 03 8D C9 5D 51 39 01 D0 04 64 EF EF 8D BE 497 | R 00 00 00 02 498 | T 02 43 8E ED 3C 00 00 00 B0 0D 5D 55 53 00 00 5D 499 | R 00 00 00 02 03 05 00 08 03 0D 00 11 500 | T 02 4F 54 2C 00 00 A0 03 8D AB 5D 51 39 01 D0 04 501 | R 00 00 00 02 03 04 00 11 502 | T 02 5C 64 EF E5 8D A0 8D 9E 8E E6 8D 9A 8F 07 3C 503 | R 00 00 00 02 504 | T 02 6A 00 00 00 B0 0D 5D 55 53 00 00 5D 54 2C 505 | R 00 00 00 02 03 02 00 08 03 0A 00 11 506 | T 02 75 00 00 A0 03 8D 87 5D 51 39 04 D0 04 64 EF 507 | R 00 00 00 02 03 02 00 11 508 | T 02 82 DF 8D 7C 7D 00 00 7D 00 00 509 | R 00 00 00 02 02 06 00 02 02 09 00 06 510 | -------------------------------------------------------------------------------- /PDProject1/PDProject1/lib/obj/usb_drv.o: -------------------------------------------------------------------------------- 1 | XH 2 | H 3 areas 31 global symbols 3 | M usb_drv.asm 4 | S USB_DT_d2h_std_ifc_Dispatch Ref0000 5 | S USB_DT_h2d_std_ifc_Dispatch Ref0000 6 | S USB_DT_d2h_std_dev_Dispatch Ref0000 7 | S USB_DT_h2d_std_dev_Dispatch Ref0000 8 | S USB_DEVICE_LOOKUP Ref0000 9 | S USB_Not_Supported Ref0000 10 | S USB_DT_d2h_std_ep_Dispatch Ref0000 11 | S USB_DT_h2d_std_ep_Dispatch Ref0000 12 | A text size 0 flags 0 13 | dbfile lib/usb_drv.asm 14 | dbfunc 0 ? 0 I 15 | dbfile ./lib/USB.inc 16 | dbfunc 0 ? 0 I 17 | dbfile lib/usb_drv.asm 18 | dbfunc 0 ? 0 I 19 | dbfile ./lib/USB_macros.inc 20 | dbfunc 0 ? 0 I 21 | dbfile lib/usb_drv.asm 22 | dbfunc 0 ? 0 I 23 | dbfile C:/PROGRA~1/Cypress/PSOCDE~1/5.4/Common/CYPRES~1/tools/include/CY7C63~2/m8c.inc 24 | dbfunc 0 ? 0 I 25 | A bss size 22 flags 20 26 | S _USB_Configuration Def0001 27 | S USB_EndpointStatus Def0004 28 | S USB_DeviceStatus Def0002 29 | S _USB_CurrentTD Def0011 30 | S USB_TransferSize Def0012 31 | S USB_TransferType Def0008 32 | S USB_DataSource Def0011 33 | S _USB_EndpointAPIStatus Def001F 34 | S _USB_StatusBlockPtr Def0016 35 | S _USB_DataPtr Def0014 36 | S USB_LastSize Def0007 37 | S _USB_TransferSize Def0012 38 | S _USB_DataSource Def0011 39 | S USB_Configuration Def0001 40 | S USB_InterfaceSetting Def0003 41 | S USB_EPDataToggle Def001A 42 | S USB_CurrentTD Def0011 43 | S USB_bCurrentDevice Def0000 44 | S USB_EndpointAPIStatus Def001F 45 | S USB_TransferBuffer Def0009 46 | S USB_t0 Def001E 47 | S USB_t1 Def001D 48 | S USB_fDataPending Def001B 49 | S USB_StatusBlockPtr Def0016 50 | S USB_t2 Def001C 51 | S USB_DataPtr Def0014 52 | A UserModules size 2A7 flags 0 53 | dbfile lib/usb_drv.asm 54 | dbfunc 0 ? 0 I 55 | dbline AF 0 56 | dbline B0 1 57 | dbline B4 2 58 | dbline B6 4 59 | dbline BA 5 60 | dbline BB 7 61 | dbline BC 9 62 | dbline BE B 63 | dbline C0 D 64 | dbline C2 F 65 | dbline C3 10 66 | dbline C4 12 67 | dbline C5 14 68 | dbline C6 16 69 | dbline C7 18 70 | dbline C9 1A 71 | dbline CF 1C 72 | dbline D0 1E 73 | dbline D1 20 74 | dbline D2 22 75 | dbline D3 24 76 | dbline D4 26 77 | dbline D5 28 78 | dbline D6 2A 79 | dbline D7 2C 80 | dbline D9 2E 81 | dbline DB 30 82 | dbline DC 32 83 | dbline DD 34 84 | dbline DF 36 85 | dbline E0 38 86 | dbline E2 3A 87 | dbline E3 3C 88 | dbline E4 3E 89 | dbline E5 40 90 | dbline E7 42 91 | dbline EC 44 92 | dbline ED 45 93 | dbline EE 46 94 | dbline F8 47 95 | dbline F9 49 96 | dbline FA 4B 97 | dbline FB 4D 98 | dbline FC 4F 99 | dbline FE 51 100 | dbline FF 52 101 | dbline 100 54 102 | dbline 101 56 103 | dbline 102 57 104 | dbline 103 59 105 | dbline 104 5B 106 | dbline 106 5D 107 | dbline 110 5F 108 | dbline 111 61 109 | dbline 112 63 110 | dbline 113 64 111 | dbline 114 65 112 | dbline 115 66 113 | dbline 116 67 114 | dbline 117 69 115 | dbline 118 6A 116 | dbline 119 6C 117 | dbline 11E 6E 118 | dbline 127 71 119 | dbline 12D 73 120 | dbline 12F 75 121 | dbline 131 77 122 | dbline 132 79 123 | dbline 133 7B 124 | dbline 134 7D 125 | dbline 13D 7F 126 | dbline 143 81 127 | dbline 144 83 128 | dbline 146 85 129 | dbline 147 87 130 | dbline 148 89 131 | dbline 149 8B 132 | dbline 153 8D 133 | dbline 154 8F 134 | dbline 155 91 135 | dbline 158 94 136 | dbline 159 96 137 | dbline 15A 98 138 | dbline 15C 9A 139 | dbline 15D 9C 140 | dbline 15E 9E 141 | dbline 160 A0 142 | dbline 162 A2 143 | dbline 163 A4 144 | dbline 164 A6 145 | dbline 166 A8 146 | dbline 167 AB 147 | dbline 169 AE 148 | dbline 16A B1 149 | dbline 175 B3 150 | dbline 181 B5 151 | dbline 182 B7 152 | dbline 183 B9 153 | dbline 184 BC 154 | dbline 185 BE 155 | dbline 186 C0 156 | dbline 187 C3 157 | dbline 188 C5 158 | dbline 189 C7 159 | dbline 194 C9 160 | dbline 196 CB 161 | dbline 198 CE 162 | dbline 199 D0 163 | dbline 19A D2 164 | dbline 1A4 D4 165 | dbline 1A5 D6 166 | dbline 1A6 D8 167 | dbline 1A8 DA 168 | dbline 1AA DC 169 | dbline 1AC DF 170 | dbline 1AE E2 171 | dbline 1AF E4 172 | dbline 1B0 E6 173 | dbline 1BB E8 174 | dbline 1BD EB 175 | dbline 1BF ED 176 | dbline 1C0 EF 177 | dbline 1C2 F1 178 | dbline 1C4 F3 179 | dbline 1C5 F5 180 | dbline 1C6 F7 181 | dbline 1C8 F9 182 | dbline 1C9 FB 183 | dbline 1CA FD 184 | dbline 1CC FF 185 | dbline 1CD 101 186 | dbline 1D0 104 187 | dbline 1D1 106 188 | dbline 1D2 108 189 | dbline 1D4 10B 190 | dbline 1D5 10D 191 | dbline 1D7 110 192 | dbline 1DA 112 193 | dbline 1DB 114 194 | dbline 1DD 116 195 | dbline 1DE 117 196 | dbline 1DF 118 197 | dbline 1E0 11A 198 | dbline 1E2 11C 199 | dbline 1E3 11E 200 | dbline 1E4 120 201 | dbline 1E8 122 202 | dbline 1E9 125 203 | dbline 1EA 127 204 | dbline 1EB 129 205 | dbline 1F6 12B 206 | dbline 1F7 12D 207 | dbline 1F8 12F 208 | dbline 1F9 132 209 | dbline 1FA 134 210 | dbline 1FB 136 211 | dbline 209 138 212 | dbline 20A 13A 213 | dbline 20C 13C 214 | dbline 20D 13F 215 | dbline 210 141 216 | dbline 212 143 217 | dbline 213 145 218 | dbline 214 147 219 | dbline 218 149 220 | dbline 21A 14C 221 | dbline 21B 14E 222 | dbline 21C 150 223 | dbline 225 152 224 | dbline 226 154 225 | dbline 227 156 226 | dbline 228 158 227 | dbline 229 15A 228 | dbline 233 15C 229 | dbline 234 15E 230 | dbline 235 160 231 | dbline 236 163 232 | dbline 237 165 233 | dbline 238 167 234 | dbline 23B 169 235 | dbline 23C 16C 236 | dbline 23F 16E 237 | dbline 240 170 238 | dbline 241 172 239 | dbline 242 174 240 | dbline 246 176 241 | dbline 247 179 242 | dbline 249 17B 243 | dbline 24A 17E 244 | dbline 24C 180 245 | dbline 24D 182 246 | dbline 250 184 247 | dbline 254 186 248 | dbline 255 188 249 | dbline 257 18B 250 | dbline 258 18D 251 | dbline 25A 18F 252 | dbline 25B 192 253 | dbline 25F 194 254 | dbline 260 195 255 | dbline 261 197 256 | dbline 262 199 257 | dbline 263 19B 258 | dbline 265 19E 259 | dbline 267 19F 260 | dbline 268 1A0 261 | dbline 269 1A2 262 | dbline 26A 1A3 263 | dbline 26B 1A4 264 | dbline 26C 1A6 265 | dbline 26D 1A8 266 | dbline 271 1AA 267 | dbline 273 1AC 268 | dbline 274 1AE 269 | dbline 275 1AF 270 | dbline 276 1B0 271 | dbline 277 1B2 272 | dbline 27C 1B4 273 | dbline 27E 1B6 274 | dbline 27F 1B8 275 | dbline 280 1BA 276 | dbline 281 1BC 277 | dbline 284 1BE 278 | dbline 285 1C0 279 | dbline 287 1C3 280 | dbline 288 1C5 281 | dbline 292 1C7 282 | dbline 293 1C8 283 | dbline 2 1CA 284 | dbline 3 1CB 285 | dbline 4 1CD 286 | dbline 5 1CF 287 | dbline 6 1D1 288 | dbline 297 1D2 289 | dbline 298 1D3 290 | dbline 299 1D5 291 | dbline 29A 1D6 292 | dbline 29D 1D8 293 | dbline 29E 1DB 294 | dbline 29F 1DD 295 | dbline 2A0 1DF 296 | dbline 2A1 1E1 297 | dbline 2A3 1E3 298 | dbline 2A4 1E5 299 | dbline 2A5 1E7 300 | dbline 2A7 1E9 301 | dbline 2AA 1EB 302 | dbline 2BF 1ED 303 | dbline 2C0 1EE 304 | dbline 2 1F0 305 | dbline 3 1F2 306 | dbline 2C3 1F4 307 | dbline 2C4 1F5 308 | dbline 2C5 1F7 309 | dbline 2C6 1F8 310 | dbline 2C7 1FA 311 | dbline 2DD 1FB 312 | dbline 2DE 1FC 313 | dbline 2DF 1FD 314 | dbline 2E0 1FF 315 | dbline 2E1 200 316 | dbline 2E2 201 317 | dbline 2E7 203 318 | dbline 2E8 204 319 | dbline 2E9 205 320 | dbline 2EA 207 321 | dbline 2EB 208 322 | dbline 2EC 209 323 | dbline 2ED 20B 324 | dbline 302 20C 325 | dbline 304 20F 326 | dbline 305 211 327 | dbline 306 213 328 | dbline 307 214 329 | dbline 308 216 330 | dbline 309 218 331 | dbline 30B 21A 332 | dbline 30E 21C 333 | dbline 324 21D 334 | dbline 325 21F 335 | dbline 326 222 336 | dbline 328 224 337 | dbline 329 226 338 | dbline 32A 228 339 | dbline 32B 22A 340 | dbline 32E 22C 341 | dbline 32F 22F 342 | dbline 330 231 343 | dbline 331 233 344 | dbline 349 234 345 | dbline 34A 236 346 | dbline 34B 237 347 | dbline 34C 239 348 | dbline 34E 23B 349 | dbline 34F 23C 350 | dbline 350 23E 351 | dbline 351 240 352 | dbline 352 242 353 | dbline 353 244 354 | dbline 354 246 355 | dbline 356 249 356 | dbline 369 24A 357 | dbline 36A 24C 358 | dbline 36B 24E 359 | dbline 36D 250 360 | dbline 36E 251 361 | dbline 36F 254 362 | dbline 370 257 363 | dbline 372 25A 364 | dbline 3 25B 365 | dbline 3 25D 366 | dbline 3 25F 367 | dbline 5 261 368 | dbline 5 263 369 | dbline 5 265 370 | dbline 5 267 371 | dbline 5 269 372 | dbline 5 26B 373 | dbline 5 26D 374 | dbline 5 26F 375 | dbline 5 271 376 | dbline 5 273 377 | dbline 5 275 378 | dbline 5 277 379 | dbline 5 279 380 | dbline 3 27B 381 | dbline 3 27D 382 | dbline 3 27F 383 | dbline 5 281 384 | dbline 5 283 385 | dbline 5 285 386 | dbline 5 287 387 | dbline 5 289 388 | dbline 5 28B 389 | dbline 5 28D 390 | dbline 5 28F 391 | dbline 5 291 392 | dbline 5 293 393 | dbline 5 295 394 | dbline 5 297 395 | dbline 5 299 396 | dbline 2 29B 397 | dbline 3 29D 398 | dbline 4 29F 399 | dbline 5 2A0 400 | dbline 7 2A2 401 | dbline 3B1 2A4 402 | S USB_LOOKUP Def01ED 403 | S USB_InitNoDataStageControlTransfer Def00C9 404 | S USB_bmRequestType_Dispatch Def029B 405 | S USB_InitControlRead Def008D 406 | S USB_GETBYTE Def0203 407 | S USB_GetTableEntry Def01C7 408 | S USB_GETWORD Def01FB 409 | S USB_EP0_UPD_MODE_EXIT Def001C 410 | S USB_DT_bmRequestType Def025B 411 | S USB_NoDataStageControlTransfer Def00C9 412 | S _USB_EP0_ISR Def0000 413 | S USB_InitControlWrite Def00D4 414 | S USB_mode_read Def0002 415 | S USB_GET_DEVICE_TABLE_ENTRY Def020C 416 | S USB_GET_CONFIG_TABLE_ENTRY Def021D 417 | T 00 00 08 10 5D 44 5C 21 9F 39 91 A0 3D 21 80 B0 418 | R 00 00 00 02 419 | T 00 0E 36 5B 21 70 39 50 A0 5C 39 30 A0 66 80 29 420 | R 00 00 00 02 421 | T 00 1C 53 00 1E 5D 44 21 80 B0 21 51 00 1E 60 41 422 | R 00 00 00 02 01 03 00 01 01 0C 00 01 423 | T 00 28 5D 41 3A 00 1E B0 17 5A 00 1E 5D 44 21 80 424 | R 00 00 00 02 01 05 00 01 01 0A 00 01 425 | T 00 34 B0 0F 51 00 1E 60 44 5D 44 21 0F 3A 00 1E 426 | R 00 00 00 02 01 05 00 01 01 0E 00 01 427 | T 00 40 A0 03 8F ED 20 18 7E 5D 44 60 44 5D 44 21 428 | R 00 00 00 02 429 | T 00 4E 80 BF F4 08 50 02 91 DE 18 5D 41 39 4A A0 430 | R 00 00 00 02 431 | T 00 5C 03 82 46 5D 50 21 E3 08 67 67 67 53 00 1C 432 | R 00 00 00 02 01 0E 00 01 433 | T 00 69 18 2A 00 1C 21 1F 7D 02 9B 5D 44 51 00 08 434 | R 00 00 00 02 01 04 00 01 00 09 00 02 01 0E 00 01 435 | T 00 75 E0 01 82 2C 80 39 80 AF 80 BA 5D 44 51 436 | R 00 00 00 02 437 | T 00 82 00 08 E0 01 82 1E 80 2D 80 5E 80 C6 53 438 | R 00 00 00 02 01 02 00 01 439 | T 00 8E 00 07 91 B9 55 00 08 02 5D 57 3A 00 12 B0 440 | R 00 00 00 02 01 02 00 01 01 07 00 01 01 0D 00 01 441 | T 00 99 07 5D 56 3A 00 13 A0 09 D0 07 53 00 13 5D 442 | R 00 00 00 02 01 06 00 01 01 0D 00 01 443 | T 00 A5 57 53 00 12 55 00 18 00 55 00 19 00 2E 444 | R 00 00 00 02 01 04 00 01 01 07 00 01 01 0B 00 01 445 | T 00 AF 00 1A 01 80 AA 80 A8 51 00 07 04 00 19 0E 446 | R 00 00 00 02 01 02 00 01 01 0A 00 01 01 0D 00 01 447 | T 00 BA 00 18 00 50 01 91 74 55 00 08 00 50 00 57 448 | R 00 00 00 02 01 02 00 01 01 0A 00 01 449 | T 00 C6 03 8F 54 91 7F 55 00 08 06 50 00 57 06 8F 450 | R 00 00 00 02 01 08 00 01 451 | T 00 D3 49 51 00 11 39 00 A1 CB 91 6E 55 00 08 04 452 | R 00 00 00 02 01 04 00 01 01 0D 00 01 453 | T 00 DF 2E 00 1A 01 50 00 57 0B 8F 35 36 00 1A 01 454 | R 00 00 00 02 01 03 00 01 01 0D 00 01 455 | T 00 EB 5D 41 21 0F 11 02 53 00 1C 50 00 3A 00 12 456 | R 00 00 00 02 01 09 00 01 01 0E 00 01 457 | T 00 F7 B0 07 51 00 1C 3A 00 13 A0 06 C0 04 5F 458 | R 00 00 00 02 01 05 00 01 01 08 00 01 459 | T 01 02 00 1C 00 13 51 00 1C 14 460 | R 00 00 00 02 01 02 00 01 01 04 00 01 01 07 00 01 461 | T 01 07 00 13 1E 00 12 00 04 00 19 0E 462 | R 00 00 00 02 01 02 00 01 01 05 00 01 01 09 00 01 463 | T 01 0E 00 18 00 57 00 5E 50 3F 00 15 75 5B 3A 464 | R 00 00 00 02 01 02 00 01 01 0A 00 01 465 | T 01 19 00 1C CF F7 50 00 57 0B 8E FB 55 00 08 00 466 | R 00 00 00 02 01 02 00 01 01 0D 00 01 467 | T 01 25 50 00 57 03 8E F2 50 01 91 05 55 00 08 00 468 | R 00 00 00 02 01 0D 00 01 469 | T 01 32 50 00 57 03 8E E5 50 01 90 F8 3C 00 1B 01 470 | R 00 00 00 02 01 0D 00 01 471 | T 01 3F B0 09 51 00 09 29 80 60 40 80 01 55 00 1B 472 | R 00 00 00 02 01 05 00 01 01 0E 00 01 473 | T 01 4B 00 50 00 57 06 8E CB 50 03 90 DE 50 00 57 474 | R 00 00 00 02 475 | T 01 59 03 8E C1 51 00 07 04 00 19 0E 00 18 00 51 476 | R 00 00 00 02 01 06 00 01 01 09 00 01 01 0C 00 01 477 | T 01 64 00 12 2A 00 13 B0 0E 3C 00 07 08 A0 47 50 478 | R 00 00 00 02 01 02 00 01 01 05 00 01 01 0A 00 01 479 | T 01 6F 00 53 00 07 57 02 8E A7 3C 00 12 00 B0 0A 480 | R 00 00 00 02 01 04 00 01 01 0B 00 01 481 | T 01 7B 3C 00 13 08 D0 05 51 00 13 80 03 50 08 14 482 | R 00 00 00 02 01 03 00 01 01 09 00 01 483 | T 01 87 00 13 1E 00 12 00 53 00 1C 57 00 3C 484 | R 00 00 00 02 01 02 00 01 01 05 00 01 01 09 00 01 485 | T 01 90 00 11 00 B0 17 10 51 00 14 58 00 15 76 486 | R 00 00 00 02 01 02 00 01 01 09 00 01 01 0C 00 01 487 | T 01 9A 00 15 0E 00 14 00 28 20 61 50 75 5B 3A 488 | R 00 00 00 02 01 02 00 01 01 05 00 01 489 | T 01 A5 00 1C CF ED 80 0B 3E 00 15 61 50 75 5B 3A 490 | R 00 00 00 02 01 02 00 01 01 09 00 01 491 | T 01 B1 00 1C CF F7 53 00 07 50 01 22 00 1A A0 03 492 | R 00 00 00 02 01 02 00 01 01 07 00 01 01 0C 00 01 493 | T 01 BC 50 80 2A 00 07 36 00 1A 01 57 0F 8E 56 75 494 | R 00 00 00 02 01 05 00 01 01 08 00 01 495 | T 01 C8 09 00 08 65 00 1C 65 00 1C 65 00 1C 18 4B 496 | R 00 00 00 02 01 06 00 01 01 09 00 01 01 0C 00 01 497 | T 01 D3 02 00 1C 4B 09 00 55 00 1C 00 11 90 26 90 498 | R 00 00 00 02 01 03 00 01 01 09 00 01 01 0B 00 01 499 | T 01 DE 1C 90 1A 90 18 5D 50 21 80 A0 03 8E A3 8E 500 | R 00 00 00 02 501 | T 01 EC E8 75 09 00 65 00 1C 65 00 1C 4B 02 00 1C 502 | R 00 00 00 02 01 07 00 01 01 0A 00 01 01 0E 00 01 503 | T 01 F7 4B 09 00 7F 08 28 3F 00 1C 18 75 09 00 08 504 | R 00 00 00 02 01 09 00 01 505 | T 02 04 28 3F 00 1C 18 75 09 00 7F 5F 00 1C 00 00 506 | R 00 00 00 02 01 04 00 01 01 0C 00 01 01 0E 00 01 507 | T 02 0F 50 00 00 57 00 00 28 3A 00 1C 50 508 | R 00 00 00 02 43 03 00 04 03 06 00 04 01 0A 00 01 509 | T 02 17 00 00 C0 03 9F D1 7F 9F ED 55 00 1C 00 1D 510 | R 00 00 00 02 43 02 00 04 01 0C 00 01 01 0E 00 01 511 | T 02 22 9F D7 5D 52 53 00 1C 51 00 1D 58 00 1E 5F 512 | R 00 00 00 02 01 07 00 01 01 0A 00 01 01 0D 00 01 513 | T 02 2D 00 1C 00 01 7A 00 1C 9F BA 7F 58 514 | R 00 00 00 02 01 02 00 01 01 04 00 01 01 07 00 01 515 | T 02 35 00 17 4B 39 00 A0 0F 4B 54 00 51 00 18 54 516 | R 00 00 00 02 01 02 00 01 01 0D 00 01 517 | T 02 41 01 51 00 19 54 02 55 00 17 00 7F 51 00 17 518 | R 00 00 00 02 01 04 00 01 01 09 00 01 01 0E 00 01 519 | T 02 4C 39 00 A0 0B 4B 56 00 00 55 00 18 00 55 520 | R 00 00 00 02 01 0B 00 01 521 | T 02 58 00 19 00 7F 80 00 522 | R 00 00 00 02 01 02 00 01 06 06 00 03 00 01 523 | T 02 5D 80 00 80 00 80 42 80 40 80 3E 80 3C 80 3A 524 | R 00 00 00 02 06 02 00 01 00 01 06 04 00 07 00 01 525 | T 02 6B 80 38 80 36 80 34 80 32 80 30 80 2E 80 2C 526 | R 00 00 00 02 527 | T 02 79 80 2A 80 00 80 00 528 | R 00 00 00 02 06 04 00 02 00 01 06 06 00 00 00 01 529 | T 02 7F 80 00 80 22 80 20 80 1E 80 1C 80 1A 80 18 530 | R 00 00 00 02 06 02 00 06 00 01 531 | T 02 8D 80 16 80 14 80 12 80 10 80 0E 80 0C 80 0A 532 | R 00 00 00 02 533 | T 02 9B 39 20 D0 04 64 EF BA 80 01 7D 00 00 534 | R 00 00 00 02 02 0C 00 05 535 | --------------------------------------------------------------------------------