spi一个标准流程

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
uint8_t cmd[10] = {0x55, 0x00, 0xB0, 0x99, 0x00, 0x00, 0x02, 0x00, 0x08, 0x00};
    cmd[9] = getLRCx(&cmd[1], 8);
    char sendbuf[10];
    char recvbuf[10];
 
    memcpy(sendbuf, cmd, 10);
 
    // vSetSSN(0);
//   vSetMOSI(1);
//    vSetMISO(1);
    //vSetSCK(1);
 
    vSetSSN(0);
    vTaskDelay(pdMS_TO_TICKS(100));
    spi_transaction_t recv;
    memset(&recv, 0, sizeof(recv));
    recv.length = 10 * 8;
    recv.rxlength = 10 * 8;
    recv.rx_buffer = recvbuf;
    esp_err_t ret = spi_device_polling_transmit(dev._SPIHandle, &recv);
     
    spi_transaction_t SPITransaction;
    memset(&SPITransaction, 0, sizeof(spi_transaction_t));
    SPITransaction.length = 10 * 8;
    SPITransaction.tx_buffer = sendbuf;
    SPITransaction.rx_buffer = recvbuf;
    ret = spi_device_transmit(dev._SPIHandle, &SPITransaction);
    assert(ret == ESP_OK);
    vTaskDelay(pdMS_TO_TICKS(5));
    //  vTaskDelay(100);
    vSetSSN(1);
    vTaskDelay(pdMS_TO_TICKS(10));
    vSetSSN(0);
    vTaskDelay(pdMS_TO_TICKS(100));
    if (_DEBUG_)
        ESP_LOGI(TAG, "W25Q64_readStatusReg2=%x %x %x", recvbuf[0], recvbuf[1], recvbuf[2]);
 
    uint8_t cmd2[1] = {};
    char sendbuf2[1];
    char recvbuf2[100];
    memcpy(sendbuf2, cmd2, 1);
  
    spi_transaction_t SPITransaction2;
    memset(&SPITransaction2, 0, sizeof(spi_transaction_t));
    SPITransaction2.length = 1 * 8;
    SPITransaction2.tx_buffer = sendbuf2;
    SPITransaction2.rx_buffer = recvbuf2;
    ret = spi_device_transmit(dev._SPIHandle, &SPITransaction2);
    assert(ret == ESP_OK);
    if (_DEBUG_)
        ESP_LOGI(TAG, "W25Q64_readStatusReg2=%x %x %x", recvbuf2[0], recvbuf2[1], recvbuf2[2]);

  

posted on   lydstory  阅读(169)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2020-09-06 mylocale
2020-09-06 物证比对
2019-09-06 判断Xen虚拟机随想
2019-09-06 安全工具箱
2019-09-06 安全sysmon

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示