相关疑难解决方法(0)

如何在C#中使用SerialPort端口对象的dataReceived事件?

我正在尝试创建一个小应用程序来收集从连接到COM10的外部传感器接收的数据.我已成功创建了一个小型C#控制台对象和应用程序,它使用for循环打开端口并将数据流传输到文件一段固定的时间.

我想转换此应用程序以使用dataReceived事件来代替流.阅读前5个SerialPort提示后,我似乎仍然无法工作,也不知道我缺少什么.我重写了控制台应用程序,以便所有代码都在Main中并粘贴在下面.有人可以帮助启发我,为什么事件处理程序port_OnReceiveDatazz没有被调用,即使我知道硬件有数据被发送到端口?

谢谢

阿齐姆

PS:感谢@Gabe,@ Jason Down@abatishchev的所有建议.我很难过,似乎无法让事件处理程序工作.也许它与设备有关.我只能在线程中读取端口并将数据直接传输到文件中.



namespace serialPortCollection
{   class Program
    {
        static void Main(string[] args)
        {

            const int bufSize = 2048;
            Byte[] buf = new Byte[bufSize]; //To store the received data.

            SerialPort sp = new SerialPort("COM10", 115200);
            sp.DataReceived += port_OnReceiveDatazz; // Add DataReceived Event Handler

            sp.Open();
            sp.WriteLine("$"); //Command to start Data Stream

            // Wait for data or user input to continue.
            Console.ReadLine();

            sp.WriteLine("!"); //Stop Data Stream Command
            sp.Close();
        } …
Run Code Online (Sandbox Code Playgroud)

c# serial-port

19
推荐指数
2
解决办法
11万
查看次数

EOF 如何在 C 内部工作?

我是 C 新手,抱歉,如果我的问题听起来很愚蠢,我们知道这EOF是一个等于 -1 的常量,所以假设我创建了一个新的文本文件,然后输入了类似的内容abcd,然后,然后保存该文件。我的问题是:

Q1-文本编辑器追加EOF到文件的内容为abcd-1,是否正确?

Q2-如果文件的内容是 会发生什么ab-1cd?那么库读取功能是不是会认为文件的内容是ab并忽略其余内容?

c

3
推荐指数
1
解决办法
53
查看次数

常见的误解:文件末尾有一个EOF字符

我正在阅读"卡特的PC汇编语言",我在第32页的脚注中看到了这句话,这让我很困惑!
如果我们假设文件末尾可能没有EOF(正如书中所说)是正确的陈述,那么我们如何才能找出文件末尾的位置?
并且还出现了另一个问题:fseek是否使用EOF在文件中来回传递?

c file eof

2
推荐指数
2
解决办法
3364
查看次数

标签 统计

c ×2

c# ×1

eof ×1

file ×1

serial-port ×1