SparkFun Forums 

Where electronics enthusiasts find answers.

Everything ARM and LPC
By alexan_e
#141859
ARMwizard updated to version 2.1 , added SPI/SSP settings

What is new:

• Fixed: There were cases where the CCR1.0 checkboxes were not shown for PWM
• Fixed: The PCLK divider range was 1/1 - 1/8 instead of 1/1 - 1/31 for LPC177x/8x
• Fixed: The PWM power control bits (PCONP) were not set to turn on the peripheral in LPC177x/8x
• Fixed: The ADC1 power control bits (PCONP) were not set to turn on the peripheral in LPC2134/36/38
• Fixed: There was an erron in the name of the included header for LPC2141
• Fixed: In LPC175x/6x the right click on the pull up/down triangle didn't change the mode correctly (from up<->down)
• Added: All edit box values can now be increased/decreased using the up/down arrow keys (like spin edits)
• Added: For desktops with vertical resolution lower than 660 the ARMwizard form is reduced to 550px and a scrollbar is shown
• Added: SPI/SSP settings for all the included mcu models
• Added: Set the power control bits (PCONP) to enable every used peripheral even if the default setting after reset is on


Visit http://alexan.edaboard.eu

Best regards
Alex
By alexan_e
#143706
ARMwizard updated to version 2.2

• Fixed: The GPDMA power control bit (PCONP) was not set to turn on the peripheral in LPC23xx/24xx/17xx
• Fixed: The IOCON, GPIO, GPIO interrupts power control bit (PCONP) was not set to turn on the peripheral in LPC17xx
• Fixed: The ADC clocks comment for each conversion in cortex MCU was always 60 instead of 65 or 31 in 17xx (calculation was correct)
• Fixed: The ADC calculate from samples/sec option didn't give correct results when a bit accuracy lower that 10bit/11clk was selected.
• Fixed: Some Processor Exception interrupt handler names in LPC17xx were not correct (NonMaskableInt, MemoryManagement, SVCall, DebugMonitor).
• Fixed: Changed several register names in LPc177x/8x models to match the names used in the latest CMSIS file (2011-03-03) included in Uvision v4.5
Code: Select all
   *******************************************************************
   *  OLD NAME                       *      NEW NAME                 *
   *******************************************************************
   * KFLASH_IRQn                     *  EEPROM_IRQn                  *
   * KFLASH_IRQHandler               *  EEPROM_IRQHandler            *
   * LPC_IOCON->Px_00...Px_09        *  LPC_IOCON->Px_0...Px_9       *
   * LPC_USB->USBDevIntClr           *  LPC_USB->DevIntClr           *
   * LPC_USB->USBEpIntClr            *  LPC_USB->EpIntClr            *
   * LPC_USB->USBDMARClr             *  LPC_USB->DMARClr             *
   * LPC_USB->USBEoTIntClr           *  LPC_USB->EoTIntClr           *
   * LPC_USB->LPC_USB->USBNDDRIntClr *  LPC_USB->NDDRIntClr          *
   * LPC_USB->USBSysErrIntClr        *  LPC_USB->SysErrIntClr        *
   * LPC_USB->OTGIntClr              *  LPC_USB->IntClr              *
   * LPC_EEPROM->INTSTATCLR	       *  LPC_EEPROM->INT_CLR_STATUS   *
   *******************************************************************
• Added: Interrupt description for the interrupt selected in the drop down list (CORTEX mcu).
• Added: The application form can now be resized because there were some problems in W7 with fonts set to 125%
• Added: Replace name functionality, in order to make the generated code compatible with register name changes in the mcu headers
• Changed: All the interrupt clear values have been changed from absolute values to a (1UL<<x) format for easier reading

Visit http://alexan.edaboard.eu

Best regards
Alex
By alexan_e
#143904
What is new in v2.2.2

• Fixed: The drop down list contents in several peripheral settings were empty so the peripherals couldn't be set properly (EINT, ADC, Timer, PWM, SPI, SSP).


What is new in v2.2.1

• Fixed: The replace list was saved even when the cancel button was clicked in the "save as" dialog.
• Added: A swap button that can invert the list content, it swaps the old with the new values
• Added: Button to apply the replace operation to an external file


Visit http://alexan.edaboard.eu

Best regards
Alex
By alexan_e
#144766
ARMwizard has been updated to version 3.0

I'm very excited about this new version, I have added several new models that many of you have been asking.
I have also added the pinout images of the new models for quick reference (showMCU button).
If you are using the LPC11xx or LPC12xx then you have to wait a little longer, they will be added soon.

Please note that according to the NXP user manual the reserved bits 7:6 of IOCON have a reset value of 0 for the I2C pins (P0.4 and P0.5) in LPC1311/13/42/43 (this is also the case in the 11xx manual but not the 1315 or 11Uxx).
Bit7 is responsible for setting the analog/digital mode of the pin even when reserved and this is why the value of bit7 is 1 in every other pin of the mcu so it doesn't make sense to make an exception and have a value of 0 in a digital I2C pin.
I have asked the NXP support and they replied that the value is 0 as the manual says but I still doubt the answer and I believe it was based on the user manual without further thought.
After a discussion in the LPC2000 forum I have concluded that the values mentioned in the user manual are wrong so note than in the application I set the value of b7:6 to 1.
If you have an LPC1311/13/42/43 and after testing you think that the value I use is wrong please email me.


What is new in v3.0

