·上一文章:深入探究内部云存储的特别之处
·下一文章:非易失性半导体存储器的相变机制
2.2 程序设计
2.2.1 固件设计
固件(Firmware)直接与硬件进行通信,主要功能是负责接受和处理主机发给设备的各种请求,并向主机返回设备的状态信息。Cypress公司为了简化固件代码的开发过程,特别设计一个固件程序框架,框架如图3所示。主要工作是完成初始化、USB标准设备请求的处理和USB挂起电源管理服务。使用框架来构造固件程序,首先框架初始化内部的状态变量,调用用户初始化函数TD_Init()。该函数返回后,初始化USB接口到未配置状态并使能中断。每隔1s进行一次设备重枚举,直到端点接受到一个SETUP包。函数TD_Init()在框架初始化期间被调用,在设备重枚举和任务调度启用之前调用该函数,用来初始化用户的全局变量。