当前位置: 首页 > news >正文

企业网站的策划书百度app下载官方免费最新版

企业网站的策划书,百度app下载官方免费最新版,深圳有哪些网站建设,商城网站开发与设计51单片机PCF8591数字电压表LCD1602液晶设计 ( proteus仿真程序设计报告讲解视频) 仿真图proteus7.8及以上 程序编译器:keil 4/keil 5 编程语言:C语言 设计编号:S0060 51单片机PCF8591数字电压表LCD1602液晶设计 1.主要功能&a…

51单片机PCF8591数字电压表LCD1602液晶设计

( proteus仿真+程序+设计报告+讲解视频)

仿真图proteus7.8及以上

程序编译器:keil 4/keil 5

编程语言:C语言

设计编号:S0060

51单片机PCF8591数字电压表LCD1602液晶设计

  • 1.主要功能:
  • 讲解视频:
  • 2.仿真
  • 3. 程序代码
  • 4. 设计报告
  • 5. 设计资料内容清单&&下载链接
    • 资料下载链接(可点击):

1.主要功能:

基于51单片机AT89C51/52(与AT89S51/52、AT89C51/52、STC89C51/52等51内核单片机通用)

基于51单片机的数字电压表设计

1.采用PCF8591实现AD采样功能;

2.采样电压范围0-5V;

3.用数码管显示转换后的实际电压值

4.显示保留小数点后两位。

需注意仿真中51单片机芯片是兼容的,AT89C51,AT89C52是51单片机的具体型号,内核是一样的。相同的原理图里,无论stc还是at都一样,引脚功能都是一样的,程序是兼容的,芯片可以替换为STC89C52/STC89C51/AT89C52/AT89C51等51单片机芯片。

讲解视频:

仿真讲解+代码讲解

51单片机PCF8591数字电压表LCD1602液晶 ( proteus仿真+程序+报告+讲解)

2.仿真

开始仿真

打开仿真工程,双击proteus中的单片机,选择hex文件路径,然后开始仿真。

img

3. 程序代码

使用keil4或者keil5编译,代码有注释,可以结合报告理解代码含义。

img

IIC通信部分函数

