Browse Source

Test code and mechanical keyboard design files

master
AlbertoGV 1 year ago
parent
commit
c52385ea38
3 changed files with 78 additions and 0 deletions
  1. BIN
      designFiles/Gerber.zip
  2. BIN
      designFiles/NCDrill.zip
  3. +78
    -0
      main.c

BIN
designFiles/Gerber.zip View File


BIN
designFiles/NCDrill.zip View File


+ 78
- 0
main.c View File

@ -0,0 +1,78 @@
#include <msp430fr6989.h>
char lec=0;
int cont1=0,cont2=0,cont3=0,cont4=0;
void main(void)
{
WDTCTL = WDTPW | WDTHOLD; // stop watchdog timer
PM5CTL0 = 0x0000;// DESACTIVAR EL MODO DE ALTA IMPEDANCIA
/*Confg. de perifericos */
P1SEL0 = 0x00;
P1SEL1 = 0x00; //SELECCIONAMOS FUNCION COMO I/O DIGITAL
P1DIR = 0x01; //P1.0-> SALIDA P1.1-P1.7-> ENTRADAS
P1REN = 0xFE;
P1OUT = 0xFE;
P1IE = 0x7E;
P1IES = 0x00;
P1IFG = 0x00;
P9SEL0 = 0x00;
P9SEL1 = 0x00; //SELECCIONAMOS FUNCION COMO I/O DIGITAL
P9DIR = 0x80; //P9.7-> SALIDA P9.0-P9.6->ENTRADAS
P9REN = 0x7f;
P9OUT = 0x00;
__enable_interrupt(); //también se puede usar _enable_interrupts()
for(;;)
{
}//loop
}//main
//**************Interruptions**************
#if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)
#pragma vector=PORT1_VECTOR
__interrupt void inter_puerto1(void)
#elif defined(__GNUC__)
void __attribute__ ((interrupt(PORT1_VECTOR))) PORT1_ISR (void)
#else
#error Compiler not supported!
#endif
{
lec=P1IFG;
lec &= BIT3;
__delay_cycles(250);
if( P1IFG == BIT3){
cont1++;
P1OUT ^= 0x01;
}
lec &= BIT4;
__delay_cycles(250);
if( P1IFG == BIT4){
cont2++;
P9OUT ^= 0x80;
}
lec &= BIT5;
__delay_cycles(250);
if( P1IFG == BIT5){
cont3++;
P1OUT ^= 0x01;
}
lec &= BIT6;
__delay_cycles(250);
if( P1IFG == BIT6){
cont4++;
P9OUT ^= 0x80;
}
P1IFG=0x00;
}

Loading…
Cancel
Save