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

怎么建设视频网站大连网站怎么推广

怎么建设视频网站,大连网站怎么推广,宠物网站建设策划报告,网页开发入门目录 I2C时序结构 I2C代码 AT24C02代码#xff08;继承I2C底层代码#xff09; PCF8591 PCB上线的长短可能影响数据传输的时间#xff0c;写I2C时序可能就要加一点延时 I2C时序结构 起始条件#xff1a;SCL高电平期间#xff0c;SDA从高电平切换到低电平终止条件…目录 I2C时序结构 I2C代码 AT24C02代码继承I2C底层代码 PCF8591 PCB上线的长短可能影响数据传输的时间写I2C时序可能就要加一点延时 I2C时序结构 起始条件SCL高电平期间SDA从高电平切换到低电平终止条件SCL高电平期间SDA从低电平切换到高电平发送一个字节SCL低电平期间主机将数据位依次放到SDA线上高位在前然后拉高SCL从机将在SCL高电平期间读取数据位素有SCL高电平期间SDA不允许有数据变化依次循环上述过程8次即可发送一个字节 接收一个字节SCL低电平期间从机将数据位依次放到SDA线上高位在前然后拉高SCL主机将在SCL高电平期间读取数据位所以SCL高电平期间SDA不允许有数据变化依次循环上述过程8次即可接收一个字节主机在接收之前需要释放SDA 发送应答在接收完一个字节之后主机在下一个时钟发送一位数据数据0表示应答数据1表示非应答接收应答在发送完一个字节之后主机在下一个时钟接收一位数据判断从机是否应答数据0表示应答数据1表示非应答主机在接收前需要释放SDAI2C代码 #include I2C.h//15开发板中AT24C02的IIC通信引脚 sbit I2C_SDA P2^1; sbit I2C_SCL P2^0;/*** brief I2C起始信号* param 无* retval 无*/ void I2C_Start(void) {I2C_SDA 1; //拼接其他块确保默认是1I2C_SCL 1;I2C_SDA 0; //时序上先拉低I2C_SCL 0; }/*** brief I2C停止信号* param 无* retval 无*/ void I2C_Stop(void) {I2C_SDA 0; //确保默认0保证由低电平拉高至高电平I2C_SCL 1;I2C_SDA 1; }/*** brief I2C发送一个字节数据* param Byte 要发送的字节* retval 无*/ void I2C_SendByte(unsigned char Byte) {unsigned char i; // I2C_SCL 0; //起始信号已经拉低了无需重复for (i 0; i 8; i ){ I2C_SDA Byte (0x80i); //把Byte最高位取出赋值给I2C_SDA,依次从高到底I2C_SCL 1; // _nop_();_nop_();_nop_();_nop_();_nop_();//需要0.4usI2C_SCL 0;} }/*** brief I2C接收一个字节数据* param 无* retval 接受到的一个字节数据 */ unsigned char I2C_ReceiveByte(void) {unsigned char i,Byte0x00;I2C_SDA 1; //接收之前先把I2C_SDA置1释放总线for(i0;i8;i){I2C_SCL 1; //拉高SCLSCL读取SDAif(I2C_SDA 1){Byte | (0x80i);}/*如果读取到的SDA为1把Byte最高位置1如果读取到的SDA为0不处理默认最高位为0放在循环里从高位到低位依次读取*/I2C_SCL 0; //拉低SCL结束当前循环}return Byte; }/*** brief I2C发送应答* param AckBit 应答位0为应答1为非应答* retval 无*/ void I2C_SendAck(unsigned char AckBit) { I2C_SDA AckBit;//给应答就是0不给应答就是1I2C_SCL 1;I2C_SCL 0; }/*** brief I2C接收应答* param 无* retval 接收到的应答位0为应答1为非应答*/ unsigned char I2C_ReceiveAck(void) {unsigned char AckBit;I2C_SDA 1; //先释放SDAI2C_SCL 1; //高电平期间读取SDAAckBitI2C_SDA; //读取到什么就返回什么I2C_SCL 0;return AckBit; //返回0代表有应答返回1代表无应答 }#ifndef __I2C_H__ #define __I2C_H__#include STC15F2K60S2.H #include intrins.hvoid I2C_Start(void); void I2C_Stop(void); void I2C_SendByte(unsigned char Byte); unsigned char I2C_ReceiveByte(void); void I2C_SendAck(unsigned char AckBit); unsigned char I2C_ReceiveAck(void);#endifAT24C02设备地址  A2A1A0这三个引脚是用来扩展的如果不用就默认是000 所以默认设备地址是101000000xA0   写数据101000010xA1   读数据 AT24C02代码继承I2C底层代码 #include AT24C02.h#define AT24C02_ADDRESS 0xA0 //从机地址写 1010 0000/***brief 名称AT24C02写入一个字节*param 参数WordAddess 要写入字节的地址(0~255)*param 参数: Data 要写入的数据*retval返回值无*/ void AT24C02_WriteByte(unsigned char WordAddress, unsigned char Data) { // unsigned char Ack;I2C_Start();I2C_SendByte(AT24C02_ADDRESS);//从机地址写 // Ack I2C_ReceiveAck(); // if(Ack 0) // { // P2 0x80; // 1000 0000 // P0 0x00; // } //先测试是否有应答,定义的Ack被I2C_ReceiveAck();赋值然后就可以测试了I2C_ReceiveAck();I2C_SendByte(WordAddress); //要写入数据的地址I2C_ReceiveAck();I2C_SendByte(Data); //写入数据I2C_ReceiveAck();I2C_Stop(); }/***brief 名称AT24C02读取一个字节*param 参数WordAddess 要读出字节的地址*retval返回值读出的数据*/ unsigned char AT24C02_ReadByte(unsigned char WordAddess) {unsigned char Data;I2C_Start();I2C_SendByte(AT24C02_ADDRESS); //从机地址写I2C_ReceiveAck(); //接受应答I2C_SendByte(WordAddess); //数据的地址I2C_ReceiveAck();I2C_Start();I2C_SendByte(AT24C02_ADDRESS | 0x01);//发送从机地址读本函数第二个函数,或上0x01变成读地址(0xA1)I2C_ReceiveAck();Data I2C_ReceiveByte();I2C_SendAck(1); //不发送应答I2C_Stop();return Data; }#ifndef __AT24C02_H__ #define __AT24C02_H__#include STC15F2K60S2.H #include I2C.hvoid AT24C02_WriteByte(unsigned char WordAddress, unsigned char Data); unsigned char AT24C02_ReadByte(unsigned char WordAddress);#endif测试先写入不读取然后下载只读取的函数如果读出数值没有问题那就正确了 #include STC15F2K60S2.H #include smg.h #include I2C.h #include AT24C02.hunsigned char Data;void main() {All_Init();AT24C02_WriteByte(0,88);Delay_ms(5); //写数据的周期 5msData AT24C02_ReadByte(0); while(1){Nixie(1,Data/10);Nixie(2,Data%10);} }PCF8591 PCF8591地址1001 00000x90   写1001 00010x91   读 支持四路AD转换模拟信号转数字信号支持一路DA转换数字信号转模拟信号 程序有问题不粘贴了调成功了在粘贴过来 学习资料 江科大自化协---51单片机入门教程-2020版 程序全程纯手打 从零开始入门【12-2】
http://www.hkea.cn/news/14305509/

