UartSend可以发送字节变量.usbsenddata可以吗?
我配置好uartsend ,就可以发送单字节的变量了
USB_SendData( 变量);
这样不行. .或者说有什么办法可以直接USB_SendData (变量); 吗
有啥办法可以直接不用printf 打印吗
现在看的冲哥的ai8051 视频
看到下载那里突然想到的
搞定了..哈哈哈
void SendIntViaUSB(int value) {
uint8_t buffer;// 假设int是4个字节
// 将整数转换为字节数组
buffer = (value >> 24) & 0xFF;
buffer = (value >> 16) & 0xFF;
buffer = (value >> 8) & 0xFF;
buffer = value & 0xFF;
// 发送数据
USB_SendData(buffer, 4);// 发送4个字节
}
SendIntViaUSB(dw);
可以这样 USB_SendData((uint8_t *)&value,sizeof(value));,默认小端,要是大端发送就要用你这个函数了 ercircle 发表于 2024-12-1 00:03
可以这样 USB_SendData((uint8_t *)&value,sizeof(value));,默认小端,要是大端发送就要用你这个函数了 ...
我改成这样了. 感觉和以前uartsend差不多了
void usbsend(int value) {
xdata unsigned charbuffer;
buffer = value & 0xFF;
USB_SendData(buffer, 1);
}
然后要发送int 就这样,char类型就注释掉 usbsend((dw>>8)&0xff);
usbsend((dw>>8)&0xff);
usbsend(dw&0xff); vb2002 发表于 2024-11-30 23:46
搞定了..哈哈哈
void SendIntViaUSB(int value) {
uint8_t buffer;// 假设int是4个字节
可以的,这样就是数字了,还可以每个字节或上0x30,转换成字符,用ASCII文本模式显示,再加上0x0D 0x0A回车换行 DebugLab 发表于 2024-12-1 10:47
可以的,这样就是数字了,还可以每个字节或上0x30,转换成字符,用ASCII文本模式显示,再加上0x0D 0x0A回 ...
这个是我现在的代码~
如果加上您说的ASCII码的话,加在哪里哦?
转换以后,我用usbsend 发送的就是10进制了是吗?
void usbsend(int value) {
xdata unsigned charbuffer;// 1个字节
buffer = value & 0xFF;
USB_SendData(buffer, 1);// 发送1个字节
}
usbsend((zg>>8)&0xff); //发送int
usbsend(zg&0xff); //发送int
usbsend(dw ); //发送char
页:
[1]