这很简单.
我想把一盏灯插入英国主电源.
我希望能够通过软件打开和关闭它 - 比如从串口命令,或者通过运行命令行或者我可以从ruby或Java获得的东西.
我看到很多关于如何使用美国电力系统的X10做到这一点 - 但是有没有人真的试过在英国这样做?
如果你有这个工作:
1)你使用的是什么硬件?
2)你如何从软件中控制它?
谢谢!
我想开始FPGA编程.我对FPGA的工作原理一无所知.我想得到一个开发板,不是太贵,但它应该有至少40个I/O引脚.任何高达300美元的东西都可以.
我决定要用Verilog编程.我不确定以下内容:
我编译的"程序"将如何存储在芯片上?我猜这个芯片有一些EEPROM来保存我的程序,但从我读过的,它显然存储在RAM中.我希望我的程序每次启动时都保留在芯片上(或以某种方式加载).
我可以为生产购买单独的FPGA芯片(不是整个开发板)吗?如果是,我如何将我的程序上传到单独的芯片?它是否以某种方式连接到开发板?
这是一个理论上的问题,我真的没有经营任何工厂或任何东西;-)
对于小N,N-by-N乘法器可以实现为深度log(N)和N ^ 2门的3到2加法器的树 - 让我们忽略Booth编码等.这是超快的,但是需要不合理的硬件数量.
这个门数很快就会变得不合理(以及接线).但是kN-by-kN通过k ^ 2 2N位部分产品的软件乘法并将它们加在一起将会非常缓慢.
我的问题是 - 在N ^ 2门变得太多(用于门和布线)之后,我们对中等N的非常快速的硬件辅助乘法有什么权衡,但我们仍然希望比纯软件更好.
我可以想象这会出现很多自定义加密芯片,但我只是好奇.
我正在创建一个网络服务,旨在模拟电子电路的工作方式.该项目尚未进入Alpha阶段.
我坚持项目的一个重要里程碑:当一个人尝试将一个组件的引脚连接到另一个引脚时 - 应该构建连接线.
首先,连接线只是一条直线,几乎没有任何改变它的方法.

然后它变得有点弯曲,有可能添加,移动和删除点,这决定了线是如何弯曲的.

现在它(连接线)是使用A*算法创建的.

实现还不是很好,因此编辑A*生成的连接线并不是一个好主意,因为它失败了很多.
连接线创建算法的想法如下:
确定起始和结束点
找到start和end之间的路径,它不会与任何现有组件的边界框重叠
创建一组基点 - 一个坐标列表,从步骤#2 开始 + 从堆尾处开始 + 尾部
创建一组将形成连接线的线:
for (var i = 1; i < points.length; i++) {
var p0 = points[i - 1], p1 = points[i],
line = MooChip.paper.path(Raphael.format('M%1,%2L%3,%4', p0.x, p0.y, p1.x, p1.y));
}
Run Code Online (Sandbox Code Playgroud)问题是,连接线可以重叠,而他们只能相交......嗯,其实还有另外一个问题:我不能想象一个如何执行连接线连接,喜欢这里,左下图:

