SPI接口软件模拟研究论文.docx

上传人:爱问知识人 文档编号:461155 上传时间:2018-11-18 格式:DOCX 页数:5 大小:18.20KB
返回 下载 相关 举报
SPI接口软件模拟研究论文.docx_第1页
第1页 / 共5页
SPI接口软件模拟研究论文.docx_第2页
第2页 / 共5页
亲,该文档总共5页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《SPI接口软件模拟研究论文.docx》由会员分享,可在线阅读,更多相关《SPI接口软件模拟研究论文.docx(5页珍藏版)》请在三一文库上搜索。

1、第 1 页 SPI 接口软件模拟研究论文 特征码 mOaovaFbaAsebhuyihwY 软件模拟引言随着信息社会的发展,网络和信息家电越来越地 出现在人们的生活中。人们普通要求将家庭内的所有家用电器 与 Internet 连接起来,实现主人在远方用计算机或电话通过 Internet 对象家庭电设施进行监控。家用电器制造商可以通过 网络对其生产的设备进行售后跟踪服务;家用电器是故障时能 自动按预设的邮件地址来发送电子邮件进行报警。这就需要有 一个“家庭网络中央控制器” 。它对外与 Internet 连接,对内 通过家庭内部无线局域网将所有家用电器连接成一体,从而确 保信息家电安全地接入 In

2、ternet。当前,多数研究单位推出的 家庭网络智能控制器,均以 PC 或准 PC 机作为硬件平台,由于 价位高而均未被市场容纳。嵌入式 Internet 是近几年发展起来 的一项新兴技术。以 32 位 ARM 嵌入式微处理器为硬件平台,通 过移植嵌入式操作系统 uClinux 内核,开发相应的硬件驱动、 微型 GUI 和上层应用软件,最终实现产品化的嵌入式家庭网络 第 2 页 中央控制器。该系统具有体积小、功耗低、价格便宜的特点。 1 系统的硬件组成本系统以高性能、低价格的 S3C4510B 为主 CPU。它是 Samsung 公司推出的基于 ARM7TDMI 核,精简指令系 统的 32 位

3、高速微处理器。工作电压为 3.3V,内核 ARM7TDMI 的 工作电压为 2.5V,大大降低了芯片的功耗。S3C4510B 片上资源: 一个总线仲裁器可以根据总线仲裁优先级在片上功能模块和外 围设备之间进行系统总线控制权分配;8KB 指令、数据复用 Cache,每 128bit 为 1 页,并可全部或部分设置为 SRAM;1 个 主 I2C 总线控制器,可作为主发送器或主接收器,能连接多个 从设备;2 个通用 DMA;18 个通用 I/O 口; 2 路 4 线 UART 口, 其中一个支持 IrDA 1.0,可用于红外通信;6 组 ROM/SRAM/Flash 用于管理外部存储器。另外,可扩

4、展 4 组动态 存储器和 4 BANK 扩展 I/O 设备;2 通道带有 DMA 传送方式的 HDLC 口;1 个 10M/100M 自适应以太网控制器。图 1 为家庭网关 的硬件框图,以 S3C4510B 为基本核心系统,外围扩展一系列功 能模块。有 44 键盘及以屏幕 LCD 显示构成良好的人机界面, 用于手动本地参数查询和设定。家庭网关基本系统以 SPI 接口 与 PTR3000 无线收发模块相连,同时家庭内部家电控制器也通 过 SPI 接口扩展 PTR3000 无线模块。这样,家庭网关的无线模 块以轮询的方式与家庭内各家电控制器上无线模块进行通信, 从而组成家庭内部无线子网。家庭网关基

5、本系统只需对 SPI 口 第 3 页 进行操作即可实现与家电通信。实现了家电以家庭网关为中介 与 Internet 在物理层互联的三个通路:PC 通过 LAN 经由 Internet 连接到基本系统的以太网口、PC 通过 Modem 经由公司 电话网与嵌入式 Modem 相连再到 UART1、电话机经过公用电话 网经语音卡连到 UART1。 2 uClinux 嵌入式操作系统操作系统选用 uClinux。它是一个 完全符合 GNU(GNUs Not Unix,自由软件基金会) /GPL(General Pulic License,通用公共许可证)公约的完 全开放代码项目,是标准 Linux 的

6、一个分支,现在由 Lineo 公 司支持维护。它专门针对没有 MMU 的 CPU,并且专为嵌入式系 统做了许多小型化的工作。UClinux 经过对标准 Linux 内核的 改动,形成了一个高度优化的、代码紧凑的嵌入式 Linux。虽 然它的体积很小,但 uClinux 仍然保留了 Linux 的大多数的优 点,稳定、良好的移植性、优秀的网络功能、完备的对各种文 件系统的支持以及标准丰富的 API。它的主要特片如下:在 linux-2.4.x/driver/char/Makefile 添加 1 行: obj_$(CONFIG_SPI)+=SPI.0。在 24 行 obj-y+=mem.o tty

7、_io.o 后加 PI.o。在 linux- 2.4.x/driver/char/Config.in,添加 1 行: boolSPICONFIG_SPI 便于在 make me nuconfig 时选择。 在 linux-2.4.x/driver/char/mem.c 在文件头部添加:#ifdef 第 4 页 CONFIG_SPI /*编译时选择该项就执行 SPI 的初始化函数 */extern void SPI_init(void);#endif 在 chr_dev_init() 函数添加:#ifdef CONFIT_SPISPI_init();#endif修改 vendor/Samsung

8、/4510b/Makefile,建立起设备节点。在 1235 行间,DEVICE 部分添加内容 SPI,c,29,0。SPI 是设备名,c 代 表字符设备,29 是 SPI 的主设备号,0 是 SPI 的次设备号。 make menuconfig 时选中 SPI 编译,然后直载。启动后,会 看到/proc/devinces 中字符设备多了一项 SPI 29。S3C4510B 有 18 个通用 I/O 口,其中高 10 位可设置为其它功能口。在该 系统中,设置 P8 为中断接收线,P11 模拟主机输出线 MOSI,P12 模拟主机时钟 SCK,P13 模拟主机输入线 MISO。P8 口用于接收

9、PTR3000 的发送请求信号。当 P8 口接收到请求信号 时,系统进入中断处理。中断处理进程唤醒睡在睡眠队列 SPI_WAIT 上的读进程,读进程由 P12 口输出 SCK 信号并由 P13 口读入数据。值得说明的是,SPI 不带中断线,在此用 P8 口做 中断接收线是为了避免操作系统在没有进行 SPI 操作时不断向 SCK 线发时钟信号。因此,MSP430F147IPM 必须另外与 S3C4510B 连一个引脚在请求发送数据时发出中断接收线是为了 避免操作系统在没有进行 SPI 操作时不断向 SCK 线发时钟信号。 因此,MSP430F147IPM 必须另外与 S3C4510B 连一个引脚在请求 第 5 页 发送数据时发出中断请求信号。实现过程如下:Static

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 事务文书


经营许可证编号:宁ICP备18001539号-1