Author Topic: Can anybody recommend a socketed 8051 dev board?  (Read 5374 times)

0 Members and 1 Guest are viewing this topic.

Offline audiotubesTopic starter

  • Regular Contributor
  • *
  • Posts: 176
  • Country: cz
Can anybody recommend a socketed 8051 dev board?
« on: January 07, 2024, 06:36:33 pm »
I can't order from any place that ships via post, since our Post has gone AWOL for a year now.

It seems surprisingly hard to find a socketed dev board, anything interesting I have found (Silicon Labs for example) has soldered SMD variants and are very expensive (> 125 euros).

I have taken apart more gear than many people. But I have put less gear back together than most people. So there is still room for improvement.
 

Offline up8051

  • Frequent Contributor
  • **
  • Posts: 288
  • Country: pl
 
The following users thanked this post: audiotubes

Offline audiotubesTopic starter

  • Regular Contributor
  • *
  • Posts: 176
  • Country: cz
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #2 on: January 07, 2024, 09:16:20 pm »
Thank you. This is something like what I wanted, but unfortunately with their programmer it's close to 100 euros.

And according to Mikroe it only supports ST 8051s, I'm not sure if that is a problem or not.

Is there a programmer that supports all 8051 variants? Or a board with an onboard programmer that's closer to 50 euros?
I have taken apart more gear than many people. But I have put less gear back together than most people. So there is still room for improvement.
 

Offline up8051

  • Frequent Contributor
  • **
  • Posts: 288
  • Country: pl
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #3 on: January 07, 2024, 09:34:15 pm »
There are many different variants of the 8051 processor family.
Do you want to use something specific?
 
The following users thanked this post: audiotubes

Offline PCB.Wiz

  • Super Contributor
  • ***
  • Posts: 1555
  • Country: au
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #4 on: January 08, 2024, 12:41:36 am »
I can't order from any place that ships via post, since our Post has gone AWOL for a year now.

It seems surprisingly hard to find a socketed dev board, anything interesting I have found (Silicon Labs for example) has soldered SMD variants and are very expensive (> 125 euros).

That's because DIP packages have largely faded. Also, not all DIP40 have the same pinouts. Modern 8051 have Vcc/GND closer, in the SMD parts, so the DIP models (if they exist) derive from that.


You can buy low cost modules with mounted parts, with pin headers, that give you access to smarter, more modern parts :

eg the silabs  BB51-EK2700A   BB52-EK2701A  BB50-EK2702A are about $40, and they include debuggers.

Lower prices, but without Debug included are parts like
https://www.aliexpress.com/item/1005004786538002.html
That gives you a modern bootloader 8051, with pin headers.
Some of these modules have pin headers routed to go into a 8051-ZIF40, as below

There are old 'generic ZIF' modules like this
https://www.aliexpress.com/item/1005004829381553.html
https://www.aliexpress.com/item/1005004638035216.html
but that uses a classic 8051 DIP pinout, so limits your IC choices.  (STC do have a new STC8051H-DIP40 coming, that might fit here, but it's not available yet)


Quote
Is there a programmer that supports all 8051 variants? Or a board with an onboard programmer that's closer to 50 euros?
There is no 'all 8051 variants' as they vary in how they program serially.

See above SiLabs which have onboard Debug, with programmer  ~ $40.

If you do not need 40 pins, Nuvoton have a range of 8051 boards, with debug included ~$25.
https://direct.nuvoton.com/en/nutiny-n76s003at

The STC parts have bootloaders, ( USB or UART )  so you can 'get going' for low budgets.  Debug is a great time saver tho :)

« Last Edit: January 08, 2024, 05:14:22 pm by PCB.Wiz »
 
The following users thanked this post: edavid, audiotubes

Offline PCB.Wiz

  • Super Contributor
  • ***
  • Posts: 1555
  • Country: au
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #5 on: January 08, 2024, 01:42:30 am »
Thank you. This is something like what I wanted, but unfortunately with their programmer it's close to 100 euros.

And according to Mikroe it only supports ST 8051s, I'm not sure if that is a problem or not.
It mentions AT89 in the docs, not ST ?

If you choose a bootloader Atmel AT89xx, you do not need the SPI programmer.
eg AT89LP51RD2/RC2/RB2 series,
 IIRC you just need a 1K pulldown push button on PSEN, to enable the ROM serial bootloader.
 
The following users thanked this post: audiotubes

Offline audiotubesTopic starter

  • Regular Contributor
  • *
  • Posts: 176
  • Country: cz
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #6 on: January 08, 2024, 02:15:43 pm »
Guys, many many thanks for all the help here!

I'm gonna over all you wrote. I don't understand all of it yet. I'll do some searches based on your recommendations.

Yes, AT, not ST, fat finger on my part, thank you.
I have taken apart more gear than many people. But I have put less gear back together than most people. So there is still room for improvement.
 

Offline Whales

  • Super Contributor
  • ***
  • Posts: 1899
  • Country: au
    • Halestrom
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #7 on: January 08, 2024, 04:13:55 pm »
> I'm gonna over all you wrote. I don't understand all of it yet. I'll do some searches based on your recommendations.

What many of us on this forum call an "8051" might be different to what you call an "8051".  The use case and form of 8051's has evolved quite a bit over time.

