PSoC™ 4 Forum Discussions
text.format{('custom.tabs.no.results')}
Dear Sirs and Madams,
Please tell us about the "Sensor Initialization time" described in application note AN85951.
I've confirm for the above description, however how do you calculate this time?
Do you know the approximate time?
Regards,
Show LessWhich PSoC parts are rated to 150C?
The Temperature column in the table following "Automotive PSoC 4 Key features" on the Automotive PSoC webpage lists "profile up to +150C" yet the parametric search table under "Products" on the same webpage shows parts only up to 125C.
Note: I'd prefer a PSoC that supports CAN and 150C.
Greg
Show Less
Hi,
I am not able to download CY8CKIT-145-40XX Development Tools . CY8CKIT-145-40XX - Infineon Technologies
I get a message:
The requested URL was rejected. Please consult with your administrator.
Your support ID is: 16032094635056774345
Would someone help me to get the Development Tools. Thanks.
Show Less
Dear Receive,
In SPI communication,
# if MCU is a SPI master, SPI master transmits data to SPI slave and then SPI slave replied at the same time.
# I mean SPI master must transmit data first and SPI slave replied. SPI slave will not transmit data first to SPI slave.
I feel a little confuse about in what situation SPI master needs interrupt ?!
Thank you so much.
Show LessDear Receiver,
Could you please guide me "what's the meaning of [Cy_boot] ?!
Today, I when I update component and I see this Cy_boot. It has its own version.
Besides, how to know the Cy_boot version of my project ?!
Thank you so much.
Show LessHello all,
I have a quick question about the XRES pin of the PSoC 4. In the PSoC 4 Hardware Design Considerations it is written that an external pull up resistor is not necessary because the device has an internal pull up resistor. A capacitor can be connected between GND and XRES to avoid glitches.
I have added the pictures and links.
https://www.infineon.com/dgdl/Infineon-AN88619_PSoC_4_Hardware_Design_Considerations-ApplicationNotes-v09_00-EN.pdf?fileId=8ac78c8c7cdc391c017d0735c68558fd&utm_source=cypress&utm_medium=referral&utm_campaign=202110_globe_en_all_integration-application_note
https://community.infineon.com/t5/Knowledge-Base-Articles/Troubleshooting-PSoC-3-4-5LP-Programming-Debugging-Issues/ta-p/254681
But on the other hand, the on-board programmers of the Pioneer Kit 042 only have additional pull up resistors and other evaluation kits have capacitors between XRES and GND in addition to the pull up resistor.
Why does Infineon not follow its own recommendations for the kits?
What is the reason?
Best regards
Michael
Show Less
I'm working on a some small project where i need to code the NFC reader to show a output for now problem is some the examples i have found are a little older and im having trouble programming my current board (PsoC 4 CY8 BLe Pioneer kit) any examples and advice would be greatly appreciated omegle voojio . Thanks
Show LessHi Cypress Team,
I've written a code for Universal motor drive with PID loop control with Cypress - 4245 - AXI - 483 Controller. Now i need to Debug the code and also need to watch the live updating of data through watchdog window will be more helpful.
Kindly check and update me with the settings of Live Update through watchdog window.
Show LessHello all,
I got a problem with ADC. Here is what I want to do. I want to measure voltage on 4 channels (use differential mode, not single-ended). I want to measure an average value from ADC input based on 10000 samples. I also want to do this inside interrupt - but when I try it all cruches..
Inside ADC_SAR_Seq_1_INT.c I got something like this:
/*******************************************************************************
* File Name: ADC_SAR_Seq_1_INT.c
* Version 2.40
*
* Description:
* This file contains the code that operates during the ADC_SAR interrupt
* service routine.
*
* Note:
*
********************************************************************************
* Copyright 2008-2015, 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 "ADC_SAR_Seq_1.h"
#include "cyapicallbacks.h"
/******************************************************************************
* Custom Declarations and Variables
* - add user inlcude files, prototypes and variables between the following
* #START and #END tags
******************************************************************************/
/* `#START ADC_SYS_VAR` */
#define "adc.h"
extern int16 dataReady;
extern int16 result_0;
extern int16 result_1;
extern int16 result_2;
extern int16 result_3;
/* `#END` */
#if(ADC_SAR_Seq_1_IRQ_REMOVE == 0u)
/******************************************************************************
* Function Name: ADC_SAR_Seq_1_ISR
*******************************************************************************
*
* Summary:
* Handle Interrupt Service Routine.
*
* Parameters:
* None.
*
* Return:
* None.
*
* Reentrant:
* No.
*
******************************************************************************/
CY_ISR( ADC_SAR_Seq_1_ISR )
{
uint32 intr_status;
/* Read interrupt status register */
intr_status = ADC_SAR_Seq_1_SAR_INTR_REG;
#ifdef ADC_SAR_Seq_1_ISR_INTERRUPT_CALLBACK
ADC_SAR_Seq_1_ISR_InterruptCallback();
#endif /* ADC_SAR_Seq_1_ISR_INTERRUPT_CALLBACK */
/************************************************************************
* Custom Code
* - add user ISR code between the following #START and #END tags
*************************************************************************/
/* `#START MAIN_ADC_ISR` */
result_0 = GetADCValue(0);
result_1 = GetADCValue(1);
result_2 = GetADCValue(2);
result_3 = GetADCValue(3);
//This works!
//result_0 = ADC_SAR_Seq_1_GetResult16(0);
//result_1 = ADC_SAR_Seq_1_GetResult16(1);
//result_2 = ADC_SAR_Seq_1_GetResult16(2);
//result_3 = ADC_SAR_Seq_1_GetResult16(3);
dataReady = 1;
/* `#END` */
/* Clear handled interrupt */
ADC_SAR_Seq_1_SAR_INTR_REG = intr_status;
}
#endif /* End ADC_SAR_Seq_1_IRQ_REMOVE */
/* [] END OF FILE */
My function GetADCValue looks like this:
#define SAMPLES 10000
int GetADCValue(int ChanelNumber)
{
int loopCtr = 0;
int sum;
float adc_0;
float sum_0 = 0;
for(loopCtr = 0; loopCtr < SAMPLES; ++loopCtr)
{
adc_0 = ADC_SAR_Seq_1_GetResult16(ChanelNumber);
if (adc_0 > 0)
{
sum_0 = sum_0 + adc_0;
}
else
{
sum_0 = sum_0 - adc_0;
}
}
sum_0 = sum_0/SAMPLES;
sum = (int)sum_0;
return sum;
}
I think that my calculation takes too much time of processor.. I have idea to maybe read one time in interrupt value from ADC - but from which channel should I read? How can I know which channel (0, 1, 2 or 3) causes interrupt?
Here you got my setting of ADC.
In the main.c I also call my function ADCInit which looks like this:
void ADCInit(void)
{
ADC_SAR_Seq_1_Start();
ADC_SAR_Seq_1_IRQ_Enable();
ADC_SAR_Seq_1_StartConvert();
}
Thank guys for help and anny suggestions! Wish all of You a Happy New Year :)!
Show Less