完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我们正试图从FLHIDIDCuSTyTabLasfFabyYR寄存器中读出PSoC的制作年份。如第1724页所解释的,在寄存器的上4位中找到年,并且包含从0到9的值。
这些数字的意义是什么?我们如何获得PSoC生产的实际年份? 最好的问候, 戴维 以上来自于百度翻译 以下为原文 We are trying to readout the fabrication year of the PSoC from the FLSHID_CUST_TABLES_FAB_YR register. As explained on page 1724 the year is found in the upper 4 bits of the register and contains values from 0 to 9. What is the significance of those numbers? How do we get the actual year in which the PSoC was produced? Best regards, David |
|
相关推荐
3个回答
|
|
|
|
|
|
dlkmad 发表于 2018-9-3 14:20 “文件中提到的一年:0-9”指的是一年中4的最后一个数字。 这就是我所担心的…: 另一个问题是:批次号(寄存器0x49000103-4U)在产品生命周期中对于每个批次都是唯一的,还是每X年重复一次?如果它们是唯一的,我们可以使用它们来识别属于同一批次的PSoC,即使我们的产品已经运送了很多年(寿命10年)。 以上来自于百度翻译 以下为原文 "The "Year: 0-9" mentioned in the document refers to the last digital of the 4 of a year" That's what I feared... :/ An additional question: are the lot numbers (registers 0x49000103-4u) unique for each lot over the product life cycle or do they also repeat themselves every x years? If they were unique, we could use them to identify PSoCs belonging to the same lot even after our products have been shipped for many years (lifetime > 10years). [table][/table] |
|
|
|
上海鼎廷 发表于 2018-9-3 14:25 戴维 PSoC Creator在Cylib为用户提供了一个全局API CyGutUnQuiuID(UTI32×UnQuIDID)。PoSoC/4/5项目的C,功能注释提供了您关心的信息。 但是请注意,“CyPress还没有实现一个业务流程,以确保编程到这些字节中的值是无错误的”。因此,如果您必须承诺每0%个产品的绝对唯一ID,这个工厂独特的ID可能不适合您的设计。 / ***************************************************************************************************** *函数名称:CyGutUnKID ****************************************************************************************************************************************************************************************************************************************************************** * *返回设备的64位独特的ID。这个数的唯一性 *保修10年由于有10循环寿命的模具数量很多 *年甚至10年后,获得两个相同的概率 *数字非常小。 ******************************************************************************* / 无效cygetuniqueid(UInt32 * UniqueID) { γIF(CyPSOC4) UniqueID [ 0u ] =(uint32)(*(reg8 *)cyreg_sflash_die_lot0); UniqueID [ 0u ] | =((uint32)(*(reg8 *)cyreg_sflash_die_lot1)<;<;8u); UniqueID [ 0u ] | =((uint32)(*(reg8 *)cyreg_sflash_die_lot2)<;<;16u); UniqueID [ 0u ] | =((uint32)(*(reg8 *)cyreg_sflash_die_wafer)<;<;24u); UniqueID [ 1u ] =(uint32)(*(reg8 *)cyreg_sflash_die_x); UniqueID [ 1u ] | =((uint32)(*(reg8 *)cyreg_sflash_die_y)<;<;8u); UniqueID [ 1u ] | =((uint32)(*(reg8 *)cyreg_sflash_die_sort)<;<;16u); UniqueID [ 1u ] | =((uint32)(*(reg8 *)cyreg_sflash_die_minor)<;<;24u); α-TEL//用于PSOC3/5 UniqueID [ 0u ] =(uint32)cy_get_xtnd_reg8((void cyfar *)(cyreg_flshid_cust_tables_lot_l***)); UniqueID [ 0u ] | =((uint32)cy_get_xtnd_reg8((void cyfar *)(cyreg_flshid_cust_tables_lot_m***))<;<;8u); UniqueID [ 0u ] | =((uint32)cy_get_xtnd_reg8((void cyfar *)(cyreg_mlogic_rev_id))<;<;16u); UniqueID [ 0u ] | =((uint32)cy_get_xtnd_reg8((void cyfar *)(cyreg_flshid_cust_tables_wafer_num))<;<;24u); UniqueID [ 1u ] =(uint32)cy_get_xtnd_reg8((void cyfar *)(cyreg_flshid_cust_tables_x_loc)); UniqueID [ 1u ] | =((uint32)cy_get_xtnd_reg8((void cyfar *)(cyreg_flshid_cust_tables_y_loc))<;<;8u); UniqueID [ 1u ] | =((uint32)cy_get_xtnd_reg8((void cyfar *)(cyreg_flshid_cust_tables_wrk_wk))<;<;16u); UniqueID [ 1u ] | =((uint32)cy_get_xtnd_reg8((void cyfar *)(cyreg_flshid_cust_tables_fab_yr))<;<;24u); Endof/*(CysPoSO4)*/ } 化妆品 以上来自于百度翻译 以下为原文 David, PSoC Creator provides user a global API CyGetUniqueId(uint32* uniqueId) in Cylib.c of PSoC3/4/5 project, function comment provide the information you concern. But please note that "Cypress has not implemented a business process to ensure that the values programmed into these bytes are error free". So, if you MUST promise an absolutely unique ID for each product with 0% error, this fab unique ID may not suitable to your design. /******************************************************************************* * Function Name: CyGetUniqueId ****************************************************************************//** * * Returns the 64-bit unique ID of the device. The uniqueness of the number is * guaranteed for 10 years due to the die lot number having a cycle life of 10 * years and even after 10 years, the probability of getting two identical * numbers is very small. *******************************************************************************/ void CyGetUniqueId(uint32* uniqueId) { #if(CY_PSOC4) uniqueId[0u] = (uint32)(* (reg8 *) CYREG_SFLASH_DIE_LOT0 ); uniqueId[0u] |= ((uint32)(* (reg8 *) CYREG_SFLASH_DIE_LOT1 ) << 8u); uniqueId[0u] |= ((uint32)(* (reg8 *) CYREG_SFLASH_DIE_LOT2 ) << 16u); uniqueId[0u] |= ((uint32)(* (reg8 *) CYREG_SFLASH_DIE_WAFER ) << 24u); uniqueId[1u] = (uint32)(* (reg8 *) CYREG_SFLASH_DIE_X ); uniqueId[1u] |= ((uint32)(* (reg8 *) CYREG_SFLASH_DIE_Y ) << 8u); uniqueId[1u] |= ((uint32)(* (reg8 *) CYREG_SFLASH_DIE_SORT ) << 16u); uniqueId[1u] |= ((uint32)(* (reg8 *) CYREG_SFLASH_DIE_MINOR ) << 24u); #else // for PSoC3/5 uniqueId[0u] = (uint32) CY_GET_XTND_REG8((void CYFAR *) (CYREG_FLSHID_CUST_TABLES_LOT_LSB )); uniqueId[0u] |= ((uint32) CY_GET_XTND_REG8((void CYFAR *) (CYREG_FLSHID_CUST_TABLES_LOT_MSB )) << 8u); uniqueId[0u] |= ((uint32) CY_GET_XTND_REG8((void CYFAR *) (CYREG_MLOGIC_REV_ID )) << 16u); uniqueId[0u] |= ((uint32) CY_GET_XTND_REG8((void CYFAR *) (CYREG_FLSHID_CUST_TABLES_WAFER_NUM )) << 24u); uniqueId[1u] = (uint32) CY_GET_XTND_REG8((void CYFAR *) (CYREG_FLSHID_CUST_TABLES_X_LOC )); uniqueId[1u] |= ((uint32) CY_GET_XTND_REG8((void CYFAR *) (CYREG_FLSHID_CUST_TABLES_Y_LOC )) << 8u); uniqueId[1u] |= ((uint32) CY_GET_XTND_REG8((void CYFAR *) (CYREG_FLSHID_CUST_TABLES_WRK_WK )) << 16u); uniqueId[1u] |= ((uint32) CY_GET_XTND_REG8((void CYFAR *) (CYREG_FLSHID_CUST_TABLES_FAB_YR )) << 24u); #endif /* (CY_PSOC4) */ } Vison |
|
|
|
只有小组成员才能发言,加入小组>>
754个成员聚集在这个小组
加入小组2110 浏览 1 评论
1858 浏览 1 评论
3673 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1791 浏览 6 评论
1540 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
575浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
428浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
440浏览 2评论
390浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
922浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 02:54 , Processed in 0.954251 second(s), Total 80, Slave 65 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号