SI-PROG编程器的工作原理及其程序设计
可编程序控制器的构成及工作原理课件
总结词
要点二
详细描述
可编程序控制器广泛应用于制造业、电力、交通、化工等 领域。
可编程序控制器在工业自动化领域应用广泛,涉及制造业、 电力、交通、化工等多个领域。在制造业中,PLC用于控 制生产线的自动化生产;在电力系统中,PLC用于实现发 电、输电、配电等过程的自动化控制;在交通领域,PLC 用于控制交通信号灯、轨道交通等;在化工领域,PLC用 于实现化学反应过程的自动化控制。
PART 03
可编程序控制器的工作原 理
扫描技术
扫描技术是可编程序控制器的基本工 作原理之一,它是指PLC通过顺序扫 描输入状态和数据,然后根据用户程 序进行逻辑运算和数据处理,最后再 顺序输出控制信号的过程。
VS
在扫描技术中,PLC按照固定的扫描 速度逐一扫描输入端子,读取输入状 态和数据,并将这些状态和数据存储 在内部存储器中。然后根据用户程序 对输入状态和数据进行处理,生成相 应的控制信号,最后再逐一输出到输 出端子,驱动外部设备。
详细描述
梯形图使用图形符号表示输入、输出、 定时器、计数器等控制元素,通过绘 制梯形图来描述控制逻辑。梯形图编 程语言直观易懂,易于理解。
功能块图(FBD)
总结词
功能块图是一种基于方块的图形化编程语言, 用于描述控制逻辑。
详细描述
功能块图使用不同的功能块表示输入、输出、 数学运算、逻辑运算等控制元素,通过将功 能块连接起来实现控制逻辑。功能块图编程 语言易于理解,适合于描具有良好性能和可靠性的 可编程控制器,以确保长期稳
定运行。
兼容性与扩展性
选择具有良好兼容性和扩展性 的可编程控制器,以便未来升
级或扩展系统。
成本效益
在满足性能和可靠性要求的前 提下,选择性价比高的可编程
可编程控制器的组成及工作原理
参数进行监视;与打印机相连可打印程序清单或输出有关记录信息。 • 2. 软件 • PLC工作所用各种程序的集合,包括:系统监控程序、用户程序。 • (1) 监控程序 • 由生产厂家编制用于管理、协调PLC各部分工作,充分发挥硬件功能,
第5章 可编程控制器的组成及工作原理
• (1)CPU
• PLC的CPU板,是必需部件。包括CPU、存贮器RAM、ROM;并行接口 PIO;串行接口SIO;时钟CTC。
• 作用:对整个PLC的工作进行控制。是PLC的运算、控制中心。实现逻辑 运算、算术运算并对整机进行协调、控制,按系统程序赋予功能工作:
• c、单个模块输入点数:8、16、32点,各点电路相同。
• 按输入模块与外部用户设备接线,可分为汇点输入接线和独立输入接线 两种基本形式。
第5章 可编程控制器的组成及工作原理
• 汇点输入:可用于直流也可用于交流输入模块。各输入元件共用一个公 共端(汇集端)COM,可以是全部输入点为一组,共用一个公共端和一 个电源,如图5-4(a)示;也可将全部输入点分为若干组,每组有一个 公共端和一个电源,如图5-4(b)示。
稳压电源;另一种是外部电源(用户电源),用于传送现场信号或驱动现 场执行机构。 • (5)扩展接口 • 用于系统扩展输入、输出点数。如I/O点离主机较远,可设置一个I/O子 系统将这些I/O点归纳到一起,通过远程I/O接口与主机相连。
第5章 可编程控制器的组成及工作原理
• (6) 存贮器接口 • 可根据使用需要扩展存贮器,内部与总线相连,可扩展用户程序存贮区、
03-04第二章可编程控制器的基本结构和原理
按输入、输出信号的形式 • 分为数字量I/O模块和模拟量I/O模块 按信号的流向 分为输入单元模块和输出模块 按电源 • 直流型和交流型、电压型和电流型 按功能 • 分为基本I/O模块和特殊I/O模块
(1)开关量输入模块
开关量输入模块的作用是把现场的开关信号转 换成CPU所需的TTL标准信号。
直流输入接口电路
2.3 PLC编程语言
STEP7是S7-300/400系列PLC应用设计软件 包,所支持的PLC编程语言非常丰富。该软件的 标准版支持STL(语句表)、LAD(梯形图)及 FBD(功能块图)3种基本编程语言,并且在 STEP7中可以相互转换。专业版附加对GRAPH (顺序功能图)、SCL(结构化控制语言)、 HiGraph(图形编程语言)、CFC(连续功能图) 等编程语言的支持。不同的编程语言可供不同 知识背景的人员采用。
3. 输入/出模块
I/O模块是PLC进行工业控制的输入信号与输出 控制信号的转换接口,和普通微型计算机工业 控制系统一样,PLC的CPU内部信号是微型计算 机标准电平,而PLC的控制对象的电信号却是千 差万别,不同的信号传感元件(按钮、开关、 传感器等)和执行机构(电磁阀、继电器、接 触器、电动机、指示灯等)的信号电平各不相 同,信号的质量也有差别。
扫描周期即完成一次扫描(I/O刷新、程序执行 和监视服务)所需要的时间,由PLC的工作过程 可知,一个完整的扫描周期T应为:
T=(输入一点时间×输入点数)+(运算速度 ×程序步数)+(输出一点时间×输出点数)+ 监视服务时间
扫描周期的长短主要取决于三个要素: 一是CPU执行指令的速度; 二是每条指令占用的时间; 三是执行指令条数的多少,即用户程序的长度。 扫描周期越长,系统的响应速度越慢。
第一章 可编程控制器的构成和工作原理
第一节 可编程控制器的结构
一、PLC的硬件组成
1、中央处理器(cpu)
通用处理器 16位 8086 M6800
单片机
8039 8031 M6801
双极行位片式微处理器 AMD2900 AMD2903
三菱 FX2n 是采用16位的8089单片机作为微处理器。
2、存储器 1) 功能 PLC 存储器用于存储程序和数据 2) 分类
(1) 输入接口电路 第一种:直流(12--24)V输入 第二种:交流(100--120)V,(200-240)V输入 第三种:交直流(12---24)V输入
(2)输出接口电路 继电器输出
晶体管输出
晶闸管输出
输入、输出继电器示意图
工作原理
时序图
梯形图以指令的形式储存在PLC用户程序存储器中。
4、电源单元
市电(220V、交流) 大部分plc供方方式
供电电源
直流24V
允许电源电压在额定值+10%至-15%的范围内波动,对电压要求 不是很严格 Plc自带输出电源:DC24v输出,电流一般不超过100毫安。可以给小负载供电
5、扩展接口 扩展I/0单元 连接特殊功能模块 通讯接口、连接通讯适配器(rs485、rs232) 6、编程器 主要采用电脑编程
第一章
可编程控制器的构成和工作原理
可编程控制器(Programmable Controller)是计算机家族 中的一员,是为工业控制应用而设计制造的。早期的可编 程控制器称作可编程逻辑控制器(Programmable Logic Controller),简称PLC,它主要用来代替继电器实现逻辑 控制。随着技术的发展,这种装置的功能已经大大超过了 逻辑控制的范围,因此,今天这种装置称作可编程控制器, 简称PC。但是为了避免与个人计算机(Personal Computer)的简称混淆,所以将可编程控制器简称PLC plc目前的主要品牌 松下,西门子,三菱,欧姆龙,台达,富士,施耐德, AB 等
可编程序控制器(PLC)原理及应用
冗余和容错技术
提高系统可靠性和稳定性,确保 在故障发生时系统能够正常运行。
05
PLC系统设计与选型原则
系统设计流程和方法论
需求分析
明确系统控制需求,包括输入/输出信号类型、数量、通 信协议等。
软件编程
使用PLC编程软件编写控制程序,实现系统逻辑控制功 能。
ABCD
硬件设计
根据需求选择合适的PLC型号、I/O模块、通信模块等硬 件设备,并设计相应的电气连接图。
发展历程
从1960年代末期的初创阶段,到1970 年代中期的成熟阶段,再到1980年代 以后的发展阶段,PLC逐渐从逻辑控 制向数字控制发展,功能不断增强, 应用领域也不断扩展。
PLC基本组成与工作原理
基本组成
PLC主要由中央处理单元(CPU)、存储器、输入输出接口、电源等部分组成。
工作原理
PLC采用循环扫描的工作方式,即按照用户程序存储器中存放的先后顺序逐条执 行用户程序,直到程序结束,然后重新返回第一条指令,开始下一轮新的扫描。
实例三
使用顺序功能图语言实现一个复杂的自动化生产线控制程 序,包括多个状态之间的转移条件、状态内的动作以及必 要的互锁和联锁功能。
03
PLC在工业自动化领域应用
顺序控制应用
逻辑控制
时间控制
PLC可以实现复杂的逻辑控制功能,如 与、或、非等逻辑运算,用于控制工业 设备的启动、停止、运行等状态。
PLC具有精确的时序控制能力,可以 根据时间设定来控制设备的运行时长、 延迟等。
可编程序控制器(plc)原 理及应用
目录
Contents
• PLC概述与基本原理 • PLC编程语言与指令系统 • PLC在工业自动化领域应用 • PLC通信与网络功能实现 • PLC系统设计与选型原则 • PLC安装调试与故障诊断技巧
初中通用技术可编程逻辑控制器的工作原理和编程技巧
单击此处添加标题
PLC控制策略:包括定时控制、感应控制、自适应控制等多种策略,可以根据实际交通情况进行选择和调整。
机器人技术应用
THANK YOU
汇报人:
工业自动化控制
优势特点:可靠性高、稳定性好、易于编程和维护,能够大幅提高生产效率和产品质量。
简介:可编程逻辑控制器(PLC)在工业自动化控制中发挥着核心作用,通过编程实现对各种机械设备的精确控制。
应用领域:广泛应用于化工、电力、制造业等领域的自动化生产线和控制系统。
未来发展:随着工业4.0和智能制造的推进,PLC的应用将更加广泛,技术将不断创新和升级。
存储器:存储程序和数据
输入/输出模块:连接外部设备,如传感器、执行器等
通信模块:与其他设备或系统进行通信
电源模块:为PLC提供电源
散热系统:保证PLC的正常运行
PLC的工作流程
输入信号:PLC接收来自各种传感器、按钮、开关等设备的输入信号
程序执行:PLC根据接收到的输入信号,执行预先编写的程序
输出信号:PLC根据程序执行结果,产生相应的输出信号
数据处理与运算
数据类型:布尔型、整型、浮点型、字符串型等
数据运算:加减乘除、逻辑运算、比较运算等
数据处理:数据转换、数据筛选、数据排序等
数据存储:变量、数组、数据库等
数据通信:串口通信、网络通信等
数据安全:数据加密、数据备份等
程序调试与优化
程序调试:通过查看PLC的输入输出状态和程序运行情况,找出程序中的错误并进行修正
优化技巧:采用模块化编程、使用子程序、减少跳转和循环等方法,提高程序的执行效率和稳定性
断点调试:在程序中设置断点,逐步执行程序,查看变量和寄存器的值,找出程序中的问题
可编程控制器的系统构成和工作原理
对应于一个输出点的输出电路,各个输出点所对应的输出电路
均相同。
长 沙 职 院
机 械 系
图2-4 晶体管输出单元的电路
长 沙 职 院
机 械 系
图2-5 双向晶闸管输出单元
长
(3) 继电器输出单元。继电器输出单元的电路如图2-6所示。
沙
图中虚框内是PLC内部的输出电路,框外右侧为外部用户接线。
长
2.2.1 PLC控制系统的等效工作电路
沙 职 院
PLC控制系统的等效工作电路可分为3部分,即输入电路、内部 控制电路和输出电路。输入电路就是采集输入信号,输出电路 就是系统的执行部件。这两电路与继电器控制电路相同。
内部控制电路是通过编程方法实现的控制逻辑,用软件编程实
现继电器电路的功能。其等效工作电路如图2-10所示。 机 械 系
院
编程器一般有两大类。
一类是专用的编程器,有手持的,也有台式的,也有的可编
程控制器机身上自带编程器,其中手持编程器携带方便,适合
工业控制现场使用。。
机 械 系
另一类是个人计算机,在个人计算机上运行可编程控制器的 编程软件即可完成编程任务。可编程控制器以每隔几年一代的 速度更新,因此专用可编程控制的使用寿命有限,价格一般也
2.外设接口
机
可连上位计算机和打印机等外部设备。
械
系
3.智能单元
为适应和满足更加复杂的控制功能的需要,PLC厂家生产 了各种功能的智能I/O模块。
长
沙 职
2.1.2 可编程控制器的软件系统
院
可编程控制器的软件系控制器的操作系统。它是由PLC的生产厂家编
和串并联等术语和图形符号,同时也增加了一些继电——接触
siplace-pro编程PPT课件
6.依下图选择将要导入的mark资料(注意图中所标示处,请不要随意替换现有的mark资料)
21Βιβλιοθήκη 7.依下图选择将要导入的Set-up资料(注意图中所标示处,请不要随意替换现有的Set-up资料)
22
8.依下图选择要将数据要导入的线别后点击完成
23
2.1.2 ASCII数据导入向导 菜单栏:工具=>导入=> ASCII数据导入向导 这个向导用来 自动创建贴片清单。
1
▪ Siplace pro 軟件 ▪ 导入与导出功能 ▪ 元件(Components) ▪ 元件外形(GF) ▪ 定位点(Fiducials) ▪ 贴片清单(placement lists) ▪ PCB 板子(Boards) ▪ 机器与线(Stations and Lines) ▪ 供料器 (Feeder) 与吸嘴 (Nozzle) 管理 ▪ 料台 (Tables) 与设置 (Setups) ▪ 方法 (Recipies) ▪ 作业 (Job) 与优化 (Optimization) ▪ 传送程序(Download and Line control GUI)
1.1.1 工具栏
1.1.2对象树状显示(Product objects)
5
6
1.1.3在树状显示中新建或删除一个文件夹 新建:鼠标右键 选择 新建文件夹 删除:选择要删除对象在键盘上按Del或鼠标右键删除功能
7
1.1.4 数据管理 在树状显示中,Pro提供对对象进行复制,移动,删除 或重命名功能,这些功能通过选择一个或多个对象后用右键来实现。
2
1 SIPLACE Pro 软件概述
▪ 1)SIPLACE Pro是西门子贴片机的编程系统, 可以离线为贴片机准备好所需要的所有生产 数据。
可编程控制器的系统结构和工作原理
05 可编程控制器的性能指标 与选型
性能指标
控制器的基本性能
包括处理速度、内存容量、指令集丰富程度等。
I/O点数与类型
控制器能处理的输入/输出信号的数量和类型,如数字量、模拟量等。
通讯接口与协议
控制器支持的通讯接口类型和通讯协议,如以太网、Modbus等。
特殊功能模块
控制器是否支持特殊功能模块,如温度控制、运动控制等。
可编程控制器可以实现电梯的各种安全保护功能,如超载保护、 超速保护、门未关好保护等。
智能家居控制系统
家电设备控制
可编程控制器可以实现家居环境中各种家电设备的远程控制,如灯 光、空调、窗帘等。
环境监测与调节
通过可编程控制器对环境参数进行实时监测和调节,如温度、湿度、 空气质量等,创造舒适的居住环境。
02 可编程控制器的系统结构
中央处理单元
01
02
03
CPU
负责执行用户程序,进行 逻辑运算、算术运算等处 理。
总线
连接CPU与各部件,实现 数据传输。
时钟电路
提供系统工作所需的时钟 信号。
存储器
程序存储器
01
用于存储用户程序、系统程序及常数等。
数据存储器
02
用于存储输入输出数据、中间计算结果等。
通信模块
通信接口电路
实现可编程控制器与其他设备或网络之间的通信 连接。
通信协议
规定通信双方的数据传输格式和规则。
通信管理
实现数据的接收、发送和错误处理等通信功能。
03 可编程控制器的工作原理
扫描周期
01
可编程控制器(PLC)采用循环扫描的工作方式,每个扫描周期 包括输入采样、程序执行和输出刷新三个阶段。
AVR 单片机与GCC 编程使用方法
A VR 单片机与GCC 编程使用方法WINA VR 是一个ATMEL A VR 系列单片机的开发工具集,它包含GNU C 和C++编译器GCC。
1.1 一个简单的例子为了先有一个感性的认识,我们首先看一下如下一段程序和它的编译、链接过程。
文件demo1.c :#includeint main( void ){ unsigned char i, j, k,led=0; DRB=0xff;while (1) { if(led) PORTB|=0X01; ese RTB&=0XFE; led=!led;for (i=0; i<255; i++) fr(j=0; j<255;j++)k++;}}//延时这是一个使接在PB0 口的LED 发光管闪烁的程序。
有了源程序文件demo1.c,我们就可以编译它了。
通过点击菜单开始->运行在弹出的对话框中输入― command ‖ ,来打开控制台窗口,并在命令行输入:avr-gcc –mmcu=at90s2313 –c demo1.c如图1-1 所示。
必需告诉编译器程序的mcu 类型,这是我们通过命令行选项-mmcu 来指定的,我们指定的器件为at90s2313。
-c 选项告诉编译器编译完成后不链接。
图1-1 控制台窗口编译完成后在工作目录新生成了一个文件:demo1.o ,它是我们的目标文件,我们再使用链接器将它链接成可在器件上执行的二进制代码。
在命令行输入:avr-gcc –mmcu=at90s2313 –O demo1.elf demo1.o之后我们会在工作目录看见链接器生成的demo1.elf。
gcc 的链接后生成的文件为ELF 格式,在命令行我们通常用.elf 指定其扩展名。
ELF 格式文件除了包含不同存储器的二进制格式内容外还包含一些调试信息,所以我们还要借助一个有用工具avr-objcopy 来提取单片机程序存储器内容。
命令行输入:avr-objcopy -j .text -j .data -O ihex demo1.elf demo1.hexgcc 把不同类型的数据分到不同的段落,相关程序存储器的段有.text 和.data ,我们用选项–j 指定了要提取的段。
可编程控制器的系统构成和工作原理
2.1.2.4 顺序功能图(SFC) 顺序功能图编程方式采用工艺流程图的方法编程,只要在每一个工艺方框的输入和输出端标上特定的符号即可。对于在工厂中搞工艺设计的人来说,用这种方法编程不需要很多的电气知识,非常方便。 不少PLC的新产品采用了顺序功能图。有的公司已生产出系列的、可供不同的PLC使用的SFC编程器,原来十几页的梯形图程序,SFC只用一页就可完成,是一种效果显著的编程语言。顺序功能图如图2-9所示。
图2-1 可编程控制器硬件结构
2.1.1.1 中央处理单元(CPU) 中央处理单元是可编程控制器的核心部件,它类似人的大脑,是系统的运算和控制中心,能指挥PLC按照预先编好的系统程序完成各种任务。 其作用有以下几点。 (1) 接收并存储用户程序和数据。 (2) 检查、校验用户程序。 (3) 接收、调用现场信息。 (4) 执行用户程序。 (5) 故障诊断。 当PLC运行时,CPU首先以扫描的方式接收现场各输入装置的状态和数据,并分别存入I/O映像区,然后从用户程序存储器中逐条读取用户程序,经过命令解释后按指令的规定执行逻辑或算术运算,并将运算的结果送入I/O映像区或数据寄存器内,等所有的用户程序执行完毕后,最后将I/O映像区的各输出状态或输出寄存器内的数据传送到相应的输出装置,如此循环运行,直至停止。
2.2.1 PLC控制系统的等效工作电路
2.2.1.1 输入电路
输入电路由外部输入电路、PLC输入接线端子和输入继电器组成。外部输入信号经PLC输入接线端子驱动输入继电器的线圈。每个输入端子和与其相同编号的输入继电器X有着唯一确定的对应关系。当外部的输入元件处于接通状态时,对应的输入继电器线圈得电(这个输入继电器是PLC内部的软继电器,就是我们在前面介绍过的存储器基本单元中的某一位,它可以提供任意多个动合触点或动断触点供PLC内部控制电路编程使用)。
可编程控制器的构成及工作原理
第一节 可编程控制器的硬件组成
中央处理器 (CPU) 存储器 (RAM、ROM) 输入输出器件 (I/ O接口) 电源及编程设备。
图2-1 单元式 PLC结构框图
3
第一节 可编程控制器的硬件组成
一、中央处理器
中央处理器是可编程控制器的核心,它在系统程序的 控制下,完成逻辑运算、数学运算、协调系统内部各部 分工作等任务。
内容提要
和普通计算机一样,可编程控制器由硬件及软件构成。 硬件方面,可编程控制器和普通计算机的主要差别在于PLC 的输入输出口是为方便与工业控制系统接口专门设计的。 软件方面和普通计算机的主要差别为PLC的应用软件是由 使用者编制,用梯形图或指令表表达的专用软件。可编程 控制器工作时采用应用软件的逐行扫描执行方式,这和普 通计算机等待命令工作方式也有所不同。从时序上来说, 可编程控制器指令的串行工作方式和继电接触器逻辑判断 的并行工作方式也是不同的。
4.功能块图(Function block diagram)
功能块图是一种类似于数字逻辑电路的编程语言。该 编程语言用类似与门、或门的方框来表示逻辑运算关系, 方框的左侧为逻辑运算的输入变量,右侧为输出变量,输入 端、输出端的小圆圈表示“非”运算,信号自左向右流动。
Test1
Test2
Sw1 %IX3 Reset
3.模拟量输入接口
作用是把现场连续变化的模拟量标准信号转换成适合可 编程序控制器内部处理的由若干位二进制数字表示的信号。 滤波 装置 电平
转换
多路 转换 A/D 开关
锁 存 器
光电 隔离
总线 逻辑
图2-6 模拟量输入电路框图
数据 总线
12
第一节 可编程控制器的硬件组成
可编程控制器中采用的 CPU的三大类
第四模块可编程序控制器工作原理及结构演示文稿
2)1968年,美国通用汽车公司(GM公司)为适 应汽车型号不断翻新(小批量、多品种、多规格、 低成本和高质量),提出要用一种新型的控制装置 取代继电—接触器控制装置。拟订了十项公开招标 的技术要求:
ROM中 小型的PLC的存储容量一般在8K字节以下。
(三)输入/输出接口单元 输入/输出单元:PLC与被控对象之间传送输入输
4)PLC进入运行后,执行用户程序,存储执行结果, 并将执行结果输出。
当PLC进入运行状态, CPU 根据用户程序存放的先 后顺序,逐条读取、解释和执行程序,完成用户程序中 规定的各种操作,并将程序执行的结果送至输出端口, 以驱动可编程控制器的外部负载。
5)诊断电源、PLC内部电路的工作故障。
诊断电源、可编程控制器内部电路的故障,根据故 障或错误的类型,通过显示器显示出相应的信息,以提 示用户及时排除故障或纠正错误。
注:近年来,可编程控制器发展很快,几乎每 年都推出不少新系列产品,其功能已超出了上述 定义的范围。
二、PLC的产生与发展
• 1、PLC的产生
1969年美国数字设备公司(DEC)根据美国通 用汽车公司(GM)的要求研制成第一台可编程序 控制器。发展极为迅速。
• 产生背景:
1)继电控制系统的缺点:通用性和灵活性差、 可靠性低。
• 4)近年来PLC发展迅速 • 具备了计算机功能的一种通用工业控制装置,成
为现代工业自动化的三大技术支柱(PLC技术、 机器人、CAD/CAM)之一。
三、PLC的主要生产厂家
• 欧洲:德国的西门子(Siemens);
法国的TE(Telemecanique)公司
SI-PROG编程器的工作原理及其程序设计
SI-PROG编程器的工作原理及其程序设计时间:2009-06-16 13:03:06 来源:现代电子技术作者:安郁宽1,李宏2,闫鹏1 1.滨州医学院物理教研室2摘要:介绍SI-PROG编程器的工作原理,利用PC机串口UART芯片实现单片机的ISP下载。
PC机串口8250芯片中SOUT,DTR,RTS,CTS四个引脚的电平可通过其内部的几个寄存器分别进行控制或读取,利用引脚可实现单片机的ISP下栽。
介绍了8250与单片机之间通信信号的逻辑关系以及电平转换,分析了接收器的阈值电压的特点,给出了使用SI-PROG编程器的条件。
最后,以AVR单片机为例介绍了下载程序设计。
结果表明,利用PC机串口UART芯片可以实现对AVR单片机的ISP下载,其硬件电路和软件设计都很简单。
关键词:S1-PROG编程器;程序设计;UART;AVR单片机SI-PROG编程器为PonyProg 2000软件中使用的一种ISP编程器,该编程器利用PC机串口电路的异步通信控制器UART实现AVR,PIC,AT89等单片机的ISP编程。
虽然该编程器不为Atmel的AVRStudio 所支持,但是其硬件电路简单,成本低,便于制作,适于初学者进行学习和简单开发。
下面以AVR单片机为例,介绍SI-PROG编程器的工作原理及其程序设计。
l SI-PROG编程器的工作原理1.1 电路组成图1为SI-PROG串口编程器的工作原理图。
电路分为PC机串口电路、SI-PROG编程器和目标机3部分。
编程器通过9针D型连接器DB9与PC机串口连接,通过10针连接器J1与目标机连接,电路在文献[4]的基础上做了适当的简化。
J1引脚定义与Atmel的STK200下载线相同。
1.1.1 PC机串口电路及SI-PROG编程器PC机串口电路由U1~U4组成。
8250(U1)为异步通信控制器UART,SN75150(U2,U3)为驱动器,SN75154为线接收器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
SI-PROG编程器的工作原理及其程序设计时间:2009-06-16 13:03:06 来源:现代电子技术作者:安郁宽1,李宏2,闫鹏1 1.滨州医学院物理教研室2摘要:介绍SI-PROG编程器的工作原理,利用PC机串口UART芯片实现单片机的ISP下载。
PC机串口8250芯片中SOUT,DTR,RTS,CTS四个引脚的电平可通过其内部的几个寄存器分别进行控制或读取,利用引脚可实现单片机的ISP下栽。
介绍了8250与单片机之间通信信号的逻辑关系以及电平转换,分析了接收器的阈值电压的特点,给出了使用SI-PROG编程器的条件。
最后,以AVR单片机为例介绍了下载程序设计。
结果表明,利用PC机串口UART芯片可以实现对AVR单片机的ISP下载,其硬件电路和软件设计都很简单。
关键词:S1-PROG编程器;程序设计;UART;AVR单片机SI-PROG编程器为PonyProg 2000软件中使用的一种ISP编程器,该编程器利用PC机串口电路的异步通信控制器UART实现AVR,PIC,AT89等单片机的ISP编程。
虽然该编程器不为Atmel的AVRStudio 所支持,但是其硬件电路简单,成本低,便于制作,适于初学者进行学习和简单开发。
下面以AVR单片机为例,介绍SI-PROG编程器的工作原理及其程序设计。
l SI-PROG编程器的工作原理1.1 电路组成图1为SI-PROG串口编程器的工作原理图。
电路分为PC机串口电路、SI-PROG编程器和目标机3部分。
编程器通过9针D型连接器DB9与PC机串口连接,通过10针连接器J1与目标机连接,电路在文献[4]的基础上做了适当的简化。
J1引脚定义与Atmel的STK200下载线相同。
1.1.1 PC机串口电路及SI-PROG编程器PC机串口电路由U1~U4组成。
8250(U1)为异步通信控制器UART,SN75150(U2,U3)为驱动器,SN75154为线接收器。
U2,U3,U4实现8250引脚上TTL电平与串口DB9上RS 232电平转换。
SI-PROG 编程器则完成DB9上RS 232电平与目标机上TTL电平的转换。
1.1.2 串行SPI接口编程器通过目标机的SPI接口对其片内的FLASH程序存储器进行下载编程。
SPI接口由SCK,MOSI 和MISO等几条信号线组成。
下载编程的过程实际上是PC机与AVR的通信过程。
两者的关系是一种主从关系,PC机为主机,AVR为从机。
主机经MOSI引脚将串行数据发给从机,从机经MISO引脚将数据返回给主机。
SCK为串行时钟脉冲,由主机发往从机。
主机通过SCK脉冲控制与从机的数据传输。
图2为串行下载编程时序图。
单片机在SCK上升沿读取MOSI上的数据位,在SCK下降沿输出数据位到MISO。
1.2 信号的逻辑关系由图1可见,8250的11,33,32,36四个引脚分别通过编程器与AVR的RESET,MOSI,SCK,MISO 相连进行通信。
这4个引脚的电平可通过8250内部的3个寄存器进行设置或读取,如图3所示。
3个寄存器依次为线路控制寄存器(LCR)、Modem控制寄存器(MCR)和Modem状态寄存器(MSR)。
对于串口1,3个寄存器的端口地址一般为3FBH,3FCH和3FEH。
LCR的SB位、MCR的DTR位和RTS位分别控制11,33,32三脚的电平。
MSR的CTS位则反映了36脚的电平。
下面分析8250与AVR通信信号间的逻辑关系。
为了避免引起混乱,这里全部采用正逻辑描述。
1.2.1 RESET与SB位的逻辑关系线路控制寄存器LCR的D6位SB决定了8250的11脚的电平。
当SB=1时,11脚被强制拉到低电平,DB9的3脚为高电平。
当SB=O时,DB9的3脚为低电平。
逻辑关系在Q1上又反相一次。
因此,RESET 信号与SB位的逻辑关系为:RESET=SB (1)编程时只要通过OUT指令改变SB位的值,就可以控制RESET端的电平。
当8250复位后,SB=0,RESET=SB=1,RESET引脚为高电平。
1.2.2 MOSI,SCK信号与DTR,RTS位的逻辑关系MODEM控制寄存器MCR的D0位DTR控制着33脚的电平。
置DTR=1,则33脚DTR为低电平,是逻辑非关系。
U3相当于非门,故MOSI信号与DTR位的逻辑关系为:MOSI=DTR (2)类似的,SCK信号与MCR的D1位RTS的逻辑关系为:SCK=RTS (3)1.2.3 CTS位与MISO信号的逻辑关系MODEM状态寄存器(MSR)的D4位CTS反映了8250的36脚的电平,当CTS端为高电平时,CTS=O;反之CTS=1。
CTS位与CTS端是逻辑非关系。
因此,CTS位与MISO信号的的逻辑关系为:CTS=MISO (4)根据式(1)~式(4),下载编程时,设置或读取AVR的RESET,MOSI,SCK,MISO脚的电平问题就变成通过I/O指令设置或读取8250内部寄存器的SB,DTR,RTS,CTS位的问题。
1.3 SI-PROG编程器的电平转换根据RS 232标准,串口DB9上的两种电平分别为5~15 V和-5~-15 V。
编程器电路采用分立元件实现DB9上的RS 232电平与AVR的TTL电平间的转换。
1.3.1 RS 232到TTL电平的转换图1中,用限流电阻R3和4.7 V的稳压二极管Z2完成DB9的4脚上RS 232电平到J1的1脚上TTL 电平的转换。
5~15 V与-5~-15 V高低两种电平通过R3后将分别变成4.7 V和O V(实际为-O.7 V),符合TTL电平的要求。
类似的,限流电阻R4和4.7 V的稳压二极管Z1完成DB9的7脚上RS 232电平到J1的7脚上的TTL 电平的转换。
Q1,R1,R2接成反相器,DB9的3脚上的5~15 V与-5~-15 V两种电平分别使Q1处于饱和导通和截至状态,实现了RESET信号的电平转换。
1.3.2 TTL到RS 232电平的转换TTL到RS 232电平的转换由SN75154线接收器实现。
图4为SN75154的施密特电压传输特性曲线。
当阈值电压控制端T3接Vcc时,它工作在图4中曲线a状态,两个阈值电压分别为VIT-=-1.1 V和VIT+=2.2 V;当T3悬空时,它工作于图中曲线b状态,VIT-=-1.4 V,VIT+=2.2 V。
显然,对于后一状态,MISO引脚上的TTL电平信号可以通过U4到达8250,而前一状态则无法通过U4。
根据文献[2],长城0520 PC-XT机上SN75154的阈值电压控制端T3接到+5 V。
这样,SI-PROG编程器就不能工作。
计算机硬件发展到今天,UART-般均升级为16550,它与打印机并口、键盘控制器等电路一起集成于LPC芯片内,16550仍与8250相兼容。
驱动器和接收器也都集成到一个芯片内,如75232,75185。
这些芯片的接收器不再采用图4中曲线a那样的阈值电压,而改为与曲线b相接近的情况。
表1为3台PC 机阈值电压的实验测量结果。
表中,典型值为芯片数据手册中的数据,实验值为实验测量结果。
显然,3台PC机上,SI-PROG编程器都能正常工作。
2 下载程序设计根据式(1),用输出指令向3FBH端口写入40H,将使RESET端置低电平,写入00H,使RESET端置高电平;根据式(2),式(3)。
向3FCH端口写入数据,改变其D1位的数值,就可改变SCK端的电平,改变D0位的数值,即改变MOSI的电平;根据式(4),用输入指令读取3FEH端口,读取字节的D4位为MISO返回的数据位。
根据AVR单片机的串行下载算法,发送串行编程指令的操作步骤为:进入串行下载模式;发送编程使能指令;执行所需的读、写等操作指令,可执行一条,也可执行多条;退出串行编程模式。
(1)进入串行下载模式。
保持SCK端为低电平,给RESET端发送一个大于两个时钟周期的正脉冲,AVR 单片机便进入串行下载模式。
(2)发送串行编程指令。
根据图2,一个SCK时钟周期可分4个步骤:输出位数据到MOSI线,延时;令SCK由0变1,延时;读取MISO线上的数据位;令SCK由1变0,延时。
前两个步骤写一位数据到AVR,后两个步骤则从AVR读取1位数据。
8个SCK时钟周期写1个字节,同时读一个字节。
AVR单片机每条编程指令均由4个字节组成。
根据上述过程,将4个字节的编程指令依次写入到AVR,同时读取返回的4个字节数据。
(3)退出串行编程模式。
将RESET端置高电平,AVR单片机退出编程模式。
3 结语根据上述分析,采用VC++6.O编程成功地对ATtinyl3和ATmegal6两种芯片的FLASH进行了芯片擦除、读、写以及对熔丝位的读、写等操作。
注意编程时需要解决Windows NT/2000,/XP操作系统下访问I/O端口的技术问题。
使用SI-PROG编程器,必须满足两个条件:(1)串口的UART芯片要与8250兼容;(2)电平转换芯片接收器的阈值电压要介于TTL高、低两种电平之间。
多数PC机所配置的串口都能满足上述两个条件。
某些早期的PC机有可能与PC/XT机类似,不满足条件(1)。
目前,家用笔记本电脑上一般不再配置串口。
这样,SI-PROG编程器在某些PC机上不能使用。
然而,SI-PROG编程器仍有一定的使用空间。
毕竟LISB接口的编程器价格较高,而一些商用笔记本电脑中取消了并口但保留着串口,并口编程器又不能用。
而多数台式机上一般仍配置有串口。