- 博客(33)
- 收藏
- 关注
原创 Xilinx-7系列器件的IO逻辑资源(三)
Xilinx-IBUF/IBUFG/IBUF_IBUFDISABLE/IOBUF/OBUF/OBUFT
2023-03-17 13:05:51 1561
原创 Vivado跑implementation过程中卡死在opt_design
Vivado进行implementation过程中卡死在opt_design
2023-02-17 13:47:04 4951 4
原创 浅谈c语言指针的强制转换
指针是c语言的灵魂,而数据的强制转换是我们在写程序的过程中经常去使用的一种手段,那么这二者结合在一起后会有什么效果呢?直接上例子说吧No.1上面是一段简单的把变量打印出来的程序,显示指针指向地址的值,就不多介绍了。下面我们加上几行程序:我们知道,char类型是带符号的,所以这边我们先定义一个初始值为-100,打印出来的值也是正确的-100,这是我们额外定义一个unsigned char指针类型的指针变量,然后把char指针的变量强制转换后赋给unsigned 插入类型的指针变量,再打印出这块地址
2022-04-19 15:51:49 10106
原创 Qt5SerialPort打开串口失败——系统找不到指定文件
问题描述问题解决首先确保安装串口转USB的驱动安装成功,其次就是首先要知道串口转 USB的是哪个COM口。。。上面选对之后就能连上了。
2022-03-25 18:28:27 4334 4
原创 ESP8266连接百度云物联网核心一直断开连接
前言这两天在玩8266通过百度云接入物联网,之前接触的时候叫百度云天工物接入,现在登上去发现好像不见了,只剩下了一个物联网核心,其实二者的本质是一样的,百度云物联网核心相比于天工物接入更加简洁,如果有朋友以前是用天工物接入的话可以参考下下面这篇文章转变一下。https://blog.csdn.net/Vsheng969/article/details/115825507问题描述首先我先创建了一个产品然后创建模板,在然后创建设备,然后使用下面的这个地址生成用户账号和密码:生成链接然后再把生成的
2022-03-19 13:44:59 6234 4
原创 QT5.12.10运行debug文件下exe文件失败
运行环境Qt Creator4.13问题描述在Qt Creator4.13中编译代码之后可以出现对话框,但是在工程文件夹debug下运行.exe文件后报“无法定位程序输入点”的错误。解决方法碰到问题率先百度,附上一些链接:http://www.xitongcheng.com/jiaocheng/win10_article_60149.htmlhttps://blog.csdn.net/lingsnoopy/article/details/79454758百度上的解决方法基本上就是没有添
2022-03-14 15:04:45 1001
原创 Altium Designer快捷键布线无法实现网络线自动编号
问题描述今天画PCB的时候发现一个问题,我使用快捷键F2进行导线放置,但是按下F2之后发现画出来的线是亮绿色的,不是正常顶层线的红色。问题解决看到这一现象,第一反应是规则冲突了,打开规则管理器如下设置的最小走线0.1mm,最大为3.5mm,没有冲突,顿感奇怪。此时双击绿色走线之后终于发现问题了,双击走线发现这条线的Net栏显示No Net,这就是“罪魁祸首”。于是选择好对应的网络之后,绿色的线成功变成红色的了。原因探究百度了一下,可能是关键词不对,没找到相似问题的,于是从软件本身上下手。
2022-03-04 11:00:08 930 2
原创 STM32G431串口DMA发送
1. G4系列DMA简介首先介绍一下G4系列的DMA情况。32的G4系列虽然说是基于M4内核的,但是他的DMA通道映射和大家较为常见的F407有较大差异,先贴上几张参考手册中的图片:不知道大家看到这两张图片后能想到什么,相信有看过H7和F4的DMA的朋友一定能反应过来,不错,STM32G4系列基于M4的内核,并且具有和H7一样的DMAMUX(DMA请求复用器)。不熟悉的朋友也没关系,DMAMUX其实就相当于是一个选择器,可以把外设的DMA请求映射到我们的DMA通道上(这么解释可能不对,但我觉得比较
2022-02-24 10:30:58 2546 8
原创 STM32配置ADC时钟分频因子问题小结
引言这两天在研究32的G4系列,在使用HAL库配置ADC的时候,发现初始化ADC结构体的时钟分频成员变量时可供选择的宏有点奇怪(和以前见过的不太一样),特此写篇博客记录一下。问题描述ADC初始化代码比较简单,就不全部贴上来了,就介绍一下时钟分频的成员变量初始化了。ADC_HandleTypeDef ADC_HandleTypeStr;HAL_StatusTypeDef My_Adc_Init(uint8_t num_ch){ ADC_HandleTypeStr.Instance = ADC1;
2022-02-08 23:38:49 5901 4
原创 Keil5.33版本新建工程后编译报错
问题描述这段时间有个任务,以前都是直接拿了原有工程上改,这次想重新建一个工程,于是就拿着当初正点原子那套来新建工程,这一建完成之后加载发现工程报了很多错,好像和当初不太一样,重新尝试了一遍后还是报错,于是开始寻找原因。问题寻找其实在新建工程的时候打开魔术棒选项卡就已经发现不对了,如下所示我记得原来版本的keil是没有这个AC6存在的,起初没去理它,出了错之后去百度了一番,查了点资料之后发现Keil for ARM5.33的这个版本(之后的版本可能都一样),它默认情况下选择了编译器AC6,这个编译
2022-01-25 11:12:23 1930 2
原创 浮点数的十进制和二进制转换(详细例子解答)
需要用到浮点数的转换,以前学过又忘记了,就写篇文章巩固一下最常用的浮点数二进制计算标准:IEEE二进制浮点数算术标准,也就是所谓的IEEE754,所以就介绍一下这个标准。float类型float占4个字节也就是32位,那么这32位的组成部分如下所示:(1) 符号位,这个就不多解释了,原数>0为0,原数<0为1,和整数的二进制表示方法一样。(2) 指数位,这边的指数位指的就是2的多少次方,比如说2^3,那么我们就需要把这个3提取出来即可,这个3不能直接作为指数为的值,还需要处理。(3
2022-01-22 16:05:40 15395 4
原创 FPGA控制TDC7200时间间隔测量(三)
关于上一篇文章中的代码是最后烧板子上的代码,直接仿真的话会出现没有波形或者只有写的过程没有读的波形的现象,都是以下几个参数没有修改完全导致的。修改如下参数即可。上一篇地址如下:https://blog.csdn.net/qq_46284844/article/details/121719751延时参数修改第一个需要修改的是tdc_ctrl模块中的延时参数,实际上我这边分别延时了1s和5ms,但仿真这样子的话时间会相当的久,所以我在下边留了仿真的建议延时时长,更换注释行之后即可。数据输出
2021-12-09 16:28:07 1092 2
原创 FPGA控制TDC7200时间间隔测量(二)
继续上文内容:https://blog.csdn.net/qq_46284844/article/details/121716619?spm=1001.2014.3001.5501上文介绍了TDC7200的一些基本信息,本文说一下使用FPGA来控制TDC7200的过程。整体思路TDC7200是使用SPI通信的,所以我们首先确定需要编写SPI通信协议,确定协议之后我们再根据数据手册的寄存器地址和相关的配置发送和接收数据。而对于FPGA的时序控制,我们还是一如既往的使用状态机来控制。程序介绍端
2021-12-04 21:49:03 2864 34
原创 FPGA控制TDC7200时间间隔测量(一)
引言TDC7200是TI推出的一款测量时间间隔的芯片,具有低至55ps的分辨率、35ps的标准差、具备低功耗模式、高达5个停止脉冲计数以及最低能够在零下40摄氏度工作等优点TDC芯片介绍引脚说明我们结合官方的手册说明来分别介绍一下它的引脚(1)ENABLE使能引脚,根据手册上说明,该引脚为高时芯片使能。(2)TRIGG触发引脚,根据手册上说明,芯片上电且使能之后会保持低电平,当我们初始化完成之后进入测试环节之后该引脚会拉低,且在芯片接收到START脉冲之后该引脚被拉低。(3、4)STA
2021-12-04 16:58:04 8280 1
原创 Modelsim与Quartus II联合仿真软核ROM出现读取数据为0的现象
问题描述ROM作为一个很常见的电不可擦除的储存元件,广泛用于数据存储、图像存储。inter的quartus II软件提供了大量的软核,提高我们的开发速度,其中就包含了ROM。我们在进行FPGA开发过程中仿真是必不可少的,由于Quartus II自带的仿真有许多缺陷且功能也不全面,我们经常会使用Modelsim进行软件外仿真。但我们进行仿真测试ROM读取时发现仿真读取到的数据一直为0,如下所示:图中的data表示从ROM中读取到的数据。于是我开始在百度上寻求帮助,相信大多数人都找到过,说把路径前面的
2021-08-22 19:11:15 1982 6
原创 C语言的指针和自加符号的优先级
c是一种自由度非常高的语言,在编程过程需要考虑各种优先级的划分,本文分享一下有关指针和自增(自减)符号的优先级划分。首先我们先确定一点,指针和自增符号的优先级是一样的,且运算顺序都是自右向左的,所以按照同优先级谁先出现谁老大的规则,从右向左哪个符号先出现那个就是优先的。多说无益我们来编译器里面试试看: int a = 50; int* b = &a; printf("a = %d,b = %d\n", a, b); printf("the no:%d\n", *b++); print
2021-08-22 14:20:59 4539 3
原创 关于两种版本lua的模块(MODULE)调用的方式
LUA5.1以及LUA5.4对于模块调用的不同方式lua作为4G芯片的应用编程语言,应用范围可以说是很广泛了。而使用这门语言自然也是需要一款编译器了,这边我们采用VSCODE作为编译器(下载以及插件的安装就不多说了,详见合宙LUAT社区(http://ask.openluat.com/))。打开VSCODE并成功安装插件之后,我们先使用lua的5.4版本。首先我们新建一个main.lua文件,然后我们使用require来进行模块的调用。比方说我们这里调用“net.lua”文件(文件来源于LUAT社区库文
2021-03-13 12:21:57 1735 1
FPGA控制AD9767实现DDS输出
2023-03-16
FPGA控制ADS1256进行ADC采样
2023-03-09
FPGA(Xilinx)控制TDC-GPX2时间间隔测量
2023-02-28
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人