资源简介
用CPU的16位SPI驱动恒电流控制芯片TLE7242的源码。
代码片段和文件信息
#include “board.h“
#include “stdio.h“
/*****************************************************************************
* Private types/enumerations/variables
****************************************************************************/
//#define LPC_SSP LPC_SSP1
//#define SSP_IRQ SSP1_IRQn
//#define LPC_GPDMA_SSP_TX GPDMA_CONN_SSP1_Tx
//#define LPC_GPDMA_SSP_RX GPDMA_CONN_SSP1_Rx
#define LPC_SSP LPC_SSP0
#define SSP_IRQ SSP0_IRQn
#define LPC_GPDMA_SSP_TX GPDMA_CONN_SSP0_Tx
#define LPC_GPDMA_SSP_RX GPDMA_CONN_SSP0_Rx
#define BUFFER_SIZE (0x100)
#define SSP_DATA_BITS (SSP_BITS_16)
#define SSP_DATA_BIT_NUM(databits) (databits+1)
#define SSP_DATA_BYTES(databits) (((databits) > SSP_BITS_8) ? 2:1)
#define SSP_LO_BYTE_MSK(databits) ((SSP_DATA_BYTES(databits) > 1) ? 0xFF:(0xFF>>(8-SSP_DATA_BIT_NUM(databits))))
#define SSP_HI_BYTE_MSK(databits) ((SSP_DATA_BYTES(databits) > 1) ? (0xFF>>(16-SSP_DATA_BIT_NUM(databits))):0)
#define SSP_MODE_SEL (0x31)
#define SSP_TRANSFER_MODE_SEL (0x32)
#define SSP_MASTER_MODE_SEL (0x31)
#define SSP_SLAVE_MODE_SEL (0x32)
#define SSP_POLLING_SEL (0x31)
#define SSP_INTERRUPT_SEL (0x32)
#define SSP_DMA_SEL (0x33)
#define MSG_MSB(n) ((n&0xffff0000) >> 16)
#define MSG_LSB(n) (n&0x0000ffff)
#define MSG_WRITE (0x80000000)
#define MSG_READ (0x00000000)
#define MSG_CH0 (0<<24)
#define MSG_CH1 (1<<24)
#define MSG_CH2 (2<<24)
#define MSG_CH3 (3<<24)
#define ONOFF_ON (1<<22)
#define ONOFF_OFF (0<<22)
#define FCLK_7242 (27000000) //Hz
#define PWMDivider(Hz) ((FCLK_7242/32/Hz) & 0x3fff) //N
#define PWMSetpoint(mA) ((mA*2048*2/3200) & 0x07ff) //Setpoint
#define PWMKP(n) ((n&0x0fff)<<12) //kp
#define PWMKI(n) ((n&0x0fff)<<0) //ki
#define Threshold(mA) (PWMSetpoint(mA)<<12) //
#define MSG0_VerManu (0x00000000)
#define MSG1_MPeriod (0x04000000) //50~4K Hz
#define MSG2_PWMOffset (0x08000000)
#define MSG3_Current (0x0C000000) //
#define MSG4_DitherPeriod (0x10000000) //
#define MSG5_ControlVar (0x14000000) //
#define MSG6_ThresholdValue (0x18000000) //
#define MSG7_OnOffControl (0x1C000000) //
#define MSG8_DiagnosticConf (0x20000000) //
#define MSG9_DiagnosticRead (0x24000000) //
#define MSG10_CurrentRead (0x28000000) //
#define MSG11_AutozeroRead (0x2C000000) //
#define MSG12_DutyCycleRead (0x30000000) //
/* Tx buffer */
static uint8_t Tx_Buf[BUFFER_SIZE];
/* Rx buffer */
static uint8_t Rx_Buf[BUFFER_SIZE];
static SSP_ConfigFormat ssp_format;
static Chip_SSP_DATA_SETUP_T xf_setup;
static volatile u
- 上一篇:countlet变换,可以运行的,高手交流
- 下一篇:圣诞快乐小程序 桌面飘雪
相关资源
- Spin-1目标的广义parton分布的多项式和
- 介子和S波氘核的四极矩以及对spin-1系
- Intel(R) 82579V网卡驱动for server20033
- H310.B360.H370.Z390.USB WIN7 64位第三方驱动
- 300系列WIN7 USB驱动.7z
- 影驰GALAXY 8600GT魔灵显卡驱动 For xp/v
- XP下AHCI驱动hm55与hm76的安装
- HM77芯片组AHCI驱动 最新版
- 华硕P8H61/USB3 R2.0主板BIOS驱动 免费版
- 映泰Biostar TA870网
- RTL8188EVT USB WIFI无线网卡驱动 免费版
- asrock华擎app shop主板管理
- asus华硕 m5a97 le r2.0主板bios 官方版
- 标准pike 6480华硕SAS阵列卡驱动 官方版
- ASUS华硕K45VD|A45VD主板驱动程序 v9.3.0
- 华硕ASUS K42JZ BIOS主板驱动程序 v9.1.1
- 华硕b250主板网卡驱动 官方最新版
- ASUS华硕B85主板BIOS驱动程序 官方版
- Samsung三星R439-DS系列网卡驱动程序 v
- 索尼SONY VPCM125JC网卡驱动程序 v6.0.14
-
li
nksys AE1000/Cisco AM10无线网卡驱动 - 基于可编程的二相线阵CCD驱动电路设
- 中盈ZY50打印机驱动 v1.1 官方版
- 中盈 NX-612打印机驱动 v1.1 官方版
- 基于SPCE061A和PTR8000的模拟SPI总线通信
- 基于SPCE061A单片机的图形液晶模块的驱
- 基于SPCE061A单片机的图形液晶模块的驱
- 宏碁Acer 4741G驱动合集 for winxp 官方版
- 移动硬盘万能驱动 win7
- 大功率LED高频驱动电路设计方案
评论
共有 条评论