megaAVR 0-series

Go To Last Post
236 posts / 0 new

Pages

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

In all e cases:

 

NOTE: Please be advised that this is a change to the document only the product has not been changed.

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Looking at the block diagram, does anyone know what the Bus Matrix is?

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Wild guess: a kind of bus-wide cross-point switch?

 

Jim

Jim Wagner Oregon Research Electronics, Consulting Div. Tangent, OR, USA http://www.orelectronics.net

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

A cross-point switch that arbitrates multi-masters (CPU I-stream, CPU D-stream, either UPDI controller or CRC); it's synchronous as there are cycle impacts due to accesses of specific parts of the unified memory space.

megaAVR 0-series FDS

30. Instruction Set Summary

(page 485)

Note: 

1. Cycle time for data memory accesses assume internal RAM access and are not valid for accesses to the NVM. A minimum of one extra cycle must be added when reading Flash and EEPROM.

2. One extra cycle must be added when accessing lower (64 bytes of) I/O space.

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Re. support by avr-gcc, devices are not supported AFAIK, but core avrxmega3 and custom specs, crt, headers and devicelib should do with v8+.

For the different .rodata offset link with --defsym=__RODATA_PM_OFFSET__=0x4000

avrfreaks does not support Opera. Profile inactive.

Last Edited: Tue. Apr 30, 2019 - 12:10 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

 

Description of Change: 
1) ... Added support for 40-pin PDIP ...

...

Yeah, that's an ATmega4809 in DIP.  I requested (and received!) samples...

 

Edit: It Blinks, using a PICKit4 to upload/debug code.  My SNAP isn't working, though, even with an added 1k pullup on UPDI.

 

Last Edited: Fri. May 17, 2019 - 05:30 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Cool!

Well done and thanks for your post.

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Hmm.  SNAP now working, too.   I don't know if that's because I restarted MPLAB, or had it plugged in wrong, or what...

 

Breakpoints are a little messed up.  MPLAB claims that there is only a single HW breakpoint (the datasheet says 2.)  And it doesn't seem to "re-arm" the breakpoint, so it'll get hit once after a reset, but not if it's in a loop that is continued thereafter.  (Hmm.  This may be a code optimization problem of some kind?)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

The tools claim one of the HW breakpoints for their own use, leaving only one for you.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

That was my guess, but it specifically claims that with only 1 breakpoint, it can't do the things that I thought it would be considering "its own use."

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

The mega4809 is coming in Nano format...

 

https://hackaday.com/2019/05/19/...

 

#1 This forum helps those that help themselves

#2 All grounds are not created equal

#3 How have you proved that your chip is running at xxMHz?

#4 "If you think you need floating point to solve the problem then you don't understand the problem. If you really do need floating point then you have a problem you do not understand." - Heater's ex-boss

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 1

Brian Fairchild wrote:

The mega4809 is coming in Nano format...

 

https://hackaday.com/2019/05/19/...

 

Already came... without any Ardino fancy digitalWrite() but with integrated debugger on board

 

https://www.microchip.com/DevelopmentTools/ProductDetails/DM320115

 

 

Attachment(s): 

extronic.pl

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I ordered two nanos; and just ran my first led-binker program using gcc-8.3.  I just connect to my USB port and execute "cp main.hex /media/matt/CURIOSITY" to download.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Yup, the Curiosity nano is pretty good, and, importantly, cheap, but lacks the marketing hype of Arduino.

 

Apparently the mega32U4 has definitelly been abandoned as interface and replaced by a SAMD11 in this new Arduino nano. The Curiosity nano has a SAMD21. So they seem pretty much the same thing with different branding.

 

edit: Well, the Microchip version has debugging and that's a big plus.

Last Edited: Tue. May 21, 2019 - 04:04 PM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

new arrivals at Mouser :

