In this blog post we look at how beginners wanting to start with Arduino can choose an Arduino board. Help is provided for beginners choosing an Arduino. The difference between an Arduino and AVR ATmega microcontroller is also covered.
Choosing an Arduino for Beginners
The recommended Arduino for beginners is usually the Arduino Uno. On the Starting Electronics website, the article on choosing an Arduino for beginners provides more information on which Arduino to choose when starting to learn about Arduino and writing sketches.
Difference Between Arduino and AVR
Many Arduino beginners are confused about the difference between Arduino and AVR, or Arduino and ATmega. Difference between Arduino and ATmega328 explains what the ATmega328 microcontroller is and how it relates to the Arduino Uno. The article also explains more about the AVR microcontroller found on most Arduino boards.
In older versions of the Raspberry PI Raspbian operating system such as Raspbian Wheezy, the inittab file in /etc/ could be edited to make the OS perform an automatic login at power up. In new versions of Raspbian such as Raspbian Jessie, the inittab file no longer exists. Here is how to automatically log in to the command line interface in Raspbian Jessie.
Automatic Login to the Command Line
In Raspbian Jessie it is now even easier to set up the operating system to automatically log in to the command line. By default Raspbian Jessie automatically logs in to the desktop. Settings can now be changed from an application on the desktop.
Options that can be changed in the Raspberry PI Configuration application are:
- Boot Raspbian to the desktop without login required (default in Jessie)
- Boot Raspbian to the command line interface (CLI) without login required
- Boot Raspbian to the desktop with login required (user name and password must be entered)
- Boot Raspbian to the command line interface with login required
See the full details on how to automatically log in to the command line in Raspbian Jessie.
Use the Raspberry PI Configuration Dialog Box to Change Boot Settings – Click the Image for the Full Article
Breadboard prototyping with an Atmel Xplained board is not as easy as using a board such as an Arduino which allows jumper wires to be connected directly from the board’s headers to the breadboard.
Easily Connecting to an Atmel Xplained Board for Breadboard Prototyping
One solution to easily connect to an Atmel Xplained board from a breadboard is to make up a ribbon cable with two female IDC connectors. This allows jumper wires to be inserted into the IDC connector which can then be connected to a breadboard or breadboard circuit. The image below shows how this is done.
Breadboard Prototyping with an Atmel Xplained Pro Board
The above arrangement of breadboard prototyping is used in the ASF ARM tutorial series that teaches how to use the Atmel Software Framework on ARM Cortex microcontrollers.
The board in the above image is a SAM4N Xplained Pro board.
When writing C program code for 8-bit Atmel AVR microcontrollers and using Atmel Studio, functions such as printf() and sprintf() do not print floating point numbers of type float. Instead of printing a float to a string or standard output, a question mark is printed.
Question Mark is Printed from the sprintf Function Instead of Float Number
The image below shows the output from the serial port of an AVR microcontroller that printed a floating point number to a string using the sprintf() function. The string was then sent to a terminal program running on a PC. The C program was built in Atmel Studio 7 using the default project settings. As can be seen, floating point numbers don’t print with sprintf, but a question mark is printed instead of the expected number.
Floating Point Numbers don’t Print with sprintf in Atmel Studio AVR C
Cause of the float Printing Problem
The problem occurs because Atmel Studio 7 uses the minimal version of the function that all the printf family of functions rely on. Using the minimal function reduces code size of the printf family of functions which is desirable when using microcontrollers, especially the smaller 8-bit AVR microcontrollers that have small amounts of memory. Floating point numbers are not supported by the minimal function, causing the question mark to be printed instead of the floating point number.
Printing float Numbers with sprintf using AVRs and Atmel Studio
To fix the floating point printing problem, the full function that the printf family uses must be linked into the program instead of the minimal function. The article on how to print floating point numbers in AVR C code with Atmel Studio 7 shows how to include the full function by changing linker settings in Atmel Studio.
After changing setting in Atmel Studio, the sprintf function works properly and prints the floating point number to the terminal as shown in the image below.
Printing float Numbers with an AVR Microcontroller using sprintf
The new official Raspberry PI touchscreen 7 inch display is now available and connects directly to a Raspberry PI board using a flat ribbon cable and power wires that are supplied with the display.
Raspberry PI Touchscreen Display Running Raspbian
The screen operates from a 5V supply and can be powered from the Raspberry PI header pins using the supplied wires. The screen can also be powered from its own external 5V power supply and has a micro USB connector identical to the one used to supply power to Raspberry PI boards. If a separate power supply is used to power the screen, it must be rated at 500mA or more.
Mounting a Raspberry PI Board on the Touchscreen
Terminal posts are provided at the back of the touchscreen that hold the touchscreen circuit board in place. A raspberry PI board can be mounted on the back of the touchscreen by attaching it with the four screws that are supplied with the screen to the terminal posts.
The image below shows a Raspberry PI 2 model B attached to the back of a Raspberry PI touchscreen.
Raspberry PI Board Mounted on the Back of the Touchscreen
Connecting a Raspberry PI to the Raspberry PI Touchscreen
It is important to make the connections between the Raspberry PI board and touchscreen correctly, especially the power to the screen when it is tapped from the header of the Raspberry PI board.
A flat ribbon cable is supplied with the screen for making a data connection between the raspberry PI board and screen. Jumper wires are supplied with the board for connecting 5V and GND from the Raspberry PI header pins to the touchscreen to supply power to the screen.
Full connection details including photos and a video can be found in the article on how to connect the official 7″ LCD Raspberry PI touchscreen to a Raspberry PI board.
Raspberry PI Touchscreen Connections