Embedded possibilities and my skill level - what bread crumbs will you give me to follow?

Thread Starter

Jeremy Adair

Joined Nov 27, 2014
5
My background- I am an industrial plc programmer. I am familiar with Java, python, mysql, Motorola assembly, and a over 12 ladder logic/ human machine interfaces in the industrial enviornment. In my free time I enjoy microcontrollers, and it is a passion. I made a control system out of an avr 1284p (arduino) on a breadboard with around 12 different inputs and outputs for my senior thesis(garden control system). I just love to tear apart old printers and try to build useful items. I also have a 3D printer and am working on photo transfer pcb making. I want to tinker in my free time like Mr. Wozniak and create something small and repeatable that people may be willing to buy. I want to prototype boards, send them to fab houses and sell the result.

My question- I know arduino down to the hardware but that is my limit. I do not want to buy boards I want to buy chips and components. I was looking into arm and pic but got overwhelmed quickly. I worry about communities for help, open sources for design, and cost of replication. So far I can do all of this with arduino but with the limits of the 1284p chip I don't want to reach a dead end. For someone who has years of experience, what bread crumbs would you give me to follow and what things should I avoid? Oh, and most of my designs will be making something move or do... like an aquaponics ecosystem built in a tank with measurement and feeding devices, or similar applications.
 

MrChips

Joined Oct 2, 2009
30,706
The Arduino platform is great for starting off and having fun. Once you've controlled that stepping motor or gotten that camera interface to work you want to get real serious. Choose a manufacturer, Atmel, Freescale, Microchip, ST, TI, any one, and learn how to program it with your own code. This way you will never be dependent on someone else's code.
 

Thread Starter

Jeremy Adair

Joined Nov 27, 2014
5
Thanks, while I resent the assumption that I don't write my own code, I'm in the process of getting a dev board for Atmel and using their tools to program with instead of the Arduino IDE. I also found a website called AVR freaks for a community and while looking at the manufacture's chip selections I found enough breadcrumbs to keep me up well into the twilight hours. I also didn't realize Atmel had ARM chips, I thought ARM was a manufacturer.

Oh well, I found my answer. Thanks again

A wise man can learn more from a foolish question than a fool can learn from a wise answer.
 

sirch2

Joined Jan 21, 2013
1,037
Sounds like you got it nailed. BTW if you have a programmer for Atmel chips you can burn your Arduino code directly to the chip without the "Arduino" platform. You can also use an Arduino as a programmer for Atmel chips.

AFAIK ARM is essentially a designer of processors, they license out the designs to manufacturers - http://en.wikipedia.org/wiki/ARM_architecture
 

MrChips

Joined Oct 2, 2009
30,706
Thanks, while I resent the assumption that I don't write my own code...
You misunderstand me. Arduino is a platform and an IDE. Most programmers tend to use one or more of the library functions that come with the platform, for example, delay( ).

The same thing can occur with any other programming platform. However, here you are able to choose to create your own ASM or C code or to rely on the library function provided.
 

Thread Starter

Jeremy Adair

Joined Nov 27, 2014
5
You can also use an Arduino as a programmer for Atmel chips.
That is good Advice Sirch. I had an atTinyISP(can only program chips below 56k flash) and an Atmel AVR MKII before I realized my first arduino board could be used as an ISP, but I am thinking about getting the AVR-ONE because it is supposed to support future chips and I won't have to troubleshoot an open source programmer. I have run into issues using an Uno set up as an ISP to program an atmega1284p chip where I had to run extra code into the clock of the arduinoISP with a separate Arduino. Keep in mind ArduinoISP has some quirks.


You misunderstand me.
My mistake. A lot of people shun Arduino users as hack hobbyists. It is part of the reason I want to get away from their IDE. By the way Delay() is evil, I use Millis() and compare to time past. It makes no sense to just stop the code execution with a delay. 200mS is the execution time where people can visibly see lag in a program. I like libraries as long as I can see the source code. =-) I've also ran a few ASM lines in an Arduino Sketch but I am getting tired of how powerful(lack of) their extra layer is.
 
Top