我今天一直在努力学习I2C,我花了一些时间来设置,但我现在已经配置了一个i2c-tools已安装的Raspberry Pi ,我可以看到/dev/i2c-0.
但是,当我运行时,i2cdetect -y 0我得到一个空的地址表.这是有道理的,因为我没有任何设备连接到I2C总线.我想做的是能够写入I2C引脚并使用我的示波器观察输出,甚至连接LED,这样我就能看到状态变化.
这是否可能,如果是这样,我该怎么办?提前致谢.
我正在查看我继承的bash脚本并遇到这一行:
local n=${x##*wlan}
Run Code Online (Sandbox Code Playgroud)
我从来没有见过这种语法,我知道这local意味着函数范围内的一个变量,我只是不确定该${*##}部分,并且google语法相当棘手.
我有一个简单的功能来int代表GPS周,而一个双重代表GPS秒.这GPS Week是自1980年1月6日午夜以来的周数, GPS seconds也就是自上一个GPS周开始以来的秒数.我想将这些转换为具有特定格式的字符串,以便我可以将GPS数据与来自其他乐器的数据相匹配.
我的功能如下:
private DateTime GetFromGps(int weeknumber, double seconds)
{
DateTime datum = new DateTime(1980, 1, 6, 0, 0, 0);
DateTime week = datum.AddDays(weeknumber * 7);
DateTime time = week.AddSeconds(Math.Floor(seconds));
double millisecs = (seconds - Math.Floor(seconds)) * 1000;
Console.WriteLine("{0}, {1}, {2}", seconds, Math.Floor(seconds), (int)millisecs);
time.AddMilliseconds((int)millisecs);
Console.WriteLine(time.ToString("yyyy.MM.dd,HH:mm:ss.fff"));
return time;
}
Run Code Online (Sandbox Code Playgroud)
现在,当weeknumber = 1254和seconds = 412250.000我得到正确的输出:
412250, 412250, 0
2004.01.22,18:30:50.000
Run Code Online (Sandbox Code Playgroud)
但是,当我使用时weeknumber = 1254,seconds = 412250.123输出如下所示:
412250.123, 412250, …Run Code Online (Sandbox Code Playgroud) 我有一个NSMutable对象数组。这些对象代表足球(足球)比赛,并具有一个NSString称为的参数title(ed“ Arsenal v Chelsea”)和一个NSDate名为的参数ActualDate。
我现在使用以下代码按日期对数组进行排序:
NSMutableArray* a = [self getMatchListFromURL:@"http://www.url.com"];
[a sortUsingDescriptors:@[[NSSortDescriptor sortDescriptorWithKey:@"ActualDate" ascending:YES]]];
Run Code Online (Sandbox Code Playgroud)
显然,同一天有多个游戏。我想按字母顺序对在同一日期发生的游戏进行排序。有没有简单的方法可以做到这一点?
我对 C++ 的 OO 方面不太有经验,我正在尝试移植一些代码并复习我的知识,但我遇到了问题。我有一个类定义如下:
class ExtendedKalmanFilter
{
private:
double dt;
public:
ExtendedKalmanFilter(int states);
virtual VectorXd f(VectorXd x, VectorXd u);
virtual MatrixXd F(VectorXd x);
virtual VectorXd h(VectorXd x);
virtual MatrixXd H(VectorXd x);
~ExtendedKalmanFilter();
};
我有另一个继承ExtendedKalmanFilter并实现虚函数的类:
class KineticEnergyEKF : public ExtendedKalmanFilter {
public:
KineticEnergyEKF(int nstates) : ExtendedKalmanFilter(nstates)
{}
VectorXd f(VectorXd x, VectorXd u)
{
this->dt = 1.0; //ERROR: Apparently I have no access to dt
}
MatrixXd F(VectorXd x);
VectorXd h(VectorXd x);
MatrixXd H(VectorXd x);
};
Visual Studio 显示我无法访问 …
我有一些代码从设备记录数据,并以系统时间(以毫秒为单位)为数据加上时间戳.
我用a uint64_t来存储时间戳,它是这样创建的:
struct timespec request;
clock_gettime(CLOCK_REALTIME, &request);
uint64_t stamp0 = (uint64_t)((uint64_t)request.tv_sec * 1000 + (uint64_t)request.tv_nsec / 1000000);
然后我写了时间戳到文件(没有考虑通过)像这样:
fprintf(ptr,"%ld\n",(long)stamp0);
现在我的文件中的时间戳不正确,1130802699但看起来应该是这样的1478599582064.
我有什么办法可以解决我的错误吗?
我已经按照教程(这里)关于创建自定义MessageBoxes使用WPF.我有一个小问题,因为目前我的自定义框不会返回MessageBoxResult.我不明白为什么会这样.
这是xaml文件PDSAMessageBoxView:
<Window x:Class="Resources.PDSAMessageBoxView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
WindowStyle="None"
AllowsTransparency="True"
Background="Transparent"
ResizeMode="NoResize"
ShowInTaskbar="True"
FontFamily="Segoe UI"
WindowStartupLocation="CenterScreen"
Height="300"
Width="420"
>
<Border>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<TextBlock Name="tbMessage"
Text="Message goes here..."
TextWrapping="Wrap" />
<StackPanel Grid.Row="1"
>
<Button Content="Yes"
x:Name="btnYes"
Click="btnYes_Click" />
<Button Content="No"
x:Name="btnNo"
Click="btnNo_Click" />
<Button Content="OK"
x:Name="btnOk"
Click="btnOk_Click" />
<Button Content="Cancel"
x:Name="btnCancel"
Click="btnCancel_Click" />
</StackPanel>
</Grid>
</Border>
</Window>
Run Code Online (Sandbox Code Playgroud)
这是相应的PDSAMessageBoxView.xaml.cs文件:
public partial class PDSAMessageBoxView …Run Code Online (Sandbox Code Playgroud) 我试图向使用Qt和Boost的Buildroot添加一个包.该软件包使用qmake生成一个Makefile,这部分似乎正在工作,但是当我构建说:
Could not find qmake configuration file qws/linux-arm-g++.
Error processing project file: MsgDisplay.pro
Run Code Online (Sandbox Code Playgroud)
我的包的内容如下:
DummyPgm
??? main.cpp
??? MsgDisplay.pri
??? MsgDisplay.pro
??? MsgDisplay.pro.user
??? MsgHandler.cpp
??? MsgHandler.h
??? MsgServer.cpp
??? MsgServer.h
??? Tcp
? ??? TcpAddrPort.cpp
? ??? TcpAddrPort.h
? ??? TcpServer.cpp
? ??? TcpServer.h
? ??? TcpSocket.cpp
? ??? TcpSocket.h
??? Tools
??? Banner.cpp
??? Banner.h
??? IoExt.h
??? SeparateArgumentList.cpp
??? SeparateArgumentList.h
??? SysTypes.h
2 directories, 20 files
Run Code Online (Sandbox Code Playgroud)
我添加了一个包目录dummypgm,其中包含Config.in和dummypgm.mk文件.文件的内容是:
Config.in:
config BR2_PACKAGE_DUMMYPGM
bool …Run Code Online (Sandbox Code Playgroud) 我写了一个函数来计算两点之间的航向,只有当车辆报告它正在移动并且车辆在两点之间移动了20厘米时.
该函数使用静态变量 - 或者至少它会起作用 - 来跟踪先前的位置和标题值.
这是代码:
def withCan(pos):
eastdist = pos[0]-previous_pos[0]
northdist = pos[1]-previous_pos[1]
canflag = pos[2]
if (canflag == 1 or canflag==2):
if (previous_canflag == 1 and canflag == 2):
previous_heading += 180.0
previous_canflag = canflag
elif (previous_canflag == 2 and canflag == 1):
previous_heading += 180.0
previous_canflag = canflag
else:
previous_canflag = canflag
if ( (canflag == 1 or canflag == 2) and math.sqrt(northdist*northdist+eastdist*eastdist) > canstep ):
previous_heading = math.degrees(math.atan2(eastdist, northdist))
previous_pos[0] = pos[0]
previous_pos[1] = pos[1] …Run Code Online (Sandbox Code Playgroud) This bug is driving me mad. I'm trying to produce the absolute minimal code to get AVDepthData from an iPhone 7+ using its DualCam.
I have this code:
//
// RecorderViewController.swift
// ios-recorder-app
import UIKit
import AVFoundation
class RecorderViewController: UIViewController {
@IBOutlet weak var previewView: UIView!
@IBAction func onTapTakePhoto(_ sender: Any) {
guard let capturePhotoOutput = self.capturePhotoOutput else { return }
let photoSettings = AVCapturePhotoSettings()
photoSettings.isDepthDataDeliveryEnabled = true //Error
capturePhotoOutput.capturePhoto(with: photoSettings, delegate: self)
}
var session: AVCaptureSession?
var videoPreviewLayer: AVCaptureVideoPreviewLayer? …Run Code Online (Sandbox Code Playgroud)