mvoing edge connector to pxt
This commit is contained in:
		@@ -26,7 +26,31 @@ namespace pxsim {
 | 
				
			|||||||
                BUTTON_EVT_UP: DAL.MICROBIT_BUTTON_EVT_UP,
 | 
					                BUTTON_EVT_UP: DAL.MICROBIT_BUTTON_EVT_UP,
 | 
				
			||||||
                BUTTON_EVT_CLICK: DAL.MICROBIT_BUTTON_EVT_CLICK
 | 
					                BUTTON_EVT_CLICK: DAL.MICROBIT_BUTTON_EVT_CLICK
 | 
				
			||||||
            });
 | 
					            });
 | 
				
			||||||
            this.builtinParts["edgeconnector"] = this.edgeConnectorState = new EdgeConnectorState();
 | 
					            this.builtinParts["edgeconnector"] = this.edgeConnectorState = new EdgeConnectorState({
 | 
				
			||||||
 | 
					                pins: [
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P0,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P1,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P2,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P3,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P4,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P5,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P6,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P7,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P8,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P9,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P10,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P11,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P12,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P13,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P14,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P15,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P16,
 | 
				
			||||||
 | 
					                    0,
 | 
				
			||||||
 | 
					                    0,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P19,
 | 
				
			||||||
 | 
					                    DAL.MICROBIT_ID_IO_P20                    
 | 
				
			||||||
 | 
					                ]
 | 
				
			||||||
 | 
					            });
 | 
				
			||||||
            this.builtinParts["radio"] = this.radioState = new RadioState(runtime);
 | 
					            this.builtinParts["radio"] = this.radioState = new RadioState(runtime);
 | 
				
			||||||
            this.builtinParts["accelerometer"] = this.accelerometerState = new AccelerometerState(runtime);
 | 
					            this.builtinParts["accelerometer"] = this.accelerometerState = new AccelerometerState(runtime);
 | 
				
			||||||
            this.builtinParts["serial"] = this.serialState = new SerialState();
 | 
					            this.builtinParts["serial"] = this.serialState = new SerialState();
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -24,64 +24,6 @@ namespace pxsim {
 | 
				
			|||||||
    export function getPin(id: number) {
 | 
					    export function getPin(id: number) {
 | 
				
			||||||
        return board().edgeConnectorState.getPin(id);
 | 
					        return board().edgeConnectorState.getPin(id);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					 | 
				
			||||||
    export enum PinFlags {
 | 
					 | 
				
			||||||
        Unused = 0,
 | 
					 | 
				
			||||||
        Digital = 0x0001,
 | 
					 | 
				
			||||||
        Analog = 0x0002,
 | 
					 | 
				
			||||||
        Input = 0x0004,
 | 
					 | 
				
			||||||
        Output = 0x0008,
 | 
					 | 
				
			||||||
        Touch = 0x0010
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class Pin {
 | 
					 | 
				
			||||||
        constructor(public id: number) { }
 | 
					 | 
				
			||||||
        touched = false;
 | 
					 | 
				
			||||||
        value = 0;
 | 
					 | 
				
			||||||
        period = 0;
 | 
					 | 
				
			||||||
        mode = PinFlags.Unused;
 | 
					 | 
				
			||||||
        pitch = false;
 | 
					 | 
				
			||||||
        pull = 0; // PullDown
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        isTouched(): boolean {
 | 
					 | 
				
			||||||
            this.mode = PinFlags.Touch;
 | 
					 | 
				
			||||||
            return this.touched;
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    export class EdgeConnectorState {
 | 
					 | 
				
			||||||
        pins: Pin[];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        constructor() {
 | 
					 | 
				
			||||||
            this.pins = [
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P0),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P1),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P2),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P3),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P4),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P5),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P6),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P7),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P8),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P9),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P10),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P11),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P12),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P13),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P14),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P15),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P16),
 | 
					 | 
				
			||||||
                null,
 | 
					 | 
				
			||||||
                null,
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P19),
 | 
					 | 
				
			||||||
                new Pin(DAL.MICROBIT_ID_IO_P20)
 | 
					 | 
				
			||||||
            ];
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        public getPin(id: number) {
 | 
					 | 
				
			||||||
            return this.pins.filter(p => p && p.id == id)[0] || null
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
namespace pxsim.pins {
 | 
					namespace pxsim.pins {
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user