stm 32山外仮想オシロスコープノート

2274 ワード

// 
void UART_send_byte(u8 byte) 
{
    while(!((USART1->ISR)&(1<<7)));
    USART1->TDR=byte;    
}

void uart_putbuff(uint8_t *data,uint32_t size)
{
    uint8_t i=0;
    for(;i)
    {
        UART_send_byte(*(data+i));
    }
}

void vcan_sendware(uint8_t *wareaddr, uint32_t waresize)
{
    uint8_t cmdf[2] = {0x03, 0xfc};    //   
    uint8_t cmdr[2] = {0xfc, 0x03};    //   

    uart_putbuff(cmdf, sizeof(cmdf));    // 
    uart_putbuff(wareaddr, waresize);    // 
    uart_putbuff(cmdr, sizeof(cmdr));    // 
}

関数呼び出し
配列を定義すればuint 16_t var[3];異なるデータ型は配列定義を変更すればよく、印刷関数は変更されません.
vcan_sendware((uint8_t *)var, sizeof(var));

 
転載先:https://www.cnblogs.com/-yjx-/p/10620114.html