Hi,
First of all I have confirmed using Bridge Control Panel that I can do "List" and Bridge Control Panel is able to find my Slave device and show the 8bit and 7 bit address correctly (0xC2 for 8-bit or 0x61 for 7-bit respectively).
Now I am trying to use Python to interact with MiniProg3 to do the same thing.
I started from the example file: "C:\Program Files (x86)\Cypress\Programmer\Examples\Protocols\I2C\Python_Ex\Python_Ex.py" file.
There are codes that is suppose to scan the I2C bus and get the slave address:
hResult = pp.I2C_GetDeviceList()
devices = hResult[1]
I expect that the contents of the 2nd item in hResult that came from pp.I2C_GetDeviceList() to be some sort of string or character or integer that is a representation of my slave device address.
However the contents of hResult is like this (I am using Spyder3 on Anaconda):
In [19]: hResult
Out[19]: (0, <memory at 0x0000025D302D9708>, '')
As can be seen above, the 2nd item in hResult is a "memoryView" object.
Question: what am I doing wrong?
How is this <memory at 0x0000025D302D9708> memoryView related to my Slave device address?
Please help. Thank you.
Show LessHi,
I am using MiniProg3 and using Bridge Control Panel to do USB-to-I2C.
I know how to do a "read" continuously from first register on-wards. This is the syntax explained in the Bridge Control Panel help file (for example to read from Slave Address=0x09, and read 3 bytes):
"R 09 x x x P".
This works fine, and it returns correctly the contents of the 1st, 2nd and 3rd register from my Slave IC.
But what about if I want to read starting from a specific register (and not from the 1st register).
For example I want to only read the data in the 3rd register.
How do I do a "Register Read"? What is the syntax in Bridge Control Panel for this?
Your assistance is much appreciated. Thank you!
Show LessHello,
I've been using PSoC Creator for years, but just recently it's started popping up an admin dialogue every time I run it asking me to register the Keil compiler. Thing is, I don't work with 8051 devices, I don't have a kit installed for anything with PSoC3 and I'm not aware of ever installing Keil. So, I don't want to register it.
Is there any way to uninstall the compiler to prevent these popups appearing? (Also, why has it only just started happening?)
Show LessHello,
I am currently Running PSOC Creator on a Mac M1 running Windows 11 via Parallels Desktop.
The software runs and builds as you would expect. However, I cannot get my KitProg to show up.
It appears as a device in both OSX and Windows, but appears to be stuck in a loop of resetting / restarting etc..
Anyone have a similar issue? any workarounds known? (many google tunnels later I still have no success)
Many Thanks
Nick
Show LessHi
Using PSoC Creator V4.4. How can I insert my company's standard function headers and comment blocks? I have searched but cannot find anything in the published information. There is a Cypress video (less than 1 minute long) but it does not explain how to create or where to put a snippet.
Thanks in advance, SImon
Show Less我目前使用的是CY8CKIT-145开发板,后续使用PSOC4 的4000系列开发产品,在PSOC Creator中实现简单功能后,想通过在keil中进行进一步的算法处理以及通过连接JLINK进行在线调试,生成的keil文件无法通过编译,使用的keil版本为MDK5.25.2.0,请问keil5和psoc creator中还有进行哪些设置?
Show Less
Log file for this session is located at: C:\Users\86186\AppData\Local\Temp\PSoC Creator-000.log
The following projects have new component updates available: MCU_B. To update the components in a project right-click on the project in the Workspace Explorer and select 'Update Components' or click on the notification icon in the status bar.
--------------- Build Started: 04/02/2022 21:57:15 Project: MCU_B, Configuration: ARM GCC 5.4-2016-q2-update Debug ---------------
The code generation step is up to date.
The compile step is up to date, no work needs to be done.
arm-none-eabi-ar.exe -rs .\CortexM3\ARM_GCC_541\Debug\MCU_B.a .\CortexM3\ARM_GCC_541\Debug\CyDmac.o .\CortexM3\ARM_GCC_541\Debug\CyFlash.o .\CortexM3\ARM_GCC_541\Debug\CyLib.o .\CortexM3\ARM_GCC_541\Debug\cyPm.o .\CortexM3\ARM_GCC_541\Debug\CySpc.o .\CortexM3\ARM_GCC_541\Debug\cyutils.o .\CortexM3\ARM_GCC_541\Debug\SysTickTim.o .\CortexM3\ARM_GCC_541\Debug\SysTickTim_PM.o .\CortexM3\ARM_GCC_541\Debug\SysTickInt.o .\CortexM3\ARM_GCC_541\Debug\Led1.o .\CortexM3\ARM_GCC_541\Debug\Led2.o .\CortexM3\ARM_GCC_541\Debug\SysTickClk.o .\CortexM3\ARM_GCC_541\Debug\IIC_SCL.o .\CortexM3\ARM_GCC_541\Debug\IIC_SDA.o .\CortexM3\ARM_GCC_541\Debug\IIC_RST.o .\CortexM3\ARM_GCC_541\Debug\PHU_Pin.o .\CortexM3\ARM_GCC_541\Debug\PHI_Pin.o .\CortexM3\ARM_GCC_541\Debug\StartUpIn.o .\CortexM3\ARM_GCC_541\Debug\StartUpOut.o .\CortexM3\ARM_GCC_541\Debug\PADJ.o .\CortexM3\ARM_GCC_541\Debug\PADJ_PM.o .\CortexM3\ARM_GCC_541\Debug\PADJPin.o .\CortexM3\ARM_GCC_541\Debug\FOut.o .\CortexM3\ARM_GCC_541\Debug\FOut_PM.o .\CortexM3\ARM_GCC_541\Debug\FreqOut.o .\CortexM3\ARM_GCC_541\Debug\VRefPin.o .\CortexM3\ARM_GCC_541\Debug\IRefPin.o .\CortexM3\ARM_GCC_541\Debug\VRMSPin.o .\CortexM3\ARM_GCC_541\Debug\IRMSPin.o .\CortexM3\ARM_GCC_541\Debug\DRV_IRef.o .\CortexM3\ARM_GCC_541\Debug\DRV_IRef_PM.o .\CortexM3\ARM_GCC_541\Debug\DRV_VRef.o .\CortexM3\ARM_GCC_541\Debug\DRV_VRef_PM.o .\CortexM3\ARM_GCC_541\Debug\DRV_IRMS.o .\CortexM3\ARM_GCC_541\Debug\DRV_IRMS_INT.o .\CortexM3\ARM_GCC_541\Debug\DRV_IRMS_PM.o .\CortexM3\ARM_GCC_541\Debug\DRV_VRMS.o .\CortexM3\ARM_GCC_541\Debug\DRV_VRMS_INT.o .\CortexM3\ARM_GCC_541\Debug\DRV_VRMS_PM.o .\CortexM3\ARM_GCC_541\Debug\DRV_IRMS_IRQ.o .\CortexM3\ARM_GCC_541\Debug\DRV_IRMS_theACLK.o .\CortexM3\ARM_GCC_541\Debug\DRV_VRMS_IRQ.o .\CortexM3\ARM_GCC_541\Debug\DRV_VRMS_theACLK.o .\CortexM3\ARM_GCC_541\Debug\POUT.o .\CortexM3\ARM_GCC_541\Debug\POUT_PM.o .\CortexM3\ARM_GCC_541\Debug\POUT_INT.o .\CortexM3\ARM_GCC_541\Debug\POUT_AMux.o .\CortexM3\ARM_GCC_541\Debug\POUT_Ext_CP_Clk.o .\CortexM3\ARM_GCC_541\Debug\POUT_IRQ.o .\CortexM3\ARM_GCC_541\Debug\POUT_theACLK.o .\CortexM3\ARM_GCC_541\Debug\POUTPin.o .\CortexM3\ARM_GCC_541\Debug\KeyUp.o .\CortexM3\ARM_GCC_541\Debug\KeyDown.o .\CortexM3\ARM_GCC_541\Debug\KeySelect.o .\CortexM3\ARM_GCC_541\Debug\KeyScan.o .\CortexM3\ARM_GCC_541\Debug\EEPROM.o .\CortexM3\ARM_GCC_541\Debug\EEPEna.o .\CortexM3\ARM_GCC_541\Debug\CANRx.o .\CortexM3\ARM_GCC_541\Debug\CANTx.o .\CortexM3\ARM_GCC_541\Debug\CANEna.o .\CortexM3\ARM_GCC_541\Debug\CANDrv.o .\CortexM3\ARM_GCC_541\Debug\CANDrv_INT.o .\CortexM3\ARM_GCC_541\Debug\CANDrv_PM.o .\CortexM3\ARM_GCC_541\Debug\CANDrv_TX_RX_func.o .\CortexM3\ARM_GCC_541\Debug\SysTick15To8.o .\CortexM3\ARM_GCC_541\Debug\SysTick7To0.o .\CortexM3\ARM_GCC_541\Debug\SysTick23To16.o .\CortexM3\ARM_GCC_541\Debug\SysTick31To24.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin0.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin1.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin2.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin3.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin4.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin5.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin6.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin7.o .\CortexM3\ARM_GCC_541\Debug\CentHzPin8.o .\CortexM3\ARM_GCC_541\Debug\PhaseErr.o .\CortexM3\ARM_GCC_541\Debug\PhaseCent.o .\CortexM3\ARM_GCC_541\Debug\MCUBRdy.o .\CortexM3\ARM_GCC_541\Debug\UARTDrv.o .\CortexM3\ARM_GCC_541\Debug\UARTDrv_PM.o .\CortexM3\ARM_GCC_541\Debug\UARTDrv_INT.o .\CortexM3\ARM_GCC_541\Debug\UARTDrv_BOOT.o .\CortexM3\ARM_GCC_541\Debug\UARTDrv_IntClock.o .\CortexM3\ARM_GCC_541\Debug\cy_em_eeprom.o .\CortexM3\ARM_GCC_541\Debug\DISP_DIN.o .\CortexM3\ARM_GCC_541\Debug\DISP_CLK.o .\CortexM3\ARM_GCC_541\Debug\DISP_STB.o .\CortexM3\ARM_GCC_541\Debug\TD.o .\CortexM3\ARM_GCC_541\Debug\TD_PM.o .\CortexM3\ARM_GCC_541\Debug\PHI.o .\CortexM3\ARM_GCC_541\Debug\PHI_PM.o .\CortexM3\ARM_GCC_541\Debug\PHU.o .\CortexM3\ARM_GCC_541\Debug\PHU_PM.o .\CortexM3\ARM_GCC_541\Debug\Clock_5.o .\CortexM3\ARM_GCC_541\Debug\MCUA_ERR_State.o .\CortexM3\ARM_GCC_541\Debug\MCUA_ErrCnt.o .\CortexM3\ARM_GCC_541\Debug\IO1.o .\CortexM3\ARM_GCC_541\Debug\IIC_RST_1.o .\CortexM3\ARM_GCC_541\Debug\DRV_UART.o .\CortexM3\ARM_GCC_541\Debug\DRV_UART_PM.o .\CortexM3\ARM_GCC_541\Debug\DRV_UART_INT.o .\CortexM3\ARM_GCC_541\Debug\DRV_UART_BOOT.o .\CortexM3\ARM_GCC_541\Debug\DRV_UT.o .\CortexM3\ARM_GCC_541\Debug\DRV_UT_PM.o .\CortexM3\ARM_GCC_541\Debug\RS485Dir.o .\CortexM3\ARM_GCC_541\Debug\U1TxIsr.o .\CortexM3\ARM_GCC_541\Debug\U1RxIsr.o .\CortexM3\ARM_GCC_541\Debug\U1ToIsr.o .\CortexM3\ARM_GCC_541\Debug\UTClk.o .\CortexM3\ARM_GCC_541\Debug\UTSwt.o .\CortexM3\ARM_GCC_541\Debug\UTSwt_PM.o .\CortexM3\ARM_GCC_541\Debug\UART1Clk.o .\CortexM3\ARM_GCC_541\Debug\CyBootAsmGnu.o
arm-none-eabi-ar.exe: creating .\CortexM3\ARM_GCC_541\Debug\MCU_B.a
arm-none-eabi-gcc.exe -Wl,--start-group -o C:\Users\86186\Desktop\MCU_B321\MCU_B.cydsn\CortexM3\ARM_GCC_541\Debug\MCU_B.elf .\CortexM3\ARM_GCC_541\Debug\BSP_SysTime.o .\CortexM3\ARM_GCC_541\Debug\BSP_Led.o .\CortexM3\ARM_GCC_541\Debug\BSP_IIC.o .\CortexM3\ARM_GCC_541\Debug\BSP_Disp.o .\CortexM3\ARM_GCC_541\Debug\BSP.o .\CortexM3\ARM_GCC_541\Debug\BSP_PAdj.o .\CortexM3\ARM_GCC_541\Debug\BSP_FOut.o .\CortexM3\ARM_GCC_541\Debug\BSP_VRef.o .\CortexM3\ARM_GCC_541\Debug\BSP_IRef.o .\CortexM3\ARM_GCC_541\Debug\BSP_VRMS.o .\CortexM3\ARM_GCC_541\Debug\BSP_IRMS.o .\CortexM3\ARM_GCC_541\Debug\BSP_POut.o .\CortexM3\ARM_GCC_541\Debug\BSP_EEP.o .\CortexM3\ARM_GCC_541\Debug\BSP_Key.o .\CortexM3\ARM_GCC_541\Debug\BSP_AM.o .\CortexM3\ARM_GCC_541\Debug\BSP_ExState.o .\CortexM3\ARM_GCC_541\Debug\BSP_CAN.o .\CortexM3\ARM_GCC_541\Debug\BSP_CentHz.o .\CortexM3\ARM_GCC_541\Debug\BSP_Phase.o .\CortexM3\ARM_GCC_541\Debug\BSP_UART.o .\CortexM3\ARM_GCC_541\Debug\BSP_PHUI.o .\CortexM3\ARM_GCC_541\Debug\SysTime.o .\CortexM3\ARM_GCC_541\Debug\Led.o .\CortexM3\ARM_GCC_541\Debug\Memory.o .\CortexM3\ARM_GCC_541\Debug\Power.o .\CortexM3\ARM_GCC_541\Debug\POUTClb.o .\CortexM3\ARM_GCC_541\Debug\VREFClb.o .\CortexM3\ARM_GCC_541\Debug\IREFClb.o .\CortexM3\ARM_GCC_541\Debug\PHUI.o .\CortexM3\ARM_GCC_541\Debug\AM.o .\CortexM3\ARM_GCC_541\Debug\CalcTick.o .\CortexM3\ARM_GCC_541\Debug\ExtState.o .\CortexM3\ARM_GCC_541\Debug\Fn.o .\CortexM3\ARM_GCC_541\Debug\PRP.o .\CortexM3\ARM_GCC_541\Debug\aes.o .\CortexM3\ARM_GCC_541\Debug\MD5.o .\CortexM3\ARM_GCC_541\Debug\Scheduler.o .\CortexM3\ARM_GCC_541\Debug\SystemCtrl.o .\CortexM3\ARM_GCC_541\Debug\Disp.o .\CortexM3\ARM_GCC_541\Debug\Key.o .\CortexM3\ARM_GCC_541\Debug\HMI.o .\CortexM3\ARM_GCC_541\Debug\HMI_Common.o .\CortexM3\ARM_GCC_541\Debug\HMI_MainBoard.o .\CortexM3\ARM_GCC_541\Debug\HMI_MainMenu.o .\CortexM3\ARM_GCC_541\Debug\HMI_MFreqSet.o .\CortexM3\ARM_GCC_541\Debug\HMI_AMSet.o .\CortexM3\ARM_GCC_541\Debug\HMI_PowerUp.o .\CortexM3\ARM_GCC_541\Debug\HMI_CtrlNumsSet.o .\CortexM3\ARM_GCC_541\Debug\HMI_TriTime.o .\CortexM3\ARM_GCC_541\Debug\HMI_PowerClb.o .\CortexM3\ARM_GCC_541\Debug\HMI_PowerCoeff.o .\CortexM3\ARM_GCC_541\Debug\StartUp.o .\CortexM3\ARM_GCC_541\Debug\IO.o .\CortexM3\ARM_GCC_541\Debug\CAN.o .\CortexM3\ARM_GCC_541\Debug\main.o .\CortexM3\ARM_GCC_541\Debug\Common.o .\CortexM3\ARM_GCC_541\Debug\cyfitter_cfg.o .\CortexM3\ARM_GCC_541\Debug\cymetadata.o .\CortexM3\ARM_GCC_541\Debug\Cm3Start.o .\CortexM3\ARM_GCC_541\Debug\MCU_B.a "C:\Program Files (x86)\Cypress\PSoC Creator\4.4\PSoC Creator\psoc\content\cycomponentlibrary\CyComponentLibrary.cylib\CortexM3\ARM_GCC_541\Debug\CyComponentLibrary.a" -mcpu=cortex-m3 -mthumb -l m -L Generated_Source\PSoC5 -Wl,-Map,.\CortexM3\ARM_GCC_541\Debug/MCU_B.map -T Generated_Source\PSoC5\cm3gcc.ld -specs=nano.specs -Wl,--gc-sections -g -ffunction-sections -O3 -ffat-lto-objects -Wl,--end-group
.\CortexM3\ARM_GCC_541\Debug\Cm3Start.o: In function `IntDefaultHandler':
C:\Users\86186\Desktop\MCU_B321\MCU_B.cydsn/Generated_Source\PSoC5/Cm3Start.c:99: undefined reference to `_errno'
collect2.exe: error: ld returned 1 exit status
The command 'arm-none-eabi-gcc.exe' failed with exit code '1'.
--------------- Build Failed: 04/02/2022 21:57:16 ---------------
Hi,
I want to dedicate a custom-made component exclusively to PSoC5.
It is straightforward to EXCLUDE a component by adding the Exclude files. For example, by excluding PSoC3, PSoC4 and FM0 (3 exclude files), one can leave PSoC5 the only remaining option.
But is there a simple way to mark component as PSoC5 only? (Sort of 'include' file)
Show LessEven if I make zero changes to code or schematic, when I press Build, it goes through the entire process all over again.
--------------- Build Started: 04/15/2022 17:11:23 Project: Application, Configuration: DP8051 Keil Generic Release ---------------
…
Elaborating Design...
…
HDL Generation...
Synthesis...
Tech Mapping...
Analog Placement...
…
Analog Routing...
Analog Code Generation...
Digital Placement...
Digital Routing...
Bitstream Generation...
Bitstream Verification...
Static timing analysis...
API Generation...
Dependency Generation...
Cleanup...
The compile step is up to date, no work needs to be done.
LIBX51.exe TRANSFER …
LX51.exe …
OHx51.exe …
…
--------------- Build Succeeded: 04/15/2022 17:12:07 ---------------
It takes 44 seconds every time I change one line of code, but there's no reason to re-build any of the programmable logic or the code when they haven't changed. Can't one or the other or both be skipped?
When I build a code-only project in µVision, it takes less than 1 second.
Show LessI called ADC_SAR_EnableInjection() during initialization once.
i call the GetDieTemp Function at a rate of 1KHz.
i've placed the exact same code on 2 separate CPUs (same exact model) and i get about 10°C difference.
i know it's not exactly by the suggested parameters but this is a running machine and i can't change much.
i've noticed that if i use more sampled average the temp drops.
what can i do?
int32_t GetDieTemp(void)
{
int16_t ADCCountsCorrected = 0;
int16_t adcCounts = 0;
int32_t temp = 0xFF;
if (ADC_SAR_IsEndConversion(ADC_SAR_RETURN_STATUS_INJ))
{
adcCounts = ADC_SAR_GetResult16(ADC_SAR_SEQUENCED_CHANNELS_NUM);
/* Adjust data from ADC with respect to ADC Vref value */
ADCCountsCorrected = (int16)(((int32)adcCounts * ADC_SAR_DEFAULT_VREF_MV_VALUE) >> 10u);
/* Calculate temperature value */
temp = DieTemp_CountsTo_Celsius(ADCCountsCorrected);
ADC_SAR_EnableInjection();
}
return temp;
}
Show LessUser | Count |
---|---|
244 | |
78 | |
61 | |
53 | |
44 | |
26 |