网站定制营销的过程网站建设与管理专业就业前景

web/2025/10/7 2:28:08/文章来源:
网站定制营销的过程,网站建设与管理专业就业前景,浙江建设三类人员证书查询,网站技术招标怎么做以下内容源于朱有鹏嵌入式课程的学习与整理#xff0c;如有侵权请告知删除。 参考内容 I2C子系统详解3——I2C总线驱动层代码分析_天糊土的博客-CSDN博客 一、S5PV210的I2C控制器 1、为什么需要控制器#xff1f; 通信双方通过时序协调工作#xff0c;但是时序比较复杂而…以下内容源于朱有鹏嵌入式课程的学习与整理如有侵权请告知删除。 参考内容 I2C子系统详解3——I2C总线驱动层代码分析_天糊土的博客-CSDN博客 一、S5PV210的I2C控制器 1、为什么需要控制器 通信双方通过时序协调工作但是时序比较复杂而不利于SoC软件完成。于是在SoC内部设置了硬件的控制器来产生通信时序这样我们写软件时只需要向控制器的寄存器中写入配置值即可。 2、I2C控制器结构框图 S5PV210的I2C控制器的相关内容始于用户手册第883页。  1时钟部分 时钟来源是PCLK_PSYS经过内部分频最终得到I2C控制器的CLK通信中这个CLK会通过SCL线传给从设备。 2I2C总线控制逻辑 这部分负责产生I2C通信时序主要体现在I2CCON、I2CSTAT这两个寄存器。实际编程中要发送起始位、停止位、接收ACK等都是通过这两个寄存器背后所代表的电路模块来实现的。 3移位寄存器 将要发送的字节数据通过移位寄存器变成连续的位一个个位地丢给SDA线。 4地址寄存器 比较器 本I2C控制器做从设备的时候用。 3、I2C控制器的工作时钟 由S5PV210——S5PV210的时钟系统可以得知 1时钟源头是PCLK_PSYS经过2级分频后得到I2C控制器的工作时钟。 2第一级分频系数在I2CCON的bit[6]进行设置分频后得到一个中间时钟I2CCLK。 3第二级分频系数为[1,16]分频器的输入是I2CCLK输出是I2C控制器的工作时钟。 比如一个可用的配置是65000KHz/512/431KHz。 4、I2C控制器有关的寄存器 1I2CCON、I2CSTAT寄存器 主要用来产生通信时序和I2C接口配置。 2I2CADD寄存器 主要用来写自己的slave address。 3I2CDS寄存器 发送/接收的数据都放在这里。 二、X210板载gsensor简介 1、重力加速度传感器gsensor gsensor一般用在手机、平板、智能手表等设备上用来感受人的手的移动获取一些运动的方向性信息用来给系统作为输入参量比如可以用来设计智能手表的计步器功能。 重力加速度传感器、地磁传感器、陀螺仪这三个传感器都是用来感测运动的速度、方位等信息的所以现在的9轴传感器就是把这三个传感器结合起来使用一定的算法得出结论这样的结论比较精准。 传感器的接口一般有2种模拟接口和数字接口。 模拟接口是指使用接口电平变化来作为输出。比如使用模拟接口的压力传感器在压力不同时输出电平在03.3V范围内变化每个电压对应一个压力。SoC需要用使用AD对这些数据进行转换得到数字化的电压值再用数字电压值去校准得到压力值。 采用数字接口的传感器是在采用模拟接口的传感器的基础上内部集成了AD通过一定的总线接口协议一般是i2C来输出数字化的参数。这样SoC直接通过总线接口初始化传感器、读取传感器输出的参数即可。比如gsensor、电容触摸屏IC就采用数字接口。 换言之gsensor是I2C通信中的从设备S5PV210中的I2C控制器是主设备。 2、gsensor原理图分析 由X210开发板的原理图可知 1gsensor的供电由PWMTOUT3引脚控制。当PWMTOUT3输出低电平时gsensor无电不工作输出高电平时gsensor才会工作。PWMTOUT3对应着引脚GPD20_3。 2gsensor的SDA和SCL接在S5PV210的I2C端口0对应着引脚GPD1_0、GPD1_1。将来编程时要初始化相关的GPIO即把相关GPIO设置为正确的模式和输入输出值即通过对寄存器GPD1CON的设置来实现。该寄存器的内容如下 3、I2C从设备的设备地址 这款重力加速度传感器的型号叫KXTE9它作为I2C通信中的从设备与S5PV210这个SoC中的I2C控制器主设备进行通信。KXTE9的I2C地址固定为0b00011110x0f。 I2C从设备地址本身是7位的但是在I2C通信中发送I2C从设备地址时实际发送的是8位。高7位bit7-bit1对应I2C从设备的7位地址最低一位LSB存放R/W信息即下一个数据是主设备写从设备读对应0还是主设备读从设备写对应1。 主设备发信息给gsensor时SAD应该是0b00011110(0x1E)如果是主设备读取gsensor信息时则SAD应该是0b000111110x1F。 4、I2C从设备的通信速率 I2C协议本身属于低速协议通信速率不能太高。 另外主设备和从设备本身都有最高通信速率限制属于各个芯片本身的参数实际编程时只要小于两个即可。 作为只能做从设备的sensor其本身i2c通信速率偏低像KXTE9最高支持400KHz的频率。 三、I2C总线通信流程 位于用户手册第889页。 1、S5PV210的主发送流程图 2、S5PV210的主接收流程图 3、gsensor的写寄存器流程图 待写。 4、gsensor的读寄存器流程图 待写。 四、I2C通信代码 相关函数在文件drivers\i2c\busses\i2c-s3c2410.c中。 1、I2C控制器初始化s3c24xx_i2c_init() 此函数完成I2C控制器的初始化初始化GPIO设置IRQEN和ACKEN初始化I2C时钟。 /* s3c24xx_i2c_init** initialise the controller, set the IO lines and frequency */static int s3c24xx_i2c_init(struct s3c24xx_i2c *i2c) {unsigned long iicon S3C2410_IICCON_IRQEN | S3C2410_IICCON_ACKEN;struct s3c2410_platform_i2c *pdata;unsigned int freq;/* get the plafrom data */pdata i2c-dev-platform_data;/* inititalise the gpio */if (pdata-cfg_gpio)pdata-cfg_gpio(to_platform_device(i2c-dev));/* write slave address */writeb(pdata-slave_addr, i2c-regs S3C2410_IICADD);dev_dbg(i2c-dev, slave address 0x%02x\n, pdata-slave_addr);writel(iicon, i2c-regs S3C2410_IICCON);/* we need to work out the divisors for the clock... */if (s3c24xx_i2c_clockrate(i2c, freq) ! 0) {writel(0, i2c-regs S3C2410_IICCON);dev_err(i2c-dev, cannot meet bus frequency required\n);return -EINVAL;}/* todo - check that the i2c lines arent being dragged anywhere */dev_dbg(i2c-dev, bus frequency set to %d KHz\n, freq);dev_dbg(i2c-dev, S3C2410_IICCON0x%02lx\n, iicon);dev_dbg(i2c-dev, S3C2440_IICLC%08x\n, pdata-sda_delay);writel(pdata-sda_delay, i2c-regs S3C2440_IICLC);return 0; }2、I2C控制器主模式开始一次读写s3c24xx_i2c_message_start /* s3c24xx_i2c_message_start** put the start of a message onto the bus */static void s3c24xx_i2c_message_start(struct s3c24xx_i2c *i2c,struct i2c_msg *msg) {unsigned int addr (msg-addr 0x7f) 1;unsigned long stat;unsigned long iiccon;stat 0;stat | S3C2410_IICSTAT_TXRXEN;if (msg-flags I2C_M_RD) {stat | S3C2410_IICSTAT_MASTER_RX;addr | 1;} elsestat | S3C2410_IICSTAT_MASTER_TX;if (msg-flags I2C_M_REV_DIR_ADDR)addr ^ 1;/* todo - check for wether ack wanted or not */s3c24xx_i2c_enable_ack(i2c);iiccon readl(i2c-regs S3C2410_IICCON);writel(stat, i2c-regs S3C2410_IICSTAT);dev_dbg(i2c-dev, START: %08lx to IICSTAT, %02x to DS\n, stat, addr);writeb(addr, i2c-regs S3C2410_IICDS);/* delay here to ensure the data byte has gotten onto the bus* before the transaction is started */ndelay(i2c-tx_setup);dev_dbg(i2c-dev, iiccon, %08lx\n, iiccon);writel(iiccon, i2c-regs S3C2410_IICCON);stat | S3C2410_IICSTAT_START;writel(stat, i2c-regs S3C2410_IICSTAT); }3、I2C控制器主模式结束一次读写s3c24xx_i2c_stop static inline void s3c24xx_i2c_stop(struct s3c24xx_i2c *i2c, int ret) {unsigned long iicstat readl(i2c-regs S3C2410_IICSTAT);dev_dbg(i2c-dev, STOP\n);/* stop the transfer */iicstat ~S3C2410_IICSTAT_START;writel(iicstat, i2c-regs S3C2410_IICSTAT);i2c-state STATE_STOP;s3c24xx_i2c_master_complete(i2c, ret);s3c24xx_i2c_disable_irq(i2c); } 4、框架分析 我们最终目的是通过读写gsensor芯片的内部寄存器来得到一些信息。 为了完成这个目的我们需要能够读写gsensor的寄存器。而根据gsensor的规定我们需要按照一定的操作流程来读写gsensor的内部寄存器这是一个层次姑且叫做传输层、协议层、应用层。协议层的代码主要取决于gsensor芯片。 我们要按照操作流程去读写寄存器就需要考虑I2C接口协议。这就是所谓的物理层本质就是那些时序。此时要看主机SoC有没有控制器有控制器时考虑控制器的寄存器没控制器时要自己软件模拟时序。物理层代码主要取决于主机SoC。 相关的操作函数 gsensor写寄存器gsensor_i2c_write_reg gsensor读寄存器gsensor_i2c_read_reg gsensor编程gsensor_initial等

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88236.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

