I had problems with my Arduino Mega erasing parts of the flash memory;
sometimes the odd byte, sometimes the odd page.
I changed 3 things to the flashing code to make the problem go away:
1. Checked the SPMCSR:RWWSB bit.
This is a crib from the Atmel example
(29.6.13 Simple Assembly Code Example
A very minor item.
avr8 has bm-set, bm-clear and bm-toggle as assembler words but does
not appear to have bm-test. This is not a big thing as it is easily
defined in forth as
: bm-test ( c a -- c ) c@ and ;
However, I've made myself an assembler version so I have a matching
set. It seems only v
Hello Brian,
thanks for your message!
> ... to the arm based systems where the 'real' work can be
> done.
Well observed imho. I read a book on PIC microcontrollers many
years back, where the authors made a case that if need be,
counted loops (in asm, no matter which way through the if
statements
or
> everything.
>
> brian-in-ohio
>
> On 7/1/20 2:17 AM, Tristan Williams wrote:
> Hello,
>
> > Who of you is using which target controller?
> I use AVR atmega328p, atmega1284p, atmega2560
>
> > Can we get rid of the Atmel/Microchip Avrasm Assembler?
>
you is using which target controller?
I use AVR atmega328p, atmega1284p, atmega2560
Can we get rid of the Atmel/Microchip Avrasm Assembler?
Unless AmForth/avr8 can be ported to gnu assembly, no. I would imagine
that would be a lot of work and wine does run it very well.
Having "fuller"
Hello Peter,
Thank you. I hadn't considered semiconductor relays but will do so
now. Whilst the 2560 does have the extra UARTs, part of the appeal of
the 1284p is that it is still available in a DIP package. For a DAC I
was thinking of an MCP4801/4011/4821 (or the dual 4802) which would
give the o
Hello Tristan,
If you want a flexible multi-purpose board perhaps you want to include a DAC,
and a high resolution ADC. Semiconductor relays for switching loads. It may
also be useful to have extra UARTs, but for this you might prefer to use the
2560 instead of the 1284. If you want to conne
Hello Matthias,
> I use a 1284 occasionally too. Works fine and without problems.
Thank you for this. It persuaded me to look at my hardware
again. Building a board that pays attention to the reference hardware
design seems to have made the difference. It works fine and without
problems for me al
Am Montag, den 08.05.2017, 16:54 +0100 schrieb Tristan Williams:
> Hello Matthias,
>
> Two build questions.
>
> 1)
>
> I have downloaded 2252 and run into this error when building for my
> uno
>
> amforth-6.5A/avr8\drivers/generic-isr.asm(28): error: jz: Unknown
> instruction or macro
Mea cul
Hello Matthias,
Two build questions.
1)
I have downloaded 2252 and run into this error when building for my uno
amforth-6.5A/avr8\drivers/generic-isr.asm(28): error: jz: Unknown instruction
or macro
amforth-6.5A/avr8\drivers/generic-isr.asm(28): error: isr_clean: Unknown
instruction or macro
Müsste es dann nicht c!wd heißen?
Michael
2017-05-07 15:42 GMT+02:00 Matthias Trute :
> Hi Tristan,
>
> I've put your code online, revision 2252 contains the new
> file. There is only one change: I renamed the wd! into !wdc.
> It tells "store to watchdog control" and follows the more
> or less in
Hi Tristan,
I've put your code online, revision 2252 contains the new
file. There is only one change: I renamed the wd! into !wdc.
It tells "store to watchdog control" and follows the more
or less informal convention that ! and @ can be preceeded
with size information and followed by location info
Hello Matthias,
> I'll look at them in the next few days. Since we've just discovered
> some interrupt related bugs so maybe I'll ask you to do some
> tests with the code I will checkin. Is this ok for you?
Absolutely fine.
Tristan
Hi Tristan,
> >
> > It would be a great contribution for the cookbook. Esp if it works
> > with
> > Forth code.
> This made me think that writing 4 or 5 assembler words was not the
> best way. Instead, have one assembler word wd! to perform the timed
> write to WDTCSR and then have forth words fo
Hello Matthias,
> IIRC only the "disable watchdog" sequence is timing critical (the
> 4 cpu cycles you mention). All other tasks can be performed at
> lower speed, so a forth implementation should be fine.
My atmega328p seems to require any change to WDTCSR to be completed
within 4 cycles (I have
Am Donnerstag, den 20.04.2017, 09:04 +0100 schrieb Tristan Williams:
> AVR8 watchdog (reset and interrupt) atmega328p
>
> I wanted to use the 128 kHz watchdog oscillator as an additional
> timer.
The watchdog creates a full reset cycle, that means that the full
startup sequence is performed. Your
AVR8 watchdog (reset and interrupt) atmega328p
I wanted to use the 128 kHz watchdog oscillator as an additional
timer. I saw that AVR8 watchdog timer and reset was addressed on the
mailing list in late 2013 using assembler.frt
In the source tree there is an assembler word -wdt (no-wdt.asm), whi
17 matches
Mail list logo