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

📄 lpradio.inc

📁 Cypress公司开发的2.4G无线键盘鼠标及其Bridge源代码
💻 INC
字号:
;--------------------------------------------------------------------------
;
;  Filename:     lpRadio.inc
;
;  Description:  Include file which defines the macros for the LP radio 
;                driver.
;
;--------------------------------------------------------------------------
; WirelessUSB LP Radio Driver Version 1.1
;--------------------------------------------------------------------------
;
; Copyright 2005-2006, Cypress Semiconductor Corporation.
;
; This software is owned by Cypress Semiconductor Corporation (Cypress)
; and is protected by and subject to worldwide patent protection (United
; States and foreign), United States copyright laws and international
; treaty provisions. Cypress hereby grants to licensee a personal,
; non-exclusive, non-transferable license to copy, use, modify, create
; derivative works of, and compile the Cypress Source Code and derivative
; works for the sole purpose of creating custom software in support of
; licensee product to be used only in conjunction with a Cypress integrated
; circuit as specified in the applicable agreement. Any reproduction,
; modification, translation, compilation, or representation of this
; software except as specified above is prohibited without the express
; written permission of Cypress.
;
; Disclaimer: CYPRESS MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
; WITH REGARD TO THIS MATERIAL, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
; WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
; Cypress reserves the right to make changes without further notice to the
; materials described herein. Cypress does not assume any liability arising
; out of the application or use of any product or circuit described herein.
; Cypress does not authorize its products for use as critical components in
; life-support systems where a malfunction or failure may reasonably be
; expected to result in significant injury to the user. The inclusion of
; Cypress' product in a life-support systems application implies that the
; manufacturer assumes all risk of such use and in doing so indemnifies
; Cypress against all charges.
;
; Use may be limited by and subject to the applicable Cypress software
; license agreement.
;
;--------------------------------------------------------------------------


;-----------------------------------------------------------------------------
;
; LP_SPI selects whether a PSOC or EnCoReII/PRoC-LP SPI module is used
;
;-----------------------------------------------------------------------------
                        
;LP_SPI:       EQU     1    ; 1 = PSoC SPI
LP_SPI:      EQU     0    ; 0 = enCoRe II or PRoC-LP SPI



;-----------------------------------------------------------------------------
;
; THREE_WIRE_SPI selects whether 3 or 4 wire SPI interface is used
;
;-----------------------------------------------------------------------------
THREE_WIRE_SPI: EQU     0


;-----------------------------------------------------------------------------
;
; MUXED_IRQ selects whether MOSI is multiplexed with Radio's IRQ output
;
;-----------------------------------------------------------------------------
MUXED_IRQ:      EQU     0

IF (MUXED_IRQ)
LP_IRQ_MASK:	EQU		SPIM_Radio_MOSI_MASK
ENDIF


;-----------------------------------------------------------------------------
;
; NOTES ON THE PSoC LARGE MEMORY MODEL (LMM) .vs. SMALL MEMORY MODEL (SMM)
;
; The file <memory.inc> indicates whether LMM or SMM is used.
; LMM is available for devices with more than 256 Bytes of RAM and the 
;  (Project,Settings,Compiler,Enable paging) box is checked in PSoC Designer.
;  Checking the Enable paging box sets SYSTEM_LARGE_MEMORY_MODEL: equ 1
;  in <memory.inc>.
;
; When using the Small Memory Model, the macros in <memory.inc> reduce to
;  nothing, and the resulting LMM paging overhead in Radio Driver disappears.
;
; Using the LMM imposes certain assumptions on the user's application.  See
;  Cypress AN2218 for details, a "summary" is below, but please obtain and 
;  understand AN2218 before proceeding.
;
; 1) All internal radio driver variables are placed on Page 0.
; 2) Rx and Tx bulk data buffers may be placed on any Page.
; 3) Radio driver exit w/Page Mode bits UNCHANGED or set to NATIVE_PAGING
; 4) Radio driver exits with only STK_PP preserved, except for ISR exit.
;
; This is consistent with the ImageCraft compiler, however calls from 
;  assembly need to handle possible loss of Page Pointers and Page Mode 
;  changes to NATIVE_PAGING.
;
;-----------------------------------------------------------------------------

;=============================================================================
;=============================================================================
;=============================================================================
;
;
; EVERYTHING beyond this point is NOT NORMALLY CHANGED BY USERS
;
;
;=============================================================================
;=============================================================================
;=============================================================================

  IF (LP_SPI)
  ELSE ; enCoRe2        ; -------------------------------------------------
LP_IRQ_Data_ADDR:   equ     PRT1DR      ; LP IRQ is on Port1 
LP_nSS_Data_ADDR:   equ     PRT1DR      ; LP nSS is on Port1 
  ENDIF                 ; -------------------------------------------------

CPU_F:  EQU     0xF7

; LP SPI Interface definitions:
;
mSPI_ADDRESS:      EQU      03Fh
bSPI_WRITE:        EQU      080h
bSPI_AUTO_INC:     EQU      040h
                                               
;
; RADIO_STATE definitions:
;
RADIO_IDLE:        EQU  00h
RADIO_RX:          EQU  80h
RADIO_TX:          EQU  20h
RADIO_SOP:         EQU  SOFDET_IRQ
RADIO_DATA:        EQU  RXB1_IRQ
RADIO_COMPLETE:    EQU  RXC_IRQ         ; Code assumes these two bits are BOTH
RADIO_ERROR:       EQU  RXE_IRQ         ;  in the RX_CTRL_ADR register.

//
// Return value for a RadioAbort completed successfully. Otherwise the return value
//  is the length of the packet received (without error).
//
RADIO_ABORT_SUCCESS: EQU    0xFF

; ############################################################################
; END OF lpRadio.inc
; ############################################################################

⌨️ 快捷键说明

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