完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
|
相关推荐
1个回答
|
|
有段时间没有更新博客了,主要是大部分时间都用在公司项目上,以及整理书稿了。在整理书稿的过程中,到了讲述PCIe协议这章的时候,总觉得只是介绍协议和UEFI代码,未免有点太枯燥了。
因此,我把之前写好的章节全部推翻,把介绍PCI协议的内容,改为实现一个实际的UEFI Option ROM了。也就是说,我准备制作一个带Flash ROM的PCIE开发板,把UEFI Oprom代码灌入,设备插在计算机上,就可以显示编写好的界面,并能控制开发板上器件,实现一些有趣的功能。 开发板我取名为YIE001,来源于我们博客网站的缩写。目前的计划如下:
另一个计划是关于UEFI与USB的,我准备稍微拓展一下,把如何用单片机实现HID通讯,Windows下如何访问HID设备、UEFI下如何访问HID设备,作为一个大专题,全面讲一下。时间足够的话,Linux系统下访问HID设备的方法也试着实现一下。这就把USB HID从上到下,我觉得应该掌握的知识,全部都探索了一遍。 本篇博客,主要介绍下刚打样回来的YIE001的硬件结构。 开发板YIE001主要就是为开发UEFI Option ROM而制作的,其目的为了演示Option ROM代码如何调用Protocol、如何控制硬件。它是一块PCIe的板卡,提供了拨动开关控制、LED灯的控制以及I2C的接口,其产品结构示如图1所示。 图1 YIE001开发板结构 实际的板卡,如图2所示。 图2 YIE001开发板 YIE001的主芯片为CH366,在7.1.1节介绍UEFI环境下与PCI/PCIe设备通信时,曾经介绍过其部分内部寄存器的功能。CH366是PCI-Express 总线的扩展 ROM 控制卡的专用芯片,它支持容量为 64KB~1MB的可电擦写只读存储器Flash ROM。开发板中所用的Flash ROM为SST公司的SST25VF010A,容量为1Mb,也即128KB。 在YIE001上,提供的硬件资源有2个拨动开关、4个LED灯,以及I2C接口。开发板上的CH366,采用的是LQFP-44无铅封装。其中,拨动开关分别连接了CH366的引脚GPI1和GPI2;LED灯通过低电平触发,LED1、LED2、LED3、LED4分别连接到CH366的引脚SW0、SW1、GPO和RSTO;I2C接口则是直接将CH366中兼容I2C的4个引脚引出,以方便连接其他I2C设备。 查看CH366的芯片手册,可知这LED1和LED2对应CH366的控制寄存器的位0和位1。将控制寄存器的位0的值设置为0,即可点亮LED1,设置为1,即可关闭LED1。LED2的亮灭,可同样通过设置控制寄存器位1的值来实现。其余硬件资源的对应,如图3所示。 图3 YIE001硬件资源对应(摘自CH366芯片手册) YIE001的硬件结构介绍,就到此完成了。下一篇开始,我将使用这个开发板,按计划实现各种功能,做一些有意思的实验。 |
|
|
|
只有小组成员才能发言,加入小组>>
2572 浏览 0 评论
769浏览 1评论
529浏览 0评论
279浏览 0评论
468浏览 0评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-1-3 05:46 , Processed in 1.200300 second(s), Total 77, Slave 59 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (威廉希尔官方网站 图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号