PSoC™ 5, 3 & 1 Forum Discussions
Hi
I am looking to use a Cy8Ckit-059 and PSOC creator to make a variable square wave generator using a potentiometer to change the frequency, and a 4 digit, 7 segment LED to show the change in frequency. I want to program the chip, and power the entire thing with a 9V battery, and have it be mobile and not connected to a computer.
Requirements
frequency: 10-100 Hz
4 digit-7 segment cathode -LED display
potentiometer to set the frequency
a stop/pause button..
and I would preferably like to use mostly logic gates, I already have an idea of what it is going to look like, I just don't have a lot of experience using PSOC creator. Thank you.
Show LessI am modifying the DelSig_16Channel example to get it working on a CY8KIT-059, using the serial port as a substitute for the LCD for data output. Has anyone got this example to work on the PSoC5 either as is or modified? At the moment I only need 4 channels and I am working in a single-ended mode on the ADC.
I notice that the EOC pin sometimes shows no activity even though I get a decent pulse on the SOCPin, and even when it does show up, the numbers coming off the ADC make no sense.
Show LessI am very new to PSoC, and have very limited experience with C++, and none with C. I am trying to read the signal on a pin and toggle a boolean value to change the blinking speed of an external LED. Here's the code:
int main()
{
bool button1;
LCD_Char_Start();
LCD_Char_PrintString("Hola Mundo!");
for(;;)
{
if(CyPins_ReadPin(Pin_1_0) !=0) {
button1 = !button1;
CyDelay(100);
}
if(button1) {
CyDelay(1000u);
} else {
CyDelay(250u);
}
P0_0_Write(!P0_0_Read());
}
}
The CyPins thing I got from another thread and the LCD stuff is from the Hello World example project. The LCD doesn't work though. I also kept include project.h and added stdbool.h for booleans. Any idea what I might be doing wrong?
Edit: I should probably mention I have the CY8CKIT-059 and if it matters to mention too, the chip is the CY8C5888LTI-LP097.
I am using AN73054 HSSP example code to program another PSOC5LP . I used C# code to get HexImage.h and HexImage.c after replacing the existing hex file with new one(my application hex file) i found that during compling it give error in cm3gcc.ld file that ".rodata will not fit in region rom".
i could not understood for the same pSOC what may be the region.
kindly suggest the change to remove the error
regards.
Show LessI trying to read the MCP23S18-E/SP IO expander from micochip.
I write operation is working fine but I can not read the port from the IC.
Please see the attached files .
Ahmed
Show LessHi,
We are currently in the process of verifying the components to be used in one of our projects and due to our experience with Cypress assistance and PSoC4 and PSoC5, we had decided to look into the option of using PSoC 5 for our new project.
The basic requirements for the project includes SPI, UART, I2C and CAN. the project also requires that the PSoC be connected to an external flash memory. The one we have taken into consideration is the Micron MT29F4G08ABADAWP-IT wherein the Data lines and the Address lines 8 bits in width and have the same pins. We had checked with PSoC Creator and saw the External Memory Interface component. We will be using the Asynchronous EMIF. However, the component has one line for the Address and one line for the Data.
Our choice for the external memory is not yet final and it can still be changed. What is the recommended external memory for PSoC5?
Thanks in Advance
K
Dear All,
Is there a way to access ADC data faster than the command given below:?
vol= ADC_SAR_CountsTo_Volts(ADC_SAR_GetResult16());
It costing around 10 us at least to get value in vol. Even though I am getting 1 Msps which can be seen via eoc pin.
Show LessI'm trying to read a data stream of binary messages all tagged with a B5 62 start address (UBX) and don't follow the data sheet for isr and message address to buffer management.
Is there maybe an example I can't seem to find which covers this?
TIA
Show LessHello,
I want to filter a multiple constant data streams (data rate <= 2 kHz) with Filter component. However, only one Filter component with only 2 channels is able to exist in one PSoC 5 LP design. Therefore I want to save state of the Filter channel, load state of next signal (data stream), switch signal, save state of this signal,... and so on for multiple signals. In the other words, I want to multiplex Filter components to achieve the same effect as having e.g. 8 Filter components with the same parameters.
I am wondering if this is enough (idea taken from Filter_SaveConfig(void), pasted more as a pseudo code using polling):
#include <project.h> Filter_backupStruct filterBackup[NUMBER_OF_SIGNALS] = {0}; static void Filter_SaveCustomConfig(Filter_backupStruct * const backupStruct); static void Filter_LoadCustomConfig(const Filter_backupStruct * const backupStruct); void Filter_Signal(const int signal, const uint16_t sample, uint16_t * const resultA, uint16_t * const resultB) { const uint8_t SR_DATA_PROCESSED = Filter_CHANNEL_A_INTR | Filter_CHANNEL_B_INTR; /* Load Filter state for specified signal */ Filter_LoadCustomConfig(&filterBackup[signal]); /* Filter signal */ Filter_Write16(Filter_CHANNEL_A, sample); /*< Load sample to Channel A */ Filter_Write16(Filter_CHANNEL_B, sample); /*< Load sample to Channel B */ while((Filter_SR_REG & SR_DATA_PROCESSED) != SR_DATA_PROCESSED); /*< Wait for data to be processed */ *resultA = Filter_Read16(Filter_CHANNEL_A); /*< Read processed data from Channel A */ *resultB = Filter_Read16(Filter_CHANNEL_B); /*< Read processed data from Channel B */ /* Save Filter state for specified signal */ Filter_SaveCustomConfig(&filterBackup[signal]); } static void Filter_SaveCustomConfig(Filter_backupStruct * const backupStruct) { backupStruct->sr = Filter_SR_REG; backupStruct->sema = Filter_SEMA_REG; /* Put DFB RAM on the bus */ Filter_RAM_DIR_REG = Filter_RAM_DIR_BUS; /* Save the ACU RAM */ (void)memcpy(backupStruct->saveAcu, Filter_ACU_RAM, Filter_ACU_RAM_SIZE); /* Take DFB RAM off the bus */ Filter_RAM_DIR_REG = Filter_RAM_DIR_DFB; } static void Filter_LoadCustomConfig(const Filter_backupStruct *backupStruct) { Filter_SR_REG = backupStruct->sr; Filter_SEMA_REG = backupStruct->sema; /* Put DFB RAM on the bus */ Filter_RAM_DIR_REG = Filter_RAM_DIR_BUS; /* Restore ACU RAM */ (void)memcpy(Filter_ACU_RAM, backupStruct->saveAcu, Filter_ACU_RAM_SIZE); /* Take DFB RAM off the bus */ Filter_RAM_DIR_REG = Filter_RAM_DIR_DFB; }
Should I save any additional registers or DFB data (all arrays declared in Filter_RAM_Data.c are declared as const), or is the code above enough to achieve desired functionality?
Thanks,
Bojan
Show Less