Potrebna mi je pomoc oko razjasnjavanja koda i treba na displeju da isprogramiram sat koji je pokazivati vreme a sve ovo se radi u IAR WORKBANCHU, KOD JE SLEDECI:
#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;
}
Ja sam ovaj kod skinuo sa neta gotov, kada prikljucim plocu na racunar i pokrenem IAR on mi ne javlja greske medjutim nista mi ne pokazuje na displeju, da li je potrebna jos neka f-ja dodatna za ispis ili kombinacija sa ovim kodom kod LCD DEMO?????
UNAPRED ZAHVALAN
#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;
}
Ja sam ovaj kod skinuo sa neta gotov, kada prikljucim plocu na racunar i pokrenem IAR on mi ne javlja greske medjutim nista mi ne pokazuje na displeju, da li je potrebna jos neka f-ja dodatna za ispis ili kombinacija sa ovim kodom kod LCD DEMO?????
UNAPRED ZAHVALAN