Are you thinking of something that looks like the original MCS-51?



Most modern microcontrollers that we call 8051-compatibles or 8051-clones do not look like that.  Instead they come in surface mount packages with any amount of pins (I've used some little 8-pin ones).   

XRAM ("external data memory" or "external ram") is now almost always built into the chip.  We still call it XRAM.  Similarly program memory tends to be on-chip flash storage.

Some chips, like USB & memory card interface chips, have a whole 8051 embedded in them because it's cheap and people like to customise how the chips work in their products.  8051 core designs seem to be cheap and plentiful, people chuck them everywhere.

I like playing with 8051s made by STC because my toolchain for them is cheap and simple:

Compiler: SDCC (free and open source, but you can use anything else that generates a hex file)
Programmer software: stcgal (cross platform, free, open source)
Programmer hardware: $3 generic USB UART serial converter.  If you don't have one then you can use an Arduino.

You don't even need a clock source, they have that on-chip.  Just power, a 100n capacitor on power, serial RX, serial TX and you're good to go.
« Last Edit: January 08, 2024, 04:16:28 pm by Whales »
 
The following users thanked this post: audiotubes

Offline Ian.M

  • Super Contributor
  • ***
  • Posts: 12865
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #8 on: January 08, 2024, 04:28:56 pm »
Its worth noting that the obsolete AVR AT90S8515 is pin (but not code) compatible with classic 40 pin DIP '8051' MCUs apart from the polarity of RESET, active high on 8051, active low on AVR. 

This means you can use an Atmel STK500 AVR programmer/development board with the 8051 in socket 'SCKT3000D3', but need some extra circuitry to invert the reset signal (which can be built on a small protoboard connected to its 'ISP6PIN' header to pick up power, ground and /RESET, which you should run through a 74LVC1G04 inverter to generate RESET to inject at the SPROG3 header next to it.  You *must* remove the RESET jumper.)

Unless you've got a legacy COM port, you'll need a USB to DE9(m) serial adaptor to control the STK500 and communicate with the target 8051.  The command line STK500.exe utility (bundled with Atmel Studio 4) can be used to control the STK500 to set target VCC and clock frequency (or plug in a crystal).  Settings are persistent.

The board has all ports broken out to ten pin headers with target VCC and ground, eight buffered active low LEDs and eight active low switches, also on headers.

Obviously it can only be used to program 8051 MCUs with a built-in serial bootloader.

The Atmel STK500 can still be bought new, and can also be found on EBAY. Unfortunately prices are a bit on the high side for a nearly twenty year old development system, so unless you also need the capability to program 'classic' AVRs, it may not be the best choice for 8051 work.
« Last Edit: January 08, 2024, 04:36:53 pm by Ian.M »
 
The following users thanked this post: edavid, Whales, audiotubes

Offline fchk

  • Regular Contributor
  • *
  • Posts: 245
  • Country: de
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #9 on: January 08, 2024, 05:43:05 pm »
Is there a programmer that supports all 8051 variants?

This is impossible. Forget it. Reason: The common denominator is the old Intel 8051/8052 from 1980. These are mask rom parts. There ware romless parts called 8031/8032. Flash was not available at that time. There were UV EPROM variants 8751/8752, which were very expensive.
Over the years the descentants diverged. When Flash storage came each vendor made his own programming interface, so you need a different interface for each vendor.

In commercial appliccations you simply don't use DIP any more. The process of putting a through hole component onto a PCB is 5-10 times higher than with SMD parts. Unless you have simple single-sided FR2 PCBs it is no longer economically viable.

My question is: why do you need a devboard at all for DIP packages. It's very easy to make your own. You need power, clock, maybe memory and io. Easy.
 
The following users thanked this post: audiotubes

Offline PCB.Wiz

  • Super Contributor
  • ***
  • Posts: 1555
  • Country: au
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #10 on: January 08, 2024, 06:03:20 pm »
….

My question is: why do you need a devboard at all for DIP packages. It's very easy to make your own. You need power, clock, maybe memory and io. Easy.
The board I linked to in #4 is sub $3, it hardly makes sense to make your own.
Starting with a known working board saves a shipload of time.

I’d suggest the Op buy a couple of ‘modern’ low cost modules, so they have a good reference as they learn.
 
The following users thanked this post: audiotubes

Offline Maksims

  • Newbie
  • Posts: 5
  • Country: lv
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #11 on: January 09, 2024, 09:03:46 am »
I was playing in resent two years with 8051 MCUs and have collected some information, which, I hope, will be useful to you. I am considering only modern 8051 MCUs, which are 1T cycle per instruction.

First of all about boards and programmers. Board from MIKROE is the only "official" socketed board for 8051, since DIP/PLCC packages are almost phased out. Maybe it is worth to design your own board. Also, you can try Aliexpress, there are some socketed boards for DIP40 8051 MCUs. Programmer from MIKROE supports AT89LP parts from Atmel, but NOT ALL OF THEM. Be careful!!! For myself made a simple SPI programmer.
Now about manufacturers and their products.

  • MAXIM/Analog device. They have DS89C430/450 in DIP40/PLCC44 packages with classic pinout and XRAM intefrace. They have internal bootloader, so programmer is not necessary. Programming is done with UART, very simple additional circuit and a special software, provided by the manufacturer. However, these MCUs are quite old, so they are extremely expensive and power hungry.
  • Silabs. Thea are manufacturing a lot of MCUs with 8051 core. However, most of their MCUs have small SMD packages and are not compatible with classic ones in DIP40/PLCC44 packages. Their newest MCU series are very fast, energy efficient and extremely cheap. Consider EFM8BB50, EFM8BB51 and EFM8BB52 series. They are manufacturing the most advanced MCUs with 8051 core.
  • Atmel/Microchip. They have two main lines: AT89LP51/52 and AT89LP51xx2. All these MCUs are pin to pin compatible with classic ones and have external XRAM interface. However, there are some differences from classic ones, for example, they do not have EA pin. You have to read datasheet carefully. AT89LP51/52 can be programmer only through SPI interface, so they require programmer. AT89LP51xx2 have internal bootloader and can be programmed through UART with ATMEL FLIP software. Consider AT89LP51ED2, since it is the most advanced part. There are two known problems in this MCU (and possibly in the whole AT89LP51xx2 line):
    • Pins P2.2 and P2.3 can be stuck in LOW state, when they are working in quasi-bidirectional mode (default mode for 8051). There are two possible solutions for this issue. Add external pull-up resistors. This solution can be used for both input and output modes. If these pins are used only as outputs, just configure them as push-pull outputs.
    • There is some small issue with SPI. TXE flag is not working, if TBIE bit is not set. Just keep this in mind.
  • Nuvoton. I have no esperience with this manufacturer.
  • STC. Some Chinese manufacturer, you can find them on Aliexpress. again, I have no experience with them.
 
The following users thanked this post: oPossum, audiotubes

Offline IOsetting

  • Regular Contributor
  • *
  • Posts: 56
  • Country: cn
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #12 on: January 09, 2024, 11:26:52 am »
There are quite a lot choices if you want a cheap DIP-40 development board
https://www.aliexpress.us/w/wholesale-avr-51-development-board.html
https://www.aliexpress.us/w/wholesale-stc89c52-development-board.html

For STC variants, STC89, STC90, STC11(1T), STC12(1T) are classic 8051 DIP pinout so any development board support STC89 should work. To program them you only need a USB2TTL dongle.
 
The following users thanked this post: audiotubes

Online Doctorandus_P

  • Super Contributor
  • ***
  • Posts: 3367
  • Country: nl
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #13 on: January 09, 2024, 12:14:20 pm »
Maybe it's time to have a closer look at your basic requirements.

Why 8051? The architecture is thoroughly obsolete. It has also never been a "good" architecture. It has some nasty quircks that make it uncomfortable to do use it for ASM (school courses etc) and while SDCC has come a long way, it still is no GCC.

Why DIP? (And must it be native DIP?)
There are a lot of uC families out there, and although nearly anything is SMT these days, there are quite a lot of cheap development boards in the DIP form factor. These are compatible with breadboards which makes it easy to add some leds, buttons, or other things such as items form the "45 sensor kit". It is also quite easy to design your own PCB (I highly recommend KiCad) and PCB's are cheap to order these days.
 
The following users thanked this post: audiotubes

Offline audiotubesTopic starter

  • Regular Contributor
  • *
  • Posts: 176
  • Country: cz
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #14 on: January 09, 2024, 07:13:58 pm »
Thanks again for all the amazing info and help. I'm very busy with work and other stuff right now and can't get back to this immediately.

I'm reading everything here that you post and chasing down links and products you guys recommended.

Will try to answer your questions but it make take a while.
I have taken apart more gear than many people. But I have put less gear back together than most people. So there is still room for improvement.
 

Offline josip

  • Regular Contributor
  • *
  • Posts: 152
  • Country: hr
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #15 on: January 10, 2024, 11:12:14 am »
I still have some breakout DIP DS89C4x0 boards with integrated USB-UART bridge...

https://www.eevblog.com/forum/buysellwanted/fs-(eu)-ds89c450-breakout-board/

There is internal bootloader, but with loosing some pheriperal resources there is possibility of breakpoint debugging...

https://www.analog.com/en/app-notes/using-the-keil-microvision-debugger-with-the-ds89c4x0.html
« Last Edit: January 10, 2024, 11:50:25 am by josip »
 
The following users thanked this post: audiotubes

Offline audiotubesTopic starter

  • Regular Contributor
  • *
  • Posts: 176
  • Country: cz
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #16 on: January 11, 2024, 09:02:51 pm »
There are many different variants of the 8051 processor family.
Do you want to use something specific?

I don't know. This started when I had an idea to make a gift for an older ham (amateur radio operator) who used to be quite handy but has slowed down a lot. I thought a "simple" 8 bit MCU would be plenty enough for my idea. And I saw a video on youtube where somebody set up an 8051 on a breadboard and did a demo and it looked like almost no external parts are needed. The only thing was he used an el-cheapo programmer he got on aliexpress. Our Post is basically dead for the last year, they closed 200 offices including the one near me and fired a thousand people. Whoever is left is not really in a good mood. We haven't gotten mail in over a year. So I need to find something locally, we do have chips but not much in the way of dev boards. I can use Mouser etc. since they use FedEx.

I thought, if I can get a socketed dev board with onboard program/debug, I could get it working on that, and move the chip to one of those predrilled PCBs that's like a breadboard, and send him the device.

I can't order from any place that ships via post, since our Post has gone AWOL for a year now.

It seems surprisingly hard to find a socketed dev board, anything interesting I have found (Silicon Labs for example) has soldered SMD variants and are very expensive (> 125 euros).

You can buy low cost modules with mounted parts, with pin headers, that give you access to smarter, more modern parts :

Quote
Is there a programmer that supports all 8051 variants? Or a board with an onboard programmer that's closer to 50 euros?
There is no 'all 8051 variants' as they vary in how they program serially.

Thanks, ok. I did not know that.

See above SiLabs which have onboard Debug, with programmer  ~ $40.

If you do not need 40 pins, Nuvoton have a range of 8051 boards, with debug included ~$25.
https://direct.nuvoton.com/en/nutiny-n76s003at

The STC parts have bootloaders, ( USB or UART )  so you can 'get going' for low budgets.  Debug is a great time saver tho :)

