51单片机内部的eepROM可以让我们方便地进行编程,通过计算机的串口和特定的软件就可以将程序烧写到单片机内。但是计算机串口和单片机不能直接通信,因为它们的电平定义是不同的:
串口使用的是RS232电平:-12V定义为逻辑1,+12V定义为逻辑0
单片机使用的是TTL电平:+5V定义为逻辑1,0V定义为逻辑0
因此我们需要进行电平转换,我们使用的是专用芯片MAX232,它的引脚定义和内部结构如下:
MAX232有双路输入和输出,我们暂时只用到其中一路。
此外我们还需用到9针的串口接头:
串口
引脚定义: | ||
引脚 | 定义 | 符号 |
1 | 载波检测 | DCD |
2 | 接收数据 | RXD |
3 | 发送数据 | TXD |
4 | 数据终端准备好 | DTR |
5 | 信号地 | SG |
6 | 数据准备好 | DSR |
7 | 请求发送 | RTS |
8 | 清除发送 | CTS |
9 | 振铃提示 | RI |
这里我们只用到第2、3、5引脚,即RXD、TXD和信号地线。
电路图
元件清单 | |||
名称 | 参数 | 数量 | 备注 |
MAX232 | dip-16 | 1 | |
芯片座 | 16脚 | 1 | |
串口接头 | 9脚 | 1 | |
独石电容 | 104(0.1uf) | 4 |
实物图
大部分笔记本电脑没有串口,可以使用一根USB转串口线,
但必须在计算机中安装相应的驱动。
MAX232数据手册见: http://www.datasheet5.com/search_MAX232.html
AT89C51的数据手册见:http://www.datasheet5.com/search_AT89C51.html