📄 operationst2226a.lst
字号:
C51 COMPILER V7.07 OPERATIONST2226A 12/29/2007 21:54:08 PAGE 1
C51 COMPILER V7.07, COMPILATION OF MODULE OPERATIONST2226A
OBJECT MODULE PLACED IN operationST2226A.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE operationST2226A.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 //============================================
2 // 广州中大中鸣科技有限公司
3 // DMX驱动器源程序
4 // 文件名:DMX-DRIVER-2.0.c
5 // 功能描述:1、模式可调 2、可以设地址 3、485总线 4、DMX512协议
6 // 建立时间:2007年12月15日
7 // 修改时间:2007年12月29日
8 // 修改完成时间:2007年12月29日
9 // 编写:陈勇强
10 // 版本:V 2.0
11 //=============================================
12
13 #include<STC12C5410AD.H>
14 #include<intrins.h>
15
16 //I/O脚定义
17 sbit DCLK = P2^5; //数据时钟位
18 sbit DD = P2^6; //数据位
19 sbit M1 = P2^1; //2226A命令位1
20 sbit M2 = P2^3; //2226A命令位2
21 sbit M3 = P2^4; //2226A命令位3
22
23 //全局变量的定义
24 unsigned char DmxData[24]; //接收到的数据数组
25 unsigned char delay_time; //数据时钟延时值
26
27 //===========================================
28 //函数名:delay
29 //描述:延时
30 //输入:要延长的时间数
31 //返回:无
32 //===========================================
33 void delay(unsigned char delaytime)
34 {
35 1 unsigned int t;
36 1 for(t=0;t<delaytime;t++);
37 1 }
38
39 //===========================================
40 //函数名:setmode
41 //描述:对ST2226A-1I设定模式
42 //输入:无
43 //返回:无
44 //===========================================
45 void setmode(void)
46 {
47 1 M1=0;
48 1 M2=0;
49 1 M3=0;
50 1 DCLK=1;
51 1 delay(delay_time);
52 1 DCLK=0;
53 1 delay(delay_time);
54 1 }
55
C51 COMPILER V7.07 OPERATIONST2226A 12/29/2007 21:54:08 PAGE 2
56 //===========================================
57 //函数名:shiltin
58 //描述:通知ST2226A-1 IC开始移入数据
59 //输入:无
60 //返回:无
61 //===========================================
62 void shiltin(void)
63 {
64 1 M1=0;
65 1 M2=1;
66 1 M3=0;
67 1 DCLK=1;
68 1 delay(delay_time);
69 1 DCLK=0;
70 1 delay(delay_time);
71 1 }
72
73 //===========================================
74 //函数名:send0
75 //描述:对ST2226A-1 IC发送0
76 //输入:无
77 //返回:无
78 //===========================================
79 void send0(void)
80 {
81 1 DD=0;
82 1 _nop_();
83 1 _nop_();
84 1 DCLK=1;
85 1 delay(delay_time);
86 1 DCLK=0;
87 1 delay(delay_time);
88 1 }
89
90 //===========================================
91 //函数名:send1
92 //描述:对ST2226A-1 IC发送1
93 //输入:无
94 //返回:无
95 //===========================================
96 void send1(void)
97 {
98 1 DD=1;
99 1 _nop_();
100 1 _nop_();
101 1 DCLK=1;
102 1 delay(delay_time);
103 1 DCLK=0;
104 1 delay(delay_time);
105 1 DD=0;
106 1 }
107
108 //===========================================
109 //函数名:latch
110 //描述:通知ST2226A-1 IC锁存数据
111 //输入:无
112 //返回:无
113 //===========================================
114 void latch(void)
115 {
116 1 M1=1;
117 1 M2=1;
C51 COMPILER V7.07 OPERATIONST2226A 12/29/2007 21:54:08 PAGE 3
118 1 M3=0;
119 1 DCLK=1;
120 1 delay(delay_time);
121 1 DCLK=0;
122 1 delay(delay_time);
123 1 }
124
125 //===========================================
126 //函数名:stopemit
127 //描述:通知ST2226A-1 IC停止发光
128 //输入:无
129 //返回:无
130 //===========================================
131 void stopemit(void)
132 {
133 1 M1=0;
134 1 M2=1;
135 1 M3=1;
136 1 DCLK=1;
137 1 delay(delay_time);
138 1 DCLK=0;
139 1 delay(delay_time);
140 1 }
141
142 //===========================================
143 //函数名
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -