电子开发 | 基础入门 | 电路原理图 | 濠电姵顔栭崰鏍偑閹绢喖鍨傚ù鐓庣摠閸ゅ霉閸忓吋缍戦柣鎰躬閺岀喖顢涢崱妤佸櫤婵犮垺鐗楃换娑㈠箻鐎电ǹ鏆¢梺鐟板殩閹凤拷 | PLC闂傚倷鑳剁涵鍫曞疾閻愭祴鏋嶉柨婵嗩槶閳ь兛绶氶弫鎾绘晸閿燂拷   闂傚倷绶氬ḿ褍螞濡ゅ懏鏅濋柕鍫濐槶閳ь剙鎳撻ˇ鍦偓娈垮枤鏋顏冨嵆瀹曟﹢鍩¢崘褏閽靛┑鐘垫暩閸嬫稑螞鎼淬劌鍨傞柛婵嗗閼板潡鏌熷▓鍨灓闁告纰嶇换娑㈠幢濡吋鍣紓浣插亾濠㈣埖鍔栭崑锝夋煕閵夘喖澧柡渚€浜堕幃妤冨枈婢跺顏� Ctrl+D 闂傚倷绀佺紞濠傖缚瑜旈、鏍川椤旇棄寮块梺鍐叉惈閹冲海绱掗埡鍛厵妞ゆ牗绮岄。鍏笺亜閵夛箑鐏撮柡灞诲妼閳藉螖閸愩劌顬夐梻浣告啞閺屻劑骞婇幇鏉跨妞ゆ劧绠戦~鍛存煃閵夈儱甯犻柟鏌ョ畺濮婂搫效閸パ冾瀳闁诲孩鍑归崣鍐嚕椤愶富鏁嬮柍褜鍓熼悰顕€骞囬鐔奉€撶紒鍓у閿氬ù婊堢畺閺屻劑鎮ら崒娑橆伓婵犵數鍋為崹鍫曞箰閹绢喖纾婚柟鍓х帛閸嬶絿鎲稿澶婂簥闁哄被鍎洪弫鍡涙煟閺傛寧鎲搁柍缁樻礋閺岋絽螣婢剁ǹ鎯堝銈呯箻娴滃爼骞冪涵鍜佹Ь闂佸搫鑻ˇ閬嶅箲閵忕姈鐔哥瑹椤栨稒銆冮梻渚€娼чˇ浠嬪垂瀹曞洨鐭嗗鑸靛姈閻撶喖鏌曡箛瀣偓鏍р槈瑜旈弻锝夊焺閸愵亝鍣у銈嗘穿缂嶄線宕洪埀顒併亜閹烘垵顏╅柣顓燁殜閺岀喓鈧數枪瀛濈紓浣规⒒閸嬫挾鎹㈠☉銏犲耿闁归偊鍓涙导鍥╃磽娴g瓔鍤欐い鎴濐樀閻涱噣宕橀鍏夊亾閿曞倸绠抽柡鍐ㄥ亰缁憋拷.

电子开发网

PLC闂傚倷鑳堕幊鎾绘倶閸儱纾婚柟鍓х帛閻撴盯鏌涢顐㈠閻庢熬鎷� 濠电姵顔栭崰鏍偑閹绢喖鍨傚ù鐓庣摠閸ゅ霉閸忓吋缍戦柣鎰躬閺岀喖顢涢崱妤佸櫤婵犮垺鐗楃换娑㈠箻鐎电ǹ鏆¢梺鐟板殩閹凤拷 plc闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛濠傚⒉濠殿垱鎸抽幃褰掑箒閹烘垵顬夐梺鍝勬4閹凤拷 闂傚倷鐒﹂惇褰掑垂瑜版帗鍊舵慨妯跨簿婵櫕銇勯弮鍌涙珪闁崇粯妫冮弻鐔煎箚瑜滈崵鐔兼煕閳哄瀚�
濠电姵顔栭崰姘跺箠閹捐鐒垫い鎺戝€搁弸鎴犵磼閵娧冣枅闁哄矉缍佹慨鈧柕鍫濇闁款參姊洪悜鈺傤潐闁瑰嚖鎷� 闂傚倷鑳剁划顖炲箰閸℃稑绀嬫い鎺戭槹缂嶆﹢姊绘担鍦菇闁搞劏妫勫玻鑳槻闁宠绉归弫鎾绘晸閿燂拷 闂傚倷鐒﹂惇褰掑垂閽樺缂氱憸鏃堝箖閸濆嫧鏋庨柟鎯х-椤︻偊姊洪崫鍕ⅱ闁轰礁鎽滅划娆撴晸閿燂拷 闂傚倷鑳堕幊鎾寸珶婵犲洤鍨傞梻鍫熺〒閺嗭箓寮堕崼娑樺闁崇懓绉归弻宥夊Ψ閵夈儲姣愭繝鐢靛剳閹凤拷
闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鏈妶锝夊礃閵娿儱浜堕梻浣虹帛濮婂宕曢妶澶婄9闁跨噦鎷� 濠电姷顣藉Σ鍛村垂椤忓牆绀堟繝闈涚墐閸嬫挸顫濋鐘冲櫚闂佽鍠曠划娆徫涢崘銊㈡婵﹩鍘介崯锟� 闂傚倷娴囧銊╂倿閿曗偓椤灝顫滈埀顒勫箖妤︽妯勯梺璇″枙缁瑥螞閸愩劉妲堟慨姗嗗幗閸燂拷 闂傚倸鍊搁崐鎼佹晝閵夛妇绠惧┑鐘叉储閳ь剙鍊垮畷濂稿即閻旇渹缂撳┑鐐舵彧缁蹭粙宕导瀛樺亜闁跨噦鎷� 闂傚倷绀侀幖顐﹀疮閻楀牊鍙忛柣鎴f閸氬綊骞栧ǎ顒€濡介柛瀣ㄥ姂閺屻劑鎮ら崒娑橆伓
电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册

