我收到了一个arduino uno和一些代码作为我正在进行的项目的一部分.我之前从未与他们合作过,所以这对我来说是一次全新的体验.
我在他们的网站上使用Arduino应用程序,当我编译代码时它工作正常.当我上传但是我收到错误:
avrdude: stk500_getsync(): not in sync: resp=0x41
Run Code Online (Sandbox Code Playgroud)
我已经看过为此返回的每一个谷歌结果,我没有得到任何地方.我尝试在3台不同的机器上上传,每台机器上至少有两种不同的操作系统.我怎么能接受这个代码呢?
提前致谢!
我有一个用C编写的项目,我希望将其转换为Perl.我的一个朋友建议使用LLVM.我使用Clang将我的C代码编译为LLVM程序集.现在我正在尝试将此中间表示转换为Perl,但我似乎无法找到它的任何后端.有人会指出我正确的方向吗?
我一直在尝试根据单选按钮更改CSS类,它确实有效,但它只会运行一次.例如,如果我选择白色单选按钮然后选择橡木,选择白色不会做任何事情,直到页面刷新.我肯定做错了什么,任何帮助都会受到赞赏.
$("#radio").on('change','input[type=radio]', (function() {
if($("#oakradio").is(":checked")) {
$("#over").removeAttr();
$('#over').addClass('oak');
}
else if($("#whiteradio").is(":checked")) {
$("#over").removeAttr();
$('#over').addClass('white');
}
else if($("#mocharadio").is(":checked")) {
$("#over").removeAttr();
$('#over').addClass('mocha');
}
}));
Run Code Online (Sandbox Code Playgroud)
#over.mocha {
background-image: url("https://photography.bytebros.com.au/wp-content/uploads/sites/5/2017/09/pan_mocha.jpg");
background-repeat: no-repeat;
height: 515px;
width: 1190px;
margin: 0 auto 30px;
position: relative;
}
iframe {
height: 333px;
width: 1000px;
position: absolute;
top: 93px;
left: 93px;
}
#over.white {
background-image: url("https://photography.bytebros.com.au/wp-content/uploads/sites/5/2017/09/pan_white.jpg");
background-repeat: no-repeat;
height: 515px;
width: 1190px;
margin: 0 auto 30px;
position: relative;
}
#over.oak {
background-image: url("https://photography.bytebros.com.au/wp-content/uploads/sites/5/2017/09/pan_oak.jpg");
background-repeat: no-repeat;
height: 515px;
width: 1190px;
margin: …
Run Code Online (Sandbox Code Playgroud)我的Arduino Uno有一个基本问题.
我的示例代码通过串口获取一个数字,并应将其打印回来.
int incomingByte = 0;
void setup() {
Serial.begin(9600);
Serial.println("Hello World");
}
void loop() {
if (Serial.available() > 0) {
// read the incoming byte:
incomingByte = Serial.read();
// say what you got:
Serial.print("I received: ");
Serial.println(incomingByte, DEC);
}
}
Run Code Online (Sandbox Code Playgroud)
当我发送0时,我收到48.
0->48
1->49
2->50
3->51
a->97
b->98
A->65
Run Code Online (Sandbox Code Playgroud)
那么为什么不向我发回相同的数字呢?
我使用 OCR 来识别图像中的文本。我使用来自MediaStream的ImageCapture API从用户的相机/视频输入中拍摄照片/快照。这是负责的代码:
function getBlobFromMediaStream() {
const videoTrack = mediaStream.getVideoTracks()[0]
const imageCapture = new ImageCapture(videoTrack);
return imageCapture.takePhoto().then(blob => {
if (!blob) throw "Photo could not be taken";
return blob;
})
}
Run Code Online (Sandbox Code Playgroud)
太糟糕了,这个 API 不能在很多浏览器(Firefox、IE、Safari)上运行。有没有可以使用的替代方法?
在技术上可以使用PHP吗?例如,允许我网站的访问者查看他们自己的网络摄像头,拍摄,然后将文件上传到目录,也可以上传到我的MySQL-DB.
使用下面的代码,我试图打印通过 Arduino 串行接收的值。但是该值会打印两次。打印值之一始终为 0。
byte b;
int i;
void setup() {
Serial.begin(115200);
Serial.setTimeout(10);
}
void loop() {
while(Serial.available() == 0) {}
i = Serial.parseInt();
Serial.println(i);
}
EXAMPLE: value sent is 15
Serial monitor output: 15
0
EXAMPLE: value sent is 99
Serial monitor output: 99
0
Run Code Online (Sandbox Code Playgroud) 我在理解术语串行和流之间的区别时遇到了很多麻烦。Serial 不是 Stream 的一种吗?
我对家庭作业有一些我不明白的问题。
计算机通过使用(流还是串行?)来“读取”它们相互发送的数据以确定每个字节的含义?
此外,也Serial.write()
让我很困惑。它返回一个字节的数据,对吗?一个字节是 8 位。因此,如果Serial.write()
在 Arduino 上传递一个 int 类型(16 位),它会向串行流返回 2 个字节吗?
类似地,如果 Arduino C 中的变量是 unsigned long,我们如何使用 将这个变量的最高有效字节表示给串行流Serial.write()
?
例如,我有变量 x 作为 unsigned long。将Serial.write(x>>8)
是正确的答案,因为 long 是 32 位,所以无符号使其大两倍。由于Serial.write()
以字节为单位返回,因此 64/8 将是 8。
所有这些问题可能看起来都很业余,但我真的很想学习这些东西,而我的老师并不擅长解释。如果有人能在概念上更清楚地说明这一点,我将永远感激不尽。谢谢!
在 Arduino IDE 中,我将所有输入值放入一个数组中,如下所示:
int eOb1 = digitalRead(PrOb1);
int eLoop = digitalRead(PrLoop);
int eOb2 = digitalRead(PrOb2);
InputValues[0] = eOb1;
InputValues[1] = eLoop;
InputValues[2] = eOb2;
InputValues[3] = 0;
InputValues[4] = 0;
InputValues[5] = 0;
InputValues[6] = 0;
InputValues[7] = 0;
Run Code Online (Sandbox Code Playgroud)
我想将其转换为字节数组,如下所示:00000111
。
你能给我看看吗?我尝试使用 for 循环来迭代这些值,但它不起作用。
char bin[8];
for(int i = 0; i < 8; ++i) {
bin &= InputValues[i];
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用 WebGL,并希望将一些不同类型混合到一个字节缓冲区中。我知道 TypedArrays 可以达到这个目的,但不清楚我是否可以与它们混合类型(OpenGL 顶点数据通常是与无符号字节或整数混合的浮点数)。
在我的测试中,我想将 2 个浮点数打包到 using 中UInt8Array
,set()
但它似乎只是将 2 个浮点数放入 的前 2 个元素中UInt8Array
。当然,我希望它能填满数组,因为我们有 8 个字节的数据。
无论如何,有没有办法在 JavaScript 中实现这一点,或者我是否需要将所有顶点数据保留为浮点数?
src = new Float32Array(2); // 2 elements = 8 bytes
src[0] = 100;
src[1] = 200;
dest = new UInt8Array(8); // 8 elements = 8 bytes
dest.set(src, 0); // insert src at offset 0
dest = 100,200,0,0,0,0,0,0 (only the first 2 bytes are set)
Run Code Online (Sandbox Code Playgroud) arduino ×5
javascript ×3
arduino-uno ×2
c++ ×2
serial-port ×2
clang ×1
css ×1
html ×1
jquery ×1
llvm ×1
llvm-ir ×1
mediastream ×1
ocr ×1
perl ×1
php ×1
tesseract ×1
typed-arrays ×1
webcam ×1
webgl ×1