📄 spi_drv.c
字号:
/**********************************************************************************/
/* TEXAS INSTRUMENTS INCORPORATED PROPRIETARY INFORMATION */
/* */
/* Property of Texas Instruments -- For Unrestricted Internal Use Only */
/* Unauthorized reproduction and/or distribution is strictly prohibited. This */
/* product is protected under copyright law and trade secret law as an */
/* unpublished work. Created 1987, (C) Copyright 1997 Texas Instruments. All */
/* rights reserved. */
/* */
/* */
/* Filename : spi_drv.c */
/* */
/* Description : Functions to drive the SPI module. */
/* The Serial Port Interface is a bidirectional 3 lines */
/* interface dedicated to the transfer of data to and */
/* from up to 5 external devices offering a 3 lines */
/* serial interface. */
/* In this project, it is only used to connect the TI */
/* Analog BaseBand (ABB). */
/* It is assumed that the ABB is connected as the SPI */
/* device 0. */
/* */
/* This interface is specified to be compatible with */
/* the UMA1018M Philips, the FUJITSU MB15F02, the */
/* SIEMENS PMB2306T synthesizers and the TI ABB. */
/* */
/* This serial port is based on a looped shift-register */
/* thus allowing both transmit (PISO) and receive (SIPO) */
/* modes. */
/* */
/* */
/* Author : Pascal PUEL */
/* */
/* Version number : 1.0 */
/* */
/* Date and time : Dec 2002 */
/* */
/* Previous delta : Rework */
/* */
/**********************************************************************************/
#include "spi_drv.h"
/*-----------------------------------------------------------------------*/
/* SPI_InitDev() */
/* */
/* This function initializes the SPI registers for an external device */
/* connected to the serial port. */
/* */
/*-----------------------------------------------------------------------*/
void SPI_InitDev(T_SPI_DEV *Device)
{
/* Clock enable, mask ITs and pre scale setting */
* (volatile SYS_UWORD16 *) SPI_REG_SET1 = (SPI_CLK_ON | Device->PrescVal | SPI_IT_MASK_0 | SPI_IT_MASK_1);
/* Building the parameter for REG_SET2 initialization */
* (volatile SYS_UWORD16 *) SPI_REG_SET2 = (* (volatile SYS_UWORD16 *) SPI_REG_SET2) | (Device->ClkEdge | Device->TspEnLevel | Device->TspEnForm);
/* Configuring CTRL_REG : this writting erases the previous one */
* (volatile SYS_UWORD16 *) SPI_REG_CTRL = (Device->DataTrLength | Device->DevId);
/* Stop the SPI clock */
#ifdef SPI_CLK_LOW_POWER
SPI_CLK_DISABLE
#endif
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -