background preloader

Embedded Programming

Facebook Twitter

ESP8266

SPLat. Hands on Introduction to IOT blog series overview. The Internet Of Things is as much about Big Data as it is about connected devices. This series will take a hands-on approach to getting data from a device, pushing it to the cloud, and finally representing it in a meaningful way. Introduction I have been playing around with microcontrollers for almost two decades now but this hobby has been mostly idle for the past 5 years, replaced by woodworking projects.

Since my workshop is in the garage, and winters are cold here in Chicago, I decided to resurrect the microcontrollers and see if I can't merge the two interests, maybe even finish my greenhouse I started nearly 8 years ago. I believe a greenhouse is a perfect hotbed for a microcontroller playground. So I decided to do a series of posts about some of the things I have recently learned, specifically about the new generation of MCUs (MicroController Unit) that include features such as Wifi, Linux, and full package management. Primer on Microcontrollers & IOT PICs Arduino Raspberry PI MCUs:

RTOS

STC programming. I2C. Espruino: JavaScript for Things by Gordon Williams. Want to write about Espruino? Check out this page Espruino is a small computer that anyone can use to control things around them. Its JavaScript interpreter gives you instant feedback so that you can experiment and develop whatever your level of experience. Even if you can’t program, you can still get started quickly with our Web-based graphical code editor!

You don't need any compilation or 'flashing' step, or any software on the host computer. On successful completion of the KickStarter, we will release all software and hardware source files with an Open Source Licence, so Espruino can easily be ported to other platforms, such as Arduino, Carambola, Raspberry Pi, and even the Sony Smartwatch! Yes! Not only is it fun, but it's great for debugging your software (and hardware!) You're not limited to just the interactive way of programming though - you can program whichever way you want to using the Web UI: We were looking for a language that: This is where Espruino shines. Yes! Mid-October. Micro Python - Python for microcontrollers.

Micro Python: Python for microcontrollers by Damien George. The Micro Python project has been Kick-started! Thanks to all backers! You can find the project, including the software and hardware, at micropython.org. We have passed the initial funding goal of £15,000! We have passed the first stretch goal of £40,000! We have passed the second stretch goal of £50,000! We have passed the third stretch goal of £60,000! Micro Python is a lean and fast implementation of the Python programming language (python.org) that is optimised to run on a microcontroller. Python is a scripting language that is very easy to learn, yet highly expressive and very powerful, and has a huge existing community. When building an electronics project, like an intruder detector or a smart robot, a microcontroller is used as the "brain", and does all the decision making and control.

The Micro Python board comes preinstalled with Micro Python and is suitable for everyone, whether a beginner or an expert robot builder. To read the accelerometer and print out the x-axis value:

CC1101 RF

