1//串口发送一个字节 2void UART_send_byte(u8 byte) 3{ 4 while(!((USART1->ISR)&(1<<7))); 5 USART1->TDR=byte; 6} 7 8void uart_putbuff(uint8_t *data,uint32_t size) 9{ 10 uint8_t i=0; 11 for(;i<size;i++) 12 { 13 UART_send_byte(*(data+i)); 14 } 15} 16 17void vcan_sendware(uint8_t *wareaddr, uint32_t waresize) 18{ 19 uint8_t cmdf[2] = {0x03, 0xfc}; //串口调试 使用的前命令 20 uint8_t cmdr[2] = {0xfc, 0x03}; //串口调试 使用的后命令 21 22 uart_putbuff(cmdf, sizeof(cmdf)); //先发送前命令 23 uart_putbuff(wareaddr, waresize); //发送数据 24 uart_putbuff(cmdr, sizeof(cmdr)); //发送后命令 25}
函数调用
定义一个数组即可uint16_t var[3];不同的数据类型只要改数组定义即可,打印函数不用变
vcan_sendware((uint8_t *)var, sizeof(var));