相关文章:

  • 网站的域名起什么好处刚做的婚恋网站怎么推广
  • 自己做网站需要钱吗初学者想学网站建设
  • 常州微信网站建设市场公司网站维护建设费入什么科目
  • 网站建设方案实例广告公司名字
  • 通州区建设局网站温州网络问政平台官网
  • 微软的网站开发软件做淘宝优惠卷网站步骤
  • 自己免费怎么制作网站吗腾讯企业邮箱怎么开通注册
  • 网站开发的运行可行性网站导航栏固定
  • 公司网站开发费入什么科目h5模板素材
  • 外汇跟单网站建设新的seo网站优化排名 排名
  • 企业家居网站建设宣城市市政建设集团公司网站
  • 营口网站建设单位seo如何使用wordpress优化
  • 如何选择低价网站建设昆明传媒网站建设
  • 无锡崇安网站建设天津网页制作设计营销
  • 无忧建站网站建设和美工
  • 备案 个人网站名称万网网站开发
  • 花店网站建设目的线上推广专员是干嘛的
  • 网站模板 红色id如何打开wordpress
  • 网站如何开通微信支付接口南京软件开发公司有哪些
  • 酷炫 网站模板网站上做公司宣传
  • 销售一个产品的网站怎么做无锡百度
  • 做网站卖游戏装备本科学院网站建设方案
  • 备案网站容易被收录网站开发是前端吗
  • 服务器上做网站wordpress城市插件
  • 企业网站排名优化机械外贸网站
  • 网站主题旁边的图标怎么做网站在百度搜不到
  • 做网站较好的框架asp网站可运行jsp吗
  • 景点网站建设西丽网站建设
  • ppt做的最好的网站做头像网站有哪些
  • 怎样重新安装电脑wordpress盐城seo培训