Thanks for all the links, they look very interesting. Some of the SiLabs boards are on Mouser, I'll check again for these. Unable to find a source inside the EU that stocks Nuvoton.

Thank you. This is something like what I wanted, but unfortunately with their programmer it's close to 100 euros.

And according to Mikroe it only supports ST 8051s, I'm not sure if that is a problem or not.

If you choose a bootloader Atmel AT89xx, you do not need the SPI programmer.
eg AT89LP51RD2/RC2/RB2 series,
 IIRC you just need a 1K pulldown push button on PSEN, to enable the ROM serial bootloader.

Thank you. I'm still totally lost here, how do you program the device?

> I'm gonna over all you wrote. I don't understand all of it yet. I'll do some searches based on your recommendations.

What many of us on this forum call an "8051" might be different to what you call an "8051".  The use case and form of 8051's has evolved quite a bit over time.

Are you thinking of something that looks like the original MCS-51?

Yes, exactly. Until all you guys answered, I had no idea. I was looking for retro but I see there is a lot of progress with this MCU.

I like playing with 8051s made by STC because my toolchain for them is cheap and simple:

Compiler: SDCC (free and open source, but you can use anything else that generates a hex file)
Programmer software: stcgal (cross platform, free, open source)
Programmer hardware: $3 generic USB UART serial converter.  If you don't have one then you can use an Arduino.

