You are here

Cypress Maker Lab - The burns have healed | サイプレス セミコンダクタ

Cypress Maker Lab - The burns have healed

This weekend I took the plunge and soldered some headers onto the motor board and the PSoC prototyping kit. I ended up choosing the CY8CKIT-059 for no other reason than I already had one (and had forgotten to order some more). So I was a little worried that I would burn up the chip and look a bit silly while I wait for a replacement. The device on that kit has oodles more CPU power (ARM Cortex-M3) and peripheral resources then I am going to need but is still only $10.


It is fair to say that I am not a natural "solderist". But I did actually manage not to set anything on fire or lose any flesh. I watched a video on the Adafruit site and read some how-to sites. The smart move would then be to practice a few times but let's be realistic - if I was smart I would not be doing this. The Adafruit guy said the joints should look like tiny Herschey's Kisses… Herschey's Kiss Mine do not look like that. His are like cute, little, slightly concave cones. Mine are a mix of blobs, pancakes and stalagmites.  I won’t show you close up photos of my work - forgive me, it's just too embarrassing - but I will tell you how I used PSoC to prove they were all good!


First, I checked the motor. All I wanted to do there was to use a breadboard to wire up power and logic to drive the dog wheels. Here is a picture of how I wired it up.

Testing the DRV8833 Motor board


Here are some descriptions of the pins, which are documented in more detail on Adafruit's excellent site.

Descriptions of the DRV8833 pins, which are documented in more detail on Adafruit's excellent site

The power is applied to VMotor because it is protected against wiring up the source backwards. The VM terminal is used as an output for the logic side of the board. In real-life it looked like this. Spinny wheels!

You'll notice that I use the same source to power to the motors and also for the logic. That limits me to 5V or I will start blowing stuff up. I toyed with the idea of having a high voltage source for the motor and a low power choice for the PSoC. But I figured that I am not making a sports dog here - and this test pretty much confirmed that I can get all the speed I need from 4 AA batteries and the PSoC kit is going to only steal a tiny fraction of my total power budget. Oooh, "power budget", doesn’t that sound fancy! Now you might be thinking that 4 AA batteries give me 6V and I am asking for trouble but I solved that quandary with rechargeable batteries. These run at 1.2V and so I am at a nice comfy 4.8V total.

On the logic side I drove one side of each H-bridge high and the other low for full speed operation. I connected AIN1 and BIN2 low and, conversely, AIN2 and BIN1 high so the wheels run in the same direction. The SLP is held high because it is basically an enable pin, which I will figure out how to control from PSoC in the next blog. The FLT is a fault signal that can be generated from the board which I am ignoring for now in keeping with my general devil-may-care attitude!

The next step was checking the PSoC kit. I soldered 12 pins onto both sides of the kit. Two of the pins are for power and ground and the rest are for me to play with. Did I solder them all correctly? Well, clearly not, but did I do it just about well enough that the PSoC runs and the I/Os work? PSoC to the rescue! I thought about writing a program that reads a pin and either lights or extinguishes the LED on the prototyping kit. But running that 24 times would be dull so I created this PSoC Creator schematic, which lets me test 8 pins at a time so I only had to make three versions to test all the pins.

PSoC-based Solder Joint Tester - Check multiple solder joints with a single program

I named the pin components with the physical pins they will be connected to so that I would get the mapping right. I also configured them to have a pull-up resistor so that the NAND gate inputs are driven low when I connect the pin to ground (it’s safer than pulling the pin lower and connecting power). If I connect any pin to ground then the NAND outputs a 0 and the active-high LED turns on. No C program needed. The logic '1' sitting in the place where P2_1 should be is there because that pin is actually wired up the LED, so I am just holding it high (off) and not testing input on that pin. I programmed this into the PSoC kit and verified that I am a soldering superstar in a few seconds. No-one was around to cheer, but I know it was a pretty awesome moment.


P2_5 is good! Don’t look at the solder joints. The kit VDD and GND pins are in the top left corner and are connected to the battery pack. The big red wire is grounding P2_5 and the LED is announcing my skill as a solderist.


So now I know that I have hardware that works. Next time I shall assemble the dog and get into the actual PSoC design that will drive the wheels at less than full speed…



このサイトに掲示されているすべてのコンテンツと資料は、「そのままの状態」で提供されます。サイプレス セミコンダクタとその関連サプライヤは、これらの資料について、いかなる目的への適合性をも表明することはありません。また、これらの資料について、すべての保証や条件を放棄します。これには、暗示的な保証および条件、商用性、特定の目的への適合性、すべてのサードパーティの知的財産権に対する権利と非侵害などが含まれますが、これらに制限されることはありません。サイプレス セミコンダクタにより、明示または暗示にかかわらず、禁反言などによるライセンスは、付与されないものとします。このサイトに掲示されている情報の使用には、サードパーティまたはサイプレス セミコンダクタからのライセンスが必要となる場合があります。

このサイトのコンテンツには、特定のガイドラインや使用制限が含まれている場合があります。このサイトにおけるすべての掲示やコンテンツの使用は、サイトの利用規約に準じて行われるものとします。このコンテンツを使用するサードパーティは、制限やガイドラインに従い、このサイトの利用規約を遵守するものとします。サイプレス セミコンダクタとそのサプライヤは、コンテンツや資料、その製品、プログラム、サービスに対し、いつでも修正、削除、変更、改善、向上、その他の変更を加える権利を有します。また、いかなるコンテンツ、製品、プログラム、サービスを予告なく変更または閉鎖する権利を有します。