上海网站定制设计装饰网站

来源:https://www.awaimai.com/873.html 歪麦博客最近负责一个项目,用了 Yii Framework 的 MVC 框架,刚开始自以为结构很稳健。但是随着对业务逻辑理解的深入,才开始意识到问题的严重。我错误地理解了 MVC 中的 Controller&…

台前网站建设公司域名备案中网站可以开通

什么是建造者设计模式?和工厂设计模式有什么区别 建造者设计模式(Builder Design Pattern)和工厂设计模式(Factory Design Pattern)都是面向对象设计中的创建型模式,但它们解决的问题和应用场景有所不同。…

wordpress如何添加百度商桥wordpress 手机端优化

简介 TPC-C是专门针对联机交易处理系统(OLTP系统)的规范,一般情况下我们也把这类系统称为业务处理系统。 Tpcc-mysql是percona基于TPC-C(下面简写成TPCC)衍生出来的产品,专用于MySQL基准测试。其源码放在launchpad上&#xff0c…

除了Joomla用什么做网站好怎么给你新网站做seo

文章目录 继承的概念及定义继承的概念继承定义 基类和派生类对象赋值转换继承中的作用域派生类的默认成员函数继承与友元继承与静态成员复杂的菱形继承及菱形虚拟继承菱形继承菱形虚拟继承 继承的总结和反思笔试面试题 继承的概念及定义 继承的概念 继承(inheritance) 机制是面…

