- 博客(18)
- 资源 (1)
- 收藏
- 关注
原创 【无标题】
在我看来就是输入无信号,能否输出。能输出就是非阻塞(JK触发器),不能输出就是阻塞(导线)。2.在时序逻辑中,阻塞赋值是生成一条线,非阻塞赋值是生成一个触发器。3.建议在时许逻辑中用非阻塞赋值,在组合逻辑中用阻塞赋值。1.在组合逻辑中二者没有本质区别。
2023-06-19 16:22:14
103
原创 2021-06-24
SSD代码讲解最详细的一位:https://www.cnblogs.com/dengshunge/p/11937828.html
2021-06-24 17:01:06
141
原创 回调函数
在学习回调之前需要先学习函数指针函数指针的简单介绍然后回调函数是个啥呢?差不多就是函数A的参数列表里有函数B的入口地址(用函数指针表示);#include<iostream>using namespace std;//需要被调用的函数void print_cb(void) { cout<<"成功调用回调"<<endl;}void test(int a,int b,void(*p)(void)) { cout <<"a+b=" <
2020-11-14 11:22:06
190
原创 函数指针
最近遇到了回调函数,需要补充一下函数指针的概念。1.函数指针定义:指向函数在内存中入口地址的指针。2.函数指针的写法:函数返回值类型(*指针变量名)(函数参数类型1,函数参数类型2,…)举例:int(*p)(int ,int)解释:定义了一个函数指针p,该指针指向的函数需要满足以下的要求:返回值类型类型为 int 参数1的类型为int 参数2的类型为int实际运用小例子:int Fun1(int x); /*声明一个函数*/int (*p) (int ); /*定义
2020-11-14 10:51:36
106
原创 for 循环内定义的变量的生命周期
上结论:for 循环内定义的变量的生命周期周期只有一次举例:for (int j = 0; j < 5; j++) { int a = j; }按照一般的思路 a是被定义了5次,是明显的变量的重复定义。但是事实上,这段代码在编译器中是可以编译通过的。为啥?原因是 每次定义的 a,其 生命周期只有一次循环的时间(比如 j=0的那次循环过后,a的内存空间就被回收了,也就不妨碍 j=1时 对a的定义了)...
2020-08-29 22:48:56
2543
原创 FPGA实现 串口发送模块
首先搞清楚的是该模块实现的功能:利用FPGA将一个并行的数据(我的理解是可以来自FPGA内部,也可以外部存储器中),以串行的方式发送给PC(或者其他MCU)串口发送的时序图参照了开源骚客的课程:baud_cnt 换成了cnt0bit_cnt 换成了cnt0rs232_tx 换成了uart_tx取消了内部信号:bit_flag(这个信号主要为了指示一个bit的信号发完了,我在计数器中直接用了end_cnt0代替)代码的大体思路:在tx_trig信号为高的时候(至少为1个..
2020-08-19 12:20:39
1021
原创 # Error loading design
如果之前你的modelsim运行没有问题的话,说明软件没有问题,那么请从下面的角度解决:1.是否正确的例画模块2.模块例化的时候信号是否一致(例如位宽)
2020-08-18 20:05:59
2946
原创 VC++6.0报错:fatal error LNK1169: one or more multiply defined symbols found 执行 link.exe 时出错.
VC++6.0编译的时候出现:fatal error LNK1169: one or more multiply defined symbols found执行 link.exe 时出错.解决办法:重新启动软件
2020-07-13 20:06:08
3231
3
原创 编译型语言vs解释型语言
编译型语言的代表:C解释型语言的代表:java编译型语言的执行过程:C语言——>汇编语言——>机器语言——>CPU执行(效率高)Java语言——>字节码——>解释器——>CPU执行(效率低,每次执行都要解释器解释,这种语言适合与跨平台)...
2020-07-13 19:41:45
124
原创 python中 数字变成字符串,字符串变成数字
1)数字变成字符串函数:str()举例:a=10str(a)print(type(a))print(type(str(a)))结果:<class ‘int’><class ‘str’>2)字符串变数字变整数时:int()变浮点数:foat()举例:a='5'b=int(a)print(type(b))结果:<class ‘int’>c='1.22'd=float(b)print(type(d))结果:<class ‘fl
2020-07-02 21:00:39
2575
2
原创 Python学习之numpy(三)
第三部分的代码如下:import numpy as np'''数组的轴和旋转''''''数组的轴一维数组有一个轴 0二维数组有两个轴:0,1 (行,列)三维数组有三个轴:0,1,2 (块,行,列)'''a=np.array([[1,2,3],[4,5,6],[7,8,9]])print(a)print(a.shape) #几维的就有几个轴#一个参数的切片操作print(a[:2]) #默认的第一个参数代表的是0轴print(a[:2,1:3])pr
2020-06-13 21:46:22
190
原创 Python学习之numpy(二)
第二部分的学习代码如下:'''数组的计算部分'''import numpy as npimport random'''reshape(),不改值,而改变数组的形状'''a=np.arange(10).reshape(2,5)print(a)b=a.reshape(10)print(b)c=a.flatten() #不清楚对方是什么矩阵,直接转为1维print()'''a+x 是每个元素都加x,x是数字 a-x a*x a/x 两个数组
2020-06-13 21:04:30
164
原创 Python学习之numpy(一)
import numpy as np'''1.1.1数组的创建'''a=np.array([1,2,3,4,5]) #数组创建的三种方法b=np.array(range(1,6))c=np.arange(1,6)print(a)print(b)print(c)print(a.dtype) #显示数据的类型d=np.array(range(1,6),dtype=float) #修改默认的数据类型e=np.array(r
2020-06-13 16:45:25
142
原创 python中路径的反斜杠的问题
在我们编程的时候可能需要从别的文件夹下导入某个函数,那就需要进行路径的扩展。但是各层路径的名字中难免会有一些比较特殊字母和反斜杠一组合便会报错。比如\t \n等解决办法:把单反斜杠变为双反斜杠import syssys.path.append("C:\\Users\\23869\\Desktop\\software\\machine learning\\food")import pizzapizza.make_pizza(12,"beef",'meat')...
2020-06-11 11:00:12
1390
1
通讯录管理系统1.rar
2020-07-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人