微型嵌入式自编程控制器MEAPC

发布时间:2019-06-03 14:44:06   来源:文档文库   
字号:

  微型嵌入式自编程控制器MEAPC

智能可编程控制电路,具有电路简单,控制方法灵活多变等优点,用它取代传统的纯硬件控制电路,已成为发展趋势。近年来由于单片机的流行,用单片机制作的可编程控制器非常多。但能熟练运用单片机的人并不多。究其原因:
1:学习单片机的设备费用高。
2:单片机的功能复杂,非一般人能轻易掌握。

1、学习单片机的门槛太高

 单片机不仅是一门理论学科,同时又是一门应用学科,而实践是学习单片机的主要方法。但是能实践必须具有:PC机、仿真器、编程器。这三样设备全部具备,少则3000元,多则上万元。即便购齐了上述设备,又要面临如何学习使用:PC机、仿真器、编程器的问题。试想一个50岁没有学习过单片机技术的老电子工程师,还会去学习吗?一个青少年又如何入门呐?

2、单片机的功能复杂、指令太多

     以现在最流行的单片机MCS-51为例,它的功能虽不算多,但是指令却有115条。许多实际应用却只

用其中少数的指令和内部功能。对一些非专业人员就没有必要全部掌握。这样可以减轻学习的负担。

     针对上述问题,本人根据自身多年使用单片机的经验,设计了一种微型、廉价的完全脱离:PC机、仿真器、编程器的集开发、学习、应用于一身的开发设备:微型嵌入式自编程控制器MEAPC

3MEAPC控制器简介

     MEAPC控制器简单易学,只有43条指令。凡具有数字电路基础的人,可以在12个小时内上手。它可以反复编程几万次。编制的程序可以任意备份。在:灯光、电机、开关逻辑等控制中,可以取代纯数字电路,成本低廉。

     MEAPC在工业应用时,可以看成是一个具有13I/O口、上千个软继电器的可编程控制器(PLC)。而在学习时,又可看作是一个简易的可以自编程的单片机,无须其他开发设备。

MEAPC控制器的组成

