3 ms·
Yeah, today it's the complete opposite. I see so many people on the internet raging about how using an Arduino is stupid when you can do the same thing with sta
by Declanomous 10y ago
Yeah, today it's the complete opposite. I see so many people on the internet raging about how using an Arduino is stupid when you can do the same thing with standard electronic parts. It's faster and easier to program something than it is to design a circuit, especially when you take debugging into account. Not to mention the fact that microcontrollers are general purpose, so you can have them sitting around ready to go.
It's pretty much impossible to maintain a stock of any other electronic bit you need, other than maybe resistors. I'm not sure why you'd want to either. I have a ton of ICs left over from random projects. I can never find them when I need them, and even if I can find them again, I have to spend a bunch of time re-reading the datasheet.
I've realized that you can accomplish almost anything you'd like with a microcontroller and some mosfets. It might be more elegant to use a ripple counter if you have to drive a whole bunch of elements, but I'd rather just chain a bunch of microcontrollers together.
- dragontamer 10y agoIMO, you should learn Verilog and use CPLDs for glue-logic scenarios (like ripple counter or whatnot). Some 74-series chips are still unique and useful. 74LV4060 for example is a good stable clock solution. But your typical "AND-gate" and "XOR-gate" chips seem completely obsolete by CPLD + Verilog / VHDL. The ispMach 4000ZE costs $1.20 and has a current-draw of ~hundres of uA at 1MHz. Why use a 7400 (NAND-gate) ever again? http://www.digikey.com/product-detail/en/lattice-semiconductor-corporation/LC4032ZE-7TN48C/220-1362-ND/2751416 http://www.digikey.com/product-detail/en/lattice-semiconduct...
- mindcrime 10y agoThe main problem I have with CPLD's is that they seem to fall into a space much like FPGA's, where there's very limited open source tooling for them. And I'm kindof an open source ideologue, so I try to avoid anything where there isn't a completely open source toolchain. Then again, maybe I just haven't looked hard enough.
- dragontamer 10y agoAgree'd. The main thing is that the low-level details of macrocells varies from company to company. And those companies are protective of their designs, so they don't want people figuring out how their devices really work. So it is a tough spot. Still, Verilog allows you to move your "code" from company-to-company (Xilinx, Altera, and Lattice). So its sufficient.
- someguy12 10y agoCan you explain your perspective on open source ideology as it applies to hardware design? I see people complain every so often about lack of open source tools for FPGAs and CPLDs and it doesn't make sense to me. Most people seem happy to use a chip that performs the exact functions they wanted even though it's completely closed/proprietary. But they seem to balk at using a programmable chip where they can choose the functionality but the software that let's them do so is closed/proprietary.
- nickpsecurity 10y agoFor me, it's countering subversion, being able to fix the tool, being able to extend the tool, and increasing labor supply of contributors with free or cheap tooling vs $100k a seat for some.
- mindcrime 10y agoIt's a combination of things. For starters, I generally feel that openness in terms of computing, and technology in the more general sense, is a Good Thing for the world at large. The more things are open source and unencumbered by various legal mechanisms (patents, whatever), the more people who can use those tools, build on them, innovate, and participate in the further advancement of technology. Think "virtuous circle". Beyond that, when tools are Open Source it makes life easier and takes out friction for us as individuals. I hate the idea of ordering up a fancy new chip, getting excited about it, and then finding out that I have to pay a zillion dollars to download and use the programming tools. Or I get the tools and find out that there's some weird "field of use" limitation in the Terms and Conditions. Or worse, I lose my last copy of the software, the manufacturer goes out of business, and then later I find a few of those chips in my parts box and realize I will never be able to use them because I no longer have access to the software. Or maybe I still have the software, but it has a bug that nobody can fix because nobody has the source code. That we still have to use some chips that are proprietary to some extent is something I accept out of pragmatism, but by the same token, I support efforts like OpenCores, RISC-V, etc. that may eventually lead us to reasonably usable CPU's that don't need binary blobs and aren't full of undocumented features, etc. At least one can hope.
- Declanomous 10y agoThanks for the recommendation. I'll have to try that out. I do have a absolute mess of external clocks sitting around, and a few other ICs that I really like. I like building things though, and I build them in my free time, and I build them for myself. Tossing a micro in allows me to use my time better and use my skills better. Hobbyist micro-controllers also come in through-hole packages. I can solder pretty much anything that doesn't require a hot-plate, but it's a lot easier to prototype with through hole. For instance, one of the things I'm building right now is a 4x8 array of 6"x6" flip-flop sign elements that I got as surplus from the highway department. Each element has a dual 68 ohm coil and runs at 24 volts. I'm basically designing a one-off. Rather than getting clever, I just drive the coils with a ULN2803 (one of the parts I keep around), and drive the ULN2803's with arduinos, and tie the whole thing together with a raspberry pi. It's kind of a mess, but the arduinos mean I don't have to worry about timing, and I can ssh in to the raspberry pi. It's probably an order of magnitude more expensive and less elegant than something an EE would design, but it works, and it probably won't catch on fire.
- dragontamer 10y agoOne of my professors told me: > Perfection is always the final sacrifice before the alter of completion. Nothing is ever perfect. You must always sacrifice perfection before a project is complete. With the cheapness of Arduinos and Raspberry Pis, throwing a bunch of them together is always a potential solution. --------- EDIT: I'm not sure a CPLD could have stopped the use of the ULN2803, although maybe it could have replaced the Arduinos. If the Arduinos were good enough however, then no harm-no-foul really. Its just that a CPLD can implement things like a 27-bit shift register over SPI or I2C really easy (assuming you have some Verilog or VHDL coding skills). So maybe you'd be able to do Raspberry Pi -> CPLD -> ULN2803.
- moftz 10y agoI remember back in Intro to CompE, we did the first project using handful of 7400s to build seven segment display driver using a bunch of switches to control the input 3-bit value. It required more chips and breadboard real estate than we had so we were only required to count up to 6. Immediately after that, we got our FPGAs and did the same project but with a button that would increment the 8-bit counter. The coding took about 10mins in verilog compared to the hours of logic diagramming and wiring.