- 博客(36)
- 收藏
- 关注
原创 Verilog与C语言语法对比
参数就是常量parameter相当于define,不同点是parameter中间需要 "="for循环中不能有自加自减操作(类似i++和i--操作在Verilog中使用不合法)begin ——end相当于 { } 使用。reg只有在always和initial语句中被赋值。信号,寄存器变量对应为触发器,需要有记忆功能。移位操作和C语言一样补齐0,左移右移都补齐0。信号,寄存器变量对应为硬件连线。时序逻辑:alaways中。组合逻辑:always中。
2023-07-27 10:37:51 120
原创 Verilog语法笔记
(reg)寄存器:表示存储单元,表示数据原有的值,直到被改写。实数(real):可用十进制或者科学计数法表示,实数声明不能带有范围,默认值为0,整数(integer):声明不用指明位宽,位宽和编译器有关,一般为32bit,(将一个实数赋值给一个整数,只有实数的整数部分会赋值给整数。向量域选择:[bit+:width]从bit位开始递增,位宽为width。时间(time):特殊时间寄存器time型变量,位宽一般为64bit。向量:当位宽大于1时,wire和reg即可声明为向量形式。
2023-07-25 17:17:06 173
原创 ADC模块笔记
ADC分辨率(Resolution)是指ADC能够分辨量化的最小信号的能力,用二进制位数表示。比如:一个10位的ADC,其所能分辨的最小量化电平为参考电平(满量程)的2的10次方分之一。
2023-06-16 11:35:51 43
原创 stm32英文缩写对应全称(F4)
RCC--------------------Reset and clock control—复位和时钟控制。HSI------------High Speed Internal oscillator—高速内部时钟。ADC--------Analog-to-Digital Converter—模/数转换器,模数转换器。HSE-----------High Speed External oscillator—高速外部时钟。
2023-05-19 09:52:11 1034
原创 stm32M4_USART相关寄存器配置
TXE(transmit data empty):发送数据寄存器为空(判断什么时候可以发送数据)TC(transmit complete):传输数据是否完成。0:数据未传输到移位寄存器。1:数据传输到移位寄存器。
2023-05-04 19:31:19 53
原创 STM32笔记
BOOT引脚:选择下载方式为FLASH,RAM,系统存储器。(系统存储器不能直接访问,必须通过flash或SRAM):字节(8位),半字(16位),字(32位)置位复位操作:置位写1 复位写0 (SRAM内存大小192+4=196。其他端口:0x0000 0000。端口A:0xA800 0000。端口B:0x0000 0280。时钟引脚:提供稳定的时钟信号。复位引脚:RESET引脚。GPIO引脚:输入输出。电源引脚:给芯片供能。
2023-04-24 14:17:10 29
原创 C语言存储空间
堆区:用malloc,remalloc等函数开辟的存储空间,申请和释放都需要手动操作。.data:存放已初始化的全局变量和static修饰的已初始化的全局变量和局部变量。.bss:存放未初始化的全局变量和static修饰的未初始化的全局变量和局部变量。栈区:函数名,函数参数,函数内部变量,操作空间自动申请和释放。.ro(常量区):const修饰的全局变量。.text:存放代码块。
2023-04-12 16:14:56 113
原创 C语言函数的封装
函数声明可以多次声明,但函数定义只能定义一次,为定义的函数声明也不会报错;函数返回值类型可以缺省,缺省后默认返回值类型为int型。函数调用时形参才会占用空间,函数结束空间自动释放。1.给函数分配入口地址,给形参开辟存储空间。函数三要素:功能,参数,返回值;2.要有结束条件即边界条件。2.实参值传递给形参。
2023-04-04 10:50:45 530
原创 c语言函数
/break这里跳出了for循环,不是if循环。eg: goto 标签:会跳转到标签位置。fabs(double)求double类型数据绝对值。for循环嵌套使用注意,循环次数执行少的放在外层循环。不能用于单个if语句,每次跳出的是最内层循环。if语句,switch语句都不可以使用。abs(int)求整型数据的绝对值。语句,只能用于同一个函数内部。
2023-04-03 14:34:38 16
原创 笔记3.30
switch语句中default可以放在任意位置,但最后才会执行。贪婪法则:从左向右结合,直到不符合语法规则断开。不是变量(所以i++不能在等号左侧)无论前置++还是后置返回的都是一个。
2023-03-31 09:28:57 22
原创 笔记3.29
4.当有新的输入输出函数要使用缓冲区时则缓冲区会刷新。大端序:高字节存放在低地址,低字节放在高地址。小端序:高字节放在高地址,低字节放在低地址。1.缓冲区满(达到1024个字节缓冲区。有符号遇到无符号时,转换为无符号计算。printf刷新缓冲区的条件。3.遇到“\n”刷新缓冲区。2.程序结束刷新缓冲区。如何判断大小端:1.
2023-03-30 09:36:37 27
原创 c语言笔记
scanf_s(" %s",,大小限制);字符串输入使用scanf_s时需要()内部加。当输入字符时%c前需要加%*c消除垃圾字符。判断是否等于0:float a;%hd输出short int类型。类型输出用%d等同于int。float和0值的判断条件。%0d表示用0来填补空位。法一:getchar()
2023-03-28 19:05:58 27
原创 数据类型分类
2.构造数据类型:数组,结构体,联合体(union)1.基本数据类型:字符类型,整形(),浮点型(实数类型0),3.指针类型:复杂数据类型。4.空类型:void。
2023-03-27 16:18:43 22
原创 C语言基础
2.编译:语法正确性检查,将C语言编译生成汇编语言(生成.s文件)1.预处理:头文件展开,宏替换,条件编译等(生成.i文件)""优先从用户指定的路径查找,找不到才去查找系统路径。3.汇编:将汇编语言转成二进制语言(生成.o文件)4.链接:将所有可链接文件共同生成可执行文件。头文件:对函数声明(相当于说明函数用法介绍)(可链接文件.o文件,库文件)2.栈区:操作系统自己回收。1.堆区:程序员自己决定。<>从系统路径中寻找。
2023-03-27 11:57:26 32
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人