no-OS
Loading...
Searching...
No Matches
maxim_delay.c File Reference

MAX78000 RISC-V (CPU1) delay and time functions. More...

#include <errno.h>
#include <stdint.h>
#include "no_os_delay.h"
#include "maxim_core.h"
#include "maxim_time.h"
#include "mxc_delay.h"
#include "mxc_sys.h"
#include "tmr.h"
Include dependency graph for maxim_delay.c:

Macros

#define MAXIM_TIME_TIMER   MXC_TMR_GET_TMR(MAXIM_RISCV_TIME_TIMER)
 
#define MAXIM_TIME_FREQ   (ISO_FREQ / 64U)
 
#define MAXIM_TIME_HANDLER_(id)
 
#define MAXIM_TIME_HANDLER(id)
 

Functions

int maxim_time_init (void)
 Start the timer used as the CPU1 time base.
 
void MAXIM_IRQ_HANDLER MAXIM_TIME_HANDLER MAXIM_RISCV_TIME_TIMER (void)
 Time base timer interrupt handler.
 
void no_os_udelay (uint32_t usecs)
 Busy-wait for a number of microseconds.
 
void no_os_mdelay (uint32_t msecs)
 Busy-wait for a number of milliseconds.
 
struct no_os_time no_os_get_time (void)
 Get the time elapsed since the time base was started.
 

Detailed Description

MAX78000 RISC-V (CPU1) delay and time functions.

Author
Victor Pascu (victo.nosp@m.r.pa.nosp@m.scu@a.nosp@m.nalo.nosp@m.g.com)

Copyright 2026(c) Analog Devices, Inc.

SPDX-License-Identifier: BSD-3-Clause

Macro Definition Documentation

◆ MAXIM_TIME_FREQ

#define MAXIM_TIME_FREQ   (ISO_FREQ / 64U)

◆ MAXIM_TIME_HANDLER

#define MAXIM_TIME_HANDLER ( id)
Value:
#define MAXIM_TIME_HANDLER_(id)
Definition maxim_delay.c:22

◆ MAXIM_TIME_HANDLER_

#define MAXIM_TIME_HANDLER_ ( id)
Value:
TMR ## id ## _IRQHandler

◆ MAXIM_TIME_TIMER

#define MAXIM_TIME_TIMER   MXC_TMR_GET_TMR(MAXIM_RISCV_TIME_TIMER)

Function Documentation

◆ MAXIM_RISCV_TIME_TIMER()

void MAXIM_IRQ_HANDLER MAXIM_TIME_HANDLER MAXIM_RISCV_TIME_TIMER ( void )

Time base timer interrupt handler.

◆ maxim_time_init()

int maxim_time_init ( void )

Start the timer used as the CPU1 time base.

Reserve the configured timer for CPU1 elapsed time.

Returns
0 in case of success, -EIO if the timer could not be initialized.

◆ no_os_get_time()

struct no_os_time no_os_get_time ( void )

Get the time elapsed since the time base was started.

Get current time.

Returns
The elapsed time in seconds and microseconds.

◆ no_os_mdelay()

void no_os_mdelay ( uint32_t msecs)

Busy-wait for a number of milliseconds.

Wait until msecs milliseconds passed.

Parameters
msecs- Delay in milliseconds.

◆ no_os_udelay()

void no_os_udelay ( uint32_t usecs)

Busy-wait for a number of microseconds.

Wait until usecs microseconds passed.

Parameters
usecs- Delay in microseconds.