求助:各位大哥帮我看看这个问题(字符格式问题)

MJXQJ888 2008-07-19 11:22:17
请教:
是这样的,我买了个串口打印机,只要串口里发数据
打印机就可以打印了

我在串口调试软件里发送
41 0d
41 和 0d 之间是有空格的,并且是按 16 进制发送的
这样打印机就可以打印 字符 A
16 进制 的 41 的 ASCII 是 A

现在我要用程序来打印

类:
DWORD Write(LPVOID Buffer, DWORD dwBufferLength)
{
if(!IsOpen())
return 0;

DWORD dwError;

if(::ClearCommError(_hCommHandle, &dwError, NULL) && dwError > 0)
::PurgeComm(_hCommHandle, PURGE_TXABORT | PURGE_TXCLEAR);

unsigned long uWriteLength = 0;

if(!::WriteFile(_hCommHandle, Buffer, dwBufferLength, &uWriteLength, &_WriteOverlapped))
if(::GetLastError() != ERROR_IO_PENDING)
uWriteLength = 0;

return uWriteLength;
}
//写串口 写ANSI C 模式字符串指针

DWORD Write(const char *szBuffer)
{
assert(szBuffer);

return Write((void *)szBuffer, strlen(szBuffer));
}



我在程序中写
com1.Write(0x410x5f0x0d);

可是打印机没有一点反应

各位大哥,我是错在哪里啊?
我应该怎么写?

谢谢!
...全文
88 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
9527他大爷 2008-07-19
  • 打赏
  • 举报
回复
当然是这样了,\x41是16进制41是字符'A',\x5f 是字符'_',\x0d是字符'\r'当然打印出来就是A_ 了,后面的'\r'不可见
你都传的这个过去不打印这个还打印什么??楼主有问题时自己学会调试吧
MJXQJ888 2008-07-19
  • 打赏
  • 举报
回复
com1.Write("\x41\x5f\x0d");

com1.Write("\x41\x5f\x0d\x00");

都是 A_ 啊

MJXQJ888 2008-07-19
  • 打赏
  • 举报
回复
0x410x5f0x0d这个不能这样写吧,相当于write(aaa)这种形式(类型未知),那么程序解析的时候uWriteLength肯定为0(程序识别不了,没转换成char *),打印机怎么会打印呢

那要怎么写啊?
谢谢!
MJXQJ888 2008-07-19
  • 打赏
  • 举报
回复
太感谢了
大哥
现在还是有点问题
打印出来的是
A_

这是什么原因?
feilinhe 2008-07-19
  • 打赏
  • 举报
回复
0x410x5f0x0d这个不能这样写吧,相当于write(aaa)这种形式(类型未知),那么程序解析的时候uWriteLength肯定为0(程序识别不了,没转换成char *),打印机怎么会打印呢
greatws 2008-07-19
  • 打赏
  • 举报
回复
还有个strlen(szBuffer),你字符串要以\0结束

com1.Write("\x41\x5f\x0d\x00");
greatws 2008-07-19
  • 打赏
  • 举报
回复
不太明白


com1.Write("\x41\x5f\x0d");

难道这样?
greatws 2008-07-19
  • 打赏
  • 举报
回复
你要打印什么内容啊?
内容概要:本文围绕可变桨叶四旋翼无人机的规范控制与点对点运动模拟展开,重点研究优化推力分配策略在翻转动作中的应用与性能比较。通过Matlab代码实现,构建了四旋翼动力学模型,并设计了多种控制算法以实现精确的姿态调整与轨迹跟踪。研究对比了不同推力分配方案在执行高机动性翻转动作时的稳定性、能耗效率与响应速度,旨在提升无人机在复杂飞行任务中的动态性能与控制精度。该仿真研究为无人机飞控系统的设计与优化提供了理论依据和技术支持。; 适合人群:具备一定自动控制理论基础和Matlab编程能力,从事无人机控制、飞行器动力学或机器人系统研究的科研人员及研究生。; 使用场景及目标:① 实现四旋翼无人机在三维空间中的精确点对点运动控制;② 对比分析不同推力分配策略在执行翻转等高难度动作时的控制效果与能耗表现,优化飞行性能;③ 为无人机自主飞行、特技飞行及复杂环境下的机动控制提供算法验证平台。; 阅读建议:此资源以Matlab仿真为核心,建议读者结合相关控制理论知识,深入理解代码实现细节,重点关注动力学建模、控制律设计与推力分配模块。在学习过程中,应动手调试参数,复现文中翻转动作的仿真结果,并尝试拓展至其他复杂飞行任务,以加深对无人机控制机理的理解。

16,551

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