You don't even need a clock source, they have that on-chip.  Just power, a 100n capacitor on power, serial RX, serial TX and you're good to go.

I don't like C which was one of the reasons I was thinking of an 8-bit MCU.

I don't understand what's involved in flashing these.


Its worth noting that the obsolete AVR AT90S8515 is pin (but not code) compatible with classic 40 pin DIP '8051' MCUs apart from the polarity of RESET, active high on 8051, active low on AVR. 

This means you can use an Atmel STK500 AVR programmer/development board with the 8051 in socket 'SCKT3000D3', but need some extra circuitry to invert the reset signal (which can be built on a small protoboard connected to its 'ISP6PIN' header to pick up power, ground and /RESET, which you should run through a 74LVC1G04 inverter to generate RESET to inject at the SPROG3 header next to it.  You *must* remove the RESET jumper.)

Unless you've got a legacy COM port, you'll need a USB to DE9(m) serial adaptor to control the STK500 and communicate with the target 8051.  The command line STK500.exe utility (bundled with Atmel Studio 4) can be used to control the STK500 to set target VCC and clock frequency (or plug in a crystal).  Settings are persistent.

The board has all ports broken out to ten pin headers with target VCC and ground, eight buffered active low LEDs and eight active low switches, also on headers.

Obviously it can only be used to program 8051 MCUs with a built-in serial bootloader.

The Atmel STK500 can still be bought new, and can also be found on EBAY. Unfortunately prices are a bit on the high side for a nearly twenty year old development system, so unless you also need the capability to program 'classic' AVRs, it may not be the best choice for 8051 work.

Thanks, this is kinda cool. I have a fanless micro PC with two COM ports which I expect will come in handy when I get started on this project.

Is there a programmer that supports all 8051 variants?

This is impossible. Forget it. Reason: The common denominator is the old Intel 8051/8052 from 1980. These are mask rom parts. There ware romless parts called 8031/8032. Flash was not available at that time. There were UV EPROM variants 8751/8752, which were very expensive.
Over the years the descentants diverged. When Flash storage came each vendor made his own programming interface, so you need a different interface for each vendor.

In commercial appliccations you simply don't use DIP any more. The process of putting a through hole component onto a PCB is 5-10 times higher than with SMD parts. Unless you have simple single-sided FR2 PCBs it is no longer economically viable.

My question is: why do you need a devboard at all for DIP packages. It's very easy to make your own. You need power, clock, maybe memory and io. Easy.

Yes, I understand it is probably simple to make one. But I don't know what's involved in program/debug for a minimal board. I thought a factory dev board would have all the extras that would help me get started.

….

My question is: why do you need a devboard at all for DIP packages. It's very easy to make your own. You need power, clock, maybe memory and io. Easy.
The board I linked to in #4 is sub $3, it hardly makes sense to make your own.
Starting with a known working board saves a shipload of time.

