Description This oral history panel includes members of the engineering team that developed the 8048 (MCS-48), Intel's first dedicated microcontroller (MCU) chip and the 8748 the first MCU with on-board EPROM. This datasheet contains information on products in full production. Specifications within this datasheet are subject to change without notice. Verify with your local Intel sales office that you have the latest datasheet before finalizing a design.
This project uses an Intel 8048 microcontroller to generate a maze and display it on a 240x400 pixel Sharp Memory LCD. The 8048 was released in 1976 as the first microcontroller designed by Intel and one of the first microcontrollers ever (Texas Instruments beat Intel with the TMS1000). The chip I am using has a date code of 1977 and was scavenged from a replacement PCB for a digital typewriter.
The total program size is just 117 bytes, and it uses only 9 bytes of the 8048's RAM (out of 64 bytes) Details. The main purpose of this project was to create a submission for the.
It turns out that 1kB is way more than I needed for this project, so I made it my goal to make this program as small as I possibly could. Hardware At the heart of the project is an Intel 8048 Microcontroller, which has some limitations compared to today's high end microcontrollers, but that should be expected considering it is 40 years old.
It has only 64 bytes of RAM and although its maximum clock speed of 11MHz seems decent, it is divided by 15 internally (I used a 11.0592MHz crystal because I like to live dangerously). Normally, the program for the microcontroller would be stored on the microcontroller's 1kB of ROM, but because it is one-time-programmable, I can't overwrite what is already on it. Instead, I used external EEPROM. The microcontroller will skip the program in the internal ROM and instead access external memory with the help of a 74ls373 latch if the EA pin is pulled high. The maze is displayed on a memory LCD. These types of displays are known for their low power consumption because they do not require the display to constantly be refreshed - not that it matters here with the large amount of power consumed by the microcontroller.
For most modern applications of these displays, a frame buffer is used to store image data before writing to the display, but that would require 240.400/8 = 12,000 bytes of RAM. Instead, the program writes to the LCD as the maze is being generated. The LCD needs a square wave signal to invert the polarity a few times every second.
Instead of using software to do this, I used a 7555 CMOS timer. Software Software was written in assembly using the. A few tricks were used to minimize code size. The algorithm used to generate the maze is the. This algorithm has some limitations such as having a strong diagonal bias and having straight lines along at least two edges, but it is relatively easy to implement with a small amount of RAM and code space. Random-ish numbers based on the row and column are generated for each grid square in the maze to determine if that square will have an opening downwards to to the right.
The formula used is: rr(row + column) ^ row (where rr is the rotate right assembly instruction). The parity of that result is calculated. If it is 0, the square will have an opening to the right. If it is a 1, the square will have an opening on the bottom.
This method isn't perfect, but it works good enough for my purpose. Data is written to the LCD one line at a time. Each command to write a line needs to contain the row number, but the row numbers are backwards for some reason (ie 0b10000000 = row 1 and 0b01000000 = row 2). Instead of incrementing the row and then reversing the number, I made it so that my SPI write function writes all data backwards (LSB first). Then I just had to make sure that all other data using that SPI write function is backwards. The time from when power is applied to when the maze is finished being drawn is about 2.5 seconds. The whole program uses only 9 bytes of RAM.
![Datasheet Datasheet](https://pdf-datasheet-datasheet.netdna-ssl.com/pdfhtml/0542/493187/page4.png)
4 bytes are used for the stack, and 5 bytes of general purpose registers are used. By not needing to address any RAM, I saved some program space, but it makes it difficult to keep track of which functions are using which general purpose registers. Therefore, expanding this program would be difficult. The total program size is 117 bytes.
An Intel 8049 microcontroller, as used in a HP3478A multimeter. This chip was manufactured in the second week of 1984. The MCS-48 (µC) series, 's first microcontroller, was originally released in 1976. Its first members were 8048, 8035 and 8748. Initially this family was produced using technology, in the early 1980s it became available in technology.
It was still manufactured into the 1990s to support older designs that still used it. The MCS-48 series has a, with internal or external program and 64–256 bytes of internal (on-chip). The is mapped into its own, separate from programs and data. The 8048 is probably the most prominent member of Intel's MCS-48 family of microcontrollers. Though the MCS-48 series was eventually replaced by the very popular series, even at around year 2000 it remained quite popular, due to its low cost, wide availability, memory-efficient one-byte instruction set, and mature development tools.
Because of this, it is much used in high-volume consumer electronics devices such as TV sets, TV remotes, toys, and other gadgets where cost cutting is essential. Contents.
Variants The 8049 has 2 KB of masked (the 8748 and 8749 had ) that can be replaced with a 4 KB external ROM, as well as 128 of and 27 ports. The µC's block divides the incoming clock into 15 internal phases, thus with its 11 max. Crystal one gets 0.73 (of one-clock ). Some 70% of instructions are single byte/cycle ones, but 30% need two cycles and/or two bytes, so the raw performance would be closer to 0.5 MIPS. The Intel 8748 has on-chip clock oscillator, 2× 8-bit timers, 27× I/O ports, 64 bytes of RAM and 1 KB of EPROM.
A version with 2 KB EPROM and 128 bytes RAM was also available under the 8749 number. Device Internal Memory Remarks 8020 1K × 8 ROM 64 × 8 RAM subset of 8048, 20 pins, only 13 I/O lines 8021 1K × 8 ROM 64 × 8 RAM subset of 8048, 28 pins, 21 I/O lines 8022 2K × 8 ROM 64 × 8 RAM subset of 8048, A/D-converter 8035 none 64 × 8 RAM 8039 none 128 × 8 RAM 8040 none 256 × 8 RAM 8048 1K × 8 ROM 64 × 8 RAM 8049 2K × 8 ROM 128 × 8 RAM 8050 4K x 8 ROM 256 × 8 RAM 8748 1K × 8 EPROM 64 × 8 RAM 8749 2K × 8 EPROM 128 × 8 RAM 87P50 ext. ROM socket 256 × 8 RAM Has piggy-back socket for 2758/2716/2732 EPROM.
8648 1K × 8 OTP EPROM 64 × 8 RAM factory OTP EPROM Device Internal Memory Remarks 8041 1K × 8 ROM 64 × 8 RAM Universal Peripheral Interface (UPI) 8041AH 1K × 8 ROM 128 × 8 RAM UPI 8741A 1K × 8 EPROM 64 × 8 RAM UPI, EPROM version of 8041 8741AH 1K × 8 OTP EPROM 128 × 8 RAM UPI, OTP EPROM version of 8041AH 8042AH 2K × 8 ROM 256 × 8 RAM UPI 8742 2K × 8 EPROM 128 × 8 RAM UPI, EPROM version 8742AH 2K × 8 OTP EPROM 256 × 8 RAM UPI, OTP EPROM version of 8042AH Uses The Tandy/Radio Shack, released in 1979, used the 8021 in its keyboard. The 8021 allowed the Model II to be the first desktop computer system with a separate detachable lightweight keyboard connected with by a single thin flexible wire, and likely the first keyboard to use a dedicated microprocessor, both attributes that would later be copied years later by Apple and IBM. The 8021 processor scans the key matrix, converts switch closures to an 8-bit code and then transmits that code serially to the keyboard interface on the main system. The 8021 will also accept commands to turn indicator LEDs on or off.
This was all done with just four chips, a remarkable feat at the time. The 8021 was also used in the keyboards for the TRS-80 Model 12, 12B, 16, 16B and the Tandy 6000/6000HD. The original used an 8048 as its internal. The replaced the PC's peripheral interface chip at I/O port addresses 60–63 with an 8042 accessible through port addresses 0x60 and 0x64. As well as managing the keyboard interface, the 8042 controlled the gating function for the AT's CPU and could be commanded by software to reset the 80286 (unlike the and later processors, the 80286 had no way of switching from back to except by being reset).
Later PC compatibles integrate the 8042's functions into their devices. The 8048 was used in the, the series, the,. Philips Semiconductors (now ) owned a license to produce this series and developed their MAB8400-family based on this architecture.
These were the first microcontrollers with an integrated -interface and were used in the first ( in the US) (e.g. Another variant, the ROM-less 8035, was used in 's arcade game. Although not being a typical application for a microcontroller, its purpose was to generate the background music of the game. Literature MCS-48. MCS-48 Single Component Microcomputer, Applications Seminar Notebook, 1978, Intel Corporation., 1978, Intel Corporation., Application Note AP-49, January 1979, Intel Corporation. A High-Speed Emulator for Intel MCS-48 Microcomputers, Application Note AP-55A, August 1979, Intel Corporation. Phil Dahm, Stuart Rosenberg: Intel MCS-48 and UPI-41A Microcontrollers, Reliability Report RR-25, December 1979, Intel Corporation.
Microcontroller Handbook, Intel 1984, Order number 210918-002. 8-Bit Embedded Controllers, Intel 1991, Order number 270645-003. UPI-41. UPI-41A User's Manual, Intel 1980, Order number 9800504-02 Rev., October 1993, Order number 231318-006, Intel Corporation. Johan Beaston, Jim Kahn: An 8741A/8041A Digital Cassette Controller, Application Note AP-90, May 1980, Intel Corporation.
See also. External links. at the (archived 17 July 2014).
References. TRS-80 Model II Technical Reference Manual. Tandy 6000/6000HD Service Manual.
Tandy/Radio Shack. 'Section 4: Keyboard', Technical Reference: Personal Computer, Personal Computer Hardware Reference Library (Revised ed.), April 1984. 'Section 1: System Board', Technical Reference: Personal Computer AT, Personal Computer Hardware Reference Library, IBM, September 1985. Retrieved 10 February 2018 – via Synthfool.
Gordon Reid (November 2004). The History Of Roland. Sound On Sound Magazine. Retrieved 29 November 2010. Philips MAB8400-Family.