不枉初心,砥砺前行

皮皮祥的博客

欢迎留言,评论

导航

上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 58 下一页

2022年11月15日 #

static inline

摘要: 我们知道一般的函数调用都会通过call的方式来调用,hacker很容易对一个函数做手脚,如果是以inline的方式编译的,会把该函数的code拷贝到每次调用该函数的地方;而static会让生成的二进制文件中没有清晰的符号表,让逆向的人很难弄清楚逻辑 static int isValidate(int 阅读全文

posted @ 2022-11-15 17:21 皮皮祥 阅读(171) 评论(0) 推荐(0) 编辑

C语言inline关键字

摘要: 一、inline关键字的概念 inline关键字是C99标准的型关键字,其作用是将函数展开,把函数的代码复制到每一个调用处。这样调用函数的过程就可以直接执行函数代码,而不发生跳转、压栈等一般性函数操作。可以节省时间,也会提高程序的执行速度。 二、为什么需要内联函数 在C语言中,如果一些函数被频繁的调 阅读全文

posted @ 2022-11-15 17:09 皮皮祥 阅读(211) 评论(0) 推荐(0) 编辑

强制类型转换(int*)

摘要: 在vc中int* pt;pt=0xB8000000;为什么不能将0xB8000000直接看作一个地址赋给pt,而int* pt;pt=(int*)0xB8000000;就可以?并且(int*)0xB8000000这句强制类型转换应该怎么理解?为什么他一强制转换就变成地址值了呢0xB8000000本身 阅读全文

posted @ 2022-11-15 16:40 皮皮祥 阅读(355) 评论(0) 推荐(0) 编辑

一文彻底搞懂volatile用法

摘要: 一、常见说法 volatile 关键字和const对应,一样是一种类型修饰符,用它修饰的变量表示可以被某些编译器未知的因素更改,比如操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。当要求使用 volatile 声明的变 阅读全文

posted @ 2022-11-15 16:22 皮皮祥 阅读(443) 评论(0) 推荐(0) 编辑

linux省去驱动直接从应用层寄存器操作

摘要: 这个外设的功能已经在zynq sdk裸机下验证通过,如果这个外设没有用到中断,我们可以通过linux下映射寄存器的方法,将这个裸机下的程序直接移植到linux下使用,这样就可以省去硬件开发驱动的工作。 一,linux内存映射 二,原理图 三,linux应用层代码解析 1,pl_gpio.h #ifn 阅读全文

posted @ 2022-11-15 15:41 皮皮祥 阅读(505) 评论(0) 推荐(0) 编辑

iic地址

摘要: IIC,两根线,SCL时钟线,SDA数据线。 一个主机master,一个或多个从机slave。 主机通常就是MCU,从机会有一个地址,这个地址通常前4位是器件本身固定的,5-7位可以硬件选择,最后一位通常是WP位,一般此位低电平表示正常读写,此位高电平表示读保护,只能读。如常用的EEPROM 24C 阅读全文

posted @ 2022-11-15 12:00 皮皮祥 阅读(881) 评论(0) 推荐(0) 编辑

iic协议实操

摘要: 1. 同一 I2C bus device 之 I2C slaver address 不可一样. 2. 检查 这些 devices , 是否可以变更 I2C slaver address (hardware pin control or software register setting). 3. 若 阅读全文

posted @ 2022-11-15 11:46 皮皮祥 阅读(61) 评论(0) 推荐(0) 编辑

XIicPs_MasterSendPolled和XIicPs_MasterRecvPolled

摘要: Xilinx FPGA的IIC程序中的XIicPs_MasterSendPolled和XIicPs_MasterRecvPolled函数的使用,8位寄存器地址写入24位数据 硬件平台:黑金AX7010开发板vivado版本:Vivado 2017.4SDK平台:SDK 2017.4目的:利用FPGA 阅读全文

posted @ 2022-11-15 11:34 皮皮祥 阅读(463) 评论(0) 推荐(0) 编辑

2022年11月14日 #

SDC文件常用时序约束语句

摘要: 时钟约束 1. 基本约束 create_clocks -name clk_name -period 10 [get_ports clk_in] 这是最基本的时钟约束语句,为时钟管脚创建一个时钟,综合工具会根据创建的时钟进行布局布线,并给出时序分析报告,若发生时序违例,则需要对设计进行优化修改。 2. 阅读全文

posted @ 2022-11-14 22:55 皮皮祥 阅读(1046) 评论(0) 推荐(0) 编辑

set_clock_groups -async -group {CLK1CLK3}{CLK2}

摘要: 本期求职笔试题目来源大疆硬件逻辑岗,共2道题,涉及知识点包含:时序约束中异步时钟的设置、典型时序优化方法。 33、根据约束关系set_clock_groups -async -group {CLK1CLK3}{CLK2},下图哪些路径会进行时序检查( )(多选题) A Path4 B Path2C 阅读全文

posted @ 2022-11-14 22:53 皮皮祥 阅读(1654) 评论(0) 推荐(0) 编辑

上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 58 下一页