ATmega1608 8-bit Microcontroller - Microchip Technology | Mouser (most are in stock, SSOP ETA 15-Jul'19)

ATmega1609 8-bit Microcontroller - Microchip Technology | Mouser (QFP in stock, QFN ETA is 28-Oct'19)

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

El Tangas wrote:
edit: Well, the Microchip version has debugging and that's a big plus.
two instances of mEDBG in UNOWiFiREV2V4.0.sch

 

"Dare to be naïve." - Buckminster Fuller

Last Edited: Wed. May 22, 2019 - 12:25 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

two instances of mEDBG in UNOWiFiREV2V4.0.sch

Yes, that's the relatively new over-equipped $45 Uno-format board.   The very newly announced Nano-format board doesn't have it, AFAIK (it uses a SAMD11 as USB/Serial.  So... Maybe?  Schematics not released yet, but I didn't think that anyone was fitting debug code in as little as 16k of flash.)

 

(also, One instance: in a new-fangled "modular" schematic, I think.  So it appears once as a module, and once withing the module as a chip.)

 

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

westfw wrote:
Yes, that's the relatively new over-equipped $45 Uno-format board.   The very newly announced Nano-format board doesn't have it, AFAIK (it uses a SAMD11 as USB/Serial.  So... Maybe?  Schematics not released yet, but I didn't think that anyone was fitting debug code in as little as 16k of flash.)

 

Right, mEDBG runs on Mega32U4, while the Curiosity has a SAMD21 that runs nEDBG, which is apparently an upgrade of mEDBG. I doubt it can fit on a SAMD11.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I didn't think that anyone was fitting debug code in as little as 16k of flash

 It would be an interesting coding challenge, though.  I keep hope that the Arduino folk will come up with some sort of "simplified debugging" model that would fit their user base and still be interesting.

It looks like an i386 gdb stub is about 8k, for example...

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

westfw wrote:
I keep hope that the Arduino folk will come up with some sort of "simplified debugging" model that would fit their user base and still be interesting.
EDBG is in the Arduino extension to Microsoft Visual Studio Code.

https://www.avrfreaks.net/forum/megaavr-0-series?page=1#comment-2451106

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

westfw wrote:

 It would be an interesting coding challenge, though.  I keep hope that the Arduino folk will come up with some sort of "simplified debugging" model that would fit their user base and still be interesting.

It looks like an i386 gdb stub is about 8k, for example...

 

It must include USB code, debug code and programming code. Of those, I can say (since I wrote an example of such code) that the UPDI programming module should be about 3Kb on AVR, thumb code for a SAMD should be a bit larger. Not much larger, I expect, since thumb2 has good code density. This is using a simpler, older interface like STK600. The modern EDBG protocol is more complex, so it will take up more space, mostly protocol red tape. I'm, sure GDB is even more complex, because it must be more generic.

I estimate the debug code should be somewhat larger, let's say twice as large (6Kb). Still leaves plenty of room for the USB interface stuff.

So I guess it should be possible to fit a UPDI specialized debugger in 16k if you use a simplified protocol. I think I'd go for STK600, it's supposed to support UPDI.

Last Edited: Sat. May 25, 2019 - 12:02 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

QFN and QFP will be near future arrivals

ATmega808 8-bit Microcontroller - Microchip Technology | Mouser (QFN 7-Aug'19, QFP 2-Sep'19)

ATmega809 8-bit Microcontroller - Microchip Technology | Mouser (QFN 22-Nov'19, QFP 5-Aug'19)

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Product Change Notification - SYST-04FQTS945 - 05 Jul 2019 - ERRATA - megaAVR 0-series Silicon Errata and Data Sheet Clarifications

...

 

Description of Change:

...

2.     New Errata:

a.     PORTMUX: 2.2.1 SPI SS Pin is Connected to Pin Even if SPI is Configured to Have No Port Connection

b.     TCB: 2.6.2 Minimum Event Duration Must Exceed Selected Clock Period

c.     USART: 2.7.1 TXD Pin Override Not Released When Disabling the Transmitter

3.     Erratum for TCA removed: Issuing a restart will clear the direction bit - the data sheet is describing this correctly.

 

Impacts to Data Sheet: None

...

 

Attachment(s):

megaAVR 0-series Silicon Errata and Data Sheet Clarifications

 

...

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

gchapman wrote:
3.     Erratum for TCA removed: Issuing a restart will clear the direction bit - the data sheet is describing this correctly.

 

It's not a bug, it's a feature wink

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I don't think they want to explain this code in the errata, but there is a workaround-

https://www.avrfreaks.net/forum/atmega0-level-1-interrupt-does-not-work

 

Its not tested, but if the only problem is getting a reset vector instead of the level1 vector, then it should work.

The forum user who wanted that code, probably never saw it.

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thanks!

Looks like errata 2.8.1 (CPUINT) is a transient (only errata with 'date code')

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Product Change Notification - SYST-08WWEF257 - 09 Aug 2019 - Data Sheet - megaAVR 0-series Family Data Sheet

...

 

Description of Change: 
1) Entire document chapter: Editorial updates
2) Feature chapter: Added industrial temperature range -40°C to +85°C
3) 2 megaAVR 0-series Overview chapter: megaAVR 0-series Overview. Added ordering code for industrial temperature range in megaAVR Device Designations figure.
4) 5.8 Fuses (FUSE) chapter: Added default fuse values

 

...

 

Attachment(s):

megaAVR 0-series Family Data Sheet

 

...

 

"Dare to be naïve." - Buckminster Fuller

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0


Sometimes I wonder if someone even proof reads these documents. The errata has a copy paste error.

 

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Haha, good one :)

extronic.pl

Pages