LPC178x/177x初始化与E2PROM、外部存储器控制器详解
需积分: 45 42 浏览量
更新于2024-08-06
收藏 18.87MB PDF 举报
"初始化函数-word.origins.the.secret.histories.of.english.words.from.a.to.z"
本文主要探讨了在LPC178x微控制器环境中初始化USB主机功能的相关知识点,特别是涉及到了一个关键的初始化函数——usbHostInitialize()。该函数是为ZLG/USB1788 HOST模块设置运行环境的重要步骤。
**初始化函数usbHostInitialize()**
`usbHostInitialize()`函数的主要作用是初始化LPC178x上的USB主机控制器,确保其能够正确地与外设进行通信。它执行的任务包括设置硬件引脚连接、创建调度任务以及建立必要的信号量,这些是USB主机功能正常工作所必需的基础设置。
函数原型如下:
```c
USB_BOOL usbHostInitialize (USB_INT8U ucShedPrio,
USB_INT8U ucEnumPrio,
void (*pEnumSucessCallBack)(void),
void (*pDevDisconCallBack)(void))
```
参数说明:
1. `ucShedPrio`: 调度任务的优先级,数值越小优先级越高。
2. `ucEnumPrio`: 枚举任务的优先级,相对于调度任务优先级可以较低。
3. `pEnumSucessCallBack`: 枚举成功的回调函数,如果不需要可设置为NULL。
4. `pDevDisconCallBack`: 设备断开连接的回调函数,如果不需要可设置为NULL。
返回值:如果初始化成功,返回TRUE;否则,返回FALSE。
**注意事项**
在调用`usbHostInitialize()`时,需要注意调度任务优先级`ucShedPrio`应设置得较高,而枚举任务优先级`ucEnumPrio`可以相对较低。这样可以确保USB主机的关键操作(如设备枚举)能够在适当的时间执行。同时,用户定义的其他任务优先级不能与这两个任务的优先级相同,以防止冲突和异常。
在LPC178x系列微控制器中,USB功能的实现依赖于精心配置的硬件和软件环境,`usbHostInitialize()`就是这个过程中的关键一步。此外,LPC178x还包含其他丰富的功能部件,如E2PROM存储器和外部存储器控制器(EMC)。
**E2PROM存储器**
E2PROM(Electrically Erasable Programmable Read-Only Memory)是一种非易失性存储器,可以在不供电的情况下保留数据。LPC178x中的E2PROM功能允许用户存储配置信息或固件更新,具有以下特性:
1. 描述:E2PROM提供了一种可编程和可擦除的存储解决方案。
2. 特性:可能包括快速读取速度、多次编程/擦除周期以及数据保存期限等特性。
3. 寄存器描述:E2PROM的操作通常涉及到一系列的控制和状态寄存器,用于配置和监控存储操作。
4. E2PROM操作:可能包括读取、写入、擦除等操作,每个操作都有特定的时序和限制。
**外部存储器控制器(EMC)**
EMC是LPC178x中用于控制外部存储设备(如SRAM、DRAM、Nor Flash等)的接口。它提供了一种灵活的方式,使微控制器能够与多种类型的外部存储器进行高速数据交换:
1. 概述:EMC负责设置时序、地址映射和其他控制信号,以适应不同类型的存储器设备。
2. 特性:可能包括支持多种存储器类型、灵活的时序配置等。
LPC178x微控制器提供了广泛的硬件资源来支持复杂的系统设计,从USB主机初始化到E2PROM和EMC的管理,这些都是构建高效、可靠嵌入式系统的基石。
2013-02-15 上传
2022-06-20 上传
2019-02-18 上传
2022-03-01 上传
2022-01-26 上传
2019-08-29 上传
2015-09-15 上传
2022-03-14 上传
2020-10-13 上传
Yu-Demon321
- 粉丝: 23
- 资源: 3981
最新资源
- 掌握Jive for Android SDK:示例应用的使用指南
- Python中的贝叶斯建模与概率编程指南
- 自动化NBA球员统计分析与电子邮件报告工具
- 下载安卓购物经理带源代码完整项目
- 图片压缩包中的内容解密
- C++基础教程视频-数据类型与运算符详解
- 探索Java中的曼德布罗图形绘制
- VTK9.3.0 64位SDK包发布,图像处理开发利器
- 自导向运载平台的行业设计方案解读
- 自定义 Datadog 代理检查:Python 实现与应用
- 基于Python实现的商品推荐系统源码与项目说明
- PMing繁体版字体下载,设计师必备素材
- 软件工程餐厅项目存储库:Java语言实践
- 康佳LED55R6000U电视机固件升级指南
- Sublime Text状态栏插件:ShowOpenFiles功能详解
- 一站式部署thinksns社交系统,小白轻松上手