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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(专业综合实验实验报告Word格式文档下载.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

专业综合实验实验报告Word格式文档下载.docx

1、3.熟练掌握相关绘图软件的使用。二、 综合实验的主要内容1.选择一个实验,画出硬件电路原理图;2.编写单片机控制程序,并逐条解释;3.利用开发板,验证程序正确性; 4.完成综合实验报告(附程序)。5.将全部内容上交电子版三、成员与分工姓名分工于飞飞选题、郝亮程序编辑与调试、画电路图彭玮程序调试宋凯开发板的调试吴卓远报告总结附录1:附录2:程序*/#include /包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义#include /包含NOP空指令函数_nop_();LCD1602.h#define AddWr 0x90 /写数据地址 #define AddRd 0x91 /读数

2、据地址sbit Sda=P20; /定义总线连接端口sbit Scl=P21;sbit wei=P27;sbit duan=P26;bit ADFlag; /定义AD采样标志位/* 延时程序*/ void mDelay(unsigned char j) unsigned int i; for(;j0;j-) for(i=0;i125;i+) ; 初始化定时器1void Init_Timer1(void) TMOD |= 0x10; TH1=0xff; /* Init value */ TL1=0x00; /PT1=1; /* 优先级 */ EA=1; /* interupt enable */

3、 ET1=1; /* enable timer1 interrupt */ TR1=1; 启动IIC总线 void Start(void) Sda=1; _nop_(); Scl=1; Sda=0; Scl=0; 停止IIC总线 void Stop(void) 应答IIC总线 void Ack(void) 非应答IIC总线 void NoAck(void) 发送一个字节 void Send(unsigned char Data) unsigned char BitCounter=8; unsigned char temp; do temp=Data; Scl=0; _nop_(); if(te

4、mp&0x80)=0x80) Sda=1; else Sda=0; Scl=1; temp=Data1; Data=temp; BitCounter-; while(BitCounter); 读入一个字节并返回 unsigned char Read(void) unsigned char temp=0; unsigned char temp1=0; Scl=1; if(Sda) temp=temp|0x01; temp=temp&0xfe; if(BitCounter-1) temp1=temp temp=temp1; while(BitCounter); return(temp); 写入DA

5、数模转换值 void DAC(unsigned char Data) Start(); Send(AddWr); /写入芯片地址 Ack(); Send(0x40); /写入控制位,使能DAC输出 Send(Data); /写数据 Stop(); 读取AD模数转换的值,有返回值 unsigned int ReadADC(unsigned char Chl) unsigned int Data; Send(0x40|Chl);/写入选择的通道,本程序只用单端输入,差分部分需要自行添加 /Chl的值分别为0、1、2、3,分别代表1-4通道 Send(AddRd); /读入地址 Data=Read(

6、); /读数据 Data=Data*196;/还原电压值近似 Data=Data/100; NoAck(); return Data; /返回值 主程序 void main() unsigned char num; /DA数模输出变量 unsigned char ADtemp; /定义中间变量wei=1;P0=0Xff;wei=0;duan=1;P0=0X00;duan=0; LCD_Init();LCD_Clear();/清屏 mDelay(20); Init_Timer1(); while(1) DAC(num); /DA输出,可以用LED模拟电压变化 num+; /累加,到256后溢出变

7、为0,往复循环。显示在LED上亮度逐渐变化 mDelay(20); /延时用于清晰看出变化 if(ADFlag) /定时采集输入模拟量 ADFlag=0; ADtemp=ReadADC(0); TempData0=(ReadADC(0)/100;/处理0通道电压显示 TempData1=(ReadADC(0)%100)/10; ADtemp=ReadADC(1); TempData2=(ReadADC(1)/100;/处理1通道电压显示 此通道暂时屏蔽,可以自行添加 TempData3=(ReadADC(1)%100)/10; ADtemp=ReadADC(2); TempData4=(Rea

8、dADC(2)/100;/处理2通道电压显示 此通道暂时屏蔽,可以自行添加 TempData5=(ReadADC(2)%100)/10; ADtemp=ReadADC(3); TempData6=(ReadADC(3)/100;/处理3通道电压显示 此通道暂时屏蔽,可以自行添加 TempData7=(ReadADC(3)%100)/10; disp(); 定时器中断程序void Timer1_isr(void) interrupt 3 using 1/定时器1执行数码管动态扫描 static unsigned int j; TH1=0xfb; /重新赋值 j+; if(j=200) j=0;ADFlag=1; /定时置位AD采样标志位

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

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