Cleaning up main.c
- main.c is now mostly complete - Required fixes to matrix.c (some are temporary)
This commit is contained in:
parent
c01efa2d53
commit
05c20112e9
@ -24,9 +24,9 @@
|
||||
// AVR Includes
|
||||
|
||||
// Project Includes
|
||||
#include <usb_com.h>
|
||||
#include <scan_loop.h>
|
||||
#include <print.h>
|
||||
#include <scan_loop.h>
|
||||
#include <usb_com.h>
|
||||
|
||||
// Keymaps
|
||||
#include <keymap.h>
|
||||
|
@ -21,6 +21,9 @@
|
||||
|
||||
// ----- Includes -----
|
||||
|
||||
// AVR Includes
|
||||
#include <avr/io.h>
|
||||
|
||||
// Local Includes
|
||||
#include "matrix.h"
|
||||
|
||||
@ -93,9 +96,10 @@ void matrix_pinSetup( uint8_t *matrix )
|
||||
uint8_t ddrF = 0x00;
|
||||
|
||||
// Loop through all the pin assignments, for the initial pin settings
|
||||
int row, col;
|
||||
//int row, col;
|
||||
|
||||
// Rows
|
||||
/*
|
||||
for ( row = 1; row < sizeof(matrix); row++ ) {
|
||||
switch ( matrix[row][col] ) {
|
||||
PIN_CASE(A):
|
||||
@ -136,6 +140,7 @@ void matrix_pinSetup( uint8_t *matrix )
|
||||
continue;
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
||||
// Setting the pins
|
||||
DDRA = ddrA;
|
||||
@ -158,6 +163,7 @@ void matrix_scan( uint8_t *matrix, uint8_t *detectArray )
|
||||
{
|
||||
// Column Scan
|
||||
#if scanMode == scanCol
|
||||
/*
|
||||
uint8_t col = 1;
|
||||
uint8_t row = 1;
|
||||
for ( ; col < sizeof(matrix[1]); col++ ) {
|
||||
@ -176,6 +182,7 @@ void matrix_scan( uint8_t *matrix, uint8_t *detectArray )
|
||||
PIN_TEST_COL(PINF);
|
||||
}
|
||||
}
|
||||
*/
|
||||
#endif
|
||||
|
||||
// Row Scan
|
||||
|
@ -12,6 +12,7 @@
|
||||
#
|
||||
|
||||
set( SCAN_SRCS
|
||||
matrix.c
|
||||
scan_loop.c
|
||||
)
|
||||
|
||||
|
42
main.c
42
main.c
@ -23,18 +23,15 @@
|
||||
|
||||
// AVR Includes
|
||||
#include <avr/io.h>
|
||||
#include <avr/pgmspace.h>
|
||||
#include <avr/interrupt.h>
|
||||
|
||||
// Project Includes
|
||||
//#include "usb_keys.h"
|
||||
#include "scan_loop.h"
|
||||
//#include "layouts.h"
|
||||
//#include "usb_keyboard.h"
|
||||
#include <macro.h>
|
||||
#include <scan_loop.h>
|
||||
#include <usb_com.h>
|
||||
|
||||
#include "usb_keyboard_debug.h"
|
||||
#include "print.h"
|
||||
#include "led.h"
|
||||
#include <led.h>
|
||||
#include <print.h>
|
||||
|
||||
|
||||
|
||||
@ -90,6 +87,7 @@ int main(void)
|
||||
|
||||
// Configuring Pins
|
||||
pinSetup();
|
||||
init_errorLED();
|
||||
|
||||
// Setup USB Module
|
||||
usb_setup();
|
||||
@ -101,24 +99,36 @@ int main(void)
|
||||
TIMSK0 = (1 << TOIE0);
|
||||
|
||||
// Main Detection Loop
|
||||
while ( 1 ) {
|
||||
//scan_loop();
|
||||
|
||||
// Loop should never get here (indicate error)
|
||||
errorLED( 1 );
|
||||
|
||||
// HID Debug Error message
|
||||
erro_print("Detection loop error, this is very bad...bug report!");
|
||||
uint8_t ledTimer = 15; // Enable LED for a short time
|
||||
while ( 1 )
|
||||
{
|
||||
while ( 1 )
|
||||
{
|
||||
// Acquire Key Indices
|
||||
scan_loop();
|
||||
|
||||
// Send keypresses over USB if the ISR has signalled that it's time
|
||||
if ( !sendKeypresses )
|
||||
continue;
|
||||
|
||||
// Run Macros over Key Indices and convert to USB Keys
|
||||
process_macros();
|
||||
|
||||
// Send USB Data
|
||||
usb_send();
|
||||
|
||||
// Clear sendKeypresses Flag
|
||||
sendKeypresses = 0;
|
||||
|
||||
// Indicate Error, if valid
|
||||
errorLED( ledTimer );
|
||||
}
|
||||
|
||||
// Loop should never get here (indicate error)
|
||||
ledTimer = 255;
|
||||
|
||||
// HID Debug Error message
|
||||
erro_print("Detection loop error, this is very bad...bug report!");
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user