From 2f83a0bea9da444e3d70569eba3d6847ca02be03 Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Fri, 21 Sep 2018 21:59:17 +0200 Subject: ... --- forth/forth/avr/irqAtmega328.fs | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 forth/forth/avr/irqAtmega328.fs (limited to 'forth/forth/avr/irqAtmega328.fs') diff --git a/forth/forth/avr/irqAtmega328.fs b/forth/forth/avr/irqAtmega328.fs new file mode 100644 index 0000000..2f6a53f --- /dev/null +++ b/forth/forth/avr/irqAtmega328.fs @@ -0,0 +1,42 @@ +\ ********************************************************************* +\ Interrupts example for FlashForth * +\ Filename: irqAtmega328.txt * +\ Date: 10.11.2014 * +\ FF Version: 5.0 * +\ MCU: Atmega328 * +\ Copyright: Mikael Nordman * +\ Author: Mikael Nordman * +\ ********************************************************************* +\ FlashForth is licensed acording to the GNU General Public License* +\ ********************************************************************* +\ Disable interrupt before removing the interrupt code +irqOvf2Dis +-irqOvf2 +marker -irqOvf2 +\ Timer 2 definitions from m328pdef.inc +$b1 constant tccr2b +$70 constant timsk2 +#10 constant ovf2Ivec + +\ Counter for timer overflows +variable counter + +\ The interrupt routine +: t2OverflowIsr + 1 counter +! +;i + +: irqOvf2Init + \ Store the interrupt vector + ['] t2OverflowIsr ovf2Ivec int! + \ Activate counter 2 + 3 tccr2b c! + \ Activate timer2 overflow interrupt + 1 timsk2 mset +; +: irqOvf2Dis + 1 timsk2 mclr +; + +\ irqOvf2Init + -- cgit v1.2.3