- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello all,
I was working with CY8CKIT-049-41xx PSoC4 Prototyping kit.
I get this error (when trying to program through Bootloader Host):
10:32:18 AM - Selected device: USB Serial Port (COM4) - UART
Generic Serial Port
10:32:29 AM - program Started
10:32:30 AM - The operation has timed out.
10:32:30 AM - Communication port reported error 'Unable to read data from the target device'.
10:32:30 AM - program failed in 1010 ms.
Any ideas?
Manny
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I guess you have a bootloader host component in the program. Please post your program so we can check it.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Bob,
Is this what you meant?
* File Name: Bootloadable.c
* Version 1.30
*
* Description:
* Provides an API for the Bootloadable application. The API includes a
* single function for starting the bootloader.
*
********************************************************************************
* Copyright 2008-2014, Cypress Semiconductor Corporation. All rights reserved.
* You may use this file only in accordance with the license, terms, conditions,
* disclaimers, and limitations in the end user license agreement accompanying
* the software package with which this file was provided.
*******************************************************************************/
#include "Bootloadable.h"
/*******************************************************************************
* Function Name: Bootloadable_Load
********************************************************************************
* Summary:
* Begins the bootloading algorithm downloading a new ACD image from the host.
*
* Parameters:
* None
*
* Returns:
* This method will never return. It will load a new application and reset
* the device.
*
*******************************************************************************/
void Bootloadable_Load(void)
{
/* Schedule Bootloader to start after reset */
Bootloadable_SET_RUN_TYPE(Bootloadable_START_BTLDR);
CySoftwareReset();
}
/*******************************************************************************
* The following code is OBSOLETE and must not be used.
*******************************************************************************/
void Bootloadable_SetFlashByte(uint32 address, uint8 runType)
{
uint32 flsAddr = address - CYDEV_FLASH_BASE;
uint8 rowData[CYDEV_FLS_ROW_SIZE];
#if !(CY_PSOC4)
uint8 arrayId = ( uint8 )(flsAddr / CYDEV_FLS_SECTOR_SIZE);
#endif /* !(CY_PSOC4) */
#if (CY_PSOC4)
uint16 rowNum = ( uint16 )(flsAddr / CYDEV_FLS_ROW_SIZE);
#else
uint16 rowNum = ( uint16 )((flsAddr % CYDEV_FLS_SECTOR_SIZE) / CYDEV_FLS_ROW_SIZE);
#endif /* (CY_PSOC4) */
uint32 baseAddr = address - (address % CYDEV_FLS_ROW_SIZE);
uint16 idx;
for (idx = 0u; idx < CYDEV_FLS_ROW_SIZE; idx++)
{
rowData[idx] = Bootloadable_GET_CODE_DATA(baseAddr + idx);
}
rowData[address % CYDEV_FLS_ROW_SIZE] = runType;
#if(CY_PSOC4)
(void) CySysFlashWriteRow((uint32) rowNum, rowData);
#else
(void) CyWriteRowData(arrayId, rowNum, rowData);
#endif /* (CY_PSOC4) */
#if(CY_PSOC5)
/***************************************************************************
* When writing Flash, data in the instruction cache can become stale.
* Therefore, the cache data does not correlate to the data just written to
* Flash. A call to CyFlushCache() is required to invalidate the data in the
* cache and force fresh information to be loaded from Flash.
***************************************************************************/
CyFlushCache();
#endif /* (CY_PSOC5) */
}
/* [] END OF FILE */
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content