搜索
您的当前位置:首页正文

tlv5618应用程序

来源:爱go旅游网


1. #include

2. #define uchar unsigned char

3. #define uint unsigned int

4. #define ulint unsigned long int

5. sbit DIN=P3^4;//串行输入

6. sbit CLK=P3^3;//工作时钟

7. sbit CS=P3^2;//片选信号 低电平有效

8. sbit key1=P2^0;

9. sbit key2=P2^1;

10. sbit key3=P2^2;

11. sbit key4=P2^3;

12. unsigned char code table_duan[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x98,

13. 0x88,0x83,0xc6,0xa1,0x86,0x8e,

14. 0xff,0xc1,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,

15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x18,

};

unsigned char code table_wei[]={0x1f,0x9f,0x5f,0xdf,

0x4f,0xcf,0x2f,0xaf,0x6f

};

uchar x1,x2,x3,x4;

uchar y1,y2,y3,y4,y5;

uint xianshi_MV;

ulint xianshi_MA;

void delay(unsigned int z)

{

uchar i,j;

27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39.

for(i=0;ifor(j=0;j<110;j++);

}

void display(void)

{

P2=table_wei[0];

P0=table_duan[x1+0x20];

delay(1);

P0=table_duan[0x10];

P2=table_wei[1];

P0=table_duan[x2];

delay(1);

40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52.

P0=table_duan[0x10];

P2=table_wei[2];

P0=table_duan[x3];

delay(1);

P0=table_duan[0x10];

P2=table_wei[3];

P0=table_duan[x4];

delay(1);

P0=table_duan[0x10];

P2=table_wei[4];

P0=table_duan[y1];

53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65.

delay(1);

P0=table_duan[0x10];

P2=table_wei[5];

P0=table_duan[y2+0x20];

delay(1);

P0=table_duan[0x10];

P2=table_wei[6];

P0=table_duan[y3];

delay(1);

P0=table_duan[0x10];

P2=table_wei[7];

P0=table_duan[y4];

delay(1);

66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78.

P0=table_duan[0x10];

P2=table_wei[8];

P0=table_duan[y5];

delay(1);

P0=table_duan[0x10];

P2=0xef;

P0=table_duan[0x11];

delay(1);

P0=table_duan[0x10];

P2=0x8f;

P0=table_duan[0x0a];

delay(1);

P0=table_duan[0x10];

79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91.

}

void DA_init(uint data1)//data1 待转换的数据

{

uchar i;

CS=1;

DIN=0;

CLK=0;

CS=0;

for(i=0;i<16;i++)

{

if((data1&0x8000)!=0) //0x0400==0001,0000,0000,0000 B DIN=1;//数据输出

else

92. DIN=0;//数据输出

93. CLK=1; //发生时钟

94. CLK=0; //发生时钟

95. data1<<=1;//逻辑左移

96. }

97. CLK=1; //发生时钟

98. CLK=0; //发生时钟

99. CS=1;

100. DIN=0;

101. CLK=0;

102. }

103. void shuju_fenli(void)

104. {

105. x1=xianshi_MV/1000;

106. x2=(xianshi_MV%1000)/100;

107. x3=(xianshi_MV%100)/10;

108. x4=xianshi_MV%10;

109. y1=xianshi_MA/10000;

110. y2=(xianshi_MA%10000)/1000;

111. y3=(xianshi_MA%1000)/100;

112. y4=(xianshi_MA%100)/10;

113. y5=xianshi_MA%10;

114. }

115. char code dx516[3] _at_ 0x003b;

116. void main()

117. {

118. uint a=0xc800,b=0x4800,c;

119. float d,shang;

120.

121. while(1)

122. {

123. P2=0x4f;

124. if(key1==0)

125. {

126. delay(20);

127. if(key1==0)

128. {

129. a=a+0x0333;

130. if(a>0xcfff)

131. {

132. a=a-0x0fff;

133. }

134. 135. 136. 137. 138. 139. 140. 141. 142. 143. while(key1==0)

if(key2==0)

if(key2==0)

{;} } } { delay(20); { a=a+0x0052;

144. if(a>0xcfff)

145. {

146. a=a-0x0fff;

147. 148. 149. 150. 151. 152. 153. 154. 155. 156.

while(key2==0)

if(key3==0)

if(key3==0)

} {;} } } { delay(20); {

157. a=a+0x0008;

158. if(a>0xcfff)

159. {

160. 161. 162. 163. 164. 165. 166. 167. 168. 169.

while(key3==0)

if(key4==0)

if(key4==0)

a=a-0x0fff; } {;} } } { delay(20);

170. {

171. a=a+0x0001;

172. if(a>0xcfff)

173. 174. 175. 176. 177. 178. 179. 180. 181. 182.

while(key4==0)

{ a=a-0x0fff; } {;} } } DA_init(a); delay(10); DA_init(b);

183. delay(10);

184. c=a;

185. c=c&0x0fff;

186. 187. 188. 189. 190. 191. 192. 193. 194. 195.

if(xianshi_MV>0&xianshi_MV<10000)

else if(xianshi_MV>10000&xianshi_MV<20000) d=c; shang=d/0x1000; xianshi_MV=2*2492.3*shang; xianshi_MV=xianshi_MV+2; xianshi_MA=xianshi_MV*10; xianshi_MA=xianshi_MA*10; xianshi_MA=xianshi_MA*10; xianshi_MA=xianshi_MA/237.8;

196. xianshi_MA=xianshi_MA/238.5;

197. else if(xianshi_MV>20000&xianshi_MV<30000)

198. xianshi_MA=xianshi_MA/238.8;

199.200.201.202.203.204.205.206. else if(xianshi_MV>30000&xianshi_MV<40000)

xianshi_MA=xianshi_MA/239;

else if(xianshi_MV>40000&xianshi_MV<50000)

xianshi_MA=xianshi_MA/239.1;

shuju_fenli();

display();

}

}

因篇幅问题不能全部显示,请点此查看更多更全内容

Top