v3.0.0
Code: Select all
• Fixed: In LPC177x/8x bit7 value in the IOCON register of pins P0.7, P0.8, P0,9 should be 1 and not 0
• Added: Group GPIO and EDGE/LEVEL PIN GPIO for LPC13xx, LPC11xx
• Added profiles for LPC11Uxx_(33p)        LPC11U12/14/24/34/35
• Added profiles for LPC11Uxx_(48p_QFP)        LPC11U12/13/14/23/24/34/35/36/37
• Added profiles for LPC11Uxx_(48p_BGA)        LPC11U14/24/35
• Added profiles for LPC11Uxx_(64p)        LPC11U24/35/36/37
• Added profiles for LPC1311/13/42/43         33pin, 48pin
• Added profiles for LPC1315/16/17/45/46/47    33pin, 48pin, 64pin
• Added profiles for LPC1776/78/86/88        144pin, 180pin
Visit http://alexan.edaboard.eu

Best regards
Alex
By alexan_e
#145018
ARMwizard updated to v3.1.0
Code: Select all
• Fixed: The max operating frequency for the ADC peripheral in LPC175x/6x was 14MHz instead of 13MHz [nxp41306 in LPCware.com]
• Fixed: In the interrupt initalization of Cortex M0 the priority setting is now placed before enabling the interrupt.
• Fixed: The Interrupt priority comment was wrong, the priority level for CortexM0 is 0(highest) to 3(lowest).
• Added profiles for LPC11xx_(33p)		LPC11xx33/101, LPC11xx33/201, LPC11xx33/301 (33 pin)
• Added profiles for LPC11xx_(48p)		LPC11xx48/101, LPC11xx48/201, LPC11xx48/301 (48 pin)
• Added profiles for LPC11Lxx_(33p)		LPC11xx33/102, LPC11xx33/202, LPC11xx33/302 (33 pin)
• Added profiles for LPC11Lxx_(48p)		LPC11xx48/102, LPC11xx48/202, LPC11xx48/302 (48 pin)
• Added profiles for LPC11XLxx_(33p)		LPC11xx33/103, LPC11xx33/203, LPC11xx33/303, LPC11xx33/323, LPC11xx33/333 (33 pin)	
• Added profiles for LPC11XLxx_(48p)		LPC11xx48/103, LPC11xx48/203, LPC11xx48/303, LPC11xx48/323, LPC11xx48/333 (48 pin)     	
• Added profiles for LPC11C12_14_(48p)		LPC11C12, LPC11C14 (48 pin)
• Added profiles for LPC11C22_24_(48p)		LPC11C22, LPC11C24 (48 pin)
• Added profiles for LPC11Exx_(33p)		LPC11E11, LPC11E14 (33 pin)
• Added profiles for LPC11Exx_(48p)		LPC11E12, LPC11E13, LPC11E14 (48 pin)
• Added profiles for LPC11Exx_(64p)		LPC11E14 (64 pin)
• Added profile for mbed LPC11U24 board (LPC11U24_MBED) including an image with the board pinout.The Led pins (0.8, 0.9, 0.10, 0.11) are set as output only and the two UART pins (0.18, 0.19) connected internally to the USB uart emulator
are inputs with only the uart alternative function available. I have also removed the OD, HYS, INV and pull up/down modes from these pins.
Visit http://alexan.edaboard.eu

Best regards
Alex
By Dejan tf
#150566
I need help with clarifying the code and should be on display to program the clock to show the time and all of this is done in IAR WORKBANCHU, the code is the following:
#include <nxp/iolpc1768.h>
#include "type.h"
#include "irq.h"
#include "target.h"
#include "rtc.h"

extern volatile DWORD alarm_on;
RTCTime local_time, alarm_time, current_time;

Main Function main()

int main (void)
{
TargetResetInit();

/* Initialize RTC module */
RTCInit();

local_time.RTC_Sec = 0;
local_time.RTC_Min = 0;
local_time.RTC_Hour = 0;
local_time.RTC_Mday = 8;
local_time.RTC_Wday = 3;
local_time.RTC_Yday = 12; /* current date 07/12/2006 */
local_time.RTC_Mon = 07;
local_time.RTC_Year = 2006;
RTCSetTime( local_time ); /* Set local time */

alarm_time.RTC_Sec = 0;
alarm_time.RTC_Min = 0;
alarm_time.RTC_Hour = 0;
alarm_time.RTC_Mday = 1;
alarm_time.RTC_Wday = 0;
alarm_time.RTC_Yday = 1; /* alarm date 01/01/2007 */
alarm_time.RTC_Mon = 1;
alarm_time.RTC_Year = 2007;
RTCSetAlarm( alarm_time ); /* set alarm time */

/* install RTC timer handler mainly for alarm control */
NVIC_IntEnable(NVIC_RTC);
NVIC_IntPri(NVIC_RTC,HIGHEST_PRIORITY);

/* mask off alarm mask, turn on IMYEAR in the counter increment interrupt
register */
RTCSetAlarmMask(AMRSEC|AMRMIN|AMRHOUR|AMRDOM|AMRDOW|AMRDOY|AMRMON|AMRYEAR);
RTCCIIR = IMMIN | IMYEAR;
/* 2007/01/01/00:00:00 is the alarm on */

RTCStart();

while (1)
{ /* Loop forever */
current_time = RTCGetTime();
if ( alarm_on != 0 )
{
alarm_on = 0;
/* Get current time when alarm is on */
current_time = RTCGetTime();
}


}
return 0;
}

We need to make sure that the function is to be printed on time displey Can someone help me, it's urgent. Great Dejan pozz