我正在进行新项目,应该使用微Controller。对其进行编程的最简单方法是使用并行端口。但是,我希望你能帮助我的事情很少。哦,首选语言是C和Windows平台。因此,我对LPT端口和Windows进行了一些研究,从我学到的最重要的是:由于基于WindowsNT的系统,您不能使用指令直接操作端口。这应该是,因为现在程序运行在不同的特权模式下,不支持outport()函数使用的那种指令。但在这一点上,我不明白一些事情。首先,我认为自第一个保护模式版本以来,Windows实际上使用了特权级别,但这是错误的假设。但更重要的是,我认为Windows包含了几乎所有硬件通信的功能。我的意思是,现在
我在Windows机器上的软件IAREmbeddedWorkbenchIDE中用C编写了我的一个项目。该项目编译并运行良好。我的代码中有几个printf函数。但问题是该项目适用于微ControllerAT91SAM7X256。我已成功构建我的应用程序以在微Controller的sram上运行,并且应用程序已成功加载。但是printf函数被定向到Controller的USART端口(我只能假设),所以我想重定向printf以在我的上显示文本终端输入/输出。有谁知道我该怎么做? 最佳答案 我使用IAR工具链的ARM、AVR32和MSP4
我计划在我的项目串行以太网转换器中使用PIC18F6***串行微Controller。一旦我将我的十六进制代码放入PIC微Controller以发送接收串行端口数据,我将使用Windowssuper终端并检查以太网数据Windows中是否有任何应用程序?如果我的问题不清楚,我准备好更好地解释它......请让我知道...... 最佳答案 super终端,或TeraTerm;假设这只是从TCPIP端口到串行端口的基于文本的简单交换。 关于windows-PIC18Controller作为串
我在带有.NETMicroFramework的微Controller上运行代码,我希望我的调试输出写入一个文本文件。这是如何工作的? 最佳答案 使用Trace.它旨在满足您的需求。usingSystem;usingSystem.Diagnostics;classTest{staticvoidMain(){Trace.Listeners.Add(newTextWriterTraceListener("yourlog.log"));Trace.AutoFlush=true;Trace.Indent();Trace.WriteLine("
我想用JAVA编写一个程序,它可以控制连接到连接到计算机的“某物”的LED灯。JAVA程序将由JFrame中的8个切换按钮组成。按钮编号从1到8,当按下编号X的按钮时,编号X的LED将点亮;再次单击(切换)该按钮时,该LED将关闭。与我们必须将代码加载到其中的微Controller不同,我提到的“某些东西”只是从JAVA(可能通过USB/SerialPort/...)接收信号来控制灯。例如,JAVA通过串行端口将0000_0101(打开LED1号和3号)发送到“某物”,然后“某物”将“保留”该值,直到发送新信号。值的每个数字代表“某物”上引脚的高/低,我将把引脚连接到LED。“某物”可
关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭8年前。Improvethisquestion在微Controller编程上下文中的C/C++中,如何查看全局变量使用了多少内存(不包括新的/malloc分配的数据)?
我已经看到这个主题已经在许多其他问题中进行了讨论,但我无法完全找到我的特定案例的答案。我正在使用STM32F0微Controller。SPI接收/发送FIFO的顶部可通过内存访问访问。这个特殊的微Controller允许我从FIFO的顶部读/写8位或16位。更准确地说,当执行LDRB/STRB指令时,从FIFO弹出/压入8位,当执行LDRH/STRH指令时,从FIFO弹出/压入16位。意法半导体提供的硬件抽象层提出了这种读取SPIFIFO的语法。return*(volatileuint8_t*)&_handle->Instance->DR;//Pop1bytereturn*(volat
我正在keilmicrovisionIDE中使用STM32F103Earmcortex-m3MCU开发一个项目。我需要为某些目的生成随机数,但我不想使用标准C++库生成的伪随机数,所以我需要一种方法来使用硬件功能生成真正的随机数,但我不知道如何我能行。任何的想法?(我是一名软件工程师,不是电子专业人士,所以请简单描述一下:P) 最佳答案 这是我刚遇到的一个老问题,但我想回答,因为我觉得其他答案都不令人满意。“我需要随机数来生成RSAkey。”这意味着PRNG例程(经常被错误地称为RNG,这是我的一个小毛病)是NotAcceptabl
我想编写一个仅适用于2个数字(例如3和5)的模板函数,如果您尝试将其与其他数字一起使用,则会出现错误。我可以这样做:templatevoidf();templatevoidf(){cout()\n";}templatevoidf(){cout()\n";}然后我可以用正常的方式调用这个函数:f();f();它编译得很好,如果我尝试错误地使用我的函数:f();编译器给我一个错误。这种方法有两个问题:1.-这是标准吗?我可以使用整数专门化模板吗?2.-我不喜欢使用这种方法时出现的错误,因为错误不会告诉用户他做错了什么。我更喜欢写这样的东西:templatevoidf(){static_as
如何在AVRstudio4中将unsignedchar值转换为float或double?请帮助我是初学者,我的问题听起来也很愚蠢:/就像我有一个charkeyPressed我已经使用lcd_gotoxy(0,0);lcd_puts(keyPressed);现在我想用这个值来计算一些东西..如何将其转换为float或double?请帮忙 最佳答案 例如,如果您希望字符'a'在float中显示为65.0,那么方法是unsignedcharc='a';floatf=(float)(c);//byexplicitcastingfloatfc