MEAPCMEAPC-C主控板和MEAPC-P编程板两部分组成(见图2-1



   

     MEAPC-C主控板是一块带有单片机的可重复编程的控制板,它由使用者插入MEAPC-P编程板编程,编程完毕后将它插入应用电路中即可工作。单片机中固化了一套监控程序(MEAPC-V3.0),负责管理MEAPC-P编程板的编程和运行输入的用户程序。

     MEAPC-P编程板是一块带有键盘、LED显示的编程板,用户必须用它将编制的程序输入MEAPC-C主控板。它可以多次使用。

§ 2-1 MEAPC-C主控板的引脚功能

MEAPC-C的引脚见图2-2,上电后的初始值见表2-2

MEAPC-C主控板的引脚 2-2

MEAPC-C主控板的引脚 表:2-1

上电后的初始值 表:2-2

§ 2-2 MEAPC-C主控板的内部资源

MEAPC-C主控板具有以下内部资源:

1具有13I/O线:P1~P13

输入时:吸收电流<20uA

输出时:灌入电流:20mA ;导出电流:4mA

其中P11具有负脉冲检测功能,可以计数,最高频率<500KHz

2内部有16个位:P0~P15

其中P1~P13I/O线,P0P14P15是用户使用位;启动计数器T0后,P15T0溢出标志位。

316个内部RAM字节:R0~R15

4256个外部FlashRam字节:00~FFH

5.一个16位可编程硬件计数器:T0

6.一个模拟SPI通讯口。

7.具有15K的程序存放空间(使用E224C16),可存放近:1500条指令。

8.指令平均执行速度:400uS

 

§ 2-3 MEAPC-C主控板的内存分布

MEAPC-C主控板的内存分布见图2-3,它可以寻址2K的地址范围。

其中:16个位的地址:0~FH
16RAM的地址:0~FH
256个外部存储器字节的地址:00~FFH
系统子程序的地址:100~1FFH
用户程序的地址:200H~7FFH

MEAPC-C主控板的内存分布 2-3

§ 2-4 MEAPC-P编程板的引脚功能

MEAPC-P编程板负责为MEAPC-C主控板编程,它自带一个2K的备份程序存储器,便于复制程序;两位LED数码管显示指令和数据;5个按键负责将指令、数据输入MEAPC-C主控板。

1MEAPC-P编程板的引脚(见图2-5

2MEAPC-P编程板的按键分布(见图2-4

 

MEAPC-P编程板的按键功能 表:2-2

点击进入:MEAPC介绍资料2

第三章 MEAPC指令表

     MEAPC的指令系统由43条指令组成。可完成:位运算、数值运算、逻辑运算、移位、跳转等功能。有一个“布尔处理器 P0”,通过它可以处理大量的位数据信息,在工控中非常有用。同时还有一些特殊功能的“宏指令”。只需少量的代码就可方便地完成各种复杂的智能电路的设计。用它取代一些传统的继电器控制电路易如反掌!MEAPC的指令系统(见表3-1)。

自编程控制器MEAPC-C1指令表 表:3-1

第四章 指令系统使用详解

本章以指令的序号顺序,叙述每条指令的功能并举例。除了指令:MRx2字节外,其余均是单字节指令。使用时请注意以下几点:

1D9~DF指令是伪指令,不会写入EE24中。

2P代表:位。

3R代表:8位寄存器。

4、只有指令:ADC Rx 影响P0位。

5Bx指令为程序提供了16个标号,便于编程。如果不够用,可以使用:JMPR14JMPR15指令完成间接跳转(详见MEAPC-C1指令表3-1)。

6、输入数据必须采用16进制。16进制表示:xxH 10进制:xx 2制:xxB。编写程序时为了便于阅读,助记符的数字一般采用10进制书写。

数字:0~15的十进制、二进制、十六进制之间转换关系见表4-1

十进制、二进制、十六进制之间转换关系 表:4-1

§ 4-1 位操作指令

1 0x CLR Px x=0~F

例: 已知:P0=1 执行:

00 CLR P0 P0位清零

结果:P0=0

2 1x SET Px

例: 已知:P15=0 执行:

1F SET P15 P15位置1

结果:P15=1

3 2x IN Px x=0~F

例: 已知:P7=1 P0=0 执行:

27 IN P7 ;读入P7位的数据到P0

结果:P0=1

4 3x OUT Px

例: 已知:P8=0 P0=1 执行:

38 OUT P8 P0位的数据送到P8

结果:P8=1

5 4x AND Px x=0~F

例: 已知:P10=0 P0=1 执行:

4A AND P10 P10位逻辑与P0位,结果送P0位。

结果:P0=0

6 5x OR Px

例: 已知:P11=0 P0=1 执行:

5B OR P11 P11位逻辑或P0位,结果送P0位。

结果:P0=1

7 6x NOT Px x=0~F

例: 已知:P12=0 执行:

6C NOT P12 P12位取反,结果送P12

结果:P12=1

§ 4-2 寄存器指令

8 7x INC Rx x=0~F

例: 已知:R2=3 执行:

70 INC R2 R2寄存器加1,不影响P0

结果:R2=4

9 8x DEC Rx x=0~F

例: 已知:R1=8 执行:

81 DEC R1 R1数据减1

结果:R1=7

10 9x CHE Rx

例: 已知:R0=8R10=15 执行:

9A CHE R10 R10P0的数据交换

结果:R0=15R10=8

11 Ax ADC Rx

例: 已知:R0=5P0=1R10=20 执行:

AA ADC R10 R10P0位加R0,结果送R0

结果:R0=26

12 Bx Bx ;产生标号

例: 00 CLR P0

11 SET P1

B0 B0B0

02 CLR P2

63 NOT P3

70 INC R0

C0 JMP B0

13 Cx JMP x ;见Bx指令

14 Ex MRx #d ;(2字节)

例: 已知:R5=8 执行:

E5 C8 MR5#200 200送入R5寄存器

结果:R5=200

§ 4-3 转移指令

15 F0 JP0

如果 P0=0 ,则跳过一行 ,否则 顺序执行

例:(采用间接跳转指令:JMP R14

EE 02 MR14 #2 ;设置上跳转的行数

。。。

L0 ;标号

00 P0=0 P0=0

F0 JP0 ;跳行

D4 JMP R14 ;上跳2 (见指令表)

L1 ;继续执行

。。。

程序将进入L1标号继续执行,如果令P0=1,则程序进入L0标号执行。

例:(采用标号指令:Bx

。。。

B0B0 B0

00 CLR P0

SET P0

F0 JP0 ;跳行

C0 JMP B0 ;跳到B0

;继续执行

。。。。

16 F1 JR0 ;当R0=0 则跳行 (见JP0指令)

17 F2 LRP

例: 已知:R0=5;(00000101B);P0=0 执行:

F2 LRP R0P0位循环左移1位,结果送R0

结果:R0=0A0 00001010B

 

18 F3 MRP R0的值8位并行送到P1~P8位,P1对应低位。

例: 已知: R0=0FFH P1~P8=0

E0 FF MR0#0FFH

F3 MRP

结果: R0=0FF P1~P8=1

19~21 F4F5F6 ;延时不同时间 (见指令表)

4-1 延时3S程序

程序1

EE 03 MR14 #3 ;设定上跳的行数

E0 32 MR0 #3 ;赋值R0=3

L0

F6 1S ;延时1S

80 DEC R0 R0=R0-1

F1 JR0 R0=0 跳行到L1执行

D4 JMP R14 ;上跳3

L1

。。。。

程序2

F6 1S

F6 1S

F6 1S

程序进入延时后,计数器不影响工作。

22~24 控制计数器T0的指令,要求外部脉冲是下降沿。

F7 ST0 ;将R0R1中的值送入T0计数器,启动T0计数器

F8 RT0 ;读出T0计数器的值,存入R0R1中,P15溢出标志。

F9 CT0 ;关闭T0计数器,并读出T0计数器的值,存入R0R1

说明: RT0 指令采用了“飞读”方法,不会产生错相。

4-2 记录外部5个脉冲后,停止计数并使P1=1

(采用比较法实现)

CLR P1 ;清P1=0

E0 05 MR0 #05 ;设置5个脉冲

DB NOT ;求R0的补码

70 INC R0 +1

92 CHE R2 R2=FBH 05的补码)

E0 00 MR0 #0 R0 0

E1 00 MR1 #0 R10

EE 04 MR14 #04 ;上跳4

F7 ST0 启动T0计数

L0

F8 RT0 ;读T0 放入R0R1162进制,R0是高位)

91 CHE R1 ;交换R0R1

A2 ADC R2 R0=R0+R2

F1 JR0 ;等于5个脉冲,跳行

D4 JMP R14

L1

F9 CT0 ;停止T0计数

11 SET P1 P1=1

。。。

4-3 (采用T0溢出法实现。)

01 CLR P1

E0 FF MR0 #0FFH R0R1=FFFB+5=10000 溢出

E1 FB MR1 #0FBH

0F CLR P15 ;清标志

EE 02 MR14 #02 ;上跳2

F7 ST0 启动T0计数,T0=0FFFBH

L0

2F IN P15 P0=P15

F0 JP0 ;等待溢出,跳1

D4 JMP R14

L1

F9 CT0 ;停止T0计数

11 SET P1 P1=1

。。。

25 FA BCD 2进制转换成10进制

4-4 把:16进制数:033FFH 转换成10进制数

E0 33 MR0 #33H

E1 FF MR1 #0FFH ;设置数据:033FFH

FA BCD ;转换

结果: R0=01(万);R1=3(千);R2=3(百);R3=1(十);R4=1(个)

033FFH=13311

26 FB SEG ;提取相应数字的字符码 (见字符码表4-1 4-5 已知:R0=9

FB SEG

结果: R0=01111111B ;“9”的字符码按ABCDEFGH从高到低排列。

4-6 显示“9。”

E0 09 MR0#09 R0=9

E1 20 MR1#32 ;间隔系数32

00 CLR P0 ;清P0

A1 ADC R1 ;指向“9。”

FB SEG

结果: R0=1111111111111B;“9。”的字符码

字符码 表:4-2

27 FC SPI ;建立SPI接口,P1:数据,P2:时钟

说明:当P0=0时:输出数据,P2脚输出8个脉冲。

P0=1时:输入数据,P2脚输出8个脉冲。

见波形图4-1

D0 D1 D2 D3 D4 D5 D6 D7 D0 D1 D2 D3 D4 D5 D6 D7

P1

P2

1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8

P0=0:写时序 P0=1:读时序

28 FD WRE ;写数据到E224单元

3 把数据28H 写入E22430H单元。

E1 30 MR1#30H ;设置E224的地址

E0 28 MR0#28H ;数据28H放入R0

FD WRE ;写入

29 FE RDE ;从E224单元读数据

3 E22430H单元的数据读出。

E1 30 MR1#30H ;设置E224的地址

FE RDE ;读出

结果: R0=28H

30 FF PWN ;停机并进入掉电状态

程序结束后,进入掉电状态,降低功耗。

31 D0 REP ;程序返回首行继续执行

例: P1脚产生宽度约:800uS的脉冲串

61 NOT P1

D0 REP ;返回

32~34 D1 AND R0逻辑“与”R1,结果在R0

D2 OR R0逻辑“或”R1,结果在R0

D3 NOT R0取反,结果在R0

例: R0=0FFH R1=01 ;求 R0“与”R1

E0 FF MR0 #0FFH

E1 01 MR1 #01

D1 AND

结果: R0=01H R1=01H

例: R0=0FFH R1=01 ;求 R0“或”R1

E0 FF MR0 #0FFH

E1 01 MR1 #01

D2 OR

结果: R0=0FFH R1=01H

例: R0=0FFH R1=01 ;求 R0“反”

E0 FF MR0 #0FFH

D3 NOT

结果: R0=00H

35 F4 JMP R14 ;上跳1~255行(见例4-1

36 F5 JMP R15 ;下跳1~255行(同 JMP R14

R14R15=0时,进入死循环,要避免!

§ 4-4 转移指令

37 D9 SEE

说明:程序输入完毕后,请输入(D9),LED数码管分两次显示程序的长度,先显示地位字节,再显示高位字节。

38 DA COPYM

说明:程序输入完毕后,请输入(DA),MEAPC-C主控板内的程序,将拷贝到MEAPC-P编程板上,LED数码管显示正在拷贝的地址。

39 DB COPYS

说明:程序输入完毕后,请输入(DB),MEAPC-P编程板内的程序,将拷贝到MEAPC-C主控板上,LED数码管显示正在拷贝的地址。

40 DC BACK

说明:程序输入时,输入(DC),将退回一行。

41~43 DD START

DE MID

DF END

说明:程序输入时,控制编程指针的位置。

§ 4-5 MEAPC应编程技巧

1:程序段独立存放 在编程时,为了修改的方便,可将各功能程序段,彼此拉开距离单独存放见表5-5-1 采用JMP R15间接从程序1段跳转到程序2段,或在中间直接添加空指令(D6~D8)。表5-5-1

2:数据转移指令的合成 例:将R2中的数据转移到R3中。 CLR P0 P0=0 MR0#0 R0=0 ADC R2 R0=R0+R2+P0 CHE R3 R3=R0=R2 3:用MEAPC指令虚拟一个软“SPI”口 例:将R1中的数据从P5脚输出,P6脚同步输出8个正脉冲。

MR0#08;移位8

B0 B0

CHE R1 R0=R1

LRP R0P0位左移1

OUT P5

CLR P6

SET P6 P6脚输出正脉冲

CHE R1 ;恢复R0

DEC R0 ;指针减一

JR0

JMP B0

;输出完毕!

。。。

4:用P1~P8口并行输出字符码,驱动LED数码管(当程序执行周期>20mS时,不宜采用!) 例:将R2R3中存放的BCD码转换成字符码输出 CHE R2 ;取R2数据到R0 SEG ;转换成字符码 MRP ;并行输出 CLR P9 ;点亮LED1数码管 CHE R3 ;取R3数据到R0 SET P9 ;关闭LED1数码管 SEG ;转换成字符码 MRP ;并行输出 CLR P10 ;点亮LED2数码管 D6 ;空指令,延时400uS

SET P9 ;关闭LED2数码管

第五章 应用设计举例

§ 5-1 MEAPC使用说明

MEAPC-C控制板插入MEAPC-P偏程板的18脚插座内。请注意插入的顺序:MEAPC-C控制板上有缺口处为:1P

MEAPC-P编程板的电源插座输入电源,电压范围:4.5~5.5V

上电后即进入编程状态,两位数码管显示程序区的第一条指令(从地址:202H开始),如果是新的E224,则会显示“FF”,且左边第一位数码管会以0.5S的速度内烁。此时用K1K2键(见键盘分布图)修改显示的数值,数值范围:0~F。按K3键右移一位,第2LED数码管开始内烁。同时配合K1K2键完成数据输入。左边第一位LED数码管显示指令,而右边一位数码管则显示数据。当第一条指令输入完毕后,按K4键将指令存入E224中。之后2LED数码管显示下一条指令,依次往下输入即可。每次按键时,个位的LED数码管的小数点会闪亮一下!

当程序全部输入完毕后,请输入伪指令:SEED9)。这条指令可以将程序的长度(WORD)存入E224。同时两位LED数码管闪烁显示长度的低位字节,再按下K4键,显示高位子节,此时LED显示:“HX”。“H”代表高位字节;“X”是高位字节的值。(用户程序的长度约1.5K),再次按下K4键又显示源程序的下一条指令。

程序输入完毕后,可以用DA~DF伪指令查看每一条指令。也可以可按K5键,复位MEAPC。从头开始查看!

为了确保安全,可以在程序输入完毕后,将程序备份到MEAPC-C的备用程序区。请用COPYMDA)伪指令。以后设计其它程序,可以在此程序上修改,可以用COPYSDB)伪指令,将备份程序复制到MEAPC-C的程序区。复制时,两位LED数码管实时显示正在复制的字节地址。约10S复制完毕!

编程完毕后,可将MEAPC-C主控板拨下,插入应用电路中上电中即可工作。

§ 5-2 MEAPC编程举例

     现举例介绍MEAPC的使用。设计一个闪光灯电路(见图5-2-1)。要求:从左到右,每只发光二极管依次闪亮2秒后熄灭,一直循环。设计过程:

划出程序流程图(见图5-2-1

用助记符写出程序:

SET P3 ;关闭LED3

CLR P1 ;打开LED1

1S

1S ;延时2

SET P1 ;关闭LED1

CLR P2 打开LED2

1S

1S ;延时2S

SET P2 ;关闭LED2

CLR P3 ;打开LED3

1S

1S ;延时2

REP ;回到开始,循环!

查表3-1在助记符左边写出对应的指令:

1301F6F61102F6F61203F6F6D0

MEAPC-C主控板插入MEAPC-P编程板,请注意方向!通电。

3中的指令依次输入。为确保安全,可在D0后加入伪指令:COPYMDA)备份程序!

6、按图5-2-1连接好电路,上电! 

 

§ 5-3 MEAPC使用要求

MEAPC-C控制板内部有复位电路,也可加入手动复位电路或看门狗电路(见图5-3-2)。

MEAPC-C控制板的I/O口只能驱动发光二极管,当要驱动较大的负载时(>20mA),必须要加入驱动电路,在工业应用时,必须加入光电隔离电路(见图5-3-1)。

MEAPC-C控制板的I/O口接开关时,请对地连接(见图5-3-3)。

   

判别开关是否闭合,要加入延时20mS去抖动:

IN K1;读K1

JP0 ;按下则跳行

JMP B0

10ms

10ms ;延时20ms

IN K1 ;重读K1

JP0

JMP B0

K1确认按下,做功能处理

。。。

B0:;K1未按下。。

§ 5-4 MEAPC应用实例

    现在介绍一些应用实例,通过它们可以举一反三,设计任意功能的电路及软件。

1MEAPC驱动2LED数码管 采用74LS595锁存器锁存MEAPC输出的字符码,静态驱动LED数码管。串行数据通过MEAPCSPI口输出,锁存信号(RCLK)由P3口输出。可以任意连级控制多位LED数码管显示。上面的LED数码管显示K1按下的次数。下面的LED数码管显示K2按下的次数。K3复位电路。LED数码管根据实际情况,使用共阴、共阳均可,只需将输出的字符码取反。

1-1、程序流程图(见图5-4-11-2

程序见例5-4-1 1-3

电路见图5-4-1

5-4-103 CLR P3 74LS595RCLK=0 24 IN P4 K1 F0 JP0 C0 JMP B0 ;判别K1释放B1B1 B124 IN P4 60 NOT P0 F0 JP0 C1 JMP B1 ;跳转到B1 K1释放 INC R2 ;次数加一B0B0 B0 25 IN P5 ;读K2 F0 JP0 C2 JMP B2 ;判别K2释放B4B4 B425 IN 25 60 NOT P0 F0 JP0 C4 JMP B4K2释放73 INC R3;数据处理B2B2

E1 0F MR1#0FH R1=0FH

92 CHE R2 R2放入R0

D1 AND ;屏蔽高4

FB SEG ;次数转换成相应的字符码。

00 CLR P0 ;输出数据

FC SPI ;输出

93 CHE R3

D1 AND

FB SEG

FC SPI

13 SET P3 ;打开74LS595

D0 REP                                    

2:简易频率计、计数器的设计见图5-4-2

MEAPC内部有一个16位的计数器,因此可以方便地设计:计数器、频率计。驱动LED数码管的芯片,采用PS7219(参见有关资料,图中只划出4位,可扩展到8位)。脉冲信号必须由P11脚输入,并由74LS14整形。

计数器流程见流程图5-4-2-1

频率计流程见流程图5-4-3-2

  2-1:计数器程序: 。。。

MR0#0 ;清零

MR1#0

ST0 ;启动T0

B0 B0 ;标号 10MS ;延时10ms RT0 ;“飞读”T0存放在:R0R1 BCD ;转换成BCD码存放在:R0R1R2R3R4 SEG ;万位转换成字符码,输出 SPI CHE R1;取千位 SEG SPI CHE R2;取百位 SEG SPI CHE R3;取十位 SEG SPI CHE R4;取个位 SEG SPI JMP B0 ;重新刷新2

-2:频率计程序   

。。。;初始化数据

B0 B0

MR0#0 ;清零

MR1#0

ST0 ;启动T0

B1 B1 ;标号 1S ;延时1S CT0 ;关闭T0,数据存放在:R0R1 BCD ;转换成BCD码存放在:R0R1R2R3R4 SEG ;万位转换成字符码,输出 SPI CHE R1;取千位 SEG SPI CHE R2;取百位 SEG SPI CHE R3;取十位 SEG SPI CHE R4;取个位 SEG SPI JMP B0 ;重新刷新

3:电机正反转控制

    电机正反转控制是工业控制中最常见的一种电机控制。用MEAPC完成控制,可以减少继电器互锁之间复杂的线路连接。为了简单描述,电路中未划出光电隔离电路,实际使用时,请务必加入。J1J2是中间继电器,由它们控制接触器。器件功能说明:J1:正转继电器J2:反转继电器ZZ:正转开关FZ:反转开关TZ:停机开关RJ:热保护继电器触点L1L2:继电器工作指示灯(也可并联在J1J2中间继电器线包上)



电机正反转程序:

IN P4 ;读正转开关

JP0 ZZ=0跳行 JMP B0 ;检查反转开关 ;正转开关按下,先判断电机是否反转 IN P2 NOT P0

JP0 ;电机未反转,启动J1

JMP B1 

;关闭J2,稳定后启动J1

100MS ;延时

B1: B1 ;标号

SET P1 ;启动J1

B0 B0 ;检查反转开关 *************************

IN P5 ;读反转开关

JP0 FZ=0跳行 JMP B2 ;检查停机、RJ开关 ;反转开关按下,先判断电机是否正转 IN P1 NOT P0

JP0 ;电机未正转,启动J2

JMP B3

;关闭J1,稳定后启动J2

100MS ;延时

B3: B3 ;标号

SET P2 ;启动J2

B2 B2 ;检查停机、RJ开关

******************

IN P3 ;读停机开关

AND P8 TZRJ JP0 P0=0停机 REP ;循环 ******************* ;停机

SET P1 SET P2 ;关闭继电器

PWN ;进入掉电状态

4:电机的Y/△转换设计

    电机的Y/△启动是工控中最常见的继电器控制电路(传统继电器控制电路请参见有关书籍)。用MEAPC控制的电路图见图5-4-4。为了简单描述电路中未划出光电隔离电路,实际使用时,请务必加入。J1~J3是中间继电器,由它们控制接触器。时间继电器、互锁逻辑等全部由软件完成!器件功能说明:J1:控制电机住电源J2Y启动继电器J3:△工作继电器QT:启动开关TZ:停机开关RJ:热保护继电器触点LP1~LP3:继电器工作指示灯(也可并联在J1~J3中间继电器线包上)


电机的Y/△启动程序: IN P4 JP0 ;开始启动,先吸合Y继电器 REP ;返回开始行,循环 ************* Y启动工作20S CLR P2 Y继电器得电 100MS CLR P1 ;接通主电源 MR0 #200 Y继电器工作20S B0 B0 ;标号

IN P9 ;读RJ热保护

NOT P0 JP0 RJ=1继续延时 **********RJ动作,必须停机 JMP B2 **********20S延时 100MS DEC R0 JR0 20S延时结束跳出 JMP B0 **********△工作 SET P1 ;关闭主电源 SET P2 ;关闭Y继电器 100MS ;等待稳定 CLR J3 ;△继电器工作 100MS ;等待稳定 CLR J1 ;打开主电源 ***********检查:停机开关、“RJB1 B1 IN P5 AND P9 TZ RJ=0,必须停机 JP0 JMP B1 ************停机B2 B2 SET P1 SET P3 ;关闭电源 REP ;重新开始 

                           

5:直流母线闪光灯控制器的设计

    在高压直流母线系统中,为了指明相应控制柜的工作、检修状态,均设有一个闪光灯控制器,当控制柜处于检修状态时,有一个指示灯以1~2S的频率闪烁。传统闪光灯控制器的电路见图5-5-5-1。当有多个闪光灯同时工作时,频率变化大,工作电流变化大,闪光灯控制器(FLASH)经常损坏。用MEAPC代替的电路见图5-5-5-2



    工作原理: 当有开关K接通时,P1将变为低电平0MEAPC检测到后启动软振荡器(1S~2S),并在P2口输出脉冲,推动J继电器工作。MEAPCJ断电时,再次检测P1口,用以判断K是否短开。闪光灯控制器程序: IN P1 Y JP0 REP CLR P2 1S SET P2 1S REP



6:电子时间继电器

    时间继电器在工业控制中应用非常广泛,种类比较多。传统的时间继电器有:空气压缩延时、电子线路延时等方法作成。定时精度低、设定参数不直观。用MEAPC替代时间继电器,电路非常简单、时间设置灵活。在MAEPC中有三条定时指令:10ms100ms1s,它们是由单片机内晶振分频得到精度高。在需要长定时时,可通过R0~R15寄存器配合完成。

现介绍一种可灵活配置延时时间,两路输出的电子时间继电器。

61时间继电器的硬件电路MEAPCP1~P8口连接一个8DIP拨码开关,延时时间分成256档;P9P10控制两个继电器;P11P12P13做外部触发条件输入端。J1是瞬间动作继电器吸合100ms之后释放;J2长吸合继电器。



62软件设计

    8位拨码开关的二进制值读入内部R0寄存器,再根据实际需要预置定时初值。如果定时初值为:1s,则最长可延时256秒。程序清单:。。。。。。IN P8LRP ; P8左移到R0寄存器IN P7LRPIN P6LRPIN P5LRPIN P4LRPIN P3LRPIN P2LRPIN P1 ;读入8位拨码开关的值到R0寄存器B0B0 1S ;延时初值1SDEC R0 JR0 R0=0 跳行JMP B0;延时时间到J1J2动作CLR P9CLR P10 ;打开J1J2100MsSET P9 ;关闭J1

本文来源:https://www.2haoxitong.net/k/doc/b2e0429b580102020740be1e650e52ea5518ce8d.html

《微型嵌入式自编程控制器MEAPC.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式