Robin Graham | 31/07/2017 23:06:11 |
1089 forum posts 345 photos | I've been wondering about these things for some time, and think I should take the plunge. But where to start? I've been reading on t'internet, including the first 5 pages of the topic here, started early 2016, but I get defeated by the jargon. What is a 'shield' - looks like what I'd call an interface board. What is a scheme or sketch or whatever - from what I've seen they look like C++ functions. How does all this hang together? Does one write a C/C++ function calling Arduino library functions? Where is main()? My mental model of how these things work is - well, foggy. I'd be happy if someone could recommend a book which explains the basics in language which a dinosaur like me, brought up on 8086 machine code/assembler and low level C programming could understand. Or maybe I should just buy a 'starter kit' and figure it out from there? But if so which of the many offerings? Bewildered, Rob.
|
Colin Whittaker | 01/08/2017 02:41:26 |
155 forum posts 18 photos | Rob, With your machine code grounding you should find it all pretty straightforward. As for the kit, is this too expensive, https://store.arduino.cc/usa/arduino-starter-kit? Cheers, Colin |
I.M. OUTAHERE | 01/08/2017 05:51:56 |
1468 forum posts 3 photos | Try Paul Mcworter on youtube or his website toptechboy.com The only bad thing with that tutorial he made is he had an allergy so you have to put up with him coughing which can be a little irritating but if you can put up with it the tutorial series is well worth watching . I would also check out the arduino website as it has loads of useful info as well. Ian. |
Brian Oldford | 01/08/2017 08:33:00 |
![]() 686 forum posts 18 photos | Posted by XD 351 on 01/08/2017 05:51:56:
Try Paul Mcworter on youtube or his website toptechboy.com The only bad thing with that tutorial he made is he had an allergy so you have to put up with him coughing which can be a little irritating but if you can put up with it the tutorial series is well worth watching . I would also check out the arduino website as it has loads of useful info as well. Ian. +1 Definitely worth a read. |
Journeyman | 01/08/2017 08:33:04 |
![]() 1257 forum posts 264 photos | I bought a starter kit from Amazon to get into using the Arduino. I did a quick ***Review Here*** some useful bits and pieces and the manual is just about OK. As you say a "Shield" is a plug in interface board and the "Sketch" is just a program in a cut down version of C++ John |
Waldorf | 01/08/2017 08:37:52 |
![]() 6 forum posts 5 photos | Hi Rob As Ian has suggested, Paul McWorter is to be recommended. He's a professional teacher & trainer which makes all the difference. I can also highly recommend Peter Dalmaris over at udemy.com: https://www.udemy.com/arduino-sbs/ For a (very) few £/€/$ you get 23 hours of video instruction, handouts, and support. I think it offers amazing value for money. Starter kits are convenient, but not always good value.If you're comfortable with a soldering iron and veroboard you don't have to spend very much at all. |
John Haine | 01/08/2017 08:48:53 |
5563 forum posts 322 photos | I've just gone the starter kit route with a Uno. Building my own shield on strip board (beware the pin spacing issue if you try this!). Started writing sketches based on the examples, having done quite a lot of programming over the years (I wouldn't call it software in my case) I'm finding it fairly straightforward. |
Roger Woollett | 01/08/2017 10:27:29 |
148 forum posts 6 photos | I think I can shed some light on the programming aspect. The Arduino IDE tries to make programming easier for beginners but can be confusing if you have some experience. The language used is often said to be C but is in fact C++ . A sketch is essentially a source code file. When you compile the IDE generates a header file so you do not have to provide prototypes for functions. There is a main function but it is in the library - it just calls setup and then loop repeatedly. Let me know if I can help with other confusions. |
Rick Kirkland 1 | 01/08/2017 11:05:39 |
![]() 175 forum posts | Dear bewildered Rob, , don't feel bad about not having a grasp of this. Quite simply, I don't even understand what your original post is saying or asking. Seriously. No joke. I'm clueless. I know what most of the words mean,but in this context I'm blind. However, if this is connected with CNC then I'm hoping to learn and widen my knowledge. Presently to me CNC is as alien as a mobile phone would be to a medieval wheelwright. Onward and upward. Edited By Rick Kirkland 1 on 01/08/2017 11:07:53 |
Gordon W | 01/08/2017 11:19:54 |
2011 forum posts | Go for it -buy the thing and a book or two, not much money and you will learn something. My problem is I have to learn a complete new language, words don't mean what I think they mean. But you will get past this eventually. I bought one and when the winter comes hope to make progress. |
duncan webster | 01/08/2017 11:23:47 |
5307 forum posts 83 photos | I bought a book called '30 Arduino projects for the Evil Genius'. I find it very much easier working from a book than continually switching screens. If you're in the North West you can borrow it, it would hardly be worth postage both ways to send it. Once you are familiar with Arduino language, you can delve deeper and do things like writing to ports, which is much more powerful, you can do in one line of code what would take many. The beauty is that once you've got a basic understanding, and starting from a knowledge of C it won't take long, everything you need to know is on the interweb, with downloadable code for many things. You don't have a main(), it does setup() first, then does loop() endlessly. Bit odd at first, I have actually had sketches which did it all in setup() |
Andy Carruthers | 01/08/2017 14:33:22 |
![]() 317 forum posts 23 photos | I too am about to dive into Arduino and have a few books on the subject, I have a locksmith project which needs 3D printing, stepper motors and Arduino and just this week have started an introduction to AutoCAD course A couple of additional resources I found useful Humble Book Bundles - I bought several e-books for a pittance on various Arduino / 3D printing projects MakerFaire Newcastle - Two days of hacking, making and inspiration, next event is April 2018 and I shall spend both days immersed Dive in, life is too short not to |
Neil Wyatt | 01/08/2017 15:32:29 |
![]() 19226 forum posts 749 photos 86 articles | Hello Robin, this looks agood resource, especially for someone who already has some programming skills: Might even follow it myself... (I imagine main() exists at level above the sketch, along with various #include and #define statements etc. to suit the arduino you are using) Neil Edited By Neil Wyatt on 01/08/2017 15:35:15 |
SillyOldDuffer | 01/08/2017 17:13:55 |
10668 forum posts 2415 photos | Posted by Neil Wyatt on 01/08/2017 15:32:29: ... I imagine main() exists at level above the sketch, along with various #include and #define statements etc. to suit the arduino you are using Neil Edited By Neil Wyatt on 01/08/2017 15:35:15 Correct. The code is in main.cpp . The exciting part looks like this: It can be seen that main.cpp does some private setting up, calls setup() once, and then calls loop() forever, checking the serial interface each time round. As expected on a microcontroller, main() never returns. The built-in main() just makes life a bit simpler for Arduino programmers by hiding a few details. It's possible to substitute your own main() if there's a need. But that's advanced stuff, making it likely that you are providing your own hardware as well. In that case, something like avrdude would be more suitable for development than the Arduino tool-set.
|
Neil Wyatt | 01/08/2017 17:18:24 |
![]() 19226 forum posts 749 photos 86 articles | Posted by SillyOldDuffer on 01/08/2017 17:13:55: In that case, something like avrdude would be more suitable for development than the Arduino tool-set.
Atmel Studio 6 is an excellent IDE, if you have the time to learn it! Supports for GNUCC and assembler built in and provides for various other languages. Neil |
Robin Graham | 01/08/2017 23:17:20 |
1089 forum posts 345 photos | Thanks for the helpful and encouraging replies. I now have a clearer mental picture of how it all works. My trouble is that my mental model of how computers work as controllers is founded in my 1970'/80s experiences as a PhD student - part of my project involved bringing spectrometers under computer control, the computer being a PET with two IEEE-488 ports - which was pretty swish at the time. Programmed in BASIC as I recall. Eventually it was replaced by an IBM PC, hence the 8086 experience. As computing has evolved, layers upon layers of abstraction have covered up what's 'actually' going on. That makes it easier for some folk, but harder for a dinosaur like me. Thanks again for replies, &pointers to further info which I shall follow up, and digest *contents. Rob Edited By Robin Graham on 01/08/2017 23:27:14 |
Thomas Staubo | 02/08/2017 15:44:57 |
![]() 54 forum posts | The programming is the hard part for me. You can say it's greek to me. Electronics I can manage far better. I searched for "Arduino GUI" to see if there's an easier way. And there seems to be several GUI based programs, but I don't know if it's something for serious use, or if it's just for kids use. Anybody tried something like that?? |
Neil Wyatt | 02/08/2017 16:40:49 |
![]() 19226 forum posts 749 photos 86 articles | Posted by Robin Graham on 01/08/2017 23:17:20:
As computing has evolved, layers upon layers of abstraction have covered up what's 'actually' going on. That makes it easier for some folk, but harder for a dinosaur like me. In that case, you might enjoy programming arduinos (well the AVR chips on them) in AVR assembler. No nasty abstractions to spoil the experience and hugely powerful chips! Neil |
Waldorf | 03/08/2017 06:17:57 |
![]() 6 forum posts 5 photos | Posted by Thomas Staubo on 02/08/2017 15:44:57:
The programming is the hard part for me. You can say it's greek to me. Electronics I can manage far better. I searched for "Arduino GUI" to see if there's an easier way. And there seems to be several GUI based programs, but I don't know if it's something for serious use, or if it's just for kids use. Anybody tried something like that?? I've had limited success with Ardublock in a training environment. Are you familiar with ladder logic and PLC programming? If so, Soapbox SNAP might be more suitable for your needs. |
James Alford | 03/08/2017 08:25:19 |
501 forum posts 88 photos | I was given an Uno for Christmas and took some while to get any idea what to do: I have previously programmed in Visual Basics and VBA,but not for a long time. I found the reference section on the Arduino website **LINK** and the forum on the same site to be really helpful. I finally managed to progamme a clock to operate on the seconds, minutes, hours, strike the quarters and hours and turn the chimes on and off at night. All it needs now is the mechanics of the clock to display the time on a dial.......... Regards, James. |
Please login to post a reply.
Want the latest issue of Model Engineer or Model Engineers' Workshop? Use our magazine locator links to find your nearest stockist!
Sign up to our newsletter and get a free digital issue.
You can unsubscribe at anytime. View our privacy policy at www.mortons.co.uk/privacy
You can contact us by phone, mail or email about the magazines including becoming a contributor, submitting reader's letters or making queries about articles. You can also get in touch about this website, advertising or other general issues.
Click THIS LINK for full contact details.
For subscription issues please see THIS LINK.