欢迎来到天天文库
浏览记录
ID:31685273
大小:1.87 MB
页数:13页
时间:2019-01-17
《《嵌入式计算机系统》课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、上海电力学院课程设计报告设计题目:基于ARM和Linux的I2C总线读写程序设计与实现专业:自动化工程学院班级:000000姓名:11111111学号:1111111112/131.课题研究意义、国内外研究现状及应用分析:(1)掌握I2C总线控制器驱动程序的使用方法;(2)掌握使用I2C总线控制器驱动程序访问CAT1025的方法。(3)使用I2C总线控制器驱动程序编写应用程序,往CAT1025内部写入16个字节,然后读回并进行校验。I2C(inter-integrated-circuit)总线,是由菲利普公司开发的一种同步串行总线协议,用于连接微控制器
2、及其外围设备,最初是为音频和视频设备开发的。如今I2C在各种电子设备中得到了广泛的应用。嵌入式系统中常常使用这个总线连接RAM,EEPROM以及LCD控制器等设备。I2C总线因协议成熟,引脚简单,传输速率高,支持的芯片多,并且有利于实现电路的标准化和模块化,得到了包括Linux在内的很多操作系统的支持,受到开发者的青睐。Linux内核中针对I2C的总线特性,其设备驱动使用了一种特殊的体系结构,开发I2C总线设备驱动程序就必须理解Linux的I2C总线驱动的体系结构。2.课题总体方案设计及功能模块介绍:在嵌入式ARM平台及Linux环境下,掌握I2C总线
3、控制器驱动程序的使用方法,掌握使用I2C总线控制器驱动程序访问CAT1025的方法,向CAT1025内部写入多个字节,然后读回并进行校验。功能模块:CAT1025JI-30,E2PROM,I2C总线(1)CAT1025JI-30为了提高整个系统的可靠性,复位电路采用了带手动复位的电源监控复位芯片CAT1025JI-30。CAT1025JI-30内置有256字节的E2PROM存储器,I2C总线接口。工作频率高达203MHz所以使用了S3C2410A芯片的I2C总线接口与其连接,电路原理如图1.12所示。图1.12如图1.12所示,I2C总线上拉电阻R8、
4、R9的大小为4.7KΩ。CAT1025JI-30的器件地址为0xA0,如果用户板(即底板)上需要使用地址为0xA0的I2C器件,或者需要将I2CSDA、I2CSCL用作GPIO,则可以将电阻R19、R20拆除(图1.12中的虚线框部分)。说明:DeviceARM2410默认配置时,R19、R20是焊接的。CAT1025内部包含256字节的读写空间,通过USB总线读/写CAT1025时,包括下两项操作:(1)读CAT1025:PC通过USB总线发送读命令(1字节),S3C2410A从CAT1025读取256字节,通过USB总线发回PC。12/13(2)写
5、CAT1025:PC通过USB总线发送257字节(其中包括1字节的写命令及256字节的数据),S3C2410A将256字节的数据写入CAT1025。写入成功后,将成功写入的字节数(2字节)通过USB总线发回PC。可见,读CAT1025时,PC发送1字节,但S3C2410A返回256字节。写CAT1025时,PC发送257字节,但S3C2410A返回2个字节。为了编程方便起见,规定:PC与S3C2410A通过USB总线通信时,一帧的长度为259字节,一个帧的定义如下:写CAT1025的过程与读CAT1025的过程类似。写CAT1025的过程如图6.4所示
6、。PC作为主动方,MagicARM2410作为被动方。(1)PC发送一个写命令帧,命令为:写命令(1字节),数据长度字段:值为256,数据字段为:要写入CAT1025的256个字节。(2)MagicARM2410使用USB设备控制器驱动程序的读端点函数接收到写命令帧,就使用I2C总线控制器驱动程序提供的API函数将256字节写入CAT1025。(3)MagicARM2410使用USB设备控制器驱动程序的写端点函数,发送响应帧到PC。响应帧的数据长度字段为:成功写入字节数,数据字段则为无效。(4)PC收到响应帧,根据响应帧中成功写入字节数,就可判断写CA
7、T1025是否成功。至此,写CAT1025操作完成。12/13(2)E2PROM存储器电路:EEPROM(ElectricallyErasableProgrammableRead-OnlyMemory),电可擦可编程只读存储器--一种掉电后数据不丢失的存储芯片。EEPROM可以在电脑上或专用设备上擦除已有信息,重新编程。一般用在即插即用。(3)I2C总线控制器:I2C总线是器件间串行传输总线,以其规范和带I2C接口的外围器件获得广泛应用。S3C2410处理器内置有I2C总线接口。I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据,每
8、个器件都有一个唯一的地址识别。I2C总线在传送数据过程中共有3种信号:(1)开始信号:SCL为
此文档下载收益归作者所有