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

怎样给一个网站做专题策划最新资讯热点

怎样给一个网站做专题策划,最新资讯热点,中网自助建站,asp.net创建项目和创建网站的区别目录 一,介绍及元件工作原理 7.时序结构(重要) 8.i2C总线数据帧(重要) 二,应用 一,介绍及元件工作原理 1.元件介绍 2.存储器 3.地址总线和数据总线 地址总线只能一次选中一行 4.引脚及应用…

目录

一,介绍及元件工作原理

7.时序结构(重要)

8.i2C总线数据帧(重要)

二,应用


一,介绍及元件工作原理

1.元件介绍

2.存储器

3.地址总线和数据总线

地址总线只能一次选中一行

4.引脚及应用电路

5.I2C总线

6.电路规范

7.时序结构(重要)

8.i2C总线数据帧(重要)

 9.AT24C02数据帧

二,应用

通过独立按键控制,独立按键K1使数值加一,

独立按键K2使数值减一,独立按键K3写入数据,独立按键K4读出数据

首先是要根据I2C的时序逻辑写对应的实现函数

#include <REGX52.H>sbit I2C_SCL=P2^1;
sbit I2C_SDA=P2^0;/*** @brief  I2C开始* @param  无* @retval 无*/
void I2C_Start(void)
{I2C_SDA=1;I2C_SCL=1;I2C_SDA=0;I2C_SCL=0;
}/*** @brief  I2C停止* @param  无* @retval 无*/
void I2C_Stop(void)
{I2C_SDA=0;I2C_SCL=1;I2C_SDA=1;
}/*** @brief  I2C发送一个字节* @param  Byte 要发送的字节* @retval 无*/
void I2C_SendByte(unsigned char Byte)
{unsigned char i;for(i=0;i<8;i++){I2C_SDA=Byte&(0x80>>i);I2C_SCL=1;I2C_SCL=0;}
}/*** @brief  I2C接收一个字节* @param  无* @retval 接收到的一个字节数据*/
unsigned char I2C_ReceiveByte(void)
{unsigned char i,Byte=0x00;I2C_SDA=1;for(i=0;i<8;i++){I2C_SCL=1;if(I2C_SDA){Byte|=(0x80>>i);}I2C_SCL=0;}return Byte;
}/*** @brief  I2C发送应答* @param  AckBit 应答位,0为应答,1为非应答* @retval 无*/
void I2C_SendAck(unsigned char AckBit)
{I2C_SDA=AckBit;I2C_SCL=1;I2C_SCL=0;
}/*** @brief  I2C接收应答位* @param  无* @retval 接收到的应答位,0为应答,1为非应答*/
unsigned char I2C_ReceiveAck(void)
{unsigned char AckBit;I2C_SDA=1;I2C_SCL=1;AckBit=I2C_SDA;I2C_SCL=0;return AckBit;
}

其次在AT24C02中调用I2C的函数,并结合AT24C02自己的时序结构写函数

#include <REGX52.H>
#include "I2C.h"#define AT24C02_ADDRESS		0xA0/*** @brief  AT24C02写入一个字节* @param  WordAddress 要写入字节的地址* @param  Data 要写入的数据* @retval 无*/
void AT24C02_WriteByte(unsigned char WordAddress,Data)
{I2C_Start();I2C_SendByte(AT24C02_ADDRESS);I2C_ReceiveAck();I2C_SendByte(WordAddress);I2C_ReceiveAck();I2C_SendByte(Data);I2C_ReceiveAck();I2C_Stop();
}/*** @brief  AT24C02读取一个字节* @param  WordAddress 要读出字节的地址* @retval 读出的数据*/
unsigned char AT24C02_ReadByte(unsigned char WordAddress)
{unsigned char Data;I2C_Start();I2C_SendByte(AT24C02_ADDRESS);I2C_ReceiveAck();I2C_SendByte(WordAddress);I2C_ReceiveAck();I2C_Start();I2C_SendByte(AT24C02_ADDRESS|0x01);I2C_ReceiveAck();Data=I2C_ReceiveByte();I2C_SendAck(1);I2C_Stop();return Data;
}

最后在main函数中实现按键与LCD1602显示的逻辑

#include <REGX52.H>
#include "LCD1602.h"
#include "Key.h"
#include "AT24C02.h"
#include "Delay.h"unsigned char KeyNum;
unsigned int Num;void main()
{LCD_Init();LCD_ShowNum(1,1,Num,5);while(1){KeyNum=Key();if(KeyNum==1)	//K1按键,Num自增{Num++;LCD_ShowNum(1,1,Num,5);}if(KeyNum==2)	//K2按键,Num自减{Num--;LCD_ShowNum(1,1,Num,5);}if(KeyNum==3)	//K3按键,向AT24C02写入数据{AT24C02_WriteByte(0,Num%256);Delay(5);AT24C02_WriteByte(1,Num/256);Delay(5);LCD_ShowString(2,1,"Write OK");Delay(1000);LCD_ShowString(2,1,"        ");}if(KeyNum==4)	//K4按键,从AT24C02读取数据{Num=AT24C02_ReadByte(0);Num|=AT24C02_ReadByte(1)<<8;LCD_ShowNum(1,1,Num,5);LCD_ShowString(2,1,"Read OK ");Delay(1000);LCD_ShowString(2,1,"        ");}}
}

效果展示

原理图

http://www.ritt.cn/news/4107.html

相关文章:

  • 凯里有哪些网站开发公司最好的推广平台排名
  • 做a短视频网站安卓系统优化软件
  • 做一个公司网站流程 由ui设计新网域名
  • 建立网站商店博客seo优化技术
  • 蒲城网站建设wzjseo网络推广的好处
  • 沈阳网站建设联系方式腾讯企点官网
  • 站长推荐自动跳转推广普通话奋进新征程手抄报
  • 邹城网站建设v556玉林网站seo
  • 主持人做的化妆品网站广告公司注册
  • 二手东西怎么挂网上卖长沙seo排名公司
  • 网站建设公司首选华网天下优化清理大师
  • WordPress优化速度插件seo关键词排名公司
  • 在线直播网站开发实战项目seo短视频加密路线
  • 如何用本机电脑做网站服务器吗网络建设推广
  • 贵阳市乌当区住房与城乡建设局网站淘宝关键词热度查询工具
  • 做暧网站手机网站建设案例
  • 展示网站如何做360站长
  • 不买服务器做网站亚马逊关键词优化软件
  • 万网网站备案管理百度手机助手下载安装最新版
  • 电子商务网站规划建设方案seo优化sem推广
  • 导购网站开发百度云盘资源共享链接群组链接
  • 沧州市有建网站的吗最常用的网页制作软件
  • jsp写的网站潍坊网站seo
  • 建设一个微网站要花多少钱下载谷歌浏览器
  • 单位政府网站建设和维护关键词挖掘工具有哪些
  • 电脑做服务器建网站并让外网访问app开发费用标准
  • 网站建设wang.cd十大最靠谱教育培训机构
  • java做网站要学什么微信公众号推广网站
  • 阿里云oss可以做网站免费的推文制作网站
  • 江苏专业网站建设公司电话获客软件