Martin Wolker
/
TSCZ_TriggerNiNo
LVTTL HW Trigger with control via virtual Serial over USB. Works well with NUCLEO boards.
Revision 1:26ff6101d6d5, committed 2016-09-27
- Comitter:
- Neolker
- Date:
- Tue Sep 27 12:17:50 2016 +0000
- Parent:
- 0:46a9ecc2d2b8
- Commit message:
- Updated licence and unnecessary comments has been deleted
Changed in this revision
main.cpp | Show annotated file Show diff for this revision Revisions of this file |
mbed.bld | Show annotated file Show diff for this revision Revisions of this file |
diff -r 46a9ecc2d2b8 -r 26ff6101d6d5 main.cpp --- a/main.cpp Fri Jan 22 10:33:36 2016 +0000 +++ b/main.cpp Tue Sep 27 12:17:50 2016 +0000 @@ -1,50 +1,64 @@ /* -* --------------- -* TriggerNiNo 1.0 -* --------------- -* +* ---------------------------- +* TriggerNiNo 1.0 (2016-09-26) +* ---------------------------- * LVTTL HW Trigger with control via virtual Serial over USB. * Works well with NUCLEO-F031K6 and NUCLEO-F411RE. * -* Copyright (C) <2015> Martin Wolker <neolker@gmail.com> +* Copyright (c) 2016, Martin Wolker (neolker@gmail.com) +* All rights reserved. * -* TriggerNiNo is free software: you can redistribute it and/or modify -* it under the terms of the GNU General Public License as published by -* the Free Software Foundation, either version 3 of the License, or -* (at your option) any later version. +* Redistribution and use in source and binary forms, with or without +* modification, are permitted provided that the following conditions are met: +* - Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* - Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* - Neither the name of Martin Wolker nor the +* names of its contributors may be used to endorse or promote products +* derived from this software without specific prior written permission. * -* You should have received a copy of the GNU General Public License -* If not, see <http://www.gnu.org/licenses/>. +* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +* DISCLAIMED. IN NO EVENT SHALL MARTIN WOLKER BE LIABLE FOR ANY +* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES +* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND +* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -#include "mbed.h" //mbed official library. -#define TRIGGER_PULSE_LENGTH_MS 500 //Length of the trigger pulse in ms. +#include "mbed.h" +#define TRIGGER_PULSE_LENGTH_MS 500 -Serial pc(USBTX, USBRX); //Virtual Serial over USB with 9600 baud. -DigitalOut trigger_output_positive(D2); //Declaration of positive trigger output. -DigitalOut trigger_output_negative(D3); //Declaration of negative trigger output. -DigitalOut trigger_indication(LED1); //Declaration of indication LED. +Serial pc(USBTX, USBRX); +DigitalOut trigger_output_positive(D2); +DigitalOut trigger_output_negative(D3); +DigitalOut trigger_indication(LED1); void trigger(void) { - trigger_output_positive =! trigger_output_positive; //Change the state of the positive output. - trigger_output_negative =! trigger_output_negative; //Change the state of the negative output. - trigger_indication =! trigger_indication; //Change the state of the indication LED. + trigger_output_positive =! trigger_output_positive; + trigger_output_negative =! trigger_output_negative; + trigger_indication =! trigger_indication; } void interrupt(void) { - pc.getc(); //Get the character from the buffer and clear. - trigger(); //Trigger ON. - wait_ms(TRIGGER_PULSE_LENGTH_MS); //Waiting when the trigger pulse is ON. - trigger(); //Trigger OFF. + pc.getc(); + trigger(); + wait_ms(TRIGGER_PULSE_LENGTH_MS); + trigger(); } int main(void) { - pc.attach(&interrupt); //Call the interrupt, when any data are received from PC. - trigger_output_positive = 0; //Initial state of positive output in idle state. - trigger_output_negative = 1; //Initial state of negative output in idle state. - trigger_indication = 0; //Initial state of LED in idle state is OFF. - while(1) {} //Infinity loop. + pc.attach(&interrupt); + trigger_output_positive = 0; + trigger_output_negative = 1; + trigger_indication = 0; + while(1) {} } \ No newline at end of file
diff -r 46a9ecc2d2b8 -r 26ff6101d6d5 mbed.bld --- a/mbed.bld Fri Jan 22 10:33:36 2016 +0000 +++ b/mbed.bld Tue Sep 27 12:17:50 2016 +0000 @@ -1,1 +1,1 @@ -http://mbed.org/users/mbed_official/code/mbed/builds/165afa46840b \ No newline at end of file +http://mbed.org/users/mbed_official/code/mbed/builds/abea610beb85 \ No newline at end of file