Check out detailed specifications here. Note that is only works for modern MCUs, classic 8051 chips and classic-like derivatives like the AT89C5x and STC89C5x series only support quasi-bidirectional modes and lack the port mode registers PxMx
| Port: | Quasi-Bidirectional | Push-Pull | Input | Open-Drain |
|---|---|---|---|---|
| P0.0 | ||||
| P0.1 | ||||
| P0.2 | ||||
| P0.3 | ||||
| P0.4 | ||||
| P0.5 | ||||
| P0.6 | ||||
| P0.7 |
Generated code for SDCC (note Keil does not like bitfields)
Check out detailed specifications here. Note that classic MCS-51 derivatives like the AT89C5x only have two external interrupt (INT0, INT1) sources. The STC89/STC90 series extends this for up to four sources (INT0 to INT3) depending on the model, but that is not portable to other STC chips that have specific flag registers in different places.
| Source | Type |
|---|---|
Generated code for SDCC (note Keil has different IRQ shims)
Check out detailed specifications here. Note that classic MCS-51 derivatives like the AT89C5x can use Timer 1 as variable baud rate generator for the UART, but 8052 derivatives like the STC89C52 also support Timer 2 as baud rate generator.
Target Baudrate: Timer......:
Est. Baudrate..: 9600 Est. Error.: 0.00 %
Generated code for SDCC (note Keil does not like bitfields)
Check out detailed specifications here. Note that Timer 2 is only available on 8052 derivatives, and that classic MCS-51 derivatives have a 12T cycle.
Interval.......: Timer........:
Actual Interval: 199.65 us Mode.........:
Error..........: 0.17 %
Generated code for SDCC (note Keil does not like bitfields)