X-Git-Url: http://cvs.zerfleddert.de/cgi-bin/gitweb.cgi/ms2-fixes/blobdiff_plain/381027a8110a456607a709f3ee374a8d1b6af35f..62c7d45fd52642c01ef4137988f1b2a3c56600ea:/MS2Debounce/src/de/rmdir/ms2debounce/MS2Debounce.java diff --git a/MS2Debounce/src/de/rmdir/ms2debounce/MS2Debounce.java b/MS2Debounce/src/de/rmdir/ms2debounce/MS2Debounce.java index 5fc4c52..27508fc 100644 --- a/MS2Debounce/src/de/rmdir/ms2debounce/MS2Debounce.java +++ b/MS2Debounce/src/de/rmdir/ms2debounce/MS2Debounce.java @@ -27,6 +27,10 @@ public class MS2Debounce extends Activity private int debounce_delay; private int settle_time; private int poll_time; + private boolean hw_debounce_en; + private int hw_debounce_time; + private boolean drive_inactive_en; + private boolean active_high_en; public MS2Debounce() { @@ -95,6 +99,24 @@ public class MS2Debounce extends Activity } }); + EditText textHwDebounceTime = (EditText)findViewById(R.id.hw_debounce_time); + textHwDebounceTime.addTextChangedListener(new TextWatcher() { + @Override + public void afterTextChanged(Editable hw_debounce_time) { + if (hw_debounce_time.toString().length() > 0) { + module.setSavedHwDebounceTime(Integer.parseInt(hw_debounce_time.toString())); + } + } + + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + } + }); + updateUI(); } @@ -107,13 +129,18 @@ public class MS2Debounce extends Activity debounce_delay = module.getDelay(); settle_time = module.getSettle(); poll_time = module.getPoll(); + hw_debounce_en = module.getHwDebounce(); + hw_debounce_time = module.getHwDebounceTime(); + //drive_inactive_en = module.getDriveInactive(); + active_high_en = module.getActiveHigh(); TextView text = (TextView)findViewById(R.id.text); - text.setText("Current status:\n\nModule loaded: " + loaded + "\n" + + text.setText("Module loaded: " + loaded + "\n" + "debounce_delay: " + debounce_delay + "ms\n" + "settle_time: " + settle_time + "us\n" + - "poll_time: " + poll_time + "us\n" + - "safe_to_load: " + safe_to_load + " (module loaded by this app)"); + "poll_time: " + poll_time + "ms\n" + + "safe_to_load: " + safe_to_load + " (module loaded by this app)\n" + + "hw_debounce: " + (hw_debounce_en?"en":"dis") + "abled, " + ((hw_debounce_time+1)*31) + "us (" + hw_debounce_time + "), active high: " + (active_high_en?"en":"dis") + "abled"); EditText textDelay = (EditText)findViewById(R.id.debounce_delay); textDelay.setText(Integer.toString(module.getSavedDelay())); @@ -127,6 +154,10 @@ public class MS2Debounce extends Activity textPoll.setText(Integer.toString(module.getSavedPoll())); textPoll.setEnabled(true); + EditText textHwDebounceTime = (EditText)findViewById(R.id.hw_debounce_time); + textHwDebounceTime.setText(Integer.toString(module.getSavedHwDebounceTime())); + textHwDebounceTime.setEnabled(true); + Button set = (Button)findViewById(R.id.set); if (loaded) { set.setEnabled(true); @@ -155,6 +186,18 @@ public class MS2Debounce extends Activity } else { on_boot.setEnabled(false); } + + CheckBox hw_debounce = (CheckBox)findViewById(R.id.hw_debounce); + hw_debounce.setChecked(module.getSavedHwDebounce()); + hw_debounce.setEnabled(true); + + //CheckBox drive_inactive = (CheckBox)findViewById(R.id.drive_inactive); + //drive_inactive.setChecked(module.getSavedDriveInactive()); + //drive_inactive.setEnabled(true); + + CheckBox active_high = (CheckBox)findViewById(R.id.active_high); + active_high.setChecked(module.getSavedActiveHigh()); + active_high.setEnabled(true); } private void disableUI() { @@ -167,6 +210,9 @@ public class MS2Debounce extends Activity EditText textPoll = (EditText)findViewById(R.id.poll_time); textPoll.setEnabled(false); + EditText textHwDebounceTime = (EditText)findViewById(R.id.hw_debounce_time); + textHwDebounceTime.setEnabled(false); + Button set = (Button)findViewById(R.id.set); set.setEnabled(false); @@ -178,6 +224,15 @@ public class MS2Debounce extends Activity CheckBox on_boot = (CheckBox)findViewById(R.id.on_boot); on_boot.setEnabled(false); + + CheckBox hw_debounce = (CheckBox)findViewById(R.id.hw_debounce); + hw_debounce.setEnabled(false); + + //CheckBox drive_inactive = (CheckBox)findViewById(R.id.drive_inactive); + //drive_inactive.setEnabled(false); + + CheckBox active_high = (CheckBox)findViewById(R.id.active_high); + active_high.setEnabled(false); } public void loadModule(View view) { @@ -211,6 +266,24 @@ public class MS2Debounce extends Activity module.set_on_boot(on_boot.isChecked()); } + public void toggle_hw_debounce(View view) { + CheckBox hw_debounce = (CheckBox)view; + + module.setSavedHwDebounce(hw_debounce.isChecked()); + } + + //public void toggle_drive_inactive(View view) { + // CheckBox drive_inactive = (CheckBox)view; + + // module.setSavedDriveInactive(drive_inactive.isChecked()); + //} + + public void toggle_active_high(View view) { + CheckBox active_high = (CheckBox)view; + + module.setSavedActiveHigh(active_high.isChecked()); + } + @Override public boolean onCreateOptionsMenu(Menu menu) { MenuInflater inflater = getMenuInflater();