来凡网站建设公司石岩企业网站建设

compose模块 模板文件是使用 Compose 的核心,涉及到的指令关键字也比较多。但大家不用担心,这里面大部分指令跟 docker run 相关参数的含义都是类似的。 默认的模板文件名称为 docker-compose.yml,格式为 YAML 格式。 version: "3&quo…

河北住房和城乡建设厅网站卡百度推广seo效果怎么样

文章目录 链表1、基本介绍2、单向链表2.1 带头节点的单向链表测试类:链表实现类: 2.2 不带头节点的单向链表2.3 练习测试类:链表实现类: 3、双向链表测试类:双向链表实现类: 4、单向环形链表**测试类**&…

莆田个人外贸网站建设wordpress插件论坛

缓存击穿 缓存击穿是指在高并发场景下,缓存中的某个 key 失效,此时大量请求同时涌入数据库查询该 key 的数据,导致数据库瞬间压力过大,甚至宕机。缓存击穿的最佳解决方案是使用互斥锁,令只有一个线程可以从数据库中查…

如果网站打开非常缓慢搜索引擎营销是什么意思

一、janus介绍 Janus 官网:https://janus.conf.meetecho.com/index.html 参考文档:https://github.com/meetecho/janus-gateway Janus是一个开源的WebRTC网关,可用于构建实时通信应用程序。它提供了音频、视频和数据传输的功能,可…

