- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
“便携式温度采集器”原理与测试说明1程序设计目标及程序运行效果说明程序设计目标:本程序是利用温度传感器测量周围环境的实时温度,然后每隔6秒向24C02的0x00地址写入温度数据,记录下温度温度。写入数据的地址,写入非易失存储器的温度数据以及实时温度分别显示在数码管上。通过按键控制启动或暂停温度数据的采集和写入,以及温度数据的读取。程序运行效果说明:默认下载后数码最左边两位显示00,中间三位显示000,最右边三位显示实时温度数据。数码管左边2位显示存储温度数据的24C02地址,数码管中间三位为写入24C02非易失存储器的温度数据,数码管右边三位显示温度传感器测量的实时温度数据。每隔6秒,温度传感器测得的实时温度数据写入24C02非易失存储器中,然后读出来并显示在数码管中间三位上面,数码管最左边两位的24C02地址加1。当按下key1键时,最右边的一个(第8个)LED灭,实时温度数据采集停止,温度数据停止写入24C02非易失存储器。在实时温度数据采集停止的状态下,按下key2键,24C02存储器内地址减1,并将此地址写入的温度数据读出。按下key3键,24C02存储器内地址加1,并将此地址写入的温度数据读出;再次按下key1键,最右边的一个(第8个)LED亮,实时温度数据采集开启,温度数据可以写入24C02非易失存储器。2程序相关电路及工作原理说明非易失性存储器(nonvolatile memory)是所有形式的固态(没有可动部分)存储器的一个一般的术语,它不用定期地刷新存储器内容。这包括所有形式的只读存储器(ROM),像是可编程只读存储器(PROM)、可擦可编程只读存储器(EPROM)、电可擦除只读存储器(EEPROM)和闪存。在许多常见的应用中,微处理器要求非易失存储器来存放其可执行代码、变量和其他暂态数据(例如采集到的温度、光照等数据)。2.124C02工作电路及其工作原理本实验采用24C02芯片,24C02通过IIC_SCL和IIC_SDA与单片机相连,单片机以IIC总线的方式对24C02进行读写。24C02是一个2K位串行E2PROM,内部含有256个8位字节。图1 24C02模块电路(1)管脚配置(2)管脚描述(3)寻址方式寻址信号由一个字节构成,高7位为地址位,最低位为方向位,用以表明主机与从器件的数据传送方向。方向位位0,表明主机接下来对从器件进行写操作;方向位位1,表明主机接下来对从器件进行读操作。A0,A1和A2对应器件的管脚1,2和3;a8,a9和a10对应存储阵列地址字地址;(4)读/写时序图写一个字节时序读一个字节时序如图,写一个字节时序,第一个DEV SEL是器件选择信号,器件选择的范围为(000~111),总共可以选择8个24C02芯片器件。但是本实验只用到了1个24C02芯片,所以对应的器件管脚地址A2A1A0为000。第二个信号BYTE ADDR是地址信号,表示要对哪一个地址进行操作,第三个DATA IN则是写入的数据。而读操作则是多了一步,DEV SEL和BYTE ADDR后,还有一个DEV SEL,但此信号的最后一位为高,表示是读操作,随后从机会把相应地址的数据发送给主机。2.2 I2C总线介绍I2C(Inter-Integrated Circuit)总线是由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。是微电子通信控制领域广泛采用的一种总线标准。它是同步通信的一种特殊形式,具有接口线少,控制方式简单,器件封装形式小,通信速率较高等优点。I2C总线硬件结构图如下:SCL是时钟线,SDA是数据线I2C总线信号包括有,启始信号,停止信号和应答信号,在程序用分别用函数void start()、void stop()、void respons()表示。24C02的存储空间为2K,每一次写和读操作都只能操作已选定的对应24C02芯片的地址数据。要切换操作的芯片,需要重新发送寻址信号,在void write_add(uchar addr,uchar date)函数中,第一个寻址信号writebyte(0xa0),已经固定了本程序只能在第0个芯片进行操作(注:0xa0化为二进制为1010000,其中,前4位1010是固定不能改变的,最后一位0代表写操作,1代表读操作,而中间三位则是代表不同芯片地址的编号),若要改变需要操作的芯片,则只需改变中间三位即可。I2C位传输?数据传输SCL为高电平时,SDA线若保持稳定,那么SDA上是在传输数据bit;??若SDA发生跳变,则用来表示一个会话的开始或结束??数据改变:SCL为低电平时,SDA线才能改变传输的bit。??I2C开始和结束信号??开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。??结束信号:SCL为高电平时
文档评论(0)