问题是:我应该如何建立连接路径(使其大部分接近精心设计的电路图,让我们说)以及如何实现原理图连接?
如果我要编程一个微控制器(ATMega128)与扬声器播放一个真实的话,我该怎么做?
我是否需要使用数字/模拟转换器发送不同的幅度值,或者频率变化是否足够?在任何情况下,我如何编码扬声器需要接收的频率和幅度值?我需要某种频率复用吗?我不是说用扬声器制作简单的声音,就像一个音符然后另一个音符.我想播放一首真正的歌曲,包括所有乐器,人声等.
嗨我怎样才能找到我的计算机正在使用多少能量..我可以找到使用C#.NET的能量..我看起来太多但是找不到任何想法!
我正在使用Raspberry PI GPIO做一些工作.到目前为止,我正在编写代码,就像在C中一样,使用函数将代码段组合在一起.
我的工作已经到了我很高兴一切正常,但现在事情开始变得混乱,所以我想转向面向对象的方法.
这是我面临的问题.
目前我有一个代表我的"设备"的课程.(我构建的硬件连接到GPIO端口.)硬件有2个不同的部分.一部分是"输入"部分,另一部分是"输出"部分.
为了帮助您更好地理解这一点,"输入"部分是一个ADC.(模数转换器.)这是一种将模拟信号转换为10位二进制表示的设备.(如果你不熟悉电子产品.)
"输出"部分只是一个开关一组LED的晶体管.
我想要一个代表ADC板的类,以及一个代表LED板的类,因为它们是两个概念上不同的器件,因为它们没有以任何方式"链接".
这会导致问题,因为在设置模式之前必须将GPIO引脚设置为特定值.值我的意思是"高"或"低",1或0.模式我的意思是"输入"或"输出".这听起来很奇怪,但基本上,如果控制线在上电之前没有设置为正确的LOGIC HIGH和LOGIC LOW值,ADC将变为去同步.(这是一个非常奇怪的设备,即使它被连接到电源也不会通电.(VCC或VDD 5.0V)其中一条控制线发送信号给设备上电.
为了实现上述目的,请考虑GPIO引脚最初处于INPUT模式.为了"使ADC正常工作",我们首先设置引脚上的数据值(HIGH/LOW),然后再将它们更改为OUTPUT模式.这样,当模式从INPUT变为OUTPUT时,数据存在正确的值,我们不会扰乱ADC.
我最初的想法是为ADC提供一个构造函数,它首先设置输出数据的值,然后将需要的引脚从INPUT模式更改为OUTPUT模式.但这迫使我们在LED板级之前构建ADC板级.
这可以通过执行相同代码来设置输出模式的两个构造函数来解决,但这似乎是一个坏主意,因为我们两次调用2位代码 - 这不是一个非常优雅的解决方案.
另一种解决方案是使用GPIOPort类将输入和输出设备组合在一起,但这也不是很优雅,如果我们要添加第二个相同的LED板,则很难修改.(例如.)
我想我想要的是另一个代表GPIOPort本身的类.(我猜是一种抽象的想法?)然后我想我想要"一个班级中的一个班级"来代表ADC板和"一个班级中的一个班级"来代表LED板.我不记得调用这种技术是什么,但通常"外部类"就像一个shell,指向一个类型为"内部类"的对象,以及一个create方法和一个destroy方法.外部类pointer = new type;在create方法和delete pointerdestroy方法中执行类似操作.这允许在需要时调用构造函数,并在需要时调用类析构函数.
关键是GPIOPort类构造函数处理这些对象的创建顺序,它隐藏了main()中的所有对象.在main中,程序员只是做了类似的事情GPIOPort myGPIOPort;,并且处理了你需要的所有东西,所以你不必在main()中包含20行代码来设置输出引脚的数据,这是唯一的其他解决方案.(我上面没有提到.)
所以我的第一个问题是这种技术被称为什么?我认为它被称为包装类,但我的理解是包装类是用于使用基本类型double和int作为对象.(并添加类似clear()或reset()类似的方法.)这是我真正想要做的,还是有更好的方法?(我想这归结为"如何解决我的问题".)
我的第二个问题是,据我所知,我必须制作一些方法(析构函数?)虚拟方法,但我不记得为什么.(或许我不这样做,我只是感到困惑.)
我的第三个问题是,我可以用它来帮助自己理解它,或者我可以在哪里提高我的理解.(参考资料).
谢谢,显然这是一个很长的问题.我试图尽可能多地提供信息来帮助解释这种情况.如果你想要澄清,那么我会尝试改进我说的话.
在将模式从输入更改为输出之前,必须将数据发送到GPIO引脚.
GPIO引脚看起来像全零,因为引脚上有下拉电阻,它们仍然设置为输入.发送的数据在模式更改之前不会出现.
然后将引脚设置为输出模式.(或者其中一些是无论如何.)现在发送的数据出现在引脚上.
如果在发送数据之前将引脚设置为输出模式,则无法阻止ADC上电,因为控制ADC上电的数据引脚可能设置为高电平.它可能被设置为LOW,但没有办法说明,它的状态是未定义的,直到我们在设置模式输出之前告诉GPIO我们想要什么值.幸运的是,我们可以保证所有引脚都处于输入模式.
现在系统功能如此强大,似乎没有什么比试图从一些8位微处理器和少于64kb内存中获得最大收益的有趣挑战.有什么东西(不是模拟器)可以提供类似的体验吗?
我在不同公司的几个架构和微控制器上从事嵌入式编程工作的经验超过5年,因此我对自己的技能充满信心.所有的经验都在一个企业环境中,那里有一群电气工程师在设计一些东西,我和他们同时负责处理软件部分.虽然我有一些电子背景,但我理解电子设计的大部分过程,对我来说它仍然是一个很大的黑盒子.
有一天,一个拥有营销公司的朋友问我,如果我能够将一个想法转换为嵌入式产品.产品非常简单,电子工程师应该很容易完成电子设备,但不适合我.我开始和我的一些电子工程师朋友谈论这个过程,他们开始讨论我之前没有想过的很多问题.
另一方面,我开始寻找像alibaba.com这样的网站,我发现一些产品具有类似的功能和相同的硬件我需要它们已经设计和测试,当然它们比我开始设计要便宜很多从头开始.我不知道该怎么办.我有三个选择:
是否有独立嵌入式程序员的模型来构建我们自己的产品?这类工作有最佳做法吗?我们是否需要始终依赖于新的电气设计,或者我们可以拥有类似菜单的东西并在某处订购?
我理解这个问题不一定与编程有关,但我认为它也不适合其他网站.
编辑:只是为了澄清.我的问题不是"如何开始嵌入式设计?".我当然知道评估板.我想问一下嵌入式程序员是否有办法开发一个完整的产品(包括电子产品),通过你可以购买的参考设计,以及制造公司是否允许修改其硬件的功能,以便你可以生产不同的产品从他们的硬件.
Any luck using the Arduino Blackwidow or the Yellowjacket? I can't find much information online about them in terms of reviews.
I would like to connect to a wireless router, send small POST requests pertaining to resistances that have been read and receive responses in JSON format that would be instructions on switches that should be flipped.
Arduino是这项工作的最佳工具吗?是否可以使用BlackWidow和YellowJacket良好的Wi-Fi变体,或者我应该使用Wi-Fi屏蔽,XBee Shield还是其他什么?
electronics ×10
arduino ×2
.net ×1
algorithm ×1
atmega ×1
c ×1
c# ×1
c++ ×1
circuit ×1
class ×1
cpu ×1
embedded ×1
energy ×1
fpga ×1
gpio ×1
hardware ×1
interfacing ×1
javascript ×1
pc ×1
raspberry-pi ×1
serial-port ×1