论文收录网站建设网站盈利分析

jQuery 的 .toggleClass() 方法用于在选定的元素上添加或移除一个或多个类。这个方法会检查每个元素中指定的类,如果类不存在,则添加它;如果类已设置,则删除它。这被称为切换效果。此外,可以通过使用 "switch" 参数来规定只删除或只添加类。 语法 (selector).…

网站做成app客户端百度小说排行榜风云榜单

摘要:正筹划推进旗下手机安全产品出海揽客。6月22日,腾讯无线安全产品部副总经理胡振东在上海表示,腾讯手机管家已推出了安卓国际版,下决心进军国际市场。 腾讯(00700.HK)正筹划推进旗下手机安全产品出海揽客。6月22日&#xff0c…

建设银行网站 个人客户端甘肃第三建设集团公司

1688平台商品详情接口是开放平台提供的一种API接口,通过调用API接口,开发者可以获取1688商品的标题、价格、库存、月销量、总销量、库存、详情描述、图片等详细信息 。 获取商品详情接口API是一种用于获取电商平台上商品详情数据的接口,通过…

选课网站开发广告联盟app

本文针对用table显示数据&#xff0c;主要是table的线条颜色处理。 1.下面的这个方法&#xff0c;比较试用于单一的table不适用于table 套着table。这样的话在某些浏览器上浏览是有差别的。table套table 有可能会出现线条加粗的情况。 <style type"text/css"> …

河北省建设厅网站登陆设置设计师培训班多少钱

《幼儿园管理学》考评作业 一、填空题 &#xff08;1&#xff09;我国学前教育各级机构权限的划分制度是 、 、 。 &#xff08;2&#xff09;管理内容的五大要素是 、 、 、 、 。 &#xff08;3&#xff09;幼儿园总务工作的特点是 、 、 、 。 &#xff08;4&#xff09;园长…

c 网站开发大气家具营销型网站源码

分支语句if1.if基本语法2 if语句的嵌套3 比较运算符号4 逻辑运算符&#xff1a;5 整数随机数初应用6 tip7.断言assert1.if基本语法 if语句开发中的应用场景&#xff1a;如果条件成立做一件事情&#xff0c;如果条件不成立做另外一件事情。有了if语句&#xff0c;程序有了分支.…

微信网站前景如何建设一个双语的网站

我的需求是改变url地址的后缀&#xff0c;其他不改&#xff0c;所以直接for循环&#xff0c;变换数字就行 也就是 字符串变量字符串 想着改变后缀就能批量爬图。但是原本的想法是错误的 for num in range(2,8):url"http://www.win4000.com/wallpaper_detail_160877_"…

网站建设中管理员登录的代码怎么写wordpress如何多用户

eslint quo对我而言&#xff0c; JUnit是Java Universe中最重要的库。 但是我认为它的新版本已经过期。 通过将方法定义作为测试定义的方法&#xff0c;JUnit非常灵活&#xff0c;需要各种技巧……抱歉的功能&#xff0c;要做您实际上应该能够使用的基本&#xff08;Java 8&…

贵阳企业自助建站系统沙坪建设集团网站

在近期于伦敦Skills Matter举行的DDD eXchange 2018会议上&#xff0c;Martin Schimak认为在最近几年间&#xff0c;领域事件引发了越来越多的讨论&#xff0c;但是我们对命令也应如此&#xff0c;在这次会议上他讨论了微服务领域的事件、命令以及长周期的服务&#xff0c;以及…

vs2008 手机网站开发哈尔滨网建公司有哪些

Easyspy是一款网络入侵检测和流量实时监控软件。作为一个入侵检测系统&#xff0c;用来快速发现并定位诸如ARP攻击、DOS/DDOS、分片IP报文攻击等恶意攻击行为&#xff0c;帮助发现潜在的安全隐患。Easyspy又是一款Sniffer软件&#xff0c;用来进行故障诊断&#xff0c;快速排查…

做算法题的网站百度一下你就知道网页

本地安装的OracleXEUniv—oracle特别版&#xff0c;免费用户可以自由使用&#xff0c;但有连接数量和存储限制。最近遇到一个问题&#xff0c;当我的SSM项目连接本地数据库oracleXE后&#xff0c;我的navicat再连接时就会报错ORA-12516&#xff0c;就是oracle的会话数超出了限制…