test
Dependencies: SimpleDMA mbed-rtos mbed
Fork of spiDMAtest by
main.cpp
00001 #include "mbed.h" 00002 #include "SimpleDMA.h" 00003 #include "dmaSPIslave.h" 00004 00005 #define PAYLOAD_LENGTH 1024 00006 00007 dmaSPISlave spi(PTD6, PTD7, PTD5,PTD4 ); 00008 RawSerial pc(USBTX, USBRX); 00009 //DigitalOut ledg(LED_GREEN); 00010 00011 bool flag = false; 00012 00013 void do_this(void){ 00014 flag = true; 00015 } 00016 00017 int main(){ 00018 pc.baud(9600); 00019 pc.printf("inside main\r\n"); 00020 spi.format(8,0); 00021 spi.frequency(10000000); 00022 00023 uint8_t buffer[PAYLOAD_LENGTH] = {0}; 00024 pc.printf("welcome to dma test, start sending data now\r\n"); 00025 00026 // initialise the buffer for dma 00027 spi.bulkRead_init(buffer, PAYLOAD_LENGTH, &do_this); 00028 // start dma read 00029 spi.bulkRead_start(); 00030 00031 while(true){ 00032 if(flag){ 00033 flag = false; 00034 //ledg = !ledg; 00035 00036 00037 for(int i = 0 ; i < PAYLOAD_LENGTH ; ++i){ 00038 pc.printf("data %d %d \r\n",i, buffer[i]); } 00039 pc.printf("\r\n"); 00040 00041 //start dma again after handling the data 00042 spi.bulkRead_start(); 00043 } 00044 } 00045 00046 }
Generated on Tue Jul 12 2022 23:07:42 by 1.7.2