简易自动电阻测试仪程序

上传人:鲁** 文档编号:563692944 上传时间:2023-04-09 格式:DOCX 页数:7 大小:40.58KB
返回 下载 相关 举报
简易自动电阻测试仪程序_第1页
第1页 / 共7页
简易自动电阻测试仪程序_第2页
第2页 / 共7页
简易自动电阻测试仪程序_第3页
第3页 / 共7页
简易自动电阻测试仪程序_第4页
第4页 / 共7页
简易自动电阻测试仪程序_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《简易自动电阻测试仪程序》由会员分享,可在线阅读,更多相关《简易自动电阻测试仪程序(7页珍藏版)》请在金锄头文库上搜索。

1、精选优质文档-倾情为你奉上简易自动电阻测试仪程序#include#include #define uchar unsigned charuchar table= 0x00,0x04,0x0A,0x11,0x11,0x0A,0x1B,0x3B, ; uchar table1=THE RES IS: ; sbit CS=P15; sbit Clk=P16; sbit DI=P17; sbit DO=P17; sbit rs=P20; sbit en=P21; sbit j1=P27; sbit j2=P26; sbit j3=P25; sbit beep=P14; sbit led=P23; vo

2、id delay(int x) int j; for(;x0;x-) for(j=20;j0;j-) ; uchar ADC0832(uchar CH) uchar i,dis0,dis1,date; Clk=0; /拉低时钟 DI=1; /初始化 delay(1);CS=0; /芯片选定 delay(1); Clk=1; /拉高时钟 delay(1);if(CH=0) /通道选择 Clk=0; /第一次拉低时钟 DI=1; /通道0的第一位 delay(1); Clk=1; /拉高时钟 delay(1); Clk=0; /第二次拉低时钟,ADC0832 DI接受数据 DI=0; /通道0的第

3、二位 delay(1); Clk=1; delay(1); else Clk=0; DI=1; /通道1的第一位 delay(1); Clk=1; delay(1); Clk=0; DI=1; /通道1的第二位 delay(1); Clk=1; delay(1); Clk=0; /第三次拉低时钟,此前DI两次赋值决定通道 DI=1; /DI开始失效,拉高电平,便于DO数据传输 for(i= 0;i8;i+) /读取前8位的值 delay(1); dis0= 1; Clk=1; delay(1); Clk=0; if (DO) dis0|=0x01; else dis0|=0x00; for (

4、i=0;i= 1; if (DO) dis1|= 0x80; else dis1|= 0x00; delay(1); Clk=1; delay(1); Clk=0; if(dis0=dis1) /两次结束数据比较,若相等 date=dis0; /则赋值给dat delay(1); CS=1; /释放ADC0832 DI=1; /拉高输出端,方便下次通道选择DI端有效 Clk=1; /拉高时钟 delay(1); return date; long datch(uchar a ,long st ) /计算电阻 long y; double x=1.0*st*(255-a)/a ; y=x; re

5、turn y; void writecom(uchar com) rs=0; P3=com; delay(10); en=1; delay(10); en=0; void writedat(uchar date) rs=1; P3=date; delay(10); en=1; delay(10); en=0;void init () en=0;writecom(0x38); writecom(0x0c); writecom(0x06); writecom(0x01); void display( long x) int j,wei=12; for(j=0;j0;j+) /qinhkongxia

6、nshi if(j%3=0)&(j0) writecom(0xc0+wei-j);writedat(44);wei-; writecom(0xc0+wei-j); delay(10); writedat(x%10+48); x=x/10 ; long J1(void) j1=1; j2=0;j3=0;delay(40);return datch(ADC0832(0),200); long J2(void) j1=0; j2=1;j3=0;delay(40);return datch(ADC0832(0),10000); long J3(void) j1=0; j2=0;j3=1;delay(4

7、0);return datch(ADC0832(0),); void main() int j;long x,s=1; led=1; beep=0; init(); j1=1; j2=0; j3=0; for(x=0;x11;x+) writedat(table1x); delay(10); writecom(0x40); for(x=0;x=1900) s=J2(); if(s=) s=J3(); else if(j2=1) s=J2(); if(s=) s=J3(); else if(j3=1) s=J3();if(s1900) s=J2();if(s=254) beep=1; else beep=0; if(j=0)|(j=255) led=0;else led=1; if(x!=s) x=s; display(s); 专心-专注-专业

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 教学/培训

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号