- 博客(16)
- 收藏
- 关注
原创 zynq使用XADC测量外部电压
IO_L1P_T0_AD0P_35以及IO_L1P_T0_AD0N_35所对应的引脚为B20,C20,这是固定的,虽然平时在不使用vauxp0/vauxn0的时候这两个引脚我们可以自由使用,不过当在XADC中设置并使用了这两个引脚的话就会自动的启用,不需要进行约束,为此我也特地做了实验,当约束为C20和B20及不约束都可以正常的使用,而如果约束为其他引脚却不会起作用,这点需要注意。最近想使用zynq的XADC测量外部的电压值,最终成功了,记录一些没做之前的疑问。一,如何配置XADC的引脚来接入待测电压呢。
2025-02-20 15:09:54
194
原创 zynq 使用lwip初始化phy未接网线导致初始化失败的解决办法
最近一直使用lwip的tcp server来创建服务器,一直以来都需要先连接网线或者在上电后的30s内连接网线,否则就会出现再连接网线时无法正常的建立连接,为了解决该情况,在网上也查了很多资料,不过几乎没有zynq的解决方案,32的倒是有不少,不过都不能适用于zynq。注意,在该文件中有三个函数使用了该判断,不确定具体执行了哪一个的情况下建议三个函数中都进行注释,实测能够正常运行。在注释掉时间判断这一块之后即可实现在上电后一直等待phy初始化成功。
2024-12-19 09:50:10
424
原创 FPGA使用EMIO实现I2C通信驱动OLED显示屏PS部分(SSD1306)
今天分享一下PS部分的代码,有两个文件,main.c中主要使用I2C进行相关的配置,oled_front.h文件就是显示屏对应的字库文件,代码中进行了简单的显示测试,有需要的可以根据代码自行学习,就不多介绍了。
2024-12-03 19:45:10
268
原创 ZYNQ 使用EMIO实现I2C通信驱动OLED屏幕显示(SSD1306)
接下来第二个问题,如何修改驱动来在sdk中使用,这里说明一下修改的原因,因为通信的方式不一样,在32中,我们时直接操作引脚电平变化来进行通信的,而sdk中提供了发送接收数据的函数,大大的简化了程序开发过程,对我们而言需要关心的是如何使用这些函数以及怎么去发送命令和数据。最近需要使用OLED显示屏,不过FPGA开发板并未留有I2C通信的MIO引脚,很尴尬,只能使用EMIO引脚,使用过程中由于对I2C通信不熟悉也遇到了不少问题,这里分享一下实现的过程,具体的I2C协议自行学习理解。
2024-07-19 22:00:00
1753
7
原创 解决树莓派git clone时报错的问题“没有到主机的路由”或“在 pull 函数中出错。”
因为购买的屏幕需要下载驱动,而树莓派连接无线网后使用git clone命令报错,过程挺曲折的,这里也记录一下解决过程。看了网上说把https换成http即可,因此尝试了一下,结果果然可以,只能说 靠谱!sudo ifconfig eth0 up 打开以太网。sudo ifconfig eth0 down 关闭以太网。到这里第一个问题解决。
2024-07-12 11:24:08
434
1
原创 单向链表--直接插入法 , 链表的翻转
代码的思路是通过两个指针对于链表的节点进行遍历,首先通过P指针指向头节点指向的节点位置,然后将头节点指向空,利用q指针将每个节点按照顺序与头节点用头部插入法插入,这样的到的链表与原来相比输入的顺序是相反的自然可以得到翻转的链表;该方法容易理解,通过遍历链表找到需要输入的数字在链表中的位置,并将head头结点移动到前一节点,使用头插法直接出入节点数据;
2023-02-25 17:28:31
169
原创 苏小红c语言第四版课后习题练习9.3--9.4
本体思路就是直接分别找到最大值以及最小值,并借此找到对应的下标,将最大值最小值的下标通过函数进行交换即可;(题目中要求的函数没有输入数组,按要求可以把数组放到函数中在定义就可以)
2023-02-18 18:38:35
500
原创 苏小红c语言第四版课后习题练习8.9--8.11
通过观察可知杨辉三角形矩阵存在一定规律,首先第一列以及对角线的元素都是1,其次其他的元素都是上一行前一列元素和相同列元素相加的和,因此可以通过两步来输出这个矩阵,顺便可以完成两部分的加和计算,最后的总和自然也就是这两部分的总和了,题目相对来说不算难,只不过需要想清楚规律,就可以按部就班的写出来了,不过写程序的过程中也要注意细节哦。不过不知道怎么用函数来写,会的麻烦评论区留言分享。
2023-02-16 23:40:22
762
1
原创 苏小红C语言第四版课后习题练习8.3--8.7
(这一题的思路就是把几个部分分开来实现,抬头利用char型字符串直接打印,第一列的序号和第二列的分数用整型数组的形式展现,第三列的特殊符号利用char型数组来表示,重点在于打印的时候要控制好间距和换行的时机,利用for循环让三个数组每次输出一个元素并换行。8.4(和上一题一样,只不过把判断条件改一下即可);
2023-02-16 00:21:08
671
原创 苏小红C语言第四版课后习题练习7.12--7.13(部分)
没什么时间就不一一写了,大概说下思路,第三题外面再套一层for循环for(i=1;i++)对于所有数字进行验证,对于是素数的进行sum+就可以;第五题,对于输入的数字m求出因子,还是上面一题的操作,只不过这次在循环的末尾加上sum+求和,最后判断sum+1=m是否成立即可;第四题,这一题先计算M数字的所有因子,还是套用for循环对于2-m之间的所有数字进行求余,凡是余数为零的即为因子,直接输出就好;可以看出用for循环的方式逐一去求余的方式更加简洁并且更加容易理解;
2023-02-14 23:11:03
435
原创 苏小红C语言第四版第七章课后习题练习(7.3——7.6)
注意:(本次习题答案其实存在缺陷,并没有对输入的值进行类型的判断,如果输入小数会无法比较,等后续学习之后再来完善。(只需要修改阶乘Fact()函数的内容,增加相加求和的代码即可)
2023-02-11 23:22:43
546
1
原创 for 循环结构学习
for循环结构比起 while 以及 switch 结构使用过程更加简单明了,嵌套使用时也更加方便。C 库函数 double sqrt(double x) 返回 x 的平方根,例如4的平方根是2。表达式3:作为循环的调整。(如: for(i=0;表达式1:设置初始条件,只执行一次,可以0或者多个表达式赋初始值;例题:鸡兔同笼,共98个头,386只脚,计算鸡兔各为多少只?如在本题中利用两层for循环的嵌套就能够解决问题。C 库函数 - sqrt()表达式3){ 执行语句 }表达式2:循环条件表达式;
2023-02-09 21:35:57
102
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人