This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC3000 data sheet? low end peek/poke?

As I'm a Assembler programmer and those C examples looks like spaghetti to me.

Is there a CC3000 data sheet So I can start writing my own API that would let me do a simple UDP transfer with a lowend MSP430G2xxx
A tcp stack requires a lot of ram and we don’t have that, so UDP only and just a few bytes.

 

 

 

  •  Hi Tony,

    The beautiful thing in CC3000 is that you don't need to worry about the stack size, as the entire network stack is embedded in the device.

    Please refer to our wiki for more information, including programmers guide and API description.

    Thanks,
    Alon.S

  • I'm using 16bit spi mode (mov.b #16+USI16B,&USICNT) to transfer 2 bytes at a time.
    To test it how would I send the commands to read the MAC address?
    This is just a raw test, final version will have buffers, bufflght and memory pointers etc

    Unless I want to scour c codes h files, were is the data sheet to send something?

                bis.b   #1<<4,&P1OUT            ; P1.4 Enable high = enable                     
    wait1       bit.b   #1<<2,&P1IN             ; wait until IRQ low= now ready
                jnz     wait1   
                bic.b   #1<<3,&P1OUT            ; P1.3 nSelect as low = enable
                call    #wait50              

                mov.w   #0x0100,R15             ; write opcode + MMSB=0
                call    #sendSPI

                mov.w   #0x0500,R15             ; MLSB=5 + busy1
                call    #sendSPI

                call    #wait50         

                mov.w   #0x0010,R15             ; busy2 + data1=10h
                call    #sendSPI
                mov.w   #0x2030,R15             ; data2=20h + data3=30h
                call    #sendSPI
                mov.w   #0x4000,R15             ; data4=40h + data5=00h(padding)
                call    #sendSPI           

                bis.b   #1<<3,&P1OUT            ; P1.3 nSelect as high = completed
    wait2       bit.b   #1<<2,&P1IN             ; wait until IRQ low= now ready
                jnz     wait2 
                bic.b   #1<<3,&P1OUT            ; P1.3 nSelect as low= enable                 

                mov.w   #0x0300,R15             ; read opcode + busy1
                call    #sendSPI
                mov.w   #0x0000,R15             ; busy2 + busy3
                call    #sendSPI
                mov.w   &USISR,0(R12)           ; copy result to buffer
                mov.w   #0x0000,R15             ; busy4 + padding
                call    #sendSPI
                mov.w   &USISR,2(R12)           ; copy result to buffer
                bis.b   #1<<3,&P1OUT            ; P1.3 nSelect as high = completed

  • Hi Tony,

    Please refer to our programmer guide for such details: http://processors.wiki.ti.com/index.php/CC3000_Host_Programming_Guide

    Thanks,
    Alon.S

  • Was no SDK ever written for the CC3000?, I don't plan to use any library as everything will be one asm source file.
    As you have API/HCI/SPI hearders on top of each other to complicate things.

    If you looked at the string of raw hex for example to read MAC number?
    I assume 0x81, 0x0201 and 06 would fit in somewhere.

    #define HCI_CMND_SEND    (0x81)
    #define HCI_CMND_NVMEM_READ    (0x0201)
    #define NVMEM_MAC_FILEID (6)