ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:1.92MB ,
资源ID:10025705      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-10025705.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(GYJ0069模拟量输入数字量显示可编程模块产品使用手册.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

GYJ0069模拟量输入数字量显示可编程模块产品使用手册.docx

1、GYJ0069模拟量输入数字量显示可编程模块产品使用手册模拟量输入数字量显示可编程模块产品使用手册功能描述:此工业级板的作用是,模块供电后,IN输入05V的模拟量电压,数码管显示模拟量电压值,并与按键设定的模拟电压值进行比较,来控制继电器的吸合与断开,从而用继电器去控制250V以内的交流或者直流负载。【简要说明】1、板子尺寸:长72mmX宽54mmX高18mm二、主要器件:单片机、数码管、继电器三、工作电压:DC5V40V四、板子功耗:小于200mA五、特点:1、具有继电器输出信号指示功能。2、供电即可工作无需外部触发。3、具有电源指示灯,四位数码管显示功能。4、如果您会单片机,可以根据自己需

2、要,任意编程,我们可提供参考程序和相关资料。5、两个按键任意调节设置参数。6、05V模拟量输入。7、可以和72MM卡槽板配合安装在DIN导轨上。 8、继电器触点干接点输出,可以控制交流或者直流250V以内任何负载。 9、端子采用螺旋压接端子 10、工作温度-40度至 +70度 11、工作湿度 10% 80%RH 12、四周有4个固定安装孔 13、具有电磁抗干扰能力 14、板子稳定工作可靠【标示说明】【接线说明】【原理图】【元件清单】【PCB图】【应用举例】/*程序说明:1、P1.7口输入模拟量数据。2、将数据与设定程序做比较控制继电器吸合。注意:通道口必须有模拟量输入数据才有效。*/#incl

3、ude /库文件#include#define uchar unsigned char /宏定义字符型变量#define uint unsigned int /宏定义整型变量/*声明 SFR 相关 与 的 IAP*/sfr IAP_DATA = 0xE2; sfr IAP_ADDRH = 0xE3;sfr IAP_ADDRL = 0xE4;sfr IAP_CMD = 0xE5;sfr IAP_TRIG = 0xE6;sfr IAP_CONTR = 0xE7;#define ADC_POWER 0x80 /ADC 电源控制位#define ADC_FLAG 0x10 /ADC 转换结束标志位#d

4、efine ADC_START 0x08 /ADC 开始转换控制位#define ADC_SPEEDLL 0x00 /210 个时钟周期转换一次#define ADC_SPEEDL 0x20 /420 个时钟周期转换一次#define ADC_SPEEDH 0x40 /630 个时钟周期转换一次#define ADC_SPEEDHH 0x60 /840 个时钟周期转换一次/* IO口定义*/bit write=0;uchar playdate;uint XS;sbit P10=P10;/数码管段sbit P11=P11;/数码管段sbit P12=P12;/数码管段sbit P13=P13;/

5、数码管段sbit P14=P14;/数码管段sbit P15=P15;/数码管段sbit P16=P16;/数码管段sbit P17=P17;/AD信号输入sbit P30=P30;/按键输入sbit P31=P31;/按键输入sbit P32=P32;/数码管位sbit P33=P33;/数码管位sbit P34=P34;/数码管位sbit P35=P35;/数码管位sbit P37=P37; /继电器输出/* 定义 ISP/IAPEEPROM 命令*/#define CMD_IDLE 0#define CMD_READ 1#define CMD_PROGRAM 2#define CMD_E

6、RASE 3#define ENABLE_IAP 0x83/SYSCLK 8; IAP_TRIG = 0x46; IAP_TRIG = 0xb9; _nop_(); dat = IAP_DATA; IapIdle(); return dat;/* 写数据*/void IapProgramByte(uint addr, uchar dat) IAP_CONTR = ENABLE_IAP; IAP_CMD = CMD_PROGRAM; IAP_ADDRL = addr; IAP_ADDRH = addr 8; IAP_DATA = dat; IAP_TRIG = 0x46; IAP_TRIG =

7、0xb9; _nop_(); IapIdle();/* 擦除数据*/void IapEraseSector(uint addr) IAP_CONTR = ENABLE_IAP; IAP_CMD = CMD_ERASE; IAP_ADDRL = addr; IAP_ADDRH = addr 8; IAP_TRIG = 0x46; IAP_TRIG = 0xb9; _nop_(); IapIdle();/* 初始定义*/code uchar seg7code10= 0x84,0xf6,0x8a,0xa2,0xf0,0xa1,0x81,0xb6,0x80,0xa0; /显示段码 数码管字跟/* 延时

8、函数*/void delay1(uchar t) uchar i,j; for(i=0;i0;j-); ; /* 延时函数*/void delay()/延时程序 0.1秒uchar m,n,s;for(m=10;m0;m-)for(n=20;n0;n-)for(s=248;s0;s-);/* 显示函数*/ void Led(uint date) /显示函数/*数据转换*/ uint z,x,c,v; z=date/1000; /求千位 x=date%1000/100; /求百位 c=date%100/10; /求十位 v=date%10; /求个位 P32=0;P33=0;P34=0;P35=

9、0; P1=seg7codex; P32=1;P33=0;P34=0;P35=0; delay1(80); P32=0;P33=0;P34=0;P35=0; P1=seg7codec; P32=0;P33=1;P34=0;P35=0; delay1(80); P32=0;P33=0;P34=0;P35=0; P1=seg7codev; P32=0;P33=0;P34=0;P35=1; delay1(80); P32=0;P33=0;P34=0;P35=0; /P1=seg7codev; /P32=0;P33=0;P34=1;P35=0; /delay1(80); /P32=0;P33=0;P3

10、4=0;P35=0;/* 功能:串口初始化,波特率9600,方式1*/*void Init_Com(void)TMOD = 0x20;PCON = 0x00;SCON = 0x50;TH1 = 0xFd;TL1 = 0xFd;TR1 = 1; /* AD转换初始化程序*/void InitADC() P1 = P1M0 = P1M1 = 0xff; /设置P1口为开漏模式,使用AD功能 ADC_DATA = 0; /AD数据寄存器清空 ADC_CONTR = ADC_POWER | ADC_SPEEDLL;/打开AD电源,转换周期210 delay(); /延时/* AD转换控制程序*/uch

11、ar GetADCResult(uchar px) /转换输出的数据 (PX为通道口) ADC_CONTR = ADC_POWER | ADC_SPEEDLL |px| ADC_START;/开始转换 _nop_(); /延时一个机器周期 _nop_(); /延时一个机器周期 _nop_(); /延时一个机器周期 _nop_(); /延时一个机器周期 while (!(ADC_CONTR & ADC_FLAG);/等待转换结束 ADC_CONTR &= ADC_FLAG; /关闭AD转换 return ADC_DATA; /返回数据/* 串口数据发送*/*void SendData(uchar

12、 dat) SBUF = dat; /发送数据 while (!TI); /等待数据 TI = 0; /清零标志位/* 编辑数据函数*/*void show(uchar ch) SendData(ch); /发送显示通道 SendData(GetADCResult(ch); /发送对应通道的数据/* 按键函数*/void key()if(P30=0)&(P31=0) while(1)Led(playdate);if(P30=0)&(playdate0)delay1(80);playdate-;delay1(80);write=1;while(!P31);delay1(80);delay1(80

13、);if(playdate=255)playdate=255;delay1(80);if(write=1) write=0; IapEraseSector(1); /擦除扇区 IapProgramByte(1,playdate);/写入数据 /* 主函数*/void main()/InitADC(); /AD转换初始化 /playdate = IapReadByte(0x01); /读取0x01中的数据 并附给cawhile(1)P1M0=0XFF;P1M1=0XFF;/P3=0X55;XS=1111;Led(XS);/调用显示函数显示数据display_date/*if(P30=0)|(P31=0)uint i=300;while(i-)Led(playdate);if(GetADCResult(7)=playdate)P37=0; else P37=1;key();Led(GetADCResult(7);/调用显示函数显示数据display_dateif(write=1) write=0; IapEraseSector(0); /擦除扇区 IapProgramByte(0x01,playdate);/写入数据 */ /* 程序结束*/【实物图片展示】【加壳效果图】

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2