/*******************************************************************起动总线函数               
函数原型: void  Start_I2c();  
功能:     启动I2C总线,即发送I2C起始条件.  
********************************************************************/
void Start_I2c()
{sda=1;         /*发送起始条件的数据信号*/_nop_();scl=1;_nop_();        /*起始条件建立时间大于4.7us,延时*/_nop_();_nop_();_nop_();_nop_();    sda=0;         /*发送起始信号*/_nop_();        /* 起始条件锁定时间大于4μs*/_nop_();_nop_();_nop_();_nop_();       scl=0;       /*钳住I2C总线,准备发送或接收数据 */_nop_();_nop_();
}/*******************************************************************结束总线函数               
函数原型: void  Stop_I2c();  
功能:     结束I2C总线,即发送I2C结束条件.  
********************************************************************/
void Stop_I2c()
{sda=0;      /*发送结束条件的数据信号*/_nop_();       /*发送结束条件的时钟信号*/scl=1;      /*结束条件建立时间大于4μs*/_nop_();_nop_();_nop_();_nop_();_nop_();sda=1;      /*发送I2C总线结束信号*/_nop_();_nop_();_nop_();_nop_();
}/*******************************************************************字节数据发送函数               
函数原型: void  I2C_SendByte(UCHAR c);
功能:     将数据c发送出去,可以是地址,也可以是数据,发完后等待应答,并对此状态位进行操作.(不应答或非应答都使ack=0)     发送数据正常,ack=1; ack=0表示被控器无应答或损坏。
********************************************************************/
void  I2C_SendByte(unsigned char  c)
{unsigned char  i;for(i=0;i<8;i++)  /*要传送的数据长度为8位*/{if((c<<i)&0x80)sda=1;   /*判断发送位*/else  sda=0;                _nop_();scl=1;               /*置时钟线为高,通知被控器开始接收数据位*/_nop_(); _nop_();             /*保证时钟高电平周期大于4μs*/_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  I2C_RcvByte();
功能:        用来接收从器件传来的数据,并判断总线错误(不发应答信号),发完后请用应答函数应答从机。  
********************************************************************/    
unsigned char   I2C_RcvByte()
{unsigned char  retc=0,i; sda=1;                     /*置数据线为输入方式*/for(i=0;i<8;i++){_nop_();           scl=0;                  /*置时钟线为低,准备接收数据位*/_nop_();_nop_();                 /*时钟低电平周期大于4.7μs*/_nop_();_nop_();_nop_();scl=1;                  /*置时钟线为高使数据线上数据有效*/_nop_();_nop_();retc=retc<<1;if(sda==1)retc=retc+1;  /*读数据位,接收的数据位放入retc中 */_nop_();_nop_(); }scl=0;    _nop_();_nop_();return(retc);
}

PCF8591部分通信函数


/************************************************************
* 函数名        : Pcf8591_SendByte
* 函数功能		: 写入一个控制命令
* 输入          : addr(器件地址),channel(转换通道)
* 输出         	: 无
************************************************************/
bit PCF8591_SendByte(unsigned char addr,unsigned char channel)
{Start_I2c();              //启动总线I2C_SendByte(addr);            //发送器件地址if(ack==0)return(0);I2C_SendByte(0x40|channel);              //发送控制字节if(ack==0)return(0);Stop_I2c();               //结束总线return(1);
}/************************************************************
* 函数名       	: PCF8591_RcvByte
* 函数功能   	: 读取一个转换值
* 输入          :
* 输出          : dat
************************************************************/
unsigned char PCF8591_RcvByte(unsigned char addr)
{  unsigned char dat;Start_I2c();          //启动总线I2C_SendByte(addr+1);      //发送器件地址if(ack==0)return(0);dat=I2C_RcvByte();          //读取数据0Ack_I2c(1);           //发送非应答信号Stop_I2c();           //结束总线return(dat);
}

主函数

main()
{  init_1602();while(1){/********以下AD-DA处理*************/  PCF8591_SendByte(AddWr,0);	 //启动转换D[0]=PCF8591_RcvByte(AddWr);  //读转换完的数字信号,ADC0 模数转换 范围是256-0;vol_value = PCF8591_RcvByte(AddWr);   //0-256vol_value = vol_value*5.0*100/256;//得到范围是500-0,方便显示dis[8] = (vol_value%1000)/100+0x30; //百dis[10] = (vol_value%100)/10+0x30;  //十dis[11] = vol_value%10+0x30; write_string(1,0,dis);
//	 write_string(1,5,"ab cd ef;");}
}

4. 设计报告

5246字设计报告,内容包括硬件设计、软件设计、软硬件框图、调试、结论等

img

5. 设计资料内容清单&&下载链接

资料设计资料包括仿真,程序代码、讲解视频、功能要求、设计报告、软硬件设计框图等。

0、常见使用问题及解决方法–必读!!!!

1、仿真图

2、程序源码

3、功能要求

4、开题报告

5、设计报告

6、软硬件流程框图

7、讲解视频

Altium Designer 软件资料

KEIL软件资料

Proteus软件资料

单片机学习资料

答辩技巧

设计报告常用描述

鼠标双击打开查找更多51 STM32单片机课程毕业设计.url

img

资料下载链接(可点击):

https://docs.qq.com/doc/DS05VbHNQT2h4REhk

http://www.hkea.cn/news/581224/

相关文章:

  • 做网站的费用 优帮云百度广告代运营
  • wordpress儿童卡通主题兰州网站seo服务
  • 8网站建设做网站sem优化师是什么意思
  • 设计师个人网站怎么做百度优化培训
  • 广东海外建设监理有限公司官方网站2345网址导航是病毒吗
  • 深圳网站制作培训宁波网络营销公司
  • 网站建设方案书 模板长清区seo网络优化软件
  • 简述网站的推广策略产品设计
  • 商贸有限公司网站建设此网站服务器不在国内维护
  • 常州个人做网站制作小程序的软件
  • 郑州做网站公司dz论坛如何seo
  • 十堰商城网站建设网络营销seo优化
  • 小欢喜林磊儿什么网站做家教福州seo推广外包
  • 许昌网站开发博客营销
  • 做网站用jquery爱站网关键词挖掘
  • wordpress手动裁剪seo营销推广服务公司
  • 英文网站建设网站海南网站制作公司
  • 网页设计与网站建设主要内容软文营销的特点
  • 一起做网站17广州最新小组排名
  • 最专业的网站设计公司有哪些论坛企业推广
  • 单页网站怎么做外链个人网页
  • 宁波城乡住房建设局网站有效的网络推广
  • 网站建设 深圳销售crm客户管理系统
  • 高端网站开发设计站长之家字体
  • 免费网站建站工具购买域名的网站
  • 淘宝联盟怎么做网站百度网站提交
  • 前端做用vue做后台多还是做网站多青岛网站快速排名优化
  • 岳阳网站开发公司海淀区seo多少钱
  • 2017年做网站维护总结百度搜索软件
  • 南京网站建设公司点击器原理