2017年10月问题记录与总结

1.在C语言中调用C++函数

在一个工程中既有.c问价又有.cpp文件,在C中要调用C++接口:

在要调用的函数前加 extern "C",如下:

extern "C" void tcp_server(void)
{
	struct sockaddr_in		serverAddr, clientAddr;
	
	....
	printf ("TCP Server end.\n");
	
}

这样在另一个.c文件中就可以直接调用该C++函数了。


2.波特率的概念

波特率说白了就是每一秒,能传输多少位数据,对于两相调制的信号,波特率=比特率,串口属于两相调制,波特率就是一秒传输多少bit,一个字节8位就是8个bit。

常用的9600和115200就是指串口每一秒可以传输115200个bit,换算成速率,不计算校验位,只算起始位停止位和数据:

波特率115200 = 115200 (位/秒) = 11520 (字节/秒)
再除以 1024,就是每秒 KB 数:
波特率115200 = 115200 (位/秒) = 11.25 (KB/秒)


3.TTL电平

这个是刚上大学就会教的东西,工作了做了软件与硬件沟通的时候总是提到TTL,虽然知道5V是1,0V是0,这种模糊不完全对的概念,还是会不确定。

TTL电平:规定,+5V等价于逻辑“1”,0V等价于逻辑“0”。这样的数据通信及电平规定方式,被称做TTL(晶体管-晶体管逻辑电平)信号系统。

3.3V和5V的TTL逻辑是这样的:

5V TTL 和3.3V TTL 指的是他们的工作电源电压,即Vcc或Vdd。
至于“逻辑电平相同”应该是指能够使TTL门电路翻转的输入电平对于这两种供电的TTL都是相同的。
即无论是5V供电的TTL还是3.3V供电的TTL,其输入低电平都必须在0.8V以下,输入高电平都必须在2.0V以上。


4.fpga的约束文件概念

做ZYNQ项目的时候,板子上一个看门狗用的EMIO去喂的,喂狗本身很简单,那么我想知道是哪个EMIO。

在FPGA这一端,手上暂时没有客户的逻辑说明或者源文件,我不知道逻辑这一端用了多少个EMIO。哪个是分配给看门狗的。于是我用了一个最笨的方法,一个个试了一下,试出来了,开始调试其他模块。

后来客户将约束关系发给我了,就我目前的理解,约束文件是fpga这一端相互或与arm之间的资源对应关系说明。比如我的EMIO哪个给看门狗了,我的时钟信息是什么,我的port是哪一个对应的axi总线,等等。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值