New LPC1768 based development board

Continuing with its endeavor to deliver low cost micro controller hardware development platform, NGX has now launched a new low cost prototyping platform for LPC1768 series of mircocontrollers. LPC1700 are ARM cortex-M3 based micro controllers. The platform is named BlueBoard-LPC1768-H and costs only $32.5 BlueBoard-LPC1768-H is a breakout board for LPC1768 cortex-M3 based microcontroller. The LPC1768 microcontroller has 512KB of internal flash and 64KB RAM. Ethernet MAC, USB Device/Host/OTG interface, 8-channel general purpose DMA controller, 4 UARTs, 2 CAN channels, 2 SSP controllers, SPI interface, 3 I2C-bus interfaces, 2-input plus 2-output I2S-bus interface, 8-channel 12-bit ADC, 10-bit DAC, motor control PWM, Quadrature Encoder interface, 4 general purpose timers, 6-output general purpose PWM, ultra-low power Real-Time Clock (RTC) with separate battery supply, and up to 70 general purpose I/O pins Board can be purchased from https://shop.ngxtechnologies.com/product_info.php?cPath=21&products_id=65 Following are the salient features of the board. * Dimensions: 94.08×54.48 mm2 * Two layer PCB (FR-4 material) * Power: USB powered or can be powered through the DC jack, 5-7.5V input * reset switch * Test LED * 32Khz crystal for RTC * On board 258kb I2C EERPOM * Extension headers for all microcontroller pins * USB B-type connector for powering the board *…

Continue reading

Low cost and open LPC2148 development board launched

< p style=”margin-bottom: 0in; text-align: justify;”>NGX Technologies Bangalore, has launched a very low-cost and feature rich ARM7 evaluation/educational board. The product is named ‘BlueBoard-lpc2148’ and is based on the popular LPC214X series of ARM7 microcontrollers from NXP semiconductors. BlueBoard is an open-source initiative at realizing cost effective prototyping and solutions. Driven at present, by engineering and support from NGX Technologies, the board is provided with necessary interfaces for a quick realization of embedded solutions. Developed to evaluate the LPC214x series of processors, the board acts as a perfect platform to create and test your embedded applications. More details can be found at https://code.google.com/p/blueboard-lpc214x https://shop.ngxtechnologies.com The board is attractively priced at USD 42

Continue reading

How to sprintf float numbers with AVR GCC

The float numbers are not recommended to use with smaller 8-bit AVR microcontrollers. The main reason is, that AVR core does not have a floating-point arithmetic unit built–in. The floating-point arithmetic operations are emulated by the software library. Floating-point arithmetic operations are emulated by the software library. However, in real-world applications, you may need to use numbers with floating-point. In some particular cases can get away without you declaring variables as float type. If operations are simple like division or multiplying by 2, 4, 8, they can be replaced by the byte shift operation (byte<<1)=byte*2 Of course, it depends on different situation and data you are manipulating – sometimes using floats is inevitable. If you code will fit into Program memory and execution speed is not critical then use floats or double number formats, as you like.

Continue reading

What are differences between WinARM and WinAVR

Everyone who is working with AVR microcontrollers knows this powerful tool – WinAVR which is completely open source and does the job comparable to commercial. It already has many routine tasks included in package that you don't need to worry about. So when shifting to ARM7 microcontrollers it is logical to try WinARM as nice alternative to WinAVR. WinARM tools are collected by Martin Thomas and put in one distribution package ready to use under Windows platform. But in fact these tools are very different despite there is same GCC compiler used. First of all WinAVR is targeted to one manufacturer(ATMEL) AVR microcontrollers. One core allows to robust many routine tasks as RAM, ROM defining. WinARM targets various manufacturers who produce microcontrollers with ARM core which may vary in type. The arm-gcc toolchain is also very different from avr-gcc because of different MCU core architecture, memory organisation. For example cede can be executed form ROM and RAM memory. These all flexibilities of course implies in complexity in tools. I think trickiest part of preparing project is initializing MCU. Defining has to be done before main program flow. In WinARM you have to do this by yourself – by writing startup…

Continue reading

LPC2000 watchdog timer

As in all microcontrollers watchdog timers purpose isto reset microcontroller after reasonable amount of MCU error time. If watchdog is enabled and if after some time watchdog timer doesn't reload due correct program flow, then it generates a system reset. Watchdog unit consists of four registers: WDMOD – Watchdog mode register where is watchdog mode and status saved. There are three watchdog modes available in LPC2000: Debug mode – allows to debug code with watchdog active but without WD reset; Watchdog Interrupt mode – generates interrupt when WD timer overflows; Watchdog Reset mode – reset MCU when WD timer overflows. WDTC – Watchdog timer constant register where time out value is saved. Timeout value can be determined by formula: Period=Pclk·WDTC·4. While WDTC value can be in range from 256 to 2^32, then timeout when Pclk=60MHz can vary from 17.066us to 5min. WDFEED – watchdog feed sequence register. Writing 0xAA followed by 0x55 wil reset Watchdog to WDTC value. WDTV – watchdog timer value register holds current watchdog timer value which can be read. When started watchdog timer must get regular feed sequence in order to avoid reaching zero and reset.

Continue reading

32 bit microcontrollers from ATMEL with ARM7 core

Somehow I’ve been sticked to NXP LPC2xxx series microcontrollers and left other brands behind. There are many major manufacturers of ARM microcontrollers. One of them that is worth to pay attention is Atmel with its AT91SAM7 (Smart ARM7) series. SAM7 series of microcontrollers have built in Flash memory and data memory as well. Core is powered with 1.8V while peripherals need 3.3V. Core voltage is converted inside the chip so you don’t have to bother about this and only apply stabile 3.3V voltage. SAM7 microcontrollers are based on ARM7 core so they have very good performance characteristics. SAM7 microcontrollers differ from other brands with their ability to access memory directly (DMA), so each microcontroller peripheral have distinct two channel controller. LPC series only have AMBA bridge between AHB and LHB. Main characteristics of AT91SAM7 series: very good ratio between performance and poer consumption; performance up to 60MIPS; ARM/THUM command support; 32 byte data bus; programmable external 8/16/32 byte data bus; multiple channel DMA; SPI interface – four CS(Chip Select) pins; TWI interface; Built-in RC generator and PLL; Expanded clock generator and power consumption control; 4 external clock sources; Interrupt controller with extended functions; Debugging interface; RTC with distinct interrupts; 2…

Continue reading