📄 hardware_proc.h
字号:
#ifndef _HARDWARE_PROC_H_
#define _HARDWARE_PROC_H_
#include <intrinsics.h>
#include "sos_types.h"
#include "iocc2431.h"
typedef uint16_t mod_header_ptr;
typedef uint16_t func_cb_ptr;
#define NOINIT_VAR __no_init
#define SOS_MODULE_HEADER __code const
//typedef void(*PGM_VOID)(void);
#define PGM_VOID uint16_t
#define HAS_CRITICAL_SECTION __istate_t oldState
#define ENTER_CRITICAL_SECTION() \
oldState = __get_interrupt_state();\
__disable_interrupt()
#define LEAVE_CRITICAL_SECTION() __set_interrupt_state(oldState)
#define sos_get_header_address(x) ((uint16_t)&x)
#define sos_read_header_ptr(base_addr,offset) sos_read_header_word(base_addr,offset)
#define pgm_read_word(address_short) sos_read_header_word((uint16_t)address_short,0)
uint16_t sos_read_header_word(uint16_t base_addr,uint16_t offset);
uint8_t sos_read_header_byte(uint16_t base_addr,uint16_t offset);
// Global interrupt enables
#define INT_GLOBAL_ENABLE(on) EA=(!!on)
#define DISABLE_ALL_INTERRUPTS() (IEN0 = IEN1 = IEN2 = 0x00)
//SOS
#define ENABLE_GLOBAL_INTERRUPTS() INT_GLOBAL_ENABLE(TRUE)
#define DISABLE_GLOBAL_INTERRUPTS() INT_GLOBAL_ENABLE(FALSE)
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -