⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 elinmint.def

📁 这个是我在microchip公司的网站下载的PIC18系列单片的一些驱动程序
💻 DEF
字号:


// main clock frequency                
#ifndef 	CLOCK_FREQ
#define 	CLOCK_FREQ                      25000000L
#endif
#define         _DIVIDE_FACTOR                  0x0AL

// USART baud-rate, from 1,000 up to 20,000

#define		ELINMINT_BAUD		        10000L

// baud rate
#define	        _BF	                        0x04L
#define         SPBRG0                          ((_DIVIDE_FACTOR*CLOCK_FREQ)/ELINMINT_BAUD)
#define         _SPBRG1                         (SPBRG0/_BF)
#define         _SPBRG2                         (_SPBRG1+5)
#define         _SPBRG3                         (_SPBRG2/_DIVIDE_FACTOR)
#define         _SPBRG4                         (_SPBRG3-2)

#define		ELINMINT_SPBRG16	        _SPBRG4
#define		ELINMINT_SPBRG		        (ELINMINT_SPBRG16&0x00FF)
#define		ELINMINT_SPBRGH		        (ELINMINT_SPBRG16>>8)

// DO NOT exceed 255 - counter is byte size
#define         ELINMINT_MAX_MESSAGE_SIZE       16
// interrupt period in usec
#define         ELINMINT_INTERRUPT_PERIOD       20L
#define         ELINMINT_RATIO                  (((ELINMINT_BAUD*ELINMINT_INTERRUPT_PERIOD)+5000L)/10000L)

#if (100/ELINMINT_RATIO)>1
        #define ELINMINT_INTERBYTE_MIN          ((((1000L/ELINMINT_RATIO)+5L)/10L)-1)
#else
        #define ELINMINT_INTERBYTE_MIN          0
#endif

#define         ELINMINT_INTERBYTE_MAX1         (((53300L/ELINMINT_RATIO)+5L)/100L)

#if ELINMINT_INTERBYTE_MAX1>1
        #define ELINMINT_INTERBYTE_MAX          ELINMINT_INTERBYTE_MAX1-1
#else
        #define ELINMINT_INTERBYTE_MAX          ELINMINT_INTERBYTE_MAX1
#endif

// the interbyte space - number of interruption delays
#define         ELINMINT_INTERBYTE_SPACE        (ELINMINT_INTERBYTE_MIN+ELINMINT_INTERBYTE_MAX)/2

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -