流水灯的设计方案.docx
- 文档编号:6405044
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:13
- 大小:20.11KB
流水灯的设计方案.docx
《流水灯的设计方案.docx》由会员分享,可在线阅读,更多相关《流水灯的设计方案.docx(13页珍藏版)》请在冰豆网上搜索。
流水灯的设计方案
流水灯设计的方案
显然,要设计出两个以上的程序来实现流水灯闪烁样式的转换.这里设计两个样式.第一个样式主要用SFTL,SFTR指令,该指令很适于流水灯闪烁的情况;第二个样式主要用到MOV指令,实现一些SFTL,SFTR指令难以实现的复杂样式.
为了方便理解,统一两个程序的有关设置:
1.输入/输出接线列表
输入接口:
X1(接常开开关)
输出接口:
(L1表示Lamp1,第一盏灯,如此类推)
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y10
Y11
L1
L2
L3
L4
L5
L6
L7
L8
L9
L10
2.时间设定
每隔0.5秒变换一次.
5.3闪烁样式1的程序设计
5.3.1闪烁样式1的流程
1.顺向单灯流动:
L1→L2→L3→L4→L5→L6→L7→L8→L9→L10
2.逆向单灯隔点跳:
→L9→L7→L5→L3→L1
3.顺向双灯步进:
→L1L2→L3L4→L5L6→L7L8→L9L10
4.逆向双灯流动:
→L10L9→L9L8→L8L7→L7L6→L6L5→L5L4→L4L3→L3L2→L2L1
5.顺向三灯流动:
→L1L2L3→L2L3L4→L3L4L5→L4L5L6→L5L6L7→L6L7L8→L7L8L9→L8L9L10
6.逆向五灯互映:
→L10L9L8L7L6→L5L4L3L2L1
7.顺向隔点累亮:
→L1L3→L1L3L5L7→L1L3L5L7L9
8.顺向填亮隔点:
→L1L2L3L5L7L9
→L1L2L3L4L5L7L9
→L1L2L3L4L5L6L7L9
→L1L2L3L4L5L6L7L8L9
→L1L2L3L4L5L6L7L8L8L9L10
返回1→L1,如此循环.
5.3.2闪烁样式1的语句表STL
0LDX001;X001为输入口
1ANIM0
2OUTT0K5;每0.5秒移位1次
5LDT0
6OUTM0
7LDX001
8MPS;压入堆栈
9ANIM1;作X001的开关,便于循环复位
10OUTT1K6;在移位前要先使移位寄存器首位得电
13MPP;弹出堆栈
14ANIT1
15OUTM10;用M10不直接用M151,是为了便于移到末位时切换
16LDM240
17ORT2;T2得电后,形成自锁,使M110保持得电,使M241~M250构成的移位寄存器随着左移不断置1,从而实现累亮
18MPS
19ANIM2;作M240的开关,便于循环复位
20OUTT2K1
23MPP
24OUTM110
25LDM0
26SFTLM10M151K10K1;M151~M160构成10位移位寄存器,每次左移1位
35SFTRM20M161K10K2;M161~M170构成10位移位寄存器,每次右移2位
44SFTLM30M171K10K2
53SFTRM40M182K9K1
62SFTRM50M191K9K1
71SFTLM60M201K8K1
80SFTLM80M212K8K1;避免M70段特殊继电器
89SFTLM90M223K8K1
98SFTRM100M231K10K5
107SFTLM110M241K10K2
116SFTLM120M251K10K1
125LDM151
126ORM161;由于输出口Y0~Y11不能构成移位寄存器,因而用一系列继电器组成移位寄存器,为了避免移位紊乱,因而组成多个不同的移位寄存器
127ORM171
128ORM181
129ORM191
130ORM201
131ORM211
132ORM221
133ORM231
134ORM241
135ORM251
136OUTY000
137LDM152
138ORM162
139ORM172
140ORM182
141ORM192
142ORM202
143ORM212
144ORM222
145ORM232
146ORM242
147ORM252
148OUTY001
149LDM153
150ORM163
151ORM173
152ORM183
153ORM193
154ORM203
155ORM213
156ORM223
157ORM233
158ORM243
159ORM253
160OUTY002
161LDM154
162ORM164
163ORM174
164ORM184
165ORM194
166ORM204
167ORM214
168ORM224
169ORM234
170ORM244
171ORM254
172OUTY003
173LDM155
174ORM165
175ORM175
176ORM185
177ORM195
178ORM205
179ORM215
180ORM225
181ORM235
182ORM245
183ORM255
184OUTY004
185LDM156
186ORM166
187ORM176
188ORM186
189ORM196
190ORM206
191ORM216
192ORM226
193ORM236
194ORM246
195ORM256
196OUTY005
197LDM157
198ORM167
199ORM177
200ORM187
201ORM197
202ORM207
203ORM217
204ORM227
205ORM237
206ORM247
207ORM257
208OUTY006
209LDM158
210ORM168
211ORM178
212ORM188
213ORM198
214ORM208
215ORM218
216ORM228
217ORM238
218ORM248
219ORM258
220OUTY007
221LDM159
222ORM169
223ORM179
224ORM189
225ORM199
226ORM209
227ORM219
228ORM229
229ORM239
230ORM249
231ORM259
232OUTY010
233LDM160
234ORM170
235ORM180
236ORM180
237ORM200
238ORM210
239ORM220
240ORM230
241ORM240
242ORM250
243ORM260
244OUTY011
245LDM160
246OUTM20
247LDM161
248OUTM30
249OUTM31
250LDM180
251OUTM40
252OUTM50
253LDM191
254OUTM60
255OUTM80
256OUTM90
257LDM230
258OUTM100
259OUTM101
260OUTM102
261OUTM103
262OUTM104
263LDM249
264OUTM120
265LDM260
266OUTM1;这里先复位M1、M2,是为了解除对X001和M240的自锁
267OUTM2
268OUTT4K5
271LDT4
272ZRSTM3M270;复位M3~M270,实现循环
277END;程序结束
5.3.3闪烁样式1的程序说明
1.关于SFTL,SFTR,ZRST的用法详见编程手册.
2.X001输入口接常开开关,仿真软件中X20~X23为点动开关,若用要加自锁结构.
3.编程时注意继电器M的序号与定时器的参数关系.
5.4闪烁样式2的程序设计
5.4.1闪烁样式2的流程
1.中间扩散亮:
L5L6
→L4L5L6L7
→L3L4L5L6L7L8
→L2L3L4L5L6L7L8L9
→L1L2L3L4L5L6L7L8L9L10
2.隔点排列:
→L1L3L5L7L9
→L2L4LL6L8L10
3.顺向逐点累灭:
→L1L2L3L4L5L6L7L8L9L10
→L2L3L4L5L6L7L8L9L10
→L3L4L5L6L7L8L9L10
→L4L5L6L7L8L9L10
→L5L6L7L8L9L10
→L6L7L8L9L10
→L7L8L9L10
→L8L9L10
→L9L10
→L10
→全灭
4.逆向逐点累亮:
→L10
→L9L10
→L8L9L10
→L7L8L9L10
→L6L7L8L9L10
→L5L6L7L8L9L10
→L4L5L6L7L8L9L10
→L3L4L5L6L7L8L9L10
→L2L3L4L5L6L7L8L9L10
→L1L2L3L4L5L6L7L8L9L10
5.顺向灭灯流动:
→L2L3L4L5L6L7L8L9L10
→L1L3L4L5L6L7L8L9L10
→L1L2L4L5L6L7L8L9L10
→L1L2L3L5L6L7L8L9L10
→L1L2L3L4L6L7L8L9L10
→L1L2L3L4L5L7L8L9L10
→L1L2L3L4L5L6L8L9L10
→L1L2L3L4L5L6L7L9L10
→L1L2L3L4L5L6L7L8L10
→L1L2L3L4L5L6L7L8L9
返回1→L5L6,如此循环.
5.4.2闪烁样式2的语句表STL
0LDX001;X001为输入口
1OUTT0K0
4LDT0
5MOVK48K3Y000;DEC48=BIN0000110000,转换后被送到输出,中间输出置高电平而使中间两灯亮(这里也可以用十六进制数表示,即将K48改成H0030);K3Y000表示3组四位公共输出映象寄存器组成一个12位的寄存器,因为需要10位输出,用3组才能保证位数大于10
10OUTT1K5;隔0.5秒变换1次
13LDT1
14MOVK120K3Y000;DEC120=BIN0001111000
19OUTT2K5
22LDT2
23MOVK252K3Y000;DEC252=BIN0011111100
28OUTT3K5
31LDT3
32MOVK510K3Y000;DEC510=BIN0111111110
37OUTT4K5
40LDT4
41MOVK1023K3Y000;DEC1023=BIN1111111111
46OUTT5K5
49LDT5
50MOVK341K3Y000;DEC341=BIN1010101010
55MOVK3413D0;DEC3413=BIN111010101010,转换后送到D0,注意到该二进制数低10位与前数相同
60OUTT6K5
63LDT6
64CMLD0K3Y000;取反D0,增加程序的可读性
69OUTT7K5
72LDT7
73MOVK1023K3Y000
78OUTT8K5
81LDT8
82MOVK1022K3Y000;DEC1022=BIN1111111110
87OUTT9K5
90LDT9
91MOVK1020K3Y000;DEC1020=BIN1111111100
96OUTT10K5
99LDT10
100MOVK1016K3Y000;DEC1016=BIN1111111000
105OUTT11K5
108LDT11
109MOVK1008K3Y000;DEC1008=BIN1111110000
114OUTT12K5
117LDT12
118MOVK992K3Y000;DEC992=BIN1111100000
123OUTT13K5
126LDT13
127MOVK960K3Y000;DEC960=BIN1111000000
132OUTT14K5
135LDT14
136MOVK896K3Y000;DEC896=BIN1110000000
141OUTT15K5
144LDT15
145MOVK768K3Y000;DEC768=BIN1100000000
150OUTT16K5
153LDT16
154MOVK512K3Y000;DEC512=BIN1000000000
159OUTT17K5
162LDT17
163MOVK0K3Y000;DEC512=BIN0000000000
168OUTT18K5
171LDT18
172MOVK512K3Y000
177OUTT19K5
180LDT19
181MOVK768K3Y000
186OUTT20K5
189LDT20
190MOVK896K3Y000
195OUTT21K5
198LDT21
199MOVK960K3Y000
204OUTT22K5
207LDT22
208MOVK992K3Y000
213OUTT23K5
216LDT23
217MOVK1008K3Y000
222OUTT24K5
225LDT24
226MOVK1016K3Y000
231OUTT25K5
234LDT25
235MOVK1020K3Y000
240OUTT26K5
243LDT26
244MOVK1022K3Y000
249OUTT27K5
252LDT27
253MOVK1023K3Y000
258OUTT28K5
261LDT28
262MOVK1022K3Y000;DEC1022=BIN1111111110
267OUTT29K5
270LDT29
271MOVK1021K3Y000;DEC1022=BIN1111111101
276OUTT30K5
279LDT30
280MOVK1019K3Y000;DEC1019=BIN1111111011
285OUTT31K5
288LDT31
289MOVK1015K3Y000;DEC1015=BIN1111110111
294OUTT32K5
297LDT32
298MOVK1007K3Y000;DEC1007=BIN1111101111
303OUTT33K5
306LDT33
307MOVK991K3Y000;DEC991=BIN1111011111
312OUTT34K5
315LDT34
316MOVK959K3Y000;DEC959=BIN1110111111
321OUTT35K5
324LDT35
325MOVK895K3Y000;DEC895=BIN1101111111
330OUTT36K5
333LDT36
334MOVK767K3Y000;DEC895=BIN1011111111
339OUTT37K5
342LDT37
343MOVK511K3Y000;DEC895=BIN0111111111
348OUTT38K5
351LDT38
352ZRSTT0T38;复位T0~T38,实现循环
357END;程序结束
5.4.3闪烁样式2的程序说明
1.关于MOV,CML的用法详见编程手册[14].
2.使用以下表格有助于进行位分析:
表5-1
1
2
4
8
16
32
64
128
256
512
例如,要使中间两灯亮,即要使中间两输出口置高电平,即要把二进制数0000110000送到输出,对应上表格,16+32=48,即BIN0000110000=DEC48,这就是为什么要把48送到输出的原因.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 流水 设计方案