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

加入VIP,省得不是一点点
 

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

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

下载须知

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

版权提示 | 免责声明

本文(AD例程序.doc)为本站会员(11****ws)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

AD例程序.doc

1、http:/ 文件名 : PCF8591TAD 实验.c* 描述 : 该程序实现了用 PCF8591T 同时采集 4 路 AD 输入的功能。在 1602 上会分别显示两个精密可调电阻分压的值。和光敏电阻和热敏电阻的电压值。大家可以调节精密可调电阻,或者挡住光敏电阻的光,或者手接触温敏电阻,数码管上显示的 AD 采集值都会有相应的变化。 * 创建人 : 东流,2012 年 2 月 7 日* 程序类别: AT89S52-单片机程序系列* 发 布: 中国自动化资讯网 http:/* 网站邮箱: E-mail: * 版本号 : 2.0* 版权声明: 转载请注明 作者 和 出处* 杜邦线接法:用 8 针

2、排线把 P0 口和 J12 的 1-8 连接(P0.0 接 J12 的 1 端)。用 8 针排线把 P2 口和 J13 的 1-8 连接(P2.7 接 J13 的 1 端)。 /注意这里是 P2.7P3.6 接 J26 的 6 端,P3.7 接 J26 的 7 端。J26 的 1-4 分别接 J23 的 1-4 端。*/#include#include#include #define uchar unsigned char#define uint unsigned int#define ADDR 0x90 /PCF8591 地址/ 此表为 LED 的字模 / 0 1 2 3 4 5 6 7 8

3、 9 A b c d E - L P U Hidden _ (20)unsigned char code Disp_Tab = 0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x88,0x83,0xC6,0xA1,0x86,0xbf,0xc7,0x8c,0xc1, 0xff, 0xf7 ; unsigned char TABLEW8 =0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f; unsigned char AD_CHANNEL;unsigned char LedOut8;unsigned int D32

4、;/这三个引脚参考资料sbit E=P27; /1602 使能引脚sbit RW=P26; /1602 读写引脚 sbit RS=P25; /1602 数据/命令选择引脚/* 名称 : delay()* 功能 : 延时,延时时间大概为 5US。* 输入 : 无* 输出 : 无*/void delay()_nop_();_nop_();_nop_();_nop_();_nop_();void Delay(uint i)uint x,j;for(j=0;j4) AD_CHANNEL=0;L1602_char(1,1,1);L1602_char(1,2,:);L1602_char(1,3,D0%10

5、00/100+48); L1602_char(1,4,.);L1602_char(1,5,D0%100/10+48);L1602_char(1,6,D0%10+48);L1602_char(1,9,2);L1602_char(1,10,:);L1602_char(1,11,D1%1000/100+48); L1602_char(1,12,.);L1602_char(1,13,D1%100/10+48);L1602_char(1,14,D1%10+48); L1602_char(2,1,3);L1602_char(2,2,:);L1602_char(2,3,D2%1000/100+48); L1

6、602_char(2,4,.);L1602_char(2,5,D2%100/10+48);L1602_char(2,6,D2%10+48);L1602_char(2,9,4);L1602_char(2,10,:);L1602_char(2,11,D3%1000/100+48); L1602_char(2,12,.);L1602_char(2,13,D3%100/10+48);L1602_char(2,14,D3%10+48); /*此部分为 74HC595 的驱动程序使用 SPI 总线连接*/#include#include #define NOP() _nop_() /* 定义空指令 */#

7、define _Nop() _nop_() /*定义空指令*/SPI IOsbit MOSIO =P15;sbit R_CLK =P16;sbit S_CLK =P17;sbit OE =P36;void HC595SendData(unsigned int SendVal);/* 函数名称: HC595SendData* 功能描述: 向 SPI 总线发送数据* 管脚描述:请参考相关的芯片资料(学习光盘中以配)*/void HC595SendData(unsigned int SendVal) unsigned char i;for(i=0;i#include #include #define

8、 NOP() _nop_() /* 定义空指令 */#define _Nop() _nop_() /*定义空指令*/sbit SDA=P36; /I2C 数据 sbit SCL=P37; /I2C 时钟bit ack; /*应答标志位*/*起动总线函数 函数原型: void Start_I2c(); 功能: 启动 I2C 总线,即发送 I2C 起始条件. */void Start_I2c()SDA=1; /*发送起始条件的数据信号*/_Nop();SCL=1;_Nop(); /*起始条件建立时间大于 4.7us,延时*/_Nop();_Nop();_Nop();_Nop(); SDA=0; /

9、*发送起始信号*/_Nop(); /* 起始条件锁定时间大于 4s*/_Nop();_Nop();_Nop();_Nop(); SCL=0; /*钳住 I2C 总线,准备发送或接收数据 */_Nop();_Nop();/*结束总线函数 函数原型: void Stop_I2c(); 功能: 结束 I2C 总线,即发送 I2C 结束条件. */void Stop_I2c()SDA=0; /*发送结束条件的数据信号*/_Nop(); /*发送结束条件的时钟信号*/SCL=1; /*结束条件建立时间大于 4s*/_Nop();_Nop();_Nop();_Nop();_Nop();SDA=1; /*发

10、送 I2C 总线结束信号*/_Nop();_Nop();_Nop();_Nop();/*字节数据发送函数 函数原型: void SendByte(UCHAR c);功能: 将数据 c 发送出去,可以是地址,也可以是数据,发完后等待应答,并对此状态位进行操作.(不应答或非应答都使 ack=0) 发送数据正常,ack=1; ack=0 表示被控器无应答或损坏。*/void SendByte(unsigned char c)unsigned char BitCnt;for(BitCnt=0;BitCnt8;BitCnt+) /*要传送的数据长度为 8 位*/if(cBitCnt) /*判断发送位*/

11、else SDA=0; _Nop();SCL=1; /*置时钟线为高,通知被控器开始接收数据位*/_Nop(); _Nop(); /*保证时钟高电平周期大于 4s*/_Nop();_Nop();_Nop(); SCL=0; _Nop();_Nop();SDA=1; /*8 位发送完后释放数据线,准备接收应答位*/_Nop();_Nop(); SCL=1;_Nop();_Nop();_Nop();if(SDA=1)ack=0; else ack=1; /*判断是否接收到应答信号*/SCL=0;_Nop();_Nop();/*字节数据接收函数 函数原型: UCHAR RcvByte();功能: 用来接收从器件传来的数据 ,并判断总线错误(不发应答信号),发完后请用应答函数应答从机。 */ unsigned char RcvByte()unsigned char retc;unsigned char BitCnt;

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。