ISP工作原理:单片机可以通过SPI或其他串行接口从上位机接收数据并写入存储器。 因此,即使设备焊接在电路板上,只要保持与上位机接口的串口打开,并使用ispdown下载线,就可以在不拆除设备的情况下对设备内部存储器进行重写。 ISP的提出改变了传统硬件系统的开发流程,极大的方便了开发者,加速了开发。 下载线是一种廉价的工具,利用计算机的并行口通过软件模拟零点实现ATAG或ISP接口协议来访问可编程设备。 下载该线路的电路图。 AT89S51单片机的ISP接口通过3条信号线为系统提供串行模式:命令输入MISO(P1.5引脚)、数据输入MOSI(P1.6引脚)和时钟输入SCK(P1.7引脚)。 对 MCU 设备的写入和读取功能进行编程。 2.2 串行通信接口 上位机PC 与下位机单片机通过RS-232C 串行接口总线进行串行通信。 80C51系列单片机具有全双工串行接口,因此使用RS-232C串行接口总线非常方便。 PC配置有RS-232C标准接口。 RS-232C 信号电平为负逻辑(逻辑“0”:+12V;逻辑“1”:-12v)。 80C51单片机的输入输出电平为TTL电平(逻辑“0”:0.5V;逻辑“1”:2.4V)。 因此8051与PC机之间需要有电平转换电路进行点对点异步通信,否则会烧坏TTL电路。
MAX232器件是MAXIM公司生产的具有两个接收器和驱动器的IC器件。 它具有内部电源电压转换器,可以将输入+5电压转换成RS-232C输出电平所需的12电压。 MAX232器件的引脚1至6(C1+、V+、C1-、C2+、C2-、V-)用于电源电压转换。 只需外接相应的电解电容即可; 引脚7~10和引脚11~14构成两组TTL信号电平与RS-232C信号电平之间的转换电路。 相应引脚可直接连接单片机串口的TTL电平引脚和PC机的RS232电平引脚。 对于使用MAX232器件的PC和微控制器串行通信接口电路,使用9针标准插座与PC连接。 MAX232实现电平转换功能。 该装置可以将单片机TXD端输出的TTL电平转换成标准的RS-232C标准电平,从14引脚MAX232通过9引脚接口发送到PC机; 同样,PC输出的RS-232C标准电平从MAX232的13脚输入,转换成单片机需要的TTL电平,由单片机的RXD端接收。 2.3 矩阵键盘按键号码识别及显示电路 在AT89S51单片机的I/O口上设计了44行矩阵键盘,采用程序扫描的方式来识别按下的按键。 当按下某个键时,其键号显示在共阴极 LED 数码管上。 电路如图4所示。
44行列结构可构成16键的键盘。 键的位置由行号和列号唯一确定。 使用图4(1)中的全扫描方法来判断是否有按键按下。 当没有按键按下时,行线处于高电平。 当按键被按下时,与按键连接的行线和列线被连接。 如果将所有列线保持低位。 当无按键按下时,读取的行信息全为1; 当有按键按下时,读取的行信息不全为1,按键所在行的电平会由高电平变为低电平。 。 CPU扫描方式决定了具体的按键操作。 为了进一步确定具体按键,某一时刻只有一根列线处于低电平,其他列线都处于高电平。 另一次,下一列处于低电平,依此类推。 该循环实现键盘扫描。 键盘工作在编程扫描模式。 单片机在完成其他工作后,在空闲时间调用键盘扫描子程序来响应键盘输入请求。 当执行按键功能程序时,CPU不再响应按键输入请求,直到CPU重新扫描按键系统软件设计系统。 该软件是用汇编语言编写的。 键盘编程扫描子程序采用全扫描方式判断是否有按键按下,采用扫描方式判断按下的是哪个键,计算闭合按键的按键号,释放按键后将按键号存储到RAM30H中。 单元。 按键号显示子程序采用查表法将30H单元中的闭合按键号转换为共阴极数码管的字段码发送到P3口进行显示。 主程序通过反复调用键盘扫描子程序和键号显示子程序,实现了关闭按键的键号的实时显示。 系统设计的主程序流程如图5所示,系统的键盘扫描子程序流程如图6所示。
结论 AT89S51单片机开发板采用ISP技术实现程序代码的在线编写和修改,替代传统编程器完成程序代码编程,省去了反复插拔单片机元件的麻烦,降低了单片机引脚损坏的概率。 ,具有成本低、使用方便、可靠等优点。 通过设计矩阵键盘的按键号码识别与显示应用系统,证明该开发板可以在Keil软件环境下实现程序调试,并且可以轻松在线编写程序代码。 (本文转载自电子工程世界:)