第一范文网 - 专业文章范例文档资料分享平台

直流电子负载设计

来源:用户分享 时间:2020-06-26 本文由孤云独去闲 分享 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

C7C10104C4R7C110410K+12VC8R4+12VC5R610K563814R93K+12VC111041041K+12V7R2LM324N104R820KC9C12LM324N104ADCR12R143KLM324NDA10474#include

#define uchar unsigned char #define uint unsigned int sbit rs=P3^0;

sbit rw=P3^1;

sbit lcden=P3^2; //液晶显示屏相关位定义 //sbit AD_OUT=P1^4; //sbit AD_IN=P1^5;

104POWER+MOSFETAPLM324NADOP07AQ2C6POWER-R50.1-12VC13-12V104104104-12V104-12VR101KC18LM324N104R15R161K+12VC21R1810C15104AR?5ADOP07AQ238C201C226MOSFETAPPOWER+-12V10K+12VC19104ADCR1110K+12VC1410410K+12VC2R1LM324N104DA10KR310KC3104-12VC16104R1310KLM324N10KC17//sbit AD_CS=P1^6; //sbit AD_CLOCK=P1^7; //sbit EOC=P3^3;

sbit DSO=P1^4; sbit DSI=P1^5; sbit CS=P1^6; sbit CLK=P1^7;

sbit DA_IN=P1^0; sbit DA_CK=P1^1; sbit DA_CS=P1^2;

unsigned long int value,value1; uchar set;

uint a,b,z,temp1,temp_1; float x,y,out=0; uint AD_DAstart;

char iset[6]={0,0,0,0,0,0};

uchar code table1[]=\ %uchar code table2[]=\ to set I? \

//DA输出变量值

void delay(uchar x) //延时子程序 {

uchar i,j;

for(i=0;i

for(j=0;j<120;j++); //延时120秒 }

void delay1(uint t) //极短延时 {

while(t--); } void delayms(uint z) //延时函数,参数为z { uint x,y; for(x=z;x>0;x--) for(y=110;y>0;y--); //z=1测试为大约1微秒 }

void write_com(uchar com) //写命令函数 { rs=0; //rs置0表示写命令 P0=com; //位声明,按原理图接P0口,输入数据 delayms(5); //时序图中须有thd2时间延时 lcden=1; //置高

delayms(5); //时序图中须有thd2时间延时 lcden=0; //按时序图置低 }

void write_date(uchar date) //写数据函数 {

rs=1; //rs置1表示写数据 lcden=0;

P0=date; //将数据赋到P0口 delayms(5); lcden=1; delayms(5); lcden=0; }

void led_init() //初始化函数 { lcden=0; rw=0; }

write_com(0x38); //显示模式设置:16X2显示,5X7点阵,8位数据 write_com(0x0c); // 开显示,关光标,光标不闪烁

write_com(0x06); // 写一个数据后地址指针加一,光标加一 write_com(0x01); // 数据指针及数据清0

write_com(0x80); // 设置数据地址指针,第一行

write_date(0x53);

write_date(0x30+iset[1]); write_date(0x30+iset[2]); write_date(0x2e);

write_date(0x30+iset[4]); write_date(0x30+iset[5]);

//uint read2543(uchar port) //AD转换子程序 //{

// uint ad=0,j; // AD_CLOCK=0; // AD_CS=0; // EOC=1; // port<<=4; // delay1(50); // for(j=0;j<12;j++) // { // if(AD_OUT) // {

// ad|=0x01; // }

// AD_IN=(bit)(port&0x80); // AD_CLOCK=1; // delay1(6); // AD_CLOCK=0; // delay1(3); // port<<=1; // ad<<=1; // }

// AD_CS=1; // ad>>=1; // return(ad); //}

//uint Read_TLC2543(uchar CHN)//TLC2543据转换函数(方法二) //{

// uchar i,temp;

// uint read_ad_data = 0; //分别存放采集的数据,先清0

// CHN=CHN<<4; //12位格式,选择高位道导前,单极性 // CLK=0; // CS=1;

// CS=0; //下降沿,并保持低电平 // temp=CHN; //输入要转化的通道 // for(i=0;i<12;i++) //12位数据 // {

// read_ad_data=read_ad_data<<1; //转换结果左移一位

// if((temp&0x80)!=0){DSI=1;} //送方式、通道控制字串行输入 // else{DSI=0;}

// if(DSO){read_ad_data=read_ad_data+1;} //读入转换结果 // CLK =1; // CLK =0;

// temp=temp<<1; //左移,准备发送方式,通道控制字下一位 // } // CS=1;

// read_ad_data=read_ad_data&0x0fff; //屏蔽高四位,因为是12位的转换结果 // return(read_ad_data); //}

uint Read_TLC2543(uchar chanle)//TLC2543数据转换函数(方法一) { uchar i,dah=0,dal=0; uint date;

CS=1; CS=0; CLK=0;

chanle<<=4;//高低位交换 for(i=0;i<4;i++) {

dah<<=1; if(DSO) { dah++;//高四位数据 }

DSI=chanle&0x80;//选择转换通道 CLK=1; delay(1); CLK=0;

chanle<<=1;

}

DSI=0;//此部不能少!

for(i=0;i<8;i++)//转换的数据低8位 {

CLK=1; dal<<=1; if(DSO) { dal++; } CLK=0; } CS=1;

date=dah;//转换的数据高四位

date<<=8;

date=date|dal;//合并12位数据 return(date); }

void adzh() {

uint ge,shi,x1,x2; temp1=Read_TLC2543(0x00); y=temp1*5.0/4096;

z=y*100; shi=z/1000; ge=(z/100);

//电流检测测出电流实际值 //输出AD转换后的电流值

搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新资格考试认证直流电子负载设计 全文阅读和word下载服务。

直流电子负载设计 .doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/wenku/1102218.html(转载请注明文章来源)

相关推荐:

热门推荐
Copyright © 2018-2022 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top