Announcement

Collapse
No announcement yet.

interesting new hardware

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    Ok. Just tried out some of the PSOC 5LP analog functionality. There are a ton more components available on the PSOC 5LP.

    In particular, I tried out the Delta Sigma ADC at 20bit resolution, and routed the value back out a UART to a com port on the PC. I did lose the USB debug capability - I even lost the USB to UART, so I had to just use a UART component.

    Otherwise, it's pretty straightforward. Just had to build the project, then load the build file through the bootloader host. Every time I do a download though, I have to place the unit into boot-load mode, by unplugging the USB, holding the reset button down, and re-plugging into the board. This could eventually end up wearing out the USB plug, so I probably need to do something else long term.

    Otherwise PSOC 5 is working fine! Two usable PSOC chips on a board for $25. I think between the two chips, this isn't a bad little board.

    Comment


    • #32
      Tried out the PSOC 5's waveform DAC in Creator 3 today. I utilized the arbitrary waveform capability to "draw" the waveform in the configuration window, and then built amd ran the project hooked up to the scope. Really cool stuff.

      Click image for larger version

Name:	psoc5_test.jpg
Views:	1
Size:	651.1 KB
ID:	337999

      Comment


      • #33
        Well, another round of testing. Yesterday I got the PSOC 5LP working with the USBUART block. This is a USB FS block that is preconfigured for a virtual serial port to the PC. I dropped it into my schematic, added the couple lines of code to initialize it in the main.c, and viola, I get a serial COM port enumerated at the PC. This is a good milestone in testing. I now have a UART, that I can use back to the PSOC4, and a serial connection over USB back to the PC, giving me access to all the resources on the Pioneer kit. Theoretically, I should be able to drop in more CDC resources in the USBFS driver, and add more serial ports back to the PC. I'll see how many it can handle - I think its capable of multiple devices at the same time, I just will have to test it out.

        For the CDC class device class you need one IN endpoint and one OUT endpoint, so for a PSOC 3 the limitation is 8 endpoints, or 4 devices - so thats probably the same limit on the PSOC 5LP. This would give 4 enumerated serial ports for 1 USB port...

        Ok. Now that I've kicked the tires a bit, it's time to extrapolate. Think about what you can do with $100 worth of hardware...

        I take a Raspberry Pi RevA, 3 Pioneer boards interfaced to the via USB serial, 3 Arduino Protoshields and you get this:

        1) Linux computer for Display and supervisory control (Rpi community has TON of projects to work off of)
        2) 3 PSOC 4 chips (CY8C4245AXI-483)

        32-bit MCU Sub-system
        ■ 48 MHz ARM Cortex-M0 CPU with single cycle multiply
        ■ Up to 32 kB of flash with Read Accelerator
        ■ Up to 4 kB of SRAM
        Programmable Analog
        ■ Two opamps with reconfigurable high-drive external and
        high-bandwidth internal drive and Comparator modes and ADC
        input buffering capability
        ■ 12-bit 1 Msps SAR ADC with differential and single-ended
        modes and Channel Sequencer with signal averaging
        ■ Two current DACs (IDACs) for general-purpose or capacitive
        sensing applications on any pin
        ■ Two low-power comparators that operate in Deep Sleep
        Programmable Digital
        ■ Four programmable logic blocks, each with 8 Macrocells and
        data path (called universal digital blocks, UDBs)
        ■ Cypress provided peripheral component library, user-defined
        state machines, and Verilog input
        Low Power 1.71 to 5.5 V operation
        ■ 20 nA Stop Mode with GPIO pin wakeup
        ■ Hibernate and Deep Sleep modes allow wakeup-time versus
        power trade-offs
        Capacitive Sensing
        ■ Cypress Capacitive Sigma-Delta (CSD) provides best-in-class
        SNR (>5:1) and water tolerance
        ■ Cypress supplied software component makes capacitive
        sensing design easy
        ■ Automatic hardware tuning (SmartSenseâ„¢)


        Segment LCD Drive
        ■ LCD drive supported on all pins (common or segment)
        ■ Operates in Deep Sleep mode with 4 bits per pin memory
        Serial Communication
        ■ Two independent run-time reconfigurable Serial Communication
        Blocks (SCBs) with re-configurable I2C, SPI, or UART
        functionality
        Timing and Pulse-Width Modulation
        ■ Four 16-bit Timer/Counter Pulse-Width Modulator (TCPWM)
        blocks
        ■ Center-aligned, Edge, and Pseudo-random modes
        ■ Comparator-based triggering of Kill signals for motor drive and
        other high reliability digital logic applications
        Up to 36 Programmable GPIO
        ■ 44-pin TQFP, 40-pin QFN, and 28-pin SSOP packages.
        ■ Any GPIO Pin can be Capsense, LCD, Analog, or Digital
        ■ Drive modes, strengths, and slew rates are programmable


        3) 3 PSOC 5LP chips (CY8C5868LTI-LP039)

        ■ 32-bit ARM Cortex-M3 CPU core
        ❐ DC to 67 MHz operation
        ❐ Flash program memory, up to 256 KB, 100,000 write cycles,
        20-year retention, and multiple security features
        ❐ 1 KB of 4-way set-associative cache memory
        ❐ Up to 32-KB flash error correcting code (ECC) or configuration
        storage
        ❐ Up to 64 KB SRAM
        ❐ 2-KB electrically erasable programmable read-only memory
        (EEPROM) memory, 1 M cycles, and 20 years retention
        ❐ 24-channel direct memory access (DMA) with multilayer
        AHB[1] bus access
        • Programmable chained descriptors and priorities
        • High bandwidth 32-bit transfer support


        ■ Low voltage, ultra low power
        ❐ Wide operating voltage range: 0.5 V to 5.5 V
        ❐ High-efficiency boost regulator from 0.5 V input to 1.8 V to
        5.0 V output
        ❐ 3.1 mA at 6 MHz
        ❐ Low power modes including:
        • 2-μA sleep mode with real time clock (RTC) and low-voltage
        detect (LVD) interrupt
        • 300-nA hibernate mode with RAM retention


        ■ Versatile I/O system
        ❐ 28 to 72 I/Os (62 GPIOs, 8 SIOs, 2 USBIOs[2])
        ❐ Any GPIO to any digital or analog peripheral routability
        ❐ LCD direct drive from any GPIO, up to 46×16 segments
        ❐ CapSense® support from any GPIO[3]
        ❐ 1.2 V to 5.5 V I/O interface voltages, up to 4 domains
        ❐ Maskable, independent IRQ on any pin or port
        ❐ Schmitt-trigger transistor-transistor logic (TTL) inputs
        ❐ All GPIOs configurable as open drain high/low,
        pull-up/pull-down, High-Z, or strong output
        ❐ Configurable GPIO pin state at power-on reset (POR)
        ❐ 25 mA sink on SIO


        ■ Digital peripherals
        ❐ 20 to 24 programmable logic device (PLD) based universal
        digital blocks (UDBs)
        ❐ Full CAN 2.0b 16 RX, 8 TX buffers[2]
        ❐ Full-Speed (FS) USB 2.0 12 Mbps using internal oscillator[2]
        ❐ Four 16-bit configurable timers, counters, and PWM blocks
        ❐ 67-MHz, 24-bit fixed point digital filter block (DFB) to
        implement finite impulse response (FIR) and infinite impulse
        response (IIR) filters
        ❐ Library of standard peripherals
        • 8-, 16-, 24-, and 32-bit timers, counters, and PWMs
        • Serial peripheral interface (SPI), universal asynchronous
        transmitter receiver (UART), and I2C
        • Many others available in catalog
        ❐ Library of advanced peripherals
        • Cyclic redundancy check (CRC)
        • Pseudo random sequence (PRS) generator
        • Local interconnect network (LIN) bus 2.0
        • Quadrature decoder


        ■ Analog peripherals (1.71 V ≤ VDDA ≤ 5.5 V)
        ❐ 1.024 V ±0.1% internal voltage reference across –40°C to
        +85°C
        ❐ Configurable delta-sigma ADC with 8- to 20-bit resolution
        • Sample rates up to 192 ksps
        • Programmable gain stage: ×0.25 to ×16
        • 12-bit mode, 192 ksps, 66-dB signal to noise and distortion
        ratio (SINAD), ±1-bit INL/DNL
        • 16-bit mode, 48 ksps, 84-dB SINAD, ±2-bit INL, ±1-bit DNL
        ❐ Up to two SAR ADCs, each 12-bit at 1 Msps
        ❐ Four 8-bit 8 Msps current IDACs or 1-Msps voltage VDACs
        ❐ Four comparators with 95-ns response time
        ❐ Four uncommitted opamps with 25-mA drive capability
        ❐ Four configurable multifunction analog blocks. Example configurations
        are programmable gain amplifier (PGA), transimpedance
        amplifier (TIA), mixer, and sample and hold
        ❐ CapSense support


        ■ Programming, debug, and trace
        ❐ JTAG (4 wire), serial wire debug (SWD) (2 wire), single wire
        viewer (SWV), and TRACEPORT interfaces
        ❐ Cortex-M3 flash patch and breakpoint (FPB) block
        ❐ Cortex-M3 Embedded Trace Macrocellâ„¢ (ETMâ„¢) generates
        an instruction trace stream.
        ❐ Cortex-M3 data watchpoint and trace (DWT) generates data
        trace information
        ❐ Cortex-M3 Instrumentation Trace Macrocell (ITM) can be
        used for printf-style debugging
        ❐ DWT, ETM, and ITM blocks communicate with off-chip debug
        and trace systems via the SWV or TRACEPORT
        ❐ Bootloader programming supportable through I2C, SPI,
        UART, USB, and other interfaces


        ■ Precision, programmable clocking
        ❐ 3- to 62-MHz internal oscillator over full temperature and voltage
        range
        ❐ 4- to 25-MHz crystal oscillator for crystal PPM accuracy
        ❐ Internal PLL clock generation up to 67 MHz
        ❐ 32.768-kHz watch crystal oscillator
        ❐ Low power internal oscillator at 1, 33, and 100 kHz


        ■ Temperature and packaging
        ❐ –40 °C to +85 °C degrees industrial temperature
        ❐ 68-pin QFN and 100-pin TQFP package options.


        Whew. It makes my brain hurt.

        Comment


        • #34
          How does this compare to the quality of the arduino?

          Comment


          • #35
            Its very similar to arduino in layout, but that is about it. The software package that comes PSOC Designer 3 is WAY more powerful than the Arduino sketch IDE. Its more geared to what a professional IDE looks like. Its a steeper learning curve than Arduino, but if you have familiarity with different manufacturers IDE's you feel right at home with it in short order. If Arduino is all you've seen, I could see it being difficult perhaps to wrap your brain around.

            The biggest thing for me was the fact that the programmable hardware is quite capable of running independently of the microprocessor portions. The programmable hardware has "hooks" you can tie into the microcontroller with in the API, but its not always necessary. Weird seeing something working without any code, and just some graphical elements tied together on a schematic page.

            I was really impressed with the sheer amount of capability included in a $25 board. Its not the super fastest or widest possible range hardware, but it can accomplish a ton of stuff, with whats built in. I played around with everything from Arduino compatibility (it ran the Arduino Ethernet shield), used both chips on board for code (its designed really only to use the PSOC 4 with the PSOC 5 meant for debugging), tested out the USB host capabilities (ran a USB Audio device by direct driving a speaker as a PC USB audio device), to multiple USB CDC Serial ports. So in a nutshell, its a crazy, capable little board that was really fun to play with.

            I could easily see someone putting together a nice little PI unit around just this board with very few extra components.

            In terms of a direct comparison to an arduino - there are some pretty power arduinos out there like the DUE, and some of the newer ones. This board is different for the built in programmable digital and analog hardware - heck I even played around with the arbitrary waveform generator on it. There are lots of example projects that were done around it if your really interested on the element 14 site for it,
            (http://www.element14.com/community/roadTests/1195), and the projects I was playing around with and modifying were here (http://www.element14.com/community/t...jects Released).

            Comment


            • #36
              Now theres an affordable PSoC5 dev board !

              Hello fixstuff and Geotechers,

              Cypress made more options available. And affordable too.

              Psoc 4's. On a stick ! Plug and go.
              CY8CKIT-049-42XX PROTOTYPE BOARD, CY8C4245AXI-483 MCU
              http://uk.farnell.com/cypress-semico...483/dp/2420489
              CY8CKIT-049-41XX PROTOTYPE BOARD, CY8C4125AXI-483 MCU
              http://uk.farnell.com/cypress-semico...483/dp/2420488

              And finally, at long last, psoc 5 in a pocket friendly form. Bonus is that you actually get 2 psoc 5's on the board. (There is also an additional CY8C5868LTI on the board.) So if a user graduates to a boot loadable project on the main psoc, then the one used as a kitprog/rammer can be re-purposed for another project if so desired.
              CY8CKIT-059 DEV BRD, CY8C5888LTI PSOC 5
              http://uk.farnell.com/cypress-semico...ing/dp/2476010

              Click image for larger version

Name:	CY8KIT 059.png
Views:	1
Size:	879.2 KB
ID:	343596

              As fixstuff mentioned in his posts on his experiments, these devices are not like ordinary mcu's. Using Cypress Creator suite (free download) you can actually create working projects that use "components" placed and configured in schematic capture-like window. So beside having a mcu there is also configurable digital components (clpd-like ?). Making it possible to do things, and have them perform faster than if wholly created as a function in the main core. See attached example for a look at a schematic of configurable components. There is over 100 of these components just waiting to be explored - from muxes to flip-flops to timers to pwm to counters to opamps to comparators in various flavours. Like their advertising blurb says, " its not just an mcu".

              Click image for larger version

Name:	Components example.png
Views:	1
Size:	125.9 KB
ID:	343597

              Here is an interesting video. https://vimeo.com/65092394

              And for an example of how far you can push some of the resources, have a look at the following post on eeevblog. (and thats only a psoc4)
              http://www.eevblog.com/forum/microcontrollers/help!-what-mcu-%28greater-than-8-bits-of-smarts%29-is-easiest-to-graduate-to/msg528985/#msg528985

              Imagine what the creator of the mole/krot or the felajoo or the hammerhead (or the early mainstream manufacturers) could make, if they had a psoc.

              Comment


              • #37
                Hi Greylourie,

                I bought two of the CY8CKIT-059 kits for just $10 each. I played around with them, and it's pretty good stuff. Ironically, I prefer the usb debug/download frontend on the Pioneer as to those new kits. The Pioneer used the normal download buttons built into Creator, while the new kit requires the use of the extra downloader program. Way more clunky. I think they did it for cost, but man I sure wish they would have had the downloader the same as the Pioneer.

                I still will play with this seriously sometime. I was even contemplating it last night, but I'm pretty heavily into using the Teensy 3.1 right now.

                Comment


                • #38
                  Good news on this.

                  I had a PSOC update the other day, and I hadn't tried to see if they fixed this but they had. The easy download is now working with this 059 kit now, so you don't have to use the downloader. One click and the program downloads and starts running. That's what you want. Easy Peasy.

                  Even the debug works for stepping through code with break points like this in the blinky demo, with a counter thrown in:

                  Click image for larger version

Name:	psoc5_w_breakpt.jpg
Views:	1
Size:	220.0 KB
ID:	343601

                  I will definitely work with this more now that is available. As a side note, it's freaky to see the LED still blinking while your in debug and single stepping...

                  Comment

                  Working...
                  X