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

网站创建怎么做福州建站价格

网站创建怎么做,福州建站价格,用代码做一号店网站怎么做,网站页头页尾怎么做浏览器缓冲设置AT24C1024是基于IIC的EEPROM#xff0c;容量为1024/8128k bytes。它的引脚如下#xff1a; 其中A1,A2为硬件地址引脚 WP为写保护引脚#xff0c;一般我们需要读写#xff0c;需要接低电平GND#xff0c;接高的话则仅允许读 SDA和SCL则为IIC通信引脚 芯片通信采用IIC容量为1024/8128k bytes。它的引脚如下 其中A1,A2为硬件地址引脚 WP为写保护引脚一般我们需要读写需要接低电平GND接高的话则仅允许读 SDA和SCL则为IIC通信引脚 芯片通信采用IIC有关IIC的通信原理可参考 https://blog.csdn.net/u011436603/article/details/136007075文章浏览阅读293次点赞5次收藏8次。这样看起来区分起止信号与数据电平是不是就更加容易些了但是嘛由于只有一根数据线了缺点就是无法同时收发了因此它是半双工通信的。一般的IIC器件比如EEPROM此时会发送要写入或读取的地址如往0x0000地址写入数字1那么会先发送0x0000等到回码后再发送0x01,之后在收到应答后结束通信。前面在讲UART时提到过通信传输所需要的几个必要条件首先得知道什么时候通信开始什么时候通信结束然后就是如何去解析数据了根据这几点我们来谈谈IIC是如何实现通信的。从图上可以看到IIC规定的。https://blog.csdn.net/u011436603/article/details/136007075接下来说下具体的操作流程 读数据 启动总线发送设备地址写...等待应答发送数据存储地址...等待应答发送数据结束总线 写数据 启动总线发送设备地址写...等待应答发送数据存储地址...等待应答发送设备地址读...等待应答读数据结束总线 本次采用模拟IIC的方式便于移植具体的代码如下 void eeprom_start(void) {IIC_SDA_ON;IIC_SCL_OFF;DELAY_US (10);IIC_SCL_ON;DELAY_US(1);IIC_SDA_OFF;DELAY_US(1);IIC_SCL_OFF;DELAY_US(2);IIC_SCL_OFF;IIC_SDA_ON;DELAY_US(10); }void eeprom_stop(void) {IIC_SDA_OFF;IIC_SCL_OFF;DELAY_US(1);IIC_SCL_ON;DELAY_US(1);IIC_SDA_ON;DELAY_US(2);IIC_SCL_OFF;DELAY_US(2);IIC_SCL_OFF;IIC_SDA_ON;DELAY_US(10); }void eeprom_ack(void) {IIC_SDA_ON;IIC_SCL_OFF;DELAY_US (10);IIC_SDA_OFF;DELAY_US(1);IIC_SCL_ON;DELAY_US(1);IIC_SCL_OFF;DELAY_US(2);IIC_SCL_OFF;IIC_SDA_ON;DELAY_US(10); }void eeprom_noack(void) {IIC_SDA_ON;IIC_SCL_OFF;DELAY_US (10);IIC_SCL_ON;DELAY_US(1);IIC_SCL_OFF;DELAY_US(2);IIC_SCL_OFF;IIC_SDA_ON;DELAY_US(10); }void eeprom_checkack(void) {IIC_SCL_ON;DELAY_US(10);IIC_SCL_OFF; }void eeprom_write_byte(unsigned char ucChar) {unsigned char i;IIC_SDA_ON;IIC_SCL_OFF;DELAY_US (10);for(i0; i8; i){if(!(ucChar BIT(7-i)) 0) IIC_SDA_ON;else IIC_SDA_OFF;DELAY_US (1);IIC_SCL_ON;DELAY_US(1);IIC_SCL_OFF;DELAY_US(2);}IIC_SCL_OFF;IIC_SDA_ON;DELAY_US(10); }unsigned char eeprom_read_byte(void) {unsigned char i;unsigned char ucChar 0;for(i0; i8; i){if(IIC_SDA_VALUE 1){ucChar | BIT(7 - i);}else{ucChar ~BIT(7 - i);}IIC_SCL_ON;DELAY_US(1);IIC_SCL_OFF;DELAY_US(2);}IIC_SCL_OFF;IIC_SDA_ON;DELAY_US(10);return ucChar; } void eeprom_write_char(unsigned int nAddress,unsigned char ucChar) {eeprom_start();if(nAddress0x10000) eeprom_write_byte(0xa2);else eeprom_write_byte(0xa0);eeprom_checkack();eeprom_write_byte(nAddress/256); eeprom_checkack();eeprom_write_byte(nAddress%256); eeprom_checkack();eeprom_write_byte(ucChar);eeprom_checkack();eeprom_stop(); if(nAddress%256 0) DELAY_MS(100);else DELAY_MS(8); }unsigned char eeprom_read_char(unsigned int nAddress) {unsigned char ucChar;eeprom_start(); if(nAddress0x10000) eeprom_write_byte(0xa2);else eeprom_write_byte(0xa0);eeprom_checkack();eeprom_write_byte(nAddress/256); eeprom_checkack();eeprom_write_byte(nAddress%256); eeprom_checkack();eeprom_start(); if(nAddress0x10000) eeprom_write_byte(0xa3);else eeprom_write_byte(0xa1);eeprom_checkack();ucChar eeprom_read_byte();eeprom_noack();eeprom_stop();DELAY_US(10);return ucChar; } 其中IIC_SCL_ON和IIC_SCL_OFF表示SCL引脚电平拉高或拉低 IIC_SDA_ON和IIC_SDA_OFF表示SDA引脚电平拉高或拉低IIC_SDA_VALUE表示读取SDA引脚电平。需要注意的是模拟IIC时引脚需要设置为开漏输出且需要上拉电阻。 有两个需要注意的点一个是器件地址指令当写存储地址处于前一半时发送A0指令当写存储地址处于后一半时发送A2指令。另一个则是跨页写每256字节为一页当出现跨页写时需要增大延时否则有可能出错。
http://www.hkea.cn/news/14343515/

