I have some experience in 8051 designing.
such as CYGNAL C8051F005, ATMEL 8051.
but, in CYGNAL's 8051, in each model, I have to buy its JTAG.
It is expensive if I'd like to use it.
Which 8051 series is more popular and advantage in function and price?
glenjoy, I think most modern 8051 can be programmed directly through UART.
david753, consider buying something from Atmel or Philips. Both have wide range of 8051 uC, so you can usually find something that fit your needs. But if you need a lot of peripheral and very high speed, then SiLabs (former Cygnal) is the best.
Sorry, I was not aware of the other 8051's aside from Dallas that has a built-in bootloader.
Maybe it is better to post some here of those variants that has so at least I can migrate to them because I am quite not satisfied by the low current I/O ports of the 8051 by Dallas, at least the one with Bootloaders and TTL outputs.
Maybe it is better to post some here of those variants that has so at least I can migrate to them because I am quite not satisfied by the low current I/O ports of the 8051 by Dallas, at least the one with Bootloaders and TTL outputs.
Low-current I/O is the feature of all 8051. This is because port scheme is build around so-called "weak 1" approach, when incoming external 0 will overwrite internal output 1. Therefore, you always have to write 1 to port before reading it - this is a way how bi-directional ports can work without direction register, like TRIS in PIC.
That is why I am wondering with some digital trainers incoporating 8051's, they are interfaced with devices directly say an LED without any buffer, how can an 8051 sink to a load enough current being limited to an amount unlike TTL I/O's.
Btw, what I mean wiht bootloader is that 8051's with bootloader programmed from the production not 8051's that the programmer will be the one who will create a bootloader for it.
Bootloaders that are not incorporated with 8051's during manufacturer sometimes hassles migration due to the start of code is not anymore at 0x0000h and this affects most people starting to program at a certain micro.
Btw, what I mean wiht bootloader is that 8051's with bootloader programmed from the production not 8051's that the programmer will be the one who will create a bootloader for it.
Bootloaders that are not incorporated with 8051's during manufacturer sometimes hassles migration due to the start of code is not anymore at 0x0000h and this affects most people starting to program at a certain micro.
Check datasheet on Atmel uC, let say 89C51RD2 - it has hardware bootloader, which is constant and can't be erased. Unloaded device has start vector pointing to this bootloader, so that user can upload his code and change boot vector to his program (usually, to 0000). But user can any time again get access to this hardware bootloader just by setting some pull-ups on external pins (this is so called "hardware condition" to invoke original bootloader). So, you don't need any software bootloader to program into device before using it. Simple UART connection to PC allows you to program device right after getting it from supplier.