seo优化网站推广专员招聘,视频直播软件有哪些,网站的音乐怎么做的,缘魁网站建设1 SPI的时钟极性CPOL和时钟相位CPHA的设置 1.1 SPI数据传输位数 SPI传输数据过程中总是先发送或接收高字节数据#xff0c;每个时钟周期接收器或发送器左移一位数据。对于小于16位的数据#xff0c;在发送前必须左对齐#xff0c;如果接收的数据小于16位#xff0c;则采用软…1 SPI的时钟极性CPOL和时钟相位CPHA的设置 1.1 SPI数据传输位数 SPI传输数据过程中总是先发送或接收高字节数据每个时钟周期接收器或发送器左移一位数据。对于小于16位的数据在发送前必须左对齐如果接收的数据小于16位则采用软件将无效的数据位屏蔽。 1.2 Linux Example drivers/hwmon/max1111.c static int max1111_probe(struct spi_device *spi) { enum chips chip spi_get_device_id(spi)-driver_data; struct max1111_data *data; int err; spi-bits_per_word 8; spi-mode SPI_MODE_0; //HERE err spi_setup(spi); if (err 0) return err; [...] } 1.3 MCU mems_init.c spi_config.polarity HAL_SPI_MASTER_CLOCK_POLARITY0; spi_config.phase HAL_SPI_MASTER_CLOCK_PHASE0; Cywee CMH1000 IC is designed by Realtek, software is designed by Cywee. CMH1000 sensorhub integrates 224KB DRAM and 336KB IRAM, SRAM voltage is 1V. CMH1000 sensorhub侧DataRAM开始地址保留1024字节给SPI传输用分成TX和RX各512 bytessensorhub侧封包最大是269 bytes包括header和payload。 2 SD卡SPI模式 2.1 SD卡pin映射到SPI模式 针脚 SD卡模式 SPI模式 1 CD/DAT3 CS 2 CMD MOSI 3 VSS VSS 4 VCC VCC 5 CLK CLK 6 VSS VSS 7 DAT0 MISO 8 DAT1 NC 9 DAT2 NC 2.2 SD命令中的CMD和ACMD的区别 ACMDApplication specific ComManD, which is an application specific command rather than a standard command。 一般的CMD只有6个bit后来发现需要的CMD类型多了所以就扩展出了CMD55ACMDxx的扩展模式。ACMD命令发送前需要先发送CMD55比如ACMD41先发送CMD55再发送ACMD41。 2.3 SD/MMC 初始化流程 1配置时钟慢速一般为400K设置工作模式 2发送CMD0进入空闲态该指令没有反馈 3发送CMD8如果有反应CRC值与发送的值相同说明该卡兼容SD2.0协议 4发送CMD55ACMD41判断SD卡的上电是否正确短反馈成功说明该卡为SD卡(短反馈第31位置1为HC卡)否则发送CMD0有反应说明是MMC卡 5发送CMD2验证SD卡是否接入长反馈CIDCard IDentification Register) 6发送CMD3读取SD卡的RCA地址Relative Card Address短反馈 7发送CMD9读取CSDCard Specific Data Register寄存器获取卡的相关信息 8发送CMD7使能SD卡 9配置高速时钟准备数据传输一般20M25M 10发送CMD55ACMD51读取SCRSD Card Configuration Register寄存器SD卡可以通过该值获得位宽如果是MMC卡则需要使用主线测试来确定卡的位宽 11SD卡发送CMD55ACMD6配置为4bit数据传输模式(根据SCR读出来的值确定)MMC卡发送CMD6来设置位宽 12发送CMD7使能SD卡使其进入传输状态接着发送CMD16设置块大小(根据前面读取的CSD信息确定) 13把命令参数设置为0再次发送CMD7取消选中所有卡 Figure 2-1 SD卡的初始化和识别流程 2.4 Q and A QSD卡的工作频率是根据什么来决定的 A目前所知不是通过读取寄存器可读写寄存器CSD、SCR等获取的而是根据SD卡的类型类型对应着工作频率。 host端配置支持的频率然后SD卡本身会有支持的频率两边取都支持的最高频率所以需要得到SD卡的类型类型就对应着频率。 in mmc.c mmc_select_card_type() - 根据卡的类型仅需要知道卡的类型后选择工作频率选择的工作频率不能大于最大工作频率最大工作频率由CSD寄存器TRAN_SPEED[103:96]字段指定。 3 SPI接口以太网芯片 WIZnet - 80 MHz SPI slave接口 ENC28J60 - Microchip Ethernet Controller10 MHz SPI slave CH395 - SPI slave 30 MHz QCOM平台使用gpll0去做分频SPI的速度可以达到100 MHz BCM89230交换芯片- SPI slave最高速度62.5 MHzData FormatBig Endian序1-byte command, 4-byte address, 1 ~ 8 bytes data 4 APL A39X0 Gen9 4.1 spi-pxa2xx 4.2 ACPI - iasl_win cat /sys/firmware/acpi/tables/DSDT DSDT.aml sudo apt-get install iasl iasl -d DSDT.aml cat DSDT.dsl WINDOWS BINARY TOOLS https://www.acpica.org/downloads/binary-tools 5 Abbreviations ACMD: Application specific ComManD ARC: Argonant RISC Core AT91SAM9260: SAM means Smart ARM-based ATMEL SAMBA: ATMEL Smart ARM-based Boot Assistant DTR: Data Transfer Rate DWC2Design Ware Controller 2Apple的嵌入式设备包括iPad和iPhone都是使用的DWC2 ISP1161: Philips Integrated host Solution Pairs 1161“Firms introduce USB host controllers”https://www.eetimes.com/document.asp?doc_id1290054 MISO: mi s əu MOSI: m əu si QUP高通平台的SPI总线和I2C共用core和引脚称为QUPQCOM Universal Peripheral而UART和QUP又共用引脚并且称为BLSP SL811HSCypress/ScanLogic 811 Host/Slave性能上与ISP1161Integrated host Solution Pairs 1161相当 TDITransDimension Inc.该公司首先发明了将TT集成到EHCI RootHub中的方法这样对于嵌入式系统来说就省去了OHCI/UHCI的硬件同时降低了成本作为对该公司的纪念Linux内核定义了宏ehci_is_TDI(ehci) TLV: TI Low Value高性价比 TPS: TI Performance Solution