相关文章:

  • 河南城乡建设部网站郑州网站优化托管
  • 网站建设的现状分析安阳刚刚发生的事
  • 错乱变装wordpress徐州网站建设优化宣传
  • 大作设计网站官网登录入口酒店用品网站建设
  • 建立网站的公司有哪些河北邢台医学高等专科学校
  • 李洋网站建设微信开放平台小程序
  • 网站上做销售网点怎么做施工企业图片
  • 山东中讯网站建设WordPress预览出错
  • 石柱网站制作石家庄建站软件
  • 如何自己建立网站建设海南网络广播电视台地震避险常识
  • 网站价格淘宝联盟怎么做自已的网站
  • 请给自己的网站首页布局怎么做自己的html网站
  • 做网站 哪些公司网站优化人员
  • 企业建站有什么好处wordpress 单页模版
  • php做用户登录网站为什么网站建设需要每年续费
  • 动易网站频道栏目字体大小修改地方同城网站开发
  • 咋样查看网站用什么编程语言做的南充二手房最新出售信息
  • 网页制作企业网站作业官方网站建设教程
  • 网站怎样改logoopenshift安装wordpress密码忘记
  • node.js 做网站宜章网站建设
  • 上海企业建站公司排名广东建设项目备案公示网站
  • 网站建设有限公怎么做招聘有哪些网站
  • 做网站时需要FTP工具吗专业自适应网站建设极速建站
  • 定西市小企业网站建设建设物流网站的分类
  • 网页设计与网站建设考试名词解释手机营销网站建设
  • 重庆装修网站建设高端企业展厅设计公司
  • 邢台网站建设策划领券购买网站是怎么做的
  • 青岛建设集团官方网站车行网站源码
  • 做网站的公司 设计好尚石设计深圳有限公司
  • 下载男女做爰免费网站和田地区建设局网站