PSoC™ 5, 3 & 1 Forum Discussions
Trying to get i2c master working on S6E1C3. I'm looking at the example code from "i2c_master_polling". I notice that it does not show an example of a Repeated Start condition. Is the S6E1C3 capable of producing a Repeated Start Condition? If yes, can you provide some guidance on how to accomplish this.
Show LessI'm having a problem using FIFOs in external access mode (where they can both be read and written by the CPU and DMA) and using 16 bit working register concatenation mode. I can instantiate a component that uses FIFOs f0 and f1 of a datapath, fill both FIFOs using 8 or 16 bit accesses just fine, but when I attempt to read the FIFOs using 16 bit accesses, I get strange results where I keep seeing a single value repeated 4 times.
I've created a github repository with a sample project here: https://github.com/nlshipp/PSoc5_FifoTest
Note that I'm not using the bus or block status bits in this example as I'm only adding or removing 4 elements to the FIFO at any time.
The sample clears the FIFOs, fills the two FIFOs of a datapath with four sets of values using either 8 or 16 bit accesses. It then reads the values out using 8 or 16 bit accesses, fills them again using a different set of values and reads them again. Each run uses a different combination of 8 or 16 bit accesses. Here's the output:
** First run using 8 bit accesses and produces correct output
Filling FIFOs
Printing FIFOs
F0=00 F1=10
F0=01 F1=11
F0=02 F1=12
F0=03 F1=13
Filling FIFOs
Printing FIFOs
F0=20 F1=30
F0=21 F1=31
F0=22 F1=32
F0=23 F1=33
Clearing FIFOs
** 2nd run: Output is correct
Filling fifos using 16 bit word
Filling FIFOs
Printing FIFOs
F0=00 F1=10
F0=01 F1=11
F0=02 F1=12
F0=03 F1=13
Filling FIFOs
Printing FIFOs
F0=20 F1=30
F0=21 F1=31
F0=22 F1=32
F0=23 F1=33
Clearing FIFOs
** Third run produces bad output:
Read fifos using 16 bit word
Filling FIFOs
Printing FIFOs
F0=00 F1=10
F0=01 F1=10
F0=02 F1=10
F0=03 F1=10
Filling FIFOs
Printing FIFOs
F0=20 F1=33
F0=21 F1=33
F0=22 F1=33
F0=23 F1=33
Clearing FIFOs
** Fourth run produces bad output:
Filling fifos using 16 bit word
Read fifos using 16 bit word
Filling FIFOs
Printing FIFOs
F0=00 F1=10
F0=01 F1=10
F0=02 F1=10
F0=03 F1=10
Filling FIFOs
Printing FIFOs
F0=20 F1=33
F0=21 F1=33
F0=22 F1=33
F0=23 F1=33
** 5th run uses 8 bit accesses again and produces the correct output.
Clearing FIFOs
Filling FIFOs
Printing FIFOs
F0=00 F1=10
F0=01 F1=11
F0=02 F1=12
F0=03 F1=13
Filling FIFOs
Printing FIFOs
F0=20 F1=30
F0=21 F1=31
F0=22 F1=32
F0=23 F1=33
Hi All,
where can I find information how to write code that communicate with PSOC through buffer or with API to get from PSOC details?
I mean the API of PSOC through HID?
Thanks for your help.
Show LessI want to make a spetrum analiser with deep frequencies on the left and high pitch frequencies on the right, and have been told to come to this site to ask about which PSoC board will support the *480 LED's*, and to ask about FFT, I'm very new to this but I have the determination to work it out, there are 16 bands/channels/frequencies and there are 30 rows any ideas on how to go about achieving this? I want the frequencies to range from 32Hz to 16kHz evenly spaced and with small bandwidth so there isn't much overlap on the columns lighting up and I also want a slowish decay so that the bar falls relatively slowly, like this
https://www.youtube.com/watch?v=9SK2AxfELfw
any suggestions welcome, and thanks
Show LessWhat board has replaced the Sparkfun board for designs that need max
I/O ? For development in PSOC 5LP ?
I need ~ 60 I/O, target CY8C58 family.
Regards, Dana.
Show LessHello All.
I am new in psoc , I have psoc 5lp and I have tried wavedac block to generate sinewave but there I didn't find any api to change its amplitude frequency and other parameters in the code or externally with pod or pushbutton. How can I generate sine wave in which I can vary parameters like amplitude, frequency or wavelength from outside the psoc like with pod pushbutton etc.
thanks ..
Hi Guys,
I have been using Linux reference code for GPIO toggle with PSOC 5 interface.
Device detect is successful although, still I am seeing error (error code: -1) in input transfer from PSOC. Can you please help debug steps to root cause the problem.
FYI, i am using libusb library API: libusb_interrupt_transfer() for IN transactions.
Any lead on this will be highly appreciated.
Note: I am using this reference page,
Thanks,
Sudeept
Show LessI use the I2CM component in Multimaster-slave mode.
They are no problem to send the frame array of several bytes. (1byte, 2byte,3bytes,4byte....)
But I receive sometimes the array frame with wrong order (2byte, 3byte,4byte,1byte...) .
How can I resolve it and be sure that is a good ordering receiving Array.
Thank for help
Denis
Show LessHi,
We had built-in one "CY8C5868LTI-LP039" on our EVB which has identical KitProg3 schematic refer from "CY8CPROTO-062-4343W".
To bring up this KitProg3 device, we used “PSoC programmer” and “MiniProg4/SWD” to program the 'KitProg3' image.
( The 'KitProg3' HEX image is also from PSoC programmer. )
This PSoC5 can be programmed successful with KitProg3 image.
After above image programmed, we disconnect the MiniProg4 and re-connect the USB to 'KitProg3'.
We got error feedback with 'Unknown USB device'.
It shows the 'USB descriptor failure' on windows device manager.
[ Note: We also tried to rebuild the KitProg3 firmware / Bootloader via PSoc Creator.
No matter which one re-programmed into PSoC5, we still got the same 'USB descriptor failure' error. ]
Is there any step we missed to activate this KitProg3? (i.e. Create KitProg3 via program an empty PSoC5LP.)
Thanks for your help.
Show Less
I have used PSOC 1 extensively some years ago. I purchased a PSOC5 development kit also some years ago and decided recently to explore it. I am pretty rusty using C- a lot of the PSOC1 stuff was using assembler to get precise timing.
What I want to explore is using a DMA channel to read a TimerStatus Register and hence clear the interrupt (if that is even possible-the documentation says reading the status register clears the interrupt but does a read include a DMA read).
I have attached a small project. This has an isr at the moment and that will be removed once I work out the DMA bit.
(for testing will just comment out the isr_1_Start(); function)
Using the DMA Wizard, I have 2 questions.
The upper address bits are set in the Global Settings. Should this be sram ?
How do I specify the Timer_1_StatusRegister for the source?
Show Less