在线时间50 小时
UID263044
注册时间2011-2-16
NXP金币0
TA的每日心情 | 开心 2018-9-14 09:26 |
---|
签到天数: 2 天 连续签到: 1 天 [LV.1]初来乍到
高级会员

- 积分
- 952
- 最后登录
- 2021-1-4
|
我刚做了个用TFFF的中断,从波形上已经看到没什么问题,但是不知道具体细节是不是正确,所以发给大家帮我看看
//函数头文件
typedef struct
{
uint16_t pcs:6;
uint16_t res:4;
uint16_t ctcnt:1;
uint16_t eoq:1;
uint16_t ctas:3;
uint16_t cont:1;
}CMD_BIT;
typedef struct
{
uint16_t txData;
CMD_BIT cmd;
}APP_MASTER_PUSHR;
typedef union
{
uint32_t word;
APP_MASTER_PUSHR halfWord;
}PUSHR_FORMAT;
#define APP_SPI0_SEND_DATA_LEN 128
#define SPI0_SEND_DATA_LEN_8BIT 1
#define PCS0_SEL 1
#define PCS1_SEL 2
#define PCS2_SEL 4
#define PCS3_SEL 8
#define PCS4_SEL 16
#define PCS5_SEL 32
#define CLEAR_CTCNT 1
#define IS_EOQ 1
#define CTAR0_SEL 0
#define CTAR1_SEL 1
#define SPI0_SEND_WITH_DMA 1
extern void dma1_isr(void);
extern void appSpi0SendInitial(void);
extern void spi0MasterSendInitial(uint8_t dmaFlag);
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//源文件
#include "common.h"
#include "appSpi.h"
#include "HAL_eDMA.h"
const uint8_t appSendDataTable[] =
{
0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x07,0x08,0x09,0x0a,0x0b,0x0c,0x0d,0x0e,0x0f,
0x10,0x11,0x12,0x13,0x14,0x15,0x16,0x17,0x18,0x19,0x1a,0x1b,0x1c,0x1d,0x1e,0x1f,
0x20,0x21,0x22,0x23,0x24,0x25,0x26,0x27,0x28,0x29,0x2a,0x2b,0x2c,0x2d,0x2e,0x2f,
0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39,0x3a,0x3b,0x3c,0x3d,0x3e,0x3f,
0x40,0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4a,0x4b,0x4c,0x4d,0x4e,0x4f,
0x50,0x51,0x52,0x53,0x54,0x55,0x56,0x57,0x58,0x59,0x5a,0x5b,0x5c,0x5d,0x5e,0x5f,
0x60,0x61,0x62,0x63,0x64,0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,
0x70,0x71,0x72,0x73,0x74,0x75,0x76,0x77,0x78,0x79,0x7a,0x7b,0x7c,0x7d,0x7e,0x7f
};
uint8_t appSendDataCounter = 0;
uint32_t SPI0_TXFR0_buffer[4];
////////////////////////////////////////////////////////////////////////////////
PUSHR_FORMAT appSpi0SendData[APP_SPI0_SEND_DATA_LEN];
////////////////////////////////////////////////////////////////////////////////
void spi0SendDataBufferSet(void)
{
uint8_t i;
for(i=0;i
|
|