I’d suggest the Op buy a couple of ‘modern’ low cost modules, so they have a good reference as they learn.

Thanks, this makes sense.

I was playing in resent two years with 8051 MCUs and have collected some information, which, I hope, will be useful to you. I am considering only modern 8051 MCUs, which are 1T cycle per instruction.

First of all about boards and programmers. Board from MIKROE is the only "official" socketed board for 8051, since DIP/PLCC packages are almost phased out. Maybe it is worth to design your own board.

How is the quality on Mikroe?

Also, you can try Aliexpress, there are some socketed boards for DIP40 8051 MCUs. Programmer from MIKROE supports AT89LP parts from Atmel, but NOT ALL OF THEM. Be careful!!! For myself made a simple SPI programmer.

I need the least painful entry, since I don't have experience with MCUs. I have written a lot of software, but on much bigger boxes. I guess making a programmer is beyond me for a while.

Thank you for the links.

There are quite a lot choices if you want a cheap DIP-40 development board
https://www.aliexpress.us/w/wholesale-avr-51-development-board.html
https://www.aliexpress.us/w/wholesale-stc89c52-development-board.html

For STC variants, STC89, STC90, STC11(1T), STC12(1T) are classic 8051 DIP pinout so any development board support STC89 should work. To program them you only need a USB2TTL dongle.

