Will it worth my time to start learning programming for AT89C2051 chips? - Page 1
Forum section: electronics / general

author: technix
author_rank: Super Contributor
timestamp: July 27, 2015, 01:56:40 pm
content: Recently I demolished a few old boards that I no longer find useful and the standard board demolishing hot air gun action (I recycle all chips that I can ID, since some chips will cost me a bit to buy) gave me two AT89C2051-24PI chips (date codes 0147 and 0345). A quick visit to the TL866CS I got both of them wiped. Now with a few old units with me will it worth my while to learn programming them?I have some expertise in programming in general, and some experience with Arduino. I am not interested in tackling assembler (unless absolutely necessary - even in my homebrew kernel for Raspberry Pi and i386 PC the assembler is minimal.)

author: technix
author_rank: Super Contributor
timestamp: July 27, 2015, 03:38:20 pm
content: Quote from: mojo-chan on July 27, 2015, 02:59:56 pmWill it worth my while if my previous experience was AVR, ARM and a little bit PIC?

author: Kleinstein
author_rank: Super Contributor
timestamp: July 27, 2015, 06:58:41 pm
content: I Don't know 8051, but knowing another µC architekture can help a little. Just to use 2 or 3 salvaged old chips it's usually not worth it, unless you are not getting new chips at all.So It really depends on your preference. Even if you programm fully in C - this likely means learning a new compiler/IDE. So give it a try - read a datasheet and maybe install the IDE. If you don't like it don't be ashamed to give up early.

author: andersm
author_rank: Super Contributor
timestamp: July 27, 2015, 07:10:11 pm
content: If nothing else, you will gain a deeper appreciation of how good you have it.

author: chickenHeadKnob
author_rank: Super Contributor
timestamp: July 27, 2015, 08:44:25 pm
content: Quote from: technix on July 27, 2015, 03:38:20 pmThe 8051 is one of the most primitive 8 bit instruction sets going although it does have some nice bit fiddling with itsboolean processor. It really should be directly coded in assembler. Yes there are C compilers available and later extended 8051 XA chips are much better targets for compilers. Those were introduced by Phillips I think but it doesn't mater as they are not what you have in your hands.. Since you know the AVR you should try and find the white paper Atmel released when they first debut the AVR. It explains the instruction set features and addressing modes designed to allow efficient object code generation by C compilers. I can't be arsed to search for it for you. People noticed that 1) Atmel made 8051's , 2) The AVR's register set occupied the same silicon area as an 8051registers or there-abouts and 3) in many ways the AVR is a modernized and rationalized 8051!Only you can answer if you think the time invested will be worth it.cheers

author: westfw
author_rank: Super Contributor
timestamp: July 28, 2015, 05:10:53 am
content: An 8051 without assembly language is probably not very worthwhile.I mean, you can get C compilers for it, or BASIC, but I don't think you'll learn anything beyond what you'd learn programming any other microcontroller in C or BASIC. As others have mentioned, it's still a popular architecture, but most of what is interesting is unique peripherals that aren't present on the 2051 or neat assembler tricks...

author: technix
author_rank: Super Contributor
timestamp: July 28, 2015, 07:51:51 am
content: Quote from: Kleinstein on July 27, 2015, 06:58:41 pmActually besides the two AT89C2051 I also had a STC high speed 8051 chip. I am thinking about expanding my horizon of microcontroller choice though my personal favorite is still AVR for smaller projects and ARM Cortex-A for bigger ones. (Allwinner A31s is pretty good Cortex-A for microcontroller-type tasks)

author: daqq
author_rank: Super Contributor
timestamp: July 28, 2015, 08:20:27 am
content: It is worthwhile to learn to code for an x51 - the core pretty common - mostly because of being cheap - you can find them in various ASICs (for instance in USB keys) doing the house keeping and misc control parts of the task, in cheap integrated form, as HDL blocks...The specific ones you mention however are pretty crappy compared with other (current day) x51 processors - they have very little in terms of peripherals, GPIO, speed...

author: funkathustra
author_rank: Regular Contributor
timestamp: July 30, 2015, 04:04:27 pm
content: I would look at a more modern 8051, especially if you want to actually get something working quickly. The Silicon Labs EFM8 stuff is an example of a fantastic little 8051 MCU with both classic and modern peripherals. They give away full versions of Keil's $2000 C/C++ compiler when you download their free Eclipse-based IDE, Simplicity Studio. The chips start at $0.50 a piece on DigiKey in single quantities, and they have cute little dev boards for $30 each that have a built-in SEGGER J-Link emulator. The Silicon Labs stuff, in general, is highly underrated. I have no idea why I don't see their stuff mentioned more on here.

author: Psi
author_rank: Super Contributor
timestamp: July 31, 2015, 10:00:14 am
content: Short answer: No, not worth it, learn to program a STM32 arm core

author: Bassman59
author_rank: Super Contributor
timestamp: July 31, 2015, 06:10:37 pm
content: Quote from: funkathustra on July 30, 2015, 04:04:27 pmWe use SiLabs micros for pretty much everything. Their tools and devel boards work great, their support and documentation are excellent, and Atmel and NXP should really try to emulate what SiLabs is doing.I only wish that they had an ARM M3 with a High Speed USB device controller.And I'm totally afraid that they'll get bought by someone bigger and screwed.

author: neslekkim
author_rank: Super Contributor
timestamp: July 31, 2015, 08:29:34 pm
content: Quote from: Bassman59 on July 31, 2015, 06:10:37 pmWhat about Leopard Gecko and Giant Gecko?

author: Bassman59
author_rank: Super Contributor
timestamp: July 31, 2015, 11:10:12 pm
content: Quote from: neslekkim on July 31, 2015, 08:29:34 pmNope, Full Speed only.

author: technix
author_rank: Super Contributor
timestamp: August 01, 2015, 04:42:37 am
content: Quote from: mojo-chan on July 31, 2015, 09:43:53 amMy current chip preference is, as I said, AVR for small projects and ARM Cortex-A (with Linux) for bigger ones, and I am trying my hands at 8-bit PIC. PIC32 are too expensive for me (costs about twice as much as Allwinner A13, so if PIC32 is called for I bump the project up to Cortex-A and use that chip.)