Bidcos library. Home - Learning to Program the PIC24. OneWire ALPHA - Beta Firmware and Drivers - Netduino Forums. 'Chris Walker', on 29 Aug 2010 - 9:34 PM, said: For firmware enhancements like this, be sure to put the changes/new features in a custom namespace (not one starting with Netduino or SecretLabs). Since we support the Netduino hardware, we need to make sure people understand what comes from us and what comes from the community. Chris, I completely understand your concerns, and I agree. Personally, I would prefer using SecretLabs...Netduino namespace to indicate what the code is for, not whom it is developed by (a quote from Names of Namespaces: The namespaces belonging to a particular technology will have the same first and second level identifiers (Company.technology.*). Thus, I would prefer the possibility to use namespaces like SecretLabs.NETMF.Hardware.Contrib, SecretLabs.NETMF.Hardware.Netduino.Experimental or similar.

I will be glad to contribute my code, the process we discussed in our PM conversation still applies. I2C Two Wire Interface Tutorial: Introduction. In modern electronic systems there are a number of peripheral ICs that have to communicate with each other and the outside world. To maximize hardware efficiency and simplify circuit design, Philips developed a simple bi-directional 2-wire, serial data (SDA) and serial clock (SCL) bus for inter-IC control. This I2C-bus supports any IC fabrication process and, with the extremely broad range of I2C-compatible chips from Philips and other suppliers, it has become the worldwide industry standard proprietary control bus.

Each device is recognized by a unique address and can operate as either a receiver-only device (e.g. an LCD Driver) or a transmitter with the capability to both receive and send information (such as memory). Transmitters and/or receivers can operate in either master or slave mode, depending on whether the chip has to initiate a data transfer or is only addressed. I2C is a multi-master bus, i.e. it can be controlled by more than one IC connected to it. Byte Format: Unison RTOS for Microcontrollers (MCUs), FPGAs and Microprocessors (MPUs) | RoweBots.

RoweBots offers OEM developers ultra tiny Linux and POSIX compatible embedded or real-time operating systems (RTOS). The Unison Embedded Operating System or RTOS is the 32 bit offering and DSPnano RTOS is the 8/16 bit offering. Unison supports general purpose microcontrollers (MCUs), digital signal processors (DSPs), FPGAs, microprocessors (MPUs) and digital signal controllers (DSCs) 32 bit architectures with as little as 1K of RAM and 2K of flash. Unison Features Single processMultiple threadMicro-kernel basedUltra tiny memory footprintEmbedded and real-time POSIX RTOSLinux compatibility using POSIX RTOS approachSupporting microcontrollers ( MCUs) , digital signal controllers (DSCs), digital signal processors (DSPs), microprocessors (MPUs) & FPGAs without an MMU. The tool environment is the preferred silicon vendor choice of IDE with additional options on some architectures. Unison applications are discussed under the applications section.

Работа с последовательными портами. PC может содержать до четырех последовательных портов, также называемых адаптерами RS-232C. В PS/2 (кроме моделей 25 и 30) может быть до восьми таких адаптеров. В MS-DOS последовательные порты называются COMX , где X - номер порта. Работать с последовательными портами можно как с использованием BIOS (Basic Input-Output System), так и непосредственно через использование аппаратных прерываний. В BIOS для работы с последовательными портами выделено специальное прерывание int14 (Здесь и далее числа даны в 16-ричной системе счисления). С помощью этого прерывания можно установить параметры порта, проверить статус порта, принять или передать байт данных. При работе на скоростях больше 300 бод приходится организовывать программную буферизацию принимаемых, а в отдельных случаях и передаваемых данных.

В конце статьи приведена простейшая программа эмулятор терминала и в процессе ее разбора объясняются основные принципы программирования адаптера RS-232C. Посмотрим на текст программы. .NET Micro Framework Platform SDK. The Microsoft® .NET Micro Framework is a powerful and flexible platform for rapidly creating embedded device firmware with Microsoft Visual Studio®. You can now develop firmware for devices that are too constrained to run Microsoft Windows® CE and the .NET Compact Framework.

With the .NET Micro Framework, you can use Visual Studio to write, test, and debug software on your hardware just as you would when developing software for the .NET Framework or the .NET Compact Framework. .NET Micro Framework brings essential benefits of the Microsoft .NET platform to devices that do not need the full functionality that is available in the .NET Framework and the .NET Compact Framework.

Our target is devices that operate below the functionality range of those for which software developers typically use the .NET Compact Framework to develop embedded applications. The architecture of the .NET Micro Framework provides you with the tools necessary to develop your firmware as managed C# applications. Tools. Starting A Gecko EFM32 Micro | Boards content from Electronic Design. Energy Micro has always tried to better ARM's architecture by delivering a more power efficient system than its competition.

The ARM Cortex-M3 architecture is the basis for its Gecko line (see Power Sipping Gecko) of low power, flash microcontrollers. One way to check out the Gecko line is with the EFM32 Gecko Starter Kit board (Fig. 1). I found it inside the box along with a USB cable, a cute Gecko keychain and a copy of IAR's Embedded Workbench. It is also possible to install software from Keil, Code Sourcery and Rowly Associates. The $69 kit has board that provides access to all the micro's pins although the headers are not soldered in. The board has a 32MHz EFM32G890 microcontroller with 32 Kbytes of flash and 8 Kbytes for SRAM. The system is easy to get running and the software provides everything I needed to exercise the chip.

As with most low cost kits, most documentation is online or on the CD.

Pulse counter