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

网站的维护和更新网站建设需要的专业知识

网站的维护和更新,网站建设需要的专业知识,海外网站cdn加速,网站一年费用一、I2C(续) 1.1 I2C寄存器 I2C_IADR地址寄存器(作为从机使用)I2C_IFDR频率分频寄存器I2C_I2CR控制寄存器I2C_I2SR状态寄存器I2C_I2DR数据寄存器 1.2 代码编写 初始化: void init_i2c_io(I2C_Type *base) {if(base I…

一、I2C(续)

1.1 I2C寄存器

I2C_IADR地址寄存器(作为从机使用)
I2C_IFDR频率分频寄存器
I2C_I2CR控制寄存器
I2C_I2SR状态寄存器
I2C_I2DR数据寄存器

1.2 代码编写

初始化:

void init_i2c_io(I2C_Type *base)
{if(base == I2C1){IOMUXC_SetPinMux(IOMUXC_UART4_RX_DATA_I2C1_SDA, 1);IOMUXC_SetPinMux(IOMUXC_UART4_TX_DATA_I2C1_SCL, 1);IOMUXC_SetPinConfig(IOMUXC_UART4_RX_DATA_I2C1_SDA, 0x70B0);IOMUXC_SetPinConfig(IOMUXC_UART4_TX_DATA_I2C1_SCL, 0x70B0);}
}void init_i2c(I2C_Type *base)
{init_i2c_io(base);if(base == I2C1){base->I2CR &= ~(1 << 7);base->IFDR = 0x15;base->I2CR |= (1 << 7);}
}

写操作 : 

void i2c_write(I2C_Type *base, unsigned char dev_addr, unsigned char reg_addr, unsigned char *data, unsigned int len)
{base->I2SR &= ~((1 << IAL) | (1 << IIF));while((base->I2SR & (1 << ICF)) == 0);base->I2CR |= (1 << MSTA) | (1 << MTX);base->I2CR &= ~(1 << TXAK);base->I2SR &= ~(1 << IIF);base->I2DR = dev_addr << 1;while((base->I2SR & (1 << IIF)) == 0);base->I2SR &= ~(1 << IIF);base->I2DR = reg_addr;while((base->I2SR & (1 << IIF)) == 0);while(len--){base->I2SR &= ~(1 << IIF);base->I2DR = *data++;while((base->I2SR & (1 << IIF)) == 0);}base->I2CR &= ~(1 << 5);while((base->I2SR & (1 << IBB)) != 0){delay_us(100);}
}

 读操作:

void i2c_read(I2C_Type *base,  unsigned char dev_addr, unsigned char reg_addr, unsigned char *data, unsigned int len)
{base->I2SR &= ~((1 << IAL) | (1 << IIF));while((base->I2SR & (1 << ICF)) == 0);base->I2CR |= (1 << MSTA) | (1 << MTX);base->I2CR &= ~(1 << TXAK);base->I2SR &= ~(1 << IIF);base->I2DR = dev_addr << 1;while((base->I2SR & (1 << IIF)) == 0);base->I2SR &= ~(1 << IIF);base->I2DR = reg_addr;while((base->I2SR & (1 << IIF)) == 0);base->I2CR |= (1 << RSTA);base->I2SR &= ~(1 << IIF);base->I2DR = (dev_addr << 1 ) | 1;while((base->I2SR & (1 << IIF)) == 0);base->I2CR &= ~(1 << MTX);base->I2SR &= ~(1 << IIF);if(1 == len){base->I2CR |= (1 << TXAK);}*data = base->I2DR;while(len--){while((base->I2SR & (1 << IIF)) == 0);base->I2SR &= ~(1 << IIF);if(1 == len){base->I2CR |= (1 << TXAK);}else if(0 == len){unsigned int t;base->I2CR &= ~((1 << MSTA) | (1 << TXAK));while(((base->I2SR & (1 << IBB)) != 0) && t < 10){t++;delay_us(100);}}*data++ = base->I2DR;}
}

想要实现浮点型运算,需打开相应的FPU。


文章转载自:

http://ToAS4vnd.cbpmq.cn
http://bm2cTQer.cbpmq.cn
http://bTJwYrlc.cbpmq.cn
http://uVKHkhvC.cbpmq.cn
http://zP8dOy1t.cbpmq.cn
http://MdJXPiB3.cbpmq.cn
http://B1oKoPQ5.cbpmq.cn
http://AJwUkWnR.cbpmq.cn
http://v2goVHl7.cbpmq.cn
http://kbFJzUVo.cbpmq.cn
http://AtZ1r1y3.cbpmq.cn
http://6mgvqRia.cbpmq.cn
http://eMyraRls.cbpmq.cn
http://hinqm7Bt.cbpmq.cn
http://LE2QAH7o.cbpmq.cn
http://qBamZ8ah.cbpmq.cn
http://cGyIG5YZ.cbpmq.cn
http://uyJaaGFN.cbpmq.cn
http://gWBjtFbv.cbpmq.cn
http://B4rHm1VW.cbpmq.cn
http://PaScee3o.cbpmq.cn
http://ma3qwlmp.cbpmq.cn
http://L4L2TPKh.cbpmq.cn
http://qcHZjHUo.cbpmq.cn
http://coOKdBsW.cbpmq.cn
http://YMbIifjD.cbpmq.cn
http://9FwYqG1o.cbpmq.cn
http://BWasT5H6.cbpmq.cn
http://tZuvkMYR.cbpmq.cn
http://snob436D.cbpmq.cn
http://www.dtcms.com/wzjs/742927.html

相关文章:

  • 椒江建设网保障性阳光工程网站工作组赴沈阳爆炸现场
  • 成都旅游酒店推荐台州首页关键词优化
  • 坪山网站建设哪家效益快wordpress调用分类
  • 开一个做网站的公司赚钱吗云服务器有哪些
  • asp网站模板安装教程wordpress自动发外链
  • 办公室装修企业东莞优化公司首选3火星
  • 上海明鹏建设集团有限公司网站网站商务方案
  • 用vs2013做网站教程游戏开发者大会
  • 秦皇岛和平大街网站建设域名网站负责人的责任
  • 用织梦做企业网站wordpress exp
  • wordpress本地建站中国营销网站
  • 吴江微信网站制作查网站域名
  • 大连比较好的网站公司吗桐乡市建设局官方网站
  • 芒市网站建设公司百度广州给做网站公司
  • 山东省建设厅注册中心网站个人做外贸怎样起步
  • 手机销售培训网站网站建设外包公司招聘
  • iis怎么搭建设计网站互动网站建设
  • 移动端高端网站wordpress取消更改
  • 小狗做爰网站小学网站源码php
  • 南京哪家公司做网站顶尖的设计网站
  • 网站系统重要性宣传片拍摄手法
  • 网站统计分析天津魔方网站建设
  • 贵阳市城乡建设部网站中国建设银行网站个人网上银行
  • wordpress主题 食品整站优化seo
  • 网站备案和域名备案的区别新网站 蜘蛛
  • wordpress背景透明南通seo网站推广费用
  • 江门网站建设硬件设备网站不备案可以用吗
  • 昆山 网站运营阿里云手机网站建设多少钱
  • 网站建设需要什么方案网站怎么做视频教程
  • 网站快排网页制作模板简易