我正在使用树莓派并尝试使用以下内容打印 unicode 字符:
测试.cpp:
#include<iostream>
using namespace std;
int main() {
char a=L'\u1234';
cout << a << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
当我用 g++ 编译时,我收到这个警告:
test.cpp: In function "int main()":
test.cpp:4:9: warning: large integer implicitly truncated to unsigned type [-Woverflow]
Run Code Online (Sandbox Code Playgroud)
输出是:
4
Run Code Online (Sandbox Code Playgroud)
此外,这不在 GUI 中,如果相关,我的发行版是 raspbian wheezy。
我实际上是为我的Raspberry Pi的GPIO端口编写一个控制程序,我在python中编程并想用字典来做.
好的,要设置一个GPIO端口,它需要2个参数,正如您在字典表中看到的那样,我使用了两个参数,当您编写类似"00"的内容时,您应该得到这两个参数.
例如,能够控制GPIO端口的代码是:
output(11, low)
Run Code Online (Sandbox Code Playgroud)
正如你在字典中看到的那样,我应该像上面的代码一样得到两个参数,但是我仍然得到一个错误,只有一个参数而不是两个.这是我的代码
import RPi.GPIO as GPIO
from RPi.GPIO import input as input
from RPi.GPIO import output as output
from RPi.GPIO import HIGH as high
from RPi.GPIO import LOW as low
from time import sleep as sleep
GPIO.setmode(GPIO.BOARD)
entry = raw_input("Which port you want to control?:")
while entry != "xx" :
io = {
'00' : "11, low",
'01' : "11, high",
'10' : "12, low",
'11' : "12, high",
'20' : "13, low",
'21' : …Run Code Online (Sandbox Code Playgroud) 我试图让这些 GPIO 端口同时打开和关闭,但在 RPi 上的间隔不同。我可以运行其中一个循环并且它可以工作,但是当我引入线程时它却没有。
import RPi.GPIO as GPIO
from time import sleep
import thread
GPIO.setmode(GPIO.BOARD)
GPIO.setup(11, GPIO.OUT)
GPIO.setup(13, GPIO.OUT)
GPIO.setup(15, GPIO.OUT)
def fast():
while True:
GPIO.output(11, True)
sleep(.02)
GPIO.output(11, False)
sleep(.02)
def med():
while True:
GPIO.output(13, True)
sleep(.2)
GPIO.output(13, False)
sleep(.2)
def slow():
while True:
GPIO.output(15, True)
sleep(2)
GPIO.output(15, False)
sleep(2)
thread.start_new_thread(fast,())
thread.start_new_thread(med,())
thread.start_new_thread(slow,())
Run Code Online (Sandbox Code Playgroud) 我在我的树莓派上运行 Raspbian 版本 7。我正在运行owncloud。我已经在 /media/Owncloud 下安装了一个外部驱动器。这是我拥有自己的云存储所有文件的地方。我无法访问此目录。当我尝试时,cd /media/Owncloud它给了我以下错误:
-bash: cd: /media/Owncloud/: Permission denied
如何访问此目录?
我已经做了几年的Web应用程序开发人员,现在正在使用Python和Robotics.
我已经设置了Python Tornado来运行基于javascript websocket命令.这很棒,移动电机,打开LED.不是问题.
我想做的2件事.
1)闪烁LED
2)使用超声波范围传感器,停止FORWARD动作IF范围<X
我知道如何在自己内部做两件事.
但是,我的python方式如下
WS.py
import tornado.httpserver
import tornado.websocket
import tornado.ioloop
import tornado.web
import time
# My Over python module
import tank
class WSHandler(tornado.websocket.WebSocketHandler):
def open(self):
print 'New connection was opened'
self.write_message("Welcome to my websocket!")
tank.init()
def on_message(self, message):
print 'Incoming message:', message
tank.run(message)
self.write_message("You said: " + message)
def on_close(self):
tank.end()
print 'Connection was closed...'
def check_origin(self, origin):
return True
application = tornado.web.Application([
(r'/ws', WSHandler),
])
if __name__ == "__main__":
http_server = tornado.httpserver.HTTPServer(application)
http_server.listen(8888) …Run Code Online (Sandbox Code Playgroud) 我刚刚在圣诞节买了一个树莓派,我想删除一些内置程序,因为我想制作一个家庭使用的 Linux 服务器。到目前为止,我必须一直使用终端来执行此操作,因为要删除文件,您必须使用 root。
rm ./files/*
rmdir files
Run Code Online (Sandbox Code Playgroud)
rmdir当里面有文件时,有什么办法可以使用命令吗?
我正在尝试保存并加载传感器的校准数据.我能够读取校准数据并将其保存到文本文件中.查看文本文件时,在一组方括号中有22个由逗号分隔的数字.
我需要以set_calibration函数读取它的方式导入该文本文件.
这是设定校准功能.
def set_calibration(self, data):
"""Set the sensor's calibration data using a list of 22 bytes that
represent the sensor offsets and calibration data. This data should be
a value that was previously retrieved with get_calibration (and then
perhaps persisted to disk or other location until needed again).
"""
# Check that 22 bytes were passed in with calibration data.
if data is None or len(data) != 22:
raise ValueError('Expected a list of 22 bytes for calibration data.')
# …Run Code Online (Sandbox Code Playgroud) 我最近为 x86 架构开发了一个非常简单的操作系统。但后来我意识到要为 ARM 板(如 RPi)以较小的规模构建它。
我想问一下,ARM指令集和x86有什么不同?
即使在 ARM 板上也有 BIOS 吗?如果没有,是否还有其他方法可以在屏幕或视频内存上打印输出?
要在 Raspberry Pi 上对操作系统进行编程,我需要做哪些更改?
一瞥我所知道的 - 我创建了一个简单的操作系统,它可以在屏幕上打印文字、从磁盘读取并将内核加载到内存中并切换到 32 位模式。
我正在使用 Gphoto2 在 DSLR 上拍照。由于它基于我尝试使用的 bash 命令,subprocess.communicate但在相机拍照后它会冻结。
如果我gphoto2 --capture-image-and-download在终端中尝试它需要不到 2 秒。我正在研究树莓派。
代码:
import subprocess
class Wrapper(object):
def __init__(self, subprocess):
self._subprocess = subprocess
def call(self,cmd):
p = self._subprocess.Popen(cmd, shell=True, stdout=self._subprocess.PIPE, stderr=self._subprocess.PIPE)
out, err = p.communicate()
return p.returncode, out.rstrip(), err.rstrip()
class Gphoto(Wrapper):
def __init__(self, subprocess):
Wrapper.__init__(self,subprocess)
self._CMD = 'gphoto2'
def captureImageAndDownload(self):
code, out, err = self.call(self._CMD + " --capture-image-and-download")
if code != 0:
raise Exception(err)
filename = None
for line in out.split('\n'):
if line.startswith('Saving file as '):
filename …Run Code Online (Sandbox Code Playgroud) 我喜欢在我的 RPi 项目中禁用和启用一些引脚。它们是 GPIO 6、GPIO 5 和 GPIO 26。我喜欢在我自己的内核驱动程序中使用这些 PIN。
对于这个项目,我通过 GPIO 连接了一个简单的电路板。最小系统是通过 yocto 构建的。我喜欢更改设备树文件以禁用/启用 GPIO。
我需要更改或制作我自己的 dts 文件。为此,我认为我需要:
我怎样才能做到这一点?或者我在哪里可以找到来源?
实际上,我正在努力寻找我正在使用的 RPi2 的 dts 文件。我正在检查“raspberrypi2-poky-linux-gnueabi”配方结果(并且没有找到任何文件)。
我没有找到任何关于如何设置 yocto + meta-raspberrypi + 自己的 dts 的教程。如果我们能找出必要的步骤就太好了。
raspberry-pi ×10
python ×5
linux ×2
arm ×1
bash ×1
c++ ×1
communicate ×1
device-tree ×1
dictionary ×1
owncloud ×1
python-2.7 ×1
subprocess ×1
tornado ×1
unicode ×1
websocket ×1
x86 ×1
yocto ×1