闂傚倷绀侀悿鍥涢崟顖氱疇闁圭増婢橀弸渚€鏌涘┑鍕姕鐎规洖顦伴妵鍕冀閵娿劌顥濋悷婊勬緲濡盯鍩€椤掍緡鍟忛柛鐘崇墱閹广垽骞嬮悙瀛樼彿濠电姴锕ら悧鍡欑矆閸愵亖鍋撻崗澶婁壕闁诲函缍嗛崜娑⑺囬鈧娲传閸曨厼顣甸梺绋款儐閹瑰洭寮婚敓鐘茬<婵炴垶锕╁Λ鍡樼節閳封偓閸曞灚鐤佹繝纰樷偓宕囨憼缂佺粯绻堝畷鐔碱敆娴e湱妲戦梻浣筋嚙鐎涒晝绮欓幒妤€绀夋俊銈呮噹閺嬩線鏌涘┑鍕姕鐎规洖顦伴妵鍕冀閵娿劌顥濋悷婊勬緲濡盯鍩€椤掍緡鍟忛柛鐘崇墱閹广垹螖閸滀焦鏅i梺鍛婄缚閸庤櫕绋夊鍡曠箚闁靛牆鍊告禍鎯р攽閻愬弶鍣洪悽顖楀墲娣囧﹦鈧數纭堕崑鎾绘晲閸涱収鏆㈢紓浣插亾濠㈣埖鍔栭悡鐔搞亜椤愵偄骞樼紒浣哄厴閺岋綁顢橀姀銏㈡毇閻庤娲橀〃濠囥€佸Δ鍛劦妞ゆ帒鍊归~鏇㈡煥閻斿搫孝闁藉啰鍠栭弻鏇熷緞濡厧甯ラ梺鎼炲€曠€氫即寮婚悢鍏碱棃婵炴垵宕崜浼存⒑閸濄儱鍓抽柟鍑ゆ嫹 闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鏈妶锝夊礃閵娧屾Н婵$偑鍊栧濠氬磻閹惧墎纾奸柟鎻掝儑绾惧潡鏌熷畡閭﹀剶闁轰礁绉瑰畷鐔碱敇閻斿摜妲楅梻鍌欑窔濞艰崵寰婃繝姘濠电姴娲ら悞鍨亜閹哄秶顦﹀┑顔碱樀閺屸剝鎷呴崨濠冨枑闂侀€炲苯澧紒瀣浮瀹曟繈骞掗弬鍨亰闂佺粯锚绾绢參鍩㈤弮鈧幈銊ヮ潨閸℃ぞ绨奸梺娲讳簷缁瑩寮诲☉妯锋婵炲拋鍙庢禍鐐哄箲閵忋倕鐒垫い鎺嗗亾妞ゎ叀娉曢幑鍕倻濡警妲卞┑鐘媰閸曨厾鐓夐悗瑙勬礃宀f寧绂掗敃鍌涘€婚柍杞版婢规洟姊虹捄銊ユ珢闁瑰嚖鎷�
闂傚倷绀侀悿鍥涢崟顐嬫稑螖閳ь剟鎮鹃悜钘夌妞ゆ巻鍋撶紒鍓佸仱閺屽秵娼幍顔跨獥闂佸憡鏌ㄩ幊搴ㄦ箒闂佺ǹ绻楁竟鍫熺珶濡皷鍋撶憴鍕闁哥姵鐗犻獮鍐樄鐎规洖鐖兼俊鎼佹晜閸撗勵嚇闂備浇顕ф绋匡耿闁秴纾绘俊顖氬悑椤愪粙鏌ㄩ悤鍌涘100 c闂備浇宕垫慨鏉懨归崒鐐茬煑闁逞屽墴閺屽秵瀵煎▎鎰伓 chm闂傚倷绀侀幖顐ょ矓閸洖鍌ㄧ憸蹇撐i幇鐗堟櫢闁绘ê寮妷鈺傜厱閻忕偛澧界粻姗€鏌曢崼顐喊闁哄矉绻濆畷鎺戔槈濮橆厼娅戦梻浣告憸閸嬫盯顢氶銏犵劦妞ゆ巻鍋撴繝鈧柆宥冣偓浣圭節閸ヨ埖鏅┑鐐村灦濮樸劎澹曟總鍛婄厱闁宠棄妫楅獮妯肩磼閳ь剚寰勯幇顓炰画闂佸搫娲ㄩ崑鐐核夐悩宕囩闁圭粯甯弨鑽ょ磼濡ゅ啫鏋旈柍褜鍓ㄧ紞鍡樼閻愬搫绠虹€广儱鎷嬮悢鍡涙煠閸濄儲鏆╅柛鐔诲皺缁辨帗娼忛妸褏鐤勯悗瑙勬礃閿曘垹鐣烽妸鈺婃晣鐟滃秹寮查敐鍛傛棃鎮╅棃娑楀摋闂佽法鍠嗛崕鐢稿春閳ь剚銇勯幒宥囶槮濠殿喖顦甸弻鈩冩媴閸涘﹥鍠愰梺閫炲苯澧紒瀣浮瀹曟繈骞掗弬鍨亰闂佺粯锚绾绢參鍩㈤弮鈧幈銊ヮ潨閸℃ぞ绨奸梺娲讳簷缁瑩寮诲☉妯锋婵炲拋鍙庢禍鐐哄箲閵忋倕鐒垫い鎺嗗亾妞ゎ叀娉曢幑鍕倻濡警妲卞┑鐘媰閸曨厾鐓夐悗瑙勬礃宀f寧绂掗敃鍌涘€婚柍杞版婢规洟姊虹捄銊ユ珢闁瑰嚖鎷�
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 单片机 >> 正文

AT89C51,51单片机1602液晶显示时钟程序

作者:佚名    文章来源:本站原创    点击数:2122    更新时间:2018-03-12

51单片机时钟c语言程序,这是一款AT89C51单片机1602液晶显示时钟程序,功能主要有:温度、时间、日期、星期显示以及调节。有多级菜单显示。第一级菜单调节时间、日期。第二级菜单显示自定义信息。
AT89C51单片机1602液晶显示时钟程序

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
#include"reg52.h"
#include"intrins.h"
#define uchar unsigned char
#define uint unsigned int
sbit DQ=P2^1;
sbit light=P2^7;
sbit k1=P1^0;
sbit k2=P1^1;
sbit k3=P1^2;
sbit k4=P1^3;
sbit k5=P1^4;
sbit LED1=P1^3;
sbit LED2=P1^4;
sbit DS1302_CE=P3^5;
sbit DS1302_IO=P3^6;
sbit DS1302_SCLK=P3^7;
sbit LCD1602_RS=P2^4;
sbit LCD1602_RW=P2^5;
sbit LCD1602_EN=P2^6;
extern uchar wendu[4];
extern void get_wendu();
extern void LCD1602_init();
extern void LCD1602_wcmd(uchar cmd);
extern void LCD1602_wdat(uchar dat);
extern void LCD1602_pos(uchar x,bit y);         //定义显示位置,x为列,y为行,0上1下
extern void LCD1602_dischar(uchar x,bit y,uchar dat); //在指定位置显示字符
extern void LCD1602_prints(uchar x,bit y,uchar *p);  //显示字符串
extern uchar dt[7];
extern void set_time();
extern void get_time();
extern void DS1302_init();
 
uchar dt[7];
void DS1302_write_byte(uchar dat)
{
  char i;
  for(i=0;i<8;i++)
  {
    DS1302_SCLK = 0;
        _nop_();
        _nop_();
        dat >>= 1;
        DS1302_IO = CY;
        DS1302_SCLK=1;
        _nop_();
        _nop_();
  }
}
uchar DS1302_read_byte()
{
  uchar i;
  uchar dat = 0;
  for(i=0;i<8;i++)
  {
    DS1302_SCLK = 0;
        _nop_();
        _nop_();
        dat >>= 1;
        if(DS1302_IO) dat |= 0x80;
        DS1302_SCLK =1;
        _nop_();
        _nop_();
  }
  return dat;
}
 