Unable to buy from Aliexpress, ebay etc. until we have a post office again :(

Maybe it's time to have a closer look at your basic requirements.

Why 8051? The architecture is thoroughly obsolete. It has also never been a "good" architecture. It has some nasty quircks that make it uncomfortable to do use it for ASM (school courses etc) and while SDCC has come a long way, it still is no GCC.

Why DIP? (And must it be native DIP?)
There are a lot of uC families out there, and although nearly anything is SMT these days, there are quite a lot of cheap development boards in the DIP form factor. These are compatible with breadboards which makes it easy to add some leds, buttons, or other things such as items form the "45 sensor kit". It is also quite easy to design your own PCB (I highly recommend KiCad) and PCB's are cheap to order these days.

Thanks, I did not know it was not a good architecture from the assembly programmer's view. What MCU architectures do you like and would consider the best, of 8 or 16 bit MCUs that still have DIP packages available?

I am not qualified to try to design a PCB, I am getting back into electronics after many years of being away from it, and I am having to relearn almost from the beginning.

I still have some breakout DIP DS89C4x0 boards with integrated USB-UART bridge...

https://www.eevblog.com/forum/buysellwanted/fs-(eu)-ds89c450-breakout-board/

There is internal bootloader, but with loosing some pheriperal resources there is possibility of breakpoint debugging...

https://www.analog.com/en/app-notes/using-the-keil-microvision-debugger-with-the-ds89c4x0.html

This looks quite nice, thank you!

Thank you again to everybody for helping.
I have taken apart more gear than many people. But I have put less gear back together than most people. So there is still room for improvement.
 

Offline Whales

  • Super Contributor
  • ***
  • Posts: 1899
  • Country: au
    • Halestrom
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #17 on: January 11, 2024, 10:06:48 pm »
    It sounds like you would really benefit from a pre-made devboard so that you don't have to assemble or solder anything.  Note that Aliexpress sellers do sometimes offer couriers like DHL for their products (just unfortunately a bit expensive).

    If your goal is to write in assembly then the 8-bit AVR series of microcontrollers is probably a nicer option:

    • The AVR instruction set is a lot more sane than the 8051 instruction set (for a start you don't have 3 types of memory address, only 1)
    • Pre-made popular boards are very easy to get (buy an Arduino Mega or an Arduino Uno)
    • These boards have the programmer built in (just plug a USB cable into the board)
    • The flashing software is free and easy to get (avrdude can be used directly or it's built into the Arduino IDE & atmel studio IDE)
    • There is a lot of support on the web for beginners
    • You can buy DIP versions of the chips, not just surface-mount

    For coding in assembly: you will probably have to use your assembler (avr-gcc) and programmer (avrdude) on the command line, I don't think a nice graphical IDE for AVR assembly exists. 

    For coding in C: use the Arduino IDE, everything is built in and it comes with lots of code examples.
« Last Edit: January 11, 2024, 10:08:48 pm by Whales »
 
The following users thanked this post: audiotubes

Offline PCB.Wiz

  • Super Contributor
  • ***
  • Posts: 1555
  • Country: au
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #18 on: January 11, 2024, 11:11:02 pm »
If you choose a bootloader Atmel AT89xx, you do not need the SPI programmer.
eg AT89LP51RD2/RC2/RB2 series,
 IIRC you just need a 1K pulldown push button on PSEN, to enable the ROM serial bootloader.

Thank you. I'm still totally lost here, how do you program the device?

The modern 8051 parts with inbuilt bootloaders, can be flash-programmed over a serial port, so any USB-UART TTL will work. Some modules I linked include the USB-UART HW.
Usually, some pin is pulled low at RESET exit, to enable the BOOT process.

If you need DIP40 the AT89LP51RD2 etc can program using Microchips FLIP
https://www.microchip.com/en-us/development-tool/flip

The Silabs EFM8BB52 series parts are newer, with better ADC and DAC and more MHz than the Atmel parts, but EFM8 do not come in DIP.  SO16 is the 'largest pitch' part.

I don't like C which was one of the reasons I was thinking of an 8-bit MCU.
What language do you want to use ?

Unable to buy from Aliexpress, ebay etc. until we have a post office again :(
AliExpress have DHL / Fedex shipping options, they are not the default.

Yes, I understand it is probably simple to make one. But I don't know what's involved in program/debug for a minimal board.
I thought a factory dev board would have all the extras that would help me get started.
Yes, the factory dev boards include pgm and debug.

For parts with BOOT loaders included, you can get minimal flash-program working with a USB-UART.
Getting DEBUG is more complex, and usually needs the factory debug bridge. They use a custom 2 wire link.


Some of the SiLabs boards are on Mouser, I'll check again for these. Unable to find a source inside the EU that stocks Nuvoton.
If you are ok with 3V MCUs, the EFM8BB1LCK is lower cost on Mouser.
The EFM8BB52 has wider supply 1.8~5.5V and has a DAC


Unable to find a source inside the EU that stocks Nuvoton.
Digikey stock Nuvoton and I think the Nuvoton stores use a courier company for their $20 shipping.

I need the least painful entry, since I don't have experience with MCUs. I have written a lot of software, but on much bigger boxes. I guess making a programmer is beyond me for a while.
The least painful is to get the vendors modules, as they are known to work and include good DEBUG support, so you can single step, break and register view the target MCU.
Silabs tool chains are all free, and include good debug support.

I am not qualified to try to design a PCB, I am getting back into electronics after many years of being away from it, and I am having to relearn almost from the beginning.
These days pre assembled modules can be very cheap, PCB design is not so necessary.

Another pathway could be to look at the Raspberry Pi PICO - that programs in Python, and has low cost modules. It's not 8 bit, but you do not really care.
« Last Edit: January 11, 2024, 11:33:10 pm by PCB.Wiz »
 
The following users thanked this post: audiotubes

Offline Whales

  • Super Contributor
  • ***
  • Posts: 1899
  • Country: au
    • Halestrom
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #19 on: January 11, 2024, 11:45:58 pm »
If you choose a bootloader Atmel AT89xx, you do not need the SPI programmer.
eg AT89LP51RD2/RC2/RB2 series,
 IIRC you just need a 1K pulldown push button on PSEN, to enable the ROM serial bootloader.

Thank you. I'm still totally lost here, how do you program the device?

The modern 8051 parts with inbuilt bootloaders, can be flash-programmed over a serial port, so any USB-UART TTL will work. Some modules I linked include the USB-UART HW.
Usually, some pin is pulled low at RESET exit, to enable the BOOT process.

A USB uart ("USB serial adapter" or "USB TTL") looks like this:



(Other brands and models are available and most will work.  Just don't buy one that does RS232 as that's 12V signalling.  Arduino's have one of these USB-UART chips built in, which is why they have a USB port on the board.)

You then connect GND, RX and TX to your chip using some jumper wires.  Perhaps also 3.3V or 5V if you're not providing power from elsewhere. (STC chips will accept either voltage).

Next you run the programming tool on your computer.  For STCs it's called "stcgal".  It's a commandline tool, you give it your firmware .hex file (output from your compiler/assembler) and it flashes it to the chip.   EDIT: You also have to reset your chip, either by disconnecting and reconnecting power OR by pulling the reset pin low with a button.

That's it.  The chip self-reboots and is now running your code.

« Last Edit: January 11, 2024, 11:52:32 pm by Whales »
 
The following users thanked this post: audiotubes

Offline audiotubesTopic starter

  • Regular Contributor
  • *
  • Posts: 176
  • Country: cz
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #20 on: January 13, 2024, 08:46:17 pm »
    It sounds like you would really benefit from a pre-made devboard so that you don't have to assemble or solder anything.  Note that Aliexpress sellers do sometimes offer couriers like DHL for their products (just unfortunately a bit expensive).

    If your goal is to write in assembly then the 8-bit AVR series of microcontrollers is probably a nicer option:

    The AVR instruction set is a lot more sane than the 8051 instruction set (for a start you don't have 3 types of memory address, only 1)
    Pre-made popular boards are very easy to get (buy an Arduino Mega or an Arduino Uno)
I'm fine with through-hole soldering, I have zero experience with SMT though.

I was wondering if the Arduino boards were crippled in some way and had to use only C and Arduino libraries. Are these normal boards and just sold with the Arduino name because they're programmable with the Arduino libs or is it something else?

There are plenty of Arduino boards available locally, I just didn't know what to think of them.

These boards have the programmer built in (just plug a USB cable into the board)
The flashing software is free and easy to get (avrdude can be used directly or it's built into the Arduino IDE & atmel studio IDE)
There is a lot of support on the web for beginners[/li][/list]

Well one problem (for me) is that everybody uses C and the Arduino libs. If I look around I see anybody who asks a question about AVR assembly is either ignored or told to use C. I was hoping 8 bit MCUs were still a place where assembly language is acceptable! If the Atmel tools have a decent assembler than that should work perfectly well.

If you choose a bootloader Atmel AT89xx, you do not need the SPI programmer.
eg AT89LP51RD2/RC2/RB2 series,
 IIRC you just need a 1K pulldown push button on PSEN, to enable the ROM serial bootloader.

The modern 8051 parts with inbuilt bootloaders, can be flash-programmed over a serial port, so any USB-UART TTL will work. Some modules I linked include the USB-UART HW.
Usually, some pin is pulled low at RESET exit, to enable the BOOT process.

If you need DIP40 the AT89LP51RD2 etc can program using Microchips FLIP
https://www.microchip.com/en-us/development-tool/flip

The Silabs EFM8BB52 series parts are newer, with better ADC and DAC and more MHz than the Atmel parts, but EFM8 do not come in DIP.  SO16 is the 'largest pitch' part.

Thanks very much, I'm going to check all the links you and others have posted, again.

I don't like C which was one of the reasons I was thinking of an 8-bit MCU.
What language do you want to use ?

I thought assembly would still be the main language in use for 8 bit MCUs. Iy's my preference in general, although assemblers vary a lot and many of them are not very good.

Without looking into it too much, I would guess the vendor toolchains would be a good choice although I saw posts on the net that assembly coders hate the new MPLAB based on them screwing up the assembler or something, not sure.

Unable to buy from Aliexpress, ebay etc. until we have a post office again :(

AliExpress have DHL / Fedex shipping options, they are not the default.

I'm not sure that is true for all destinations. Looking quickly at some of the links posted here, the "normal" carriers are not offered. Could also be due to the items I'm looking at are el-cheapo boards.

Ok, I found one that offers Fedex IE whatever that is. Product is 4 euros, shipping is 60 euros...nah :D

For parts with BOOT loaders included, you can get minimal flash-program working with a USB-UART.
Getting DEBUG is more complex, and usually needs the factory debug bridge. They use a custom 2 wire link.

Thanks, I'm trying to understand all this and I guess I may have to forget about a socketed board (the programmer for the Mikroe board costs 3X the price of the board recommended upthread) and just buy a factory board that has onboard programmer/debug to get started.

Some of the SiLabs boards are on Mouser, I'll check again for these. Unable to find a source inside the EU that stocks Nuvoton.
If you are ok with 3V MCUs, the EFM8BB1LCK is lower cost on Mouser.
The EFM8BB52 has wider supply 1.8~5.5V and has a DAC

I think it should be fine, the only "peripheral" I need for the project I have in mind is a solid state relay.

Unable to find a source inside the EU that stocks Nuvoton.
Digikey stock Nuvoton and I think the Nuvoton stores use a courier company for their $20 shipping.

Thanks, I'm gonna take another search on digikey for the Nuvoton boards that you or somebody else mentioned. I'm pretty sure nothing 8051 was in stock, but I'll check again.

Nuvoton mentions shippers that nobody here knows about. There's a risk (like with lowball DHL) that it goes to our local Post and then into a black hole. I happily pay 19 euros to Welectron to use DHL Express, it gets here the next day, but the low-tier DHL is just German Post. So, I can't use Nuvoton direct. I hope Digikey will have something. If not, Mouser has been great and I'll find something there to get started with.

I need the least painful entry, since I don't have experience with MCUs. I have written a lot of software, but on much bigger boxes. I guess making a programmer is beyond me for a while.

The least painful is to get the vendors modules, as they are known to work and include good DEBUG support, so you can single step, break and register view the target MCU.
Silabs tool chains are all free, and include good debug support.

Thanks, this is good news. The Silabs boards looked very good, is it worth dropping 120 euros on one of their 8051 boards?  Are they worth it over the 20 euro "Arduino" boards mentioned upthread?

For coding in assembly: you will probably have to use your assembler (avr-gcc) and programmer (avrdude) on the command line, I don't think a nice graphical IDE for AVR assembly exists. 

I'm find with command line tools and I don't use IDEs at all, but, graphical debug is just easier to use than Wall of Text debug output. I avoid gnu toolchain except when building Linux apps.

For me it's critical that the vendor has a free toolchain or at least something other than gnu is available for assemble/link/debug.

Part of the problem when you're new is you don't know enough to ask the right questions. So I really appreciate the links, comments, clarifications etc. from everybody who helped.

At this point I'll probably order one each of the el-cheapo 8051 and AVR prepopulated boards that have onboard programmer/debug unless somebody suggest a better idea.

For those boards that have predrilled solder tabs for the expansion pins, how do I know what kind of header sockets/pins I should buy to solder on the board. I don't want to solder directly to the board since at this stage I have no idea what I'm doing with MCUs and will be better off being to swap wires around. For example on this board:



Thanks guys!
I have taken apart more gear than many people. But I have put less gear back together than most people. So there is still room for improvement.
 

Offline adinsen

  • Regular Contributor
  • *
  • Posts: 50
  • Country: dk
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #21 on: January 13, 2024, 09:25:38 pm »
I like the ATMEL 89S51/52's, even though they are going out and are not single cycle like the LP's. But they're still available through my normal channels. I guess I'm nostalgic about the 8051 architecure, DIP40 etc ;D

I prefer to wire wrap my prototypes so I don't need a dev board. Yeah, I'm +50 and still use the same wire wrap tool I got back when I was a teenager  8)

I flash the 89S51 with my XGecu T48 programmer using the SPI interface.

The 89S51's has a problem when programming through the ZIF socket: They're actually 89S52's inside and the programmer need to keep the A12 address line low when flashing them, which unfortunately T48 does not do that. The data sheet doesn't mention that, but that's how they are. I have succeeded programming as 89S51 as an 89S52 ignoring he ID check, but programming through SPI works reliably, so I don't care.

T48 doesn't support the 89LP51/52's yet, and I haven't found a cost effective way to flash them yet. I've been working on getting avrdude/USBasp to do the job, but it's not working reliably and I haven't worked on solving that problem for a few months. I'm still hopeful it should be possible with the standard USBasp firmware. The problem appears to be electrical, but could also be timing...  :-/O
 
The following users thanked this post: audiotubes

Offline retiredfeline

  • Frequent Contributor
  • **
  • Posts: 540
  • Country: au
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #22 on: January 13, 2024, 10:35:53 pm »
The main issue you face is that there is no generic 8051 these days. Well there is the 40+ year old classic 8051 but that was actually a mask ROM device and to use an external EPROM you had to give up I/O pins. Flash program 8051 derivatives came later. And now many derivatives have moved away from the original 8051 pinout. Each manufacturer will have their own toolchain and hardware support.

So what it boils down to is to choose a manufacturer and product line based on their toolchain and hardware support offerings. Then you can learn 8051 programming on that. Newer offerings will feature higher clock rates, less cycles per instruction, etc, and also have additional I/O features and associated special function registers.

I once paid about $15 for a dev board which I wrote up about here: https://hackaday.io/project/170540-adventures-with-a-stc89c52-development-board It uses the STC89 series of 8051 derivatives. Even that series is obsolete, STC having created newer series, but you can still buy the STC89 series online.

Another line I would consider is the CH55x series which can be flashed with a USB port.
 
The following users thanked this post: audiotubes

Offline PCB.Wiz

  • Super Contributor
  • ***
  • Posts: 1555
  • Country: au
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #23 on: January 14, 2024, 01:02:08 am »
I thought assembly would still be the main language in use for 8 bit MCUs. Iy's my preference in general, although assemblers vary a lot and many of them are not very good.
Assembler has faded over time, as the bigger code MCUs have gotten cheaper.
There was a time when 2k code MCUs were much cheaper so assembler was worth the effort.
With new 8051's 8k is about the smallest, and usually that's with a 8k/16k pairing.

Thanks, this is good news. The Silabs boards looked very good, is it worth dropping 120 euros on one of their 8051 boards?  Are they worth it over the 20 euro "Arduino" boards mentioned upthread?
Base Arduino boards do not include DEBUG, so breakpoint single/step are missing. 

There is no need to pick the Silabs 120 euro ones, since they all have DEBUG support, so I'd select these from Mouser EU listings.

BB52-EK2701A   70  In Stock    Price 25,97 €   1.8~5.5V part with DAC, 50 MHz 32 kB flash and 2304 bytes RAM
EFM8BB1LCK      275 In Stock   Price 18,67 €   3V part  25MHz 8 kB Flash, 512 bytes RAM, and 18 GPIO pins.


For me it's critical that the vendor has a free toolchain or at least something other than gnu is available for assemble/link/debug.
Part of the problem when you're new is you don't know enough to ask the right questions. So I really appreciate the links, comments, clarifications etc. from everybody who helped.
SiLabs have free toolchains, and their debugger uses OMF51 debug standard, so that means many third party tools work too.
SDCC is an alternate Assembler/compiler, and you can also download a useful sim (and I see it includes a pascal compiler too)

https://www.rathlev-home.de/mc/mctools-e.html

You can launch SiLabs debugger inside Simplicity Studio, on an external generated OMF51, by manually simply pointing to that OMF51.
The OMF51 should have all source files as full paths, so debug works.

For those boards that have predrilled solder tabs for the expansion pins, how do I know what kind of header sockets/pins I should buy to solder on the board. I don't want to solder directly to the board since at this stage I have no idea what I'm doing with MCUs and will be better off being to swap wires around. For example on this board:
They are standard 0.1", so your only choices are really how long pins and right angle or straight ?  :)

I sometimes use a mix - vertical for signals, and I swap a longer right angle pin in the plastic, for the GND pins, so a scope clip can attach easily.
« Last Edit: January 14, 2024, 02:48:03 am by PCB.Wiz »
 
The following users thanked this post: audiotubes

Offline westfw

  • Super Contributor
  • ***
  • Posts: 4199
  • Country: us
Re: Can anybody recommend a socketed 8051 dev board?
« Reply #24 on: January 14, 2024, 01:49:16 am »
Quote
I was wondering if the Arduino boards were crippled in some way and had to use only C and Arduino libraries.
I was about to ask whether an Arduino might be a better choice.
Arduino boards are generally very simple breakout boards for the microcontroller on them, and are not crippled in any way.  You can develop for them using pretty much any tool set that you want, and for the Arduinos with DIP processors (I guess only the "Uno R3", these days), you can remove the microcontroller chip and put it in a separate board if you want.  (it will require an external crystal, unless you have a hardware device programmer to change the fuses.)
 
The following users thanked this post: audiotubes


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf