我正在开发一个库,通过RS232或RS485连接提供简单可靠的通信.此代码的一部分涉及对数据使用CRC16校验和来检测线路噪声的损坏.我已经创建了一个计算CRC16校验和的函数,但它似乎没有输出正确的值.
我写的相关代码如下(也可以在这里找到).
#include <stdint.h>
#define CRC16 0x8005
uint16_t gen_crc16(const uint8_t *data, uint16_t size)
{
uint16_t out = 0;
int bits_read = 0, bit_flag;
/* Sanity check: */
if(data == NULL)
return 0;
while(size > 0)
{
bit_flag = out >> 15;
/* Get next bit: */
out <<= 1;
out |= (*data >> (7 - bits_read)) & 1;
/* Increment bit counter: */
bits_read++;
if(bits_read > 7)
{
bits_read = 0;
data++;
size--;
}
/* Cycle check: */ …Run Code Online (Sandbox Code Playgroud) 我使用prelude作为基础Emacs配置.我已经从软件包管理器安装了很多软件包,我想在另一台机器上使用我的设置.
我不想携带已安装的软件包,也不想手动创建列表.
将所有已安装的软件包列表保存到prelude-package.el或任何其他文件中的方法是什么,这样当我将此配置带到我的其他机器时,它们会在首次使用时自动安装到那里?
使用HTML5我有一个输入字段,应根据输入的美元金额进行验证.目前我有以下标记:
<input type="number" pattern="(\d{3})([\.])(\d{2})">
Run Code Online (Sandbox Code Playgroud)
这适用于大于100.00且小于1,000.00的金额.我试图写模式(正则表达式)接受不同的美元金额.也许超过100,000.00.这可能吗?
我安装了emacs 24并安装了前奏曲,我想将主题从zenburn更改为tango-dark.但突出显示的颜色是黄色,我不喜欢这样.我希望它像zenburn中的灰色.


我该怎么办?我不想关闭hl-line但是当我尝试时我看到括号()之间的空格用相同的黄色突出显示.(在zenburn主题中没有发生).我也知道这不是探戈主题的一部分,因为当我用探戈主题运行香草emacs(sudo emacs)时,没有这样的突出显示.

我使用以下语句创建了我的数据的各个组:
df = pd.read_csv(file_path)
grouped = df.groupby(df.some_parameter)
Run Code Online (Sandbox Code Playgroud)
我想做什么(在伪代码中):
for name, group in grouped:
'Some Text' + name = group
write to csv
Run Code Online (Sandbox Code Playgroud)
最终结果是原始数据集的每个块的单独的.csv文件.
Arial Black网络安全吗?
我已经读过了,但当我把它放在我的字体声明中时,我正被赋予Times New Roman.
有谁知道为什么?
我经常遇到以下流行的emacs版本:
目前我正在运行自定义配置,但我想试试这些版本而不会破坏我的当前版本~/.emacs.d.
这是我当前安装的一些背景知识:
我通过Homebrew安装了Emacs,所以它位于:/usr/local/Cellar/emacs/HEAD/Emacs.app
我目前的emacs版本是:
GNU Emacs 24.3.50.1 (i386-apple-darwin13.0.0, NS apple-appkit-1265.00)
基本上,这是我想知道的:
在这些构建和我当前的自定义配置之间切换的最简单方法是什么?
鉴于我目前的设置,是否可以启动多个emacs会话,每个会话都有各自的配置/缓冲区?
Tabyasnippet 的键绑定通常会覆盖其他有用的键.
有没有办法禁用TabYasnippet的绑定以启用其他Tab用法?
我正在尝试配置 MVC 5 应用程序以使用 SignalR 2.2.x 并将服务注入到我的NotificationsHub. 我们正在使用 Autofac 进行 MVC,但我不确定如何正确配置它。NuGetAutofac.Integration.SignalR (3.0.2)和Autofac.Integration.Mvc (3.3.4).
到目前为止我正在做的是通过以下方式注册集线器:
ContainerBuilder builder = new ContainerBuilder();
// Register MVC controllers.
builder.RegisterControllers(typeof(MvcApplication).Assembly);
builder.RegisterType<ServiceForSignalRHub>().AsImplementedInterfaces();
builder.RegisterType<...>().AsImplementedInterfaces();
builder.RegisterHubs(Assembly.GetExecutingAssembly());
IContainer container = builder.Build();
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));
Run Code Online (Sandbox Code Playgroud)
然而,对 的调用.SetResolver(...)是不明确的,因为它存在于 MVC 和 SignalR 集成包中。怎么办?我无法确认我的服务的构造函数注入是否适用于我正在使用的集线器。
编辑
我可以使用 Autofac 配置 MVC5。我迷失的是如何使用 Autofac Signal 集成 NuGet 对 SignalR 执行相同的操作。请看下文。
这是我的启动课程:
public partial class Startup
{
public void Configuration(IAppBuilder app)
{
var defaultFactory = LogManager.Use<DefaultFactory>();
defaultFactory.Directory("@D:\\NServiceBus\\ );
defaultFactory.Level(LogLevel.Debug);
var container = …Run Code Online (Sandbox Code Playgroud) dependency-injection autofac signalr signalr-hub asp.net-mvc-5
我有一个SerialPort用于连接到虚拟 COM 端口的端口。由于连接是持久的,我必须保留对 的引用SerialPort,以便打开、关闭和以其他方式管理端口。我也在IDisposable我的班级上实现(不是完整的 Dispose 模式,因为我实际上没有任何适当的非托管资源,只有SerialPort)。
我的问题与SerialPort.Dispose()vs的使用有关SerialPort.Close()。我用Close()在几个地方,我从这个调用的文件理解Dispose()的方法SerialPort。但是,如果像我的TryConnect()方法一样, 可能SerialPort从未打开过怎么办?我应该简单地调用Dispose(),然后就这样吗?或者该Close()方法是更好的选择?
更广泛地说,使用其中一种方法而不是另一种方法总是一个好主意吗?
我的代码中的一些相关片段如下。
public bool TryConnect() {
CheckDisposed();
try {
connectedPort = new SerialPort(SelectedPort);
connectedPort.WriteTimeout = 1000;
connectedPort.DataReceived += P_DataReceived;
connectedPort.Open();
return true;
} catch (Exception e) {
if (connectedPort != null) {
connectedPort.Dispose();
connectedPort = null;
}
return false;
}
}
public void Disconnect() {
CheckDisposed(); …Run Code Online (Sandbox Code Playgroud) 我正在使用xpath,xml和xsl,所以在我的项目中我需要找到至少有一个属性的所有元素.例如,如果我有这个xml内容:
<catalog>
<show>
<titulo>so so</titulo>
<ano>1991</ano>
</show>
<sound id="1">some string song</sound>
Run Code Online (Sandbox Code Playgroud)
我希望只有声音节点作为结果.
我已经尝试过这个xpath
count(@*) > 0
Run Code Online (Sandbox Code Playgroud)
和
string-lenght(@*) > 0
Run Code Online (Sandbox Code Playgroud)
但到目前为止,这一切都没有解决问题.
我想克隆当前的类实例,并在clone()一个多态类的实例内创建,如下所示:
class State
{
public clone():State
{
const state = new State();
this._copyData(state);
return state;
}
protected _copyData(target:this):void
{
}
}
class StateExtends extends State
{
public clone():StateExtends
{
const state = new StateExtends();
return state;
}
protected _copyData(target:this):void
{
super._copyData(target);
}
}
Run Code Online (Sandbox Code Playgroud)
覆盖State类时,我希望clone()签名在所有类层次结构中保持不变。我可以做这样的事情:
class State
{
public clone():this
{
const state = new this();
this._copyData(state);
return state;
}
protected _copyData(target:this):void
{
}
}
class StateExtends extends State
{
protected _copyData(target:this):void
{
super._copyData(target);
}
}
Run Code Online (Sandbox Code Playgroud)
但这是行不通的。 …