void DS1302_write(uchar address,uchar dat)
{
  DS1302_CE=0;
  _nop_();
  _nop_();
  DS1302_SCLK=0;
  _nop_();
  _nop_();
  DS1302_CE=1;
  _nop_();
  _nop_();
  DS1302_write_byte(address);
  DS1302_write_byte(dat);
  DS1302_SCLK=1;
  DS1302_CE=0;
}
 
uchar DS1302_read(uchar address)
{
  uchar dat;
  DS1302_CE=0;
  _nop_();
  _nop_();                                        
  DS1302_SCLK=0;
  _nop_();
  _nop_();
  DS1302_CE=1;
  _nop_();
  _nop_();
  DS1302_write_byte(address);
  dat =DS1302_read_byte();
  DS1302_SCLK=1;
  DS1302_CE=0;
  dat=dat/16*10+dat;
  return dat;
}
void DS1302_init()
{
  DS1302_write(0x8e,0x00);
  DS1302_write(0x80,0x00);
  DS1302_write(0x82,0x00);
  DS1302_write(0x84,0x12);
  DS1302_write(0x86,0x10);
  DS1302_write(0x88,0x11);
  DS1302_write(0x8a,0x06);
  DS1302_write(0x8c,0x12);
  DS1302_write(0x8e,0x80);
}
void set_time()
{
  uchar i,j=0x80;
  for(i=0;i<7;i++)
  {
    dt[i]=dt[i]/10*16+dt[i];
  }
  DS1302_write(0x8e,0x00);
  DS1302_write(0x80,0x00);
  for(i=0;i<7;i++)
  {
    DS1302_write(j,dt[i]);
    j+=2;
  }
  DS1302_write(0x8e,0x80);
}
void get_time()
{
  dt[0] =DS1302_read(0x81);
  dt[1] =DS1302_read(0x83);
  dt[2] =DS1302_read(0x85);
  dt[3] =DS1302_read(0x87);
  dt[4] =DS1302_read(0x89);
  dt[5] =DS1302_read(0x8b);
  dt[6] =DS1302_read(0x8d);
}
void chaongdiaon()                                   //充电
{
DS1302_write(0x8e,0x00);         
  _nop_();
  _nop_();
DS1302_write(0x90, 0xa6);    //使能充电   用一个二极管  用4k电阻
DS1302_write(0x8e,0x80);         
  _nop_();
  _nop_();
}
uchar code self_char[]={
  0x08,0x0f,0x12,0x0f,0x0a,0x1f,0x02,0x02, //年
  0x0f,0x09,0x0f,0x09,0x0f,0x09,0x13,0x01, //月
  0x0f,0x09,0x09,0x0f,0x09,0x09,0x0f,0x00, //日
  0x18,0x18,0x07,0x08,0x08,0x08,0x07,0x00, //温度标志— —摄氏度
  0x00,0x04,0x0E,0x1F,0x0E,0x04,0x00,0x00, //符号◆
  0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff, //全开
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, //
  0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00         //
                                           };
bit lcd_busy()
{
  bit result;
  LCD1602_RS=0;
  LCD1602_RW=1;
  LCD1602_EN=1;
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  result = (bit)(P0&0x80);
  LCD1602_EN=0;
  return(result);
}
void LCD1602_wcmd(uchar cmd)
{
  while(lcd_busy());
  LCD1602_RS=0;
  LCD1602_RW=0;
  _nop_();
  _nop_();
  LCD1602_EN=1;
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  P0=cmd;
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  LCD1602_EN=0;
}
void LCD1602_wdat(uchar dat)
{
  while(lcd_busy());
  LCD1602_RS=1;
  LCD1602_RW=0;
  LCD1602_EN=1;
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  P0=dat;
  _nop_();
  _nop_();
  _nop_();
  _nop_();
  LCD1602_EN=0;
}
void LCD1602_pos(uchar x,bit y)                //指定坐标,x为列,0~15,y为行,0为第一行,1为第二行。
{
  if(y)LCD1602_wcmd(x|0xc0);
  else LCD1602_wcmd(x|0x80);
}
void LCD1602_dischar(uchar x,bit y,uchar dat)        //指定位置显示一个字符
{
  LCD1602_pos(x,y);
  LCD1602_wdat(dat);
}
void LCD1602_prints(uchar x,bit y,uchar *p)                                        //指定位置显示字符串
{
  LCD1602_pos(x,y);
  while((*p) != '\0') {LCD1602_wdat(*p);p++;}
}
void LCD1602_init()
{
  uchar i;
  LCD1602_wcmd(0x40);
  for(i=0;i<64;i++)
        {
          LCD1602_wdat(self_char[i]);
        }
  LCD1602_wcmd(0x38);
  LCD1602_wcmd(0x38);
  LCD1602_wcmd(0x0c);
  LCD1602_wcmd(0x06);
  LCD1602_wcmd(0x01);
}
uchar wendu[4];
void delay_18b20(uchar i)
{
  int j;
  for(j=0;j
}
uchar init_18b20()
{
  uchar i;
  DQ=0;
  delay_18b20(30);
  DQ=1;
  delay_18b20(3);
  i=DQ;
  delay_18b20(20);
  return(i);
}
uchar read_18b20_bit()
{
  uchar i;
  DQ=0;
  DQ=1;
  for(i=0;i<3;i++);
  return(DQ);
}
void write_18b20_bit(unsigned xbit)
{
  DQ=0;
  if(xbit==1)
  DQ=1;
  delay_18b20(5);
  DQ=1;
}
uchar read_18b20_byte()
{
  uchar i,j,value;
  j=1;
  value=0;
  for(i=0;i<8;i++)
  {
        if(read_18b20_bit())
        {
          value=value+(j<<i); j="x" {="" for(i="0;i<8;i++)" i,j;="" uchar="" x)="" write_18b20_byte(uchar="" void="" }="" return(value);="" delay_18b20(6);="">>i;
        j=j&0x01;
        write_18b20_bit(j);
        delay_18b20(5);
  }
}
void get_wendu()
{
  uchar a,b;
  float get_temp;
  int temp1,temp2;
  init_18b20();
  write_18b20_byte(0xcc);
  write_18b20_byte(0x44);
  init_18b20();
  write_18b20_byte(0xcc);
  write_18b20_byte(0xbe);
  a=read_18b20_byte();         //低8位
  b=read_18b20_byte();         //高8位
  temp1=b;
  temp1=temp1<<8;
  temp1=temp1|a;
  if(b&0xfc)
        {wendu[0]=1;temp1=~temp1+1;}                //0正1负
  else
    wendu[0]=0;
  get_temp=temp1*0.0625;
  temp2=get_temp*10+0.5;
  wendu[1]=temp200/100;
  wendu[2]=temp2000/10;
  wendu[3]=temp2000;
}
 
uchar mode=0,OK=0;
uchar dis1[16],dis2[16];
//uchar IRCOM[7],IRCODE=0;
uchar NUM1,NUM2;
uchar count;
bit L=0,select=0,DIS_EN=1,SHAN;
void delay(uint i)
{
  uchar j;
  while(i-- !=0)
  {
    for(j=0;j<120;j++);
  }
}
void delay1(uchar i)
{
  uchar j;
  while(i--)
  {for(j=0;j<13;j++){}}
}
 
void get_dis()
{
  dis1[0]='2';
  dis1[1]='0';
  dis1[2]=0x30+dt[6]/10;
  dis1[3]=0x30+dt[6];
  dis1[4]=0;
  dis1[5]=0x30+dt[4]/10;
  dis1[6]=0x30+dt[4];
  dis1[7]=1;
  dis1[8]=0x30+dt[3]/10;
  dis1[9]=0x30+dt[3];
  dis1[10]=2;
  dis1[11]=' ';
  dis1[12]=' ';
  switch(dt[5])
  {
        case 1: {
                          dis1[13]='M';
                          dis1[14]='o';
                          dis1[15]='n';
                        }
                        break;
        case 2: {
                          dis1[13]='T';
                          dis1[14]='u';
                          dis1[15]='e';
                        }
                        break;
        case 3: {
                          dis1[13]='W';
                          dis1[14]='e';
                          dis1[15]='d';
                        }
                        break;
        case 4: {
                          dis1[13]='T';
                          dis1[14]='h';
                          dis1[15]='u';
                        }
                        break;
        case 5: {
                          dis1[13]='F';
                          dis1[14]='r';
                          dis1[15]='i';
                        }
                        break;
        case 6: {
                          dis1[13]='S';
                          dis1[14]='a';
                          dis1[15]='t';
                        }
                        break;
        case 7: {
                          dis1[13]='S';
                          dis1[14]='u';
                          dis1[15]='n';
                        }
                        break;
  }
  dis2[0]=' ';
  dis2[1]=0x30+dt[2]/10;
  dis2[2]=0x30+dt[2];
  dis2[3]=':';
  dis2[4]=0x30+dt[1]/10;
  dis2[5]=0x30+dt[1];
  dis2[6]=':';
  dis2[7]=0x30+dt[0]/10;
  dis2[8]=0x30+dt[0];
  dis2[9]=' ';
  if(wendu[0]==1)
        dis2[10]=0x2d;
  else
        dis2[10]=' ';
  dis2[11]=0x30+wendu[1];
  dis2[12]=0x30+wendu[2];
  dis2[13]='.';
  dis2[14]=0x30+wendu[3];
  dis2[15]=3;
}
void keyscan()
{
  if(k1==0)
  {
        delay(10);
        if(k1==0)
        {
           while(!k1);
          mode++;
          if(mode==1 && OK==0)
                LCD1602_wcmd(0x01);        
          if(mode==2 && OK==0)       
          {
                mode=0;
                select=0;
          }
          if(select==0 && OK==1)
          {
                if(mode==7)
                  mode=1;
          }
          if(select==1 && OK==1)
          {
                if(mode==6)
                  mode=1;
          }
        }
  }
if(k2==0)
  {
        delay(10);
        if(k2==0)
        {
          while(!k2);
          if(mode==1 && OK==0)
            {select=~select;LCD1602_wcmd(0x01);}
          NUM1++;
        }
  }
  if(k3==0)
  {
        delay(10);
        if(k3==0)
        {
          while(!k3);
          if(mode==1 && OK==0)
            {select=~select;LCD1602_wcmd(0x01);}
          NUM2++;
        }
  }
  if(k4==0)
  {
        delay(10);
        if(k4==0)
        {
          while(!k4);
          if(mode==0)
                light=~light;
          if(mode !=0)
          {
            LCD1602_wcmd(0x01);
                OK++;
                NUM1=0;
                NUM2=0;
                if(OK==2)
                {
                  LCD1602_wcmd(0x01);
                  set_time();
//                  set_alarm();
                  mode=0;
                  select=0;
                  OK=0;
                }
          }
        }
  }
  if(k5==0)
  {
        delay(100);
        if(k5==0)
        {
          while(!k5);
          DS1302_init();
        }
  }       
}       
 
 
void display()
{
  get_wendu();
  get_dis();
  if(mode==0)        //正常模式                                        
  {
        uchar i;
        LED1=1;
        get_time();
//        get_alarm();
        LCD1602_pos(0,0);
        for(i=0;i<16;i++)
          LCD1602_wdat(dis1[i]);
        LCD1602_pos(0,1);
        for(i=0;i<16;i++)
          LCD1602_wdat(dis2[i]);
  }
  if(mode==1&&OK==0)  //菜单模式
  {
        LCD1602_prints(1,0,"1.Set Time");
        LCD1602_prints(1,1,"2.About...");
        if(select)
          LCD1602_dischar(0,1,4);
        else
          LCD1602_dischar(0,0,4);
  }
  if(OK==1&&select==0)          //调日期模式
  {
        uchar i;
        LCD1602_pos(0,0);
        for(i=0;i<16;i++)
          LCD1602_wdat(dis1[i]);
        LCD1602_pos(0,1);
        for(i=0;i<10;i++)
          LCD1602_wdat(dis2[i]);
        LCD1602_prints(10,1,"Set...");
        if(SHAN==1) LCD1602_prints(10,1,"Set.  ");
        if(mode==1)                  //调分模式,秒位清零
        {
          dt[0]=0;
          LCD1602_dischar(7,1,0x30+dt[0]/10);
          LCD1602_dischar(8,1,0x30+dt[0]);
          if(NUM1!=0)
                {
                  dt[1]++;
                  if(dt[1]==60)
                        dt[1]=0;
                  LCD1602_dischar(4,1,0x30+dt[1]/10);
                  LCD1602_dischar(5,1,0x30+dt[1]);
                  NUM1=0;
                }
                if(NUM2!=0)
                {
                  dt[1]--;
                  if(dt[1]==-1)
                        dt[1]=59;
                  LCD1602_dischar(4,1,0x30+dt[1]/10);
                  LCD1602_dischar(5,1,0x30+dt[1]);
                  NUM2=0;
                }
                if(SHAN==1) LCD1602_dischar(5,1,5);
                 
        }
          else
           if(mode==2)         //调时模式
           {
                    if(NUM1!=0)
                 {
                   dt[2]++;
                   if(dt[2]==24)
                         dt[2]=0;
                   LCD1602_dischar(1,1,0x30+dt[2]/10);
                   LCD1602_dischar(2,1,0x30+dt[2]);
                   NUM1=0;
                 }
                 if(NUM2!=0)
                 {
                   dt[2]--;
                   if(dt[2]==-1)
                         dt[2]=23;
                   LCD1602_dischar(1,1,0x30+dt[2]/10);
                   LCD1602_dischar(2,1,0x30+dt[2]);
                   NUM2=0;
                 }
                  if(SHAN==1) LCD1602_dischar(2,1,5);
            }
                if(mode==3)        //调星期状态
           {
                    if(NUM1!=0)
                 {
                   dt[5]++;
                   if(dt[5]==8)
                         dt[5]=1;
                   switch(dt[5])
                   {
                            case 1: LCD1602_prints(13,0,"Mon");break;
                         case 2: LCD1602_prints(13,0,"Tue");break;
                         case 3: LCD1602_prints(13,0,"Wed");break;
                         case 4: LCD1602_prints(13,0,"Thu");break;
                         case 5: LCD1602_prints(13,0,"Fri");break;
                         case 6: LCD1602_prints(13,0,"Sat");break;
                         case 7: LCD1602_prints(13,0,"Sun");break;
                   }
                   NUM1=0;
                 }
                 if(NUM2!=0)
                 {
                   dt[5]--;
                   if(dt[5]==0)
                         dt[5]=7;
                   switch(dt[5])
                   {
                            case 1: LCD1602_prints(13,0,"Mon");break;
                         case 2: LCD1602_prints(13,0,"Tue");break;
                         case 3: LCD1602_prints(13,0,"Wed");break;
                         case 4: LCD1602_prints(13,0,"Thu");break;
                         case 5: LCD1602_prints(13,0,"Fri");break;
                         case 6: LCD1602_prints(13,0,"Sat");break;
                         case 7: LCD1602_prints(13,0,"Sun");break;
                   }
                   NUM2=0;
                 }
                  if(SHAN==1) LCD1602_dischar(15,0,5);
            }
                if(mode==4)          //调日模式
           {
                    if(NUM1!=0)
                 {
                   dt[3]++;
                   if(dt[3]==32)
                         dt[3]=1;
                   LCD1602_dischar(8,0,0x30+dt[3]/10);
                   LCD1602_dischar(9,0,0x30+dt[3]);
                   NUM1=0;
                 }
                 if(NUM2!=0)
                 {
                   dt[3]--;
                   if(dt[3]==0)
                         dt[3]=31;
                   LCD1602_dischar(8,0,0x30+dt[3]/10);
                   LCD1602_dischar(9,0,0x30+dt[3]);
                   NUM2=0;
                 }
                  if(SHAN==1) LCD1602_dischar(9,0,5);
            }
                if(mode==5)                //调月模式
           {
                    if(NUM1!=0)
                 {
                   dt[4]++;
                   if(dt[4]==13)
                         dt[4]=1;
                   LCD1602_dischar(5,0,0x30+dt[4]/10);
                   LCD1602_dischar(6,0,0x30+dt[4]);
                   NUM1=0;
                 }
                 if(NUM2!=0)
                 {
                   dt[4]--;
                   if(dt[4]==0)
                         dt[4]=12;
                   LCD1602_dischar(5,0,0x30+dt[4]/10);
                   LCD1602_dischar(6,0,0x30+dt[4]);
                   NUM2=0;
                 }
                  if(SHAN==1) LCD1602_dischar(6,0,5);
            }
                if(mode==6)          //调年模式
           {
                    if(NUM1!=0)
                 {
                   dt[6]++;
                   if(dt[6]==100)
                         dt[6]=0;
                   LCD1602_dischar(2,0,0x30+dt[6]/10);
                   LCD1602_dischar(3,0,0x30+dt[6]);
                   NUM1=0;
                 }
                 if(NUM2!=0)
                 {
                   dt[6]--;
                   if(dt[6]==-1)
                         dt[6]=99;
                   LCD1602_dischar(2,0,0x30+dt[6]/10);
                   LCD1602_dischar(3,0,0x30+dt[6]);
                   NUM2=0;
                 }
                  if(SHAN==1) LCD1602_dischar(3,0,5);
            }
  }
  if(OK==1&&select==1)        //调闹铃模式
  {
 
          LCD1602_prints(0,0," Birthday gift  ");
          LCD1602_prints(0,1,"        --by HJL");
          delay(2000);
          LCD1602_wcmd(0x01);
          LCD1602_prints(0,0,"2013-12-04 Is   ");
          LCD1602_prints(0,1,"LiYunL birthday!");
          delay(2000);
          LCD1602_wcmd(0x01);
          LCD1602_prints(0,0,"Friends together");
          LCD1602_prints(0,1,"for life...     ");
          delay(2000);
          LCD1602_wcmd(0x01);
            mode=1 ;
          OK=0;
  }
}
void diy()
{
  LCD1602_init();
  delay(1);
  LCD1602_prints(0,0," Digital Clock  ");
  LCD1602_prints(0,1,"v1.1.0  --by HJL");
  delay(1000);
  LCD1602_wcmd(0x01);            
}
 
void main()
{
  IT0=1;          //外部中断0为下降沿触发
  EX0=1;          //
  TMOD=0x01;
  TH0=0x3C;                //50ms
  TL0=0xB0;
  EA=1;
  ET0=1;
  TR0=1;
  get_wendu();
  diy();
  chaongdiaon();
 
  while(1)
  {
    P1=0xff;
          keyscan();
        display();
  }
}
 
void timer0() interrupt 1
{
  TH0=0x3C;
  TL0=0xB0;
  count++;
  if(count==10)
  {
        count=0;
        SHAN=~SHAN;
  }
}
 
</i);>

Tags:51单片机,c语言程序,单片机时钟  
责任编辑:admin
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
    没有任何评论
闂傚倷鐒﹂惇褰掑垂閽樺缂氱憸鏃堝箖閸濆嫧鏋庨煫鍥风到濞堛劑姊洪柅鐐茶嫰婢у鈧娲╃紞渚€鐛€n喗鍋愰柣銏℃櫕瑜斿娲箰鎼达絺濮囩紒鐐緲缁夊綊骞嗛崶顏備汗闁圭儤鎸撮幐鍛存⒑缁洖澧查柣鐕傜畵瀹曟垿宕ㄧ€涙ḿ鍘卞┑顔斤供閸撴稒鏅堕弴銏$厵妞ゆ柨鍚嬪婵嬫煟濮樺墎鐣洪柟绛圭節婵″爼宕卞Ο鑽ゆ闂備浇顕х€涒晝绮欓幒妤€绀夐柡鍥ュ灩閺勩儲淇婇妶鍕妽濠殿垰鐡ㄧ换婵囩箾閹傚缂傚倷鐒﹂〃鍛存儗閸岀偛绠栭柤鎭掑劜婵挳鏌涢幇鍏哥敖闁哥偞鎸冲娲箹閻愭彃濮庢繝鈷€鍡橆棄闁崇粯鎹囬獮瀣偐閻㈢绱撮梻浣烘嚀椤曨厽鎱ㄩ悿顖樹汗闁哄被鍎查悡銉︾箾閹寸儑渚涢柛鐐殿劘c闂佽姘﹂~澶愬箖閸洖纾块柤纰卞墯閺嗘粓鏌涢锝嗙缂佺媭鍣i弻宥堫檨闁告挾鍠庨锝夋偨閸涘﹥娅㈤梺璺ㄥ櫐閹凤拷,濠电姷顣藉Σ鍛村垂閻e本顫曢柡鍥ュ灩閺嬩線鏌熼梻瀵割槮闁哄绶氶弻鐔封枔閸喗鐏嶉梺鍝勬閺呯娀寮婚敐澶樻晣婵犲﹤鍟慨銈夋⒑娴兼瑨顓洪柟鍑ゆ嫹,闂傚倷绀侀幉锟犮€冮崱妞曞搫饪伴崟顒佺彿闂佸搫绋侀崢鑲┾偓姘槺缁辨帡鍨剧€圭姴鏁紸缂傚倸鍊烽悞锔剧矙閹次诲洭鏌嗗鍡椾槐闂佺鎻梽鍕疾椤掆偓闇夐柨婵嗙墛椤ュ鏌i妶搴℃珝闁哄矉绠撻崺鈧い鎺戝缁€鍐┿亜韫囨挻鍣烘慨锝呭閺岋綁鎮╂潏顐妳闂佹悶鍔嶅姗€婀佸┑鈽嗗灥閸嬫劗澹曟ィ鍐╃厵閻庣數枪鍟搁悷婊勫鐏忔瑧妲愰幒妤婃晩闁芥ê顦慨銏ゆ倵鐟欏嫭绀冩繛鑼枛瀵偄顓奸崶锔藉媰闂佽壈顫夋竟鍡浰囨导瀛樺€甸悷娆忓閸嬬娀鏌涙惔銏犫枙闁糕斂鍨介幊鏍煛閸屾稒顔囬梻浣稿閸嬪懐鎹㈤崒鐐村€堕柨鐔哄У閳锋垶銇勯幇鈺佲偓鏇炵毈闂備胶绮划鐘诲垂鐠鸿櫣鏆﹂柟閭﹀枤缁犳棃鎮跺☉鎺嗗亾閸忓懎顥氶梻浣呵归張顒佺瑹濡ゅ懎纾婚柕濞炬櫅缁狙囨煃鏉炴壆绐旀い搴㈩殜閺屾稑鈻嶇拠鎻掓殜闁哄鐗犻弻鏇熺箾閸喖濮嶇紓浣靛妼閸熻儻褰侀梺鎼炲劵缁叉椽宕戦幘璇茬闁圭粯甯炵粙璇测攽閻愬瓨缍戦柛姘儔閵嗗啴宕ㄩ懜顑挎睏闂佺鍕垫畷闁哄拋鍓氶幈銊ノ熼崸妤€鎽甸梺鍝勬閺呯娀骞冨Δ鈧埥澶娾枎韫囨搩娼撶紓鍌欐祰妞存悂宕归崹顔炬殾闁挎繂顦粻锝夋煟濡吋鏆╅弫鍫ユ⒒娴g懓顕滈柛鎰煼楠炲繘鏁撻敓锟�
最新推荐
闂備浇宕垫慨宥夊礃椤垳鐥梻浣告惈椤戞垹鎹㈠┑鍡欐殾闁绘ǹ顕у婵囥亜閹烘垵鈧骞夐鈧弻鈩冨緞鐏炶棄澹嬮梺鐟板殩閹凤拷
 [闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩顔瑰亾閸愵喖骞㈡俊鐐存礀閹碱偊銈导鏉戠妞ゆ帊鑳惰ぐ鍧楁⒒娴e憡鎯堢紒瀣╃窔瀹曘垽鎳栭埞鎯т壕婵﹩鍓﹀Σ鎼佹懚閺嶎厽鐓ラ柡鍥ㄦ皑閸斿秶鐥鐐靛煟闁哄本娲熷畷濂割敃椤厼鏋堥梻浣告惈閻鎹㈠┑鍡欐殾闁圭儤顨嗛弲婊堟煢濡警妯堝ù纭锋嫹]闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩鍙傦箓鏌i幇顔芥毄闁活厼妫楅妴鎺戭潩閿濆懍澹曞┑鐘殿暯閳ь剙纾禒娑氣偓鍨緲鐎氼喗绂掗敂鍓х煓濠㈠墎枪椤ユ碍绻濋悽闈涗沪闁搞劎鏁告竟鏇㈩敇閻樻剚娼熼梺瑙勵問閸犳氨澹曟總鍛婄厱婵炲棙鍏庨鍕殼闁糕剝鐟㈤崑鎾舵喆閸曨剛鈹涚紓浣虹帛缁诲倿顢氶敐澶婄妞ゆ棁妫勬禍褰掓倵閻熸澘顥忛柛鐘愁殔琚欓柛顐犲劜閳锋帒霉閿濆懏鍟為柟顖氱墦閺岋絽螖閳ь剙螞濠靛宓侀柡宥庡弾閺佸啴鏌ㄩ弮鍥棄濞寸娀绠栧娲川婵犲啫顦╅梺鍛婃尰閻╊垶骞冮悿顖樹汗闁圭儤鎸鹃崣鍡涙⒑缂佹ɑ绀€闁稿﹤婀遍埀顒佺啲閹凤拷100 c闂傚倸鍊峰ù鍥х暦閸偅鍙忛柡澶嬪殮瑜版帒绀嬫い鏍ㄦ皑椤斿棝姊虹捄銊ユ珢闁瑰嚖鎷�
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]婵犵數濮烽弫鎼佸磻閻愬搫鍨傞柛顐f礀缁犱即鏌熼梻瀵歌箞闁搞儮鏂侀崑鎾诲捶椤撶倫鐐裁瑰⿰鍐╄础缂佽鲸甯¢崺鈧い鎺戝閸婂鏌i銈呪枅婵﹨娅i幏鐘诲箵閹烘繂濡烽梻浣告啞閸旀ê鐣烽悽鍨潟闁圭偓鍓氬ḿ鈺呮煕濡ゅ啫浠滅悮锝夋⒒娴e憡鍟炴繛璇х畵瀹曟粌鈽夐埀顑藉亾閸涘瓨鍊婚柤鎭掑劚娴狀垶姊虹拠鈥冲箺閻㈩垱甯楁穱濠冪鐎n偆鍘遍梺瀹犳〃缁€渚€鍩€椤掆偓閻忔繈顢氶敐澶婇唶闁哄洨鍠庨埀顒€顭烽弻娑㈠焺閸愮偓鐣兼繛瀵稿閸愶絾鏂€闂佺粯鍔曞鍫曟晬瀹ュ鐓涘〒姘川閸橈拷-TR
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]LM324闂傚倸鍊风粈渚€骞栭位鍥敃閿曗偓閻ょ偓绻濇繝鍌滃缂佲偓婢舵劖鐓涚€广儱楠搁獮鏍ㄤ繆椤愶綇鑰块柡灞诲姂閹倝宕掑☉姗嗕紦4~20mA闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺纭呮彧缁犳垹绮婚鐐寸叆闁绘洖鍊圭€氾拷1~5V闂傚倸鍊搁崐鐑芥倿閿曞倹鍎戠憸鐗堝笒閸ㄥ倻鎲搁悧鍫濈瑲闁稿﹨鍩栭幈銊ノ熸径绋挎儓闂佹椿鍘奸悧鎾诲蓟閵娾晜鍋嗛柛灞剧☉椤忥拷
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]LM386婵犵數濮烽。顔炬閺囥垹纾绘繛鎴烇公閼板潡寮堕崼姘珔闁搞劍绻冮妵鍕冀椤愵澀娌梺绋匡工閻忔岸濡甸崟顖氱鐎广儱娲ゆ俊鑺ョ節濞堝灝鐏¢柟鍛婂▕瀵鎮㈤悡搴n唹闂侀€涘嵆濞佳冣枔椤撶儐娓婚柕鍫濇閻撱儵鏌ㄩ弴銊ら偗鐎殿喛顕ч埥澶娾堪閸涱垱婢戦梻浣烘嚀閻忔繈宕锕€绀堥悹杞拌濞撳鏌曢崼婵嗘殭闁告梹绮撻弻鐔兼偡閻楀牊鎮欏銈嗘穿缂嶄焦淇婇幖浣哥厸濞达綀娅i弳浼存煟閻斿摜鐭婃い鎴濇缁顓兼径瀣珳婵犮垼娉涢鍥储闁秵鈷戦柟绋挎捣缁犳捇鏌涢悤浣镐簼濞e洤锕ョ缓浠嬪川婵犲倷缂撴俊鐐€栭悧鎾诲磹閺嶎偀鍋撳鐐
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]936闂傚倸鍊搁崐鐑芥嚄閸撲礁鍨濇い鏍ㄧ矋閺嗘粓鏌熼悜姗嗘畷闁哄懏绻堥弻鏇㈠醇濠靛牆顣舵繛瀛樼矊缂嶅﹪寮婚悢铏圭<闁靛繒濮甸悘宥夋⒑缁嬫鍎嶉柛鏂跨焸濠€渚€姊洪幐搴g畵闁瑰啿閰e鎶芥偄閸忚偐鍘介梺鍝勫€圭€笛囧吹閸ヮ剚鐓涢悘鐐插⒔閳藉鎽堕敐澶嬬厽闁规儳鍟块銏ゆ煟韫囧海绐旀慨濠呮閹风娀鍨鹃搹顐や邯闂備焦瀵уú锔界濠婂牊鍋╅柣鎴f闁卞洭鏌¢崶鈺佹瀾婵炲懌鍨藉铏规崉閵娿儲鐝㈤梺鐟板殩閹凤拷
 [闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩顔瑰亾閸愵喖骞㈡俊鐐存礀閹碱偊銈导鏉戠妞ゆ帊鑳惰ぐ鍧楁⒒娴e憡鎯堢紒瀣╃窔瀹曘垽鎳栭埞鎯т壕婵﹩鍓﹀Σ鎼佹懚閺嶎厽鐓ラ柡鍥ㄦ皑閸斿秶鐥鐐靛煟闁哄本娲熷畷濂割敃椤厼鏋堥梻浣告惈閻鎹㈠┑鍡欐殾闁圭儤顨嗛弲婊堟煢濡警妯堝ù纭锋嫹]闂傚倸鍊烽懗鍫曞磿閻㈢ǹ绀堟繝闈涚墛閺嗘粓鏌熼悜姗嗘當缂佺姷濞€楠炴牕菐椤掆偓婵′粙鏌¢崪浣稿⒋闁哄瞼鍠栭弻鍥晝閳ь剟宕㈤幘顔界厸閻庯綆鍋嗘晶鐢告煛鐏炵偓绀夌紒鐘崇洴婵$柉顦撮柨娑氬枛濮婃椽妫冨☉姘杸闂佺懓鎲℃繛濠囩嵁閸愵厹浜归柟鐑樻尭娴犲繘鏌f惔銏⑩姇闁挎碍銇勮箛銉﹀+濠电姷鏁告慨鐑藉极閹间礁纾婚柣鎰惈缁犱即鏌熺紒銏犳灈闁汇倗鍋撶换娑㈠箣閻愯尙鍔伴梺绋款儐閹瑰洭骞嗛崒鐐插窛濠电姴鍋嗘导锟�+闂傚倸鍊搁崐鐑芥嚄閸洏鈧焦绻濋崟顓狀槱婵炴潙鍚嬪ḿ娆戝閸ф鐓欑紓浣靛灩濞呮﹢鏌℃担鍛婎棦闁哄矉缍佸顒勫垂椤旇棄鈧垶姊虹粙鍧楊€楃紒澶婄秺瀵鈽夐姀鐘插祮闂侀潧枪閸庢壆鑺遍懡銈囩=濞达絾褰冩禍楣冩⒑鐠恒劌娅愰柟鍑ゆ嫹
 [闂傚倸鍊搁崐鎼佸磹妞嬪孩顐介柨鐔哄Т绾惧鏌涘☉鍗炲季婵炲皷鏅犻弻鏇熺箾閻愵剚鐝旈梺鍝勵儎缁舵岸寮婚弴銏犻唶婵犲灚鍔栨晥闂備胶枪椤戝啴宕濋幋婵愭綎濠电姵鑹鹃柋鍥煟閺冣偓娴滀粙鍩€椤掍礁娴柡宀€鍠栭幐濠冨緞鐏炴经鍥ㄧ厵妞ゆ梹顑欏ḿ鎰版煙瀹勭増鍤囬柟顔惧厴楠炲秹顢氶崨顔х偛鈹戦敍鍕杭闁稿﹥鐗犻獮鎰板箹娴e摜鐤呴梺鐐藉劤缁烩偓缂傚倹纰嶉妵鍕疀閹捐泛鈷堥梺杞扮缁夌數鎹㈠☉銏犲耿婵☆垰鎼闂備胶枪椤戞垿骞忛敓锟�]S7-200PLC闂傚倸鍊搁崐鐑芥倿閿曞倹鍎戠憸鐗堝笒缁€澶屸偓鍏夊亾闁逞屽墴閸┾偓妞ゆ帊绀侀崵顒€霉濠婂懎浠辨鐐村姍楠炴帒螖閳ь剟锝為崨瀛樼厪闁割偅绻冮ˉ婊堟煕閹炬潙鈻曟慨濠呮缁辨帒螣閻戔晜瀚绘繝纰樷偓鍐茬骇閻㈩垽绻濋悰顔跨疀濞戣鲸鏅濋梺鎶芥敱閼瑰墽绱炴繝鍥х畺妞ゅ繐鐗嗗婵囥亜閺冨倵鎷″ù纭锋嫹 S7_2
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]S7-200闂傚倸鍊风粈浣革耿闁秴鍌ㄧ憸鏃堝箖濞差亜惟闁宠桨鑳堕鍥ㄧ節閻㈤潧校闁煎綊绠栧畷娆撴偐缂佹ḿ鍘遍梺纭呭焽閸斿秴鈻嶉崶銊d簻闁冲搫鍟崢鎾煙椤旀娼愰柟宄版嚇瀹曘劍绻濋崨顖f敤缂傚倸鍊风拋鏌ュ磻閹剧粯鐓曢柡鍥ュ妼閻忥繝鏌i幘瀛樼闁绘搩鍋婂畷鑸殿槹鎼淬垹浠归梻浣告啞钃辩紒顔兼捣濡叉劙骞掑Δ鈧粻鐔兼倵閿濆骸浜滄い蹇ユ嫹,STEP7
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]ModbusPoll闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁嶉崟顐㈢亰閻庡厜鍋撻柛鏇炵仛閺呫垽姊虹紒妯煎ⅹ闁绘稒鐭歶sSalve闂傚倸鍊搁崐鐑芥嚄閼哥數浠氬┑掳鍊楁慨瀵告崲濮椻偓閻涱喛绠涘☉娆愭闂佽法鍣﹂幏锟�
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]STEP7濠电姷鏁告慨鐑姐€傞挊澹╋綁宕ㄩ弶鎴濈€銈呯箰閻楀棛绮堥崼鐔虹瘈闂傚牊绋撴晶鎰版煕鐎n偅灏い顐g箞椤㈡﹢鎮╅崘鍙夌彴闂傚倷绀侀幖顐︽嚐椤栫偞鍎楀ù锝堟娑撳秵绻涢幋娆忕仼婵☆偅锕㈤幃褰掑箒閹烘垵顬夐梺瀹狀嚙閼活垶鍩為幋锔藉€风€瑰壊鍠栧▓鑸电節濞堝灝鏋欓柛妤€鍟块悾鐑藉箛閺夊灝宓嗛梺缁樏幖顐㈢毈闂傚倷娴囧▔鏇㈠闯閿曞倸绠柨鐕傛嫹 Smart_
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]Modbus闂傚倸鍊峰ù鍥х暦閸偅鍙忛柟缁㈠櫘閺佸嫰鏌涘☉娆愮稇闁汇値鍣i弻鐔煎箚閺夊晝鎾绘煕鎼粹槄鏀婚柕鍥у瀵粙濡歌閻撯偓闂備焦鎮堕崝宥囨崲閸儱钃熸繛鎴欏灩缁犵粯淇婇妶鍌氫壕闂佺ǹ锕ㄥ畷鐢稿箟閹绢喗鏅搁柨鐕傛嫹 v1.024 缂傚倸鍊搁崐鎼佸磹閹间礁纾瑰瀣椤愪粙鏌曢崼婵愭Ц缂佺媭鍨堕弻銊╂偆閸屾稑顏�
 [闂傚倸鍊风粈渚€骞栭位鍥焼瀹ュ懐锛熼梺鍦濠㈡﹢宕归崒娑栦簻闁哄秲鍔岄悞褰掓煛鐎n亪鍙勯柡灞炬礉缁犳稓鈧綆浜炴导鍕煟韫囨挾绠抽柡浣割煼瀵濡搁埡鍌氫簽闂佺ǹ鏈粙鎴︻敂閿燂拷]Modscan32闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁嶉崟顐㈢亰閻庡厜鍋撻柛鏇炵仛閺呫垽姊虹紒妯煎ⅹ闁绘稒纭瀒m32,modb
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]89c51闂傚倸鍊搁崐鐑芥嚄閼哥數浠氱紓鍌欒兌缁垶宕濆▎鎺擃棨闂傚倷绶¢崜娆戠矓閻㈢ǹ纾婚柣鏂挎憸缁犻箖鏌熺€涙ḿ鎳冮柣蹇婃櫆娣囧﹪顢曢敐蹇氣偓鎸庢叏婵犲啯銇濇い銏℃礋閺佹劙宕堕崜浣风礃闂傚倸鍊搁崐绋课涘Δ鍐濠电姴娲ら拑鐔兼煥濠靛棭妯堥柡浣稿€块弻娑㈠焺閸愮偓鐣烽梺缁樼缚閸ㄨ崵妲愰幘瀛樺濞寸姴顑呴幗鐢告⒑缂佹ü绶辨俊鍙夌睄tues
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]婵犵數濮烽弫鎼佸磻閻愬搫鍨傞柛顐f礀缁犳壆绱掔€n偓绱╂繛宸簻鍥存繝銏f硾閿曪箓藝閻楀牅绻嗛柕鍫濈箳閸掍即鏌涢悤浣镐喊鐎规洘甯℃俊鎼佸煛閸屾粌骞堥梻浣虹帛閸旀牕岣垮▎鎺嗗徔otues婵犵數濮烽弫鎼佸磻濞戙埄鏁嬫い鎾跺枑閸欏繘鏌熼鍡忓亾闁哄鐗犻弻锟犲炊閳轰礁澹嬮梺鍏兼緲濞硷繝寮婚妸銉㈡婵☆垯璀︽导鈧梻浣规た閸樹粙鎮烽埡鍛畺婵°倕鎳忛弲鏌ュ箹鐎涙ḿ绠橀柡浣圭墱缁辨帡鎮欓浣哄嚒缂備礁顦遍弫鎼佸箲閵忕姭鏀藉┑鐘插姝囬梻鍌欑閹测€愁潖瑜版帇鈧啯绻濋崶褏鐣洪梺闈涱槴閺呮粓寮查幖浣圭叆闁绘洖鍊圭€氾拷
 [闂傚倸鍊搁崐鐑芥倿閿曗偓椤啴宕归鍛數闂侀€炲苯澧扮紒杈ㄥ浮楠炴捇骞掑┑鍫濇倯闂備浇顕栭崹浼存儗閸岀偛绠栨繛鍡樻惄閺佸棝鏌涚仦璇测偓鏍矈椤愶附鈷戦柤濮愬€曟牎婵炲瓨绮堢划娆忕暦濠靛棭鍚嬪璺猴攻濡差剟姊虹粙璺ㄧ伇闁稿鍋ゅ畷鎴︽晲閸氥倕缍婇弫鎰板炊閵娿儲鐣紓鍌欒閸嬫捇鏌涢幇銊︽澓濞存粍绮撻弻鐔煎垂椤旂⒈浠鹃柣搴㈢啲閹凤拷]51闂傚倸鍊搁崐椋庣矆娓氣偓楠炲鏁撻悩顔瑰亾閸愵喖骞㈡俊鐐存礀閹碱偊銈导鏉戠妞ゆ帊鑳惰ぐ鍧楁⒒娴e憡鎯堢紒瀣╃窔瀹曘垽鎳栭埞鎯т壕婵﹩鍓﹀Ο鈧梺鍝勬湰缁嬫垿鍩為幋锕€骞㈡俊銈咃梗閹綁姊绘担渚綊闁告劕鐏濇慨娑氱磽娴d粙鍝洪悽顖滃仱閸┾偓妞ゆ帒锕︾粔顒勬煕閳哄倻澧遍柍褜鍓氶悢顒勫箯閿燂拷 protues婵犵數濮烽弫鎼佸磻濞戙埄鏁嬫い鎾跺枑閸欏繘鏌熼鍡忓亾闁哄鐗犻弻锟犲炊閳轰礁澹嬮梺鍏兼緲濞硷繝寮婚妸鈺傚亞闁稿本绋戦锟�
闂傚倷绀侀幖顐︽偋閸愵喖纾婚柟鍓х帛閻撴盯鏌涚仦鍓х煀妞わ絽銈搁弻锛勨偓锝庝簻閺嗙喓绱掗瑙勬珚闁轰焦鎹囬弫鎾绘晸閿燂拷
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询