- 博客(35)
- 资源 (2)
- 收藏
- 关注
原创 1394 笔记
条件3,STOF消息表明CC处在一个合法的操作模式,并且在一个“好的”状态,通过条件1和2一旦认定STOF消息是有效的,远程节点必须检查CC的状态。在后续连续一段时间内,如果STOF消息是无效的,远程节点必须认为相应的CC为失效。如果从上一个STOF消息之后10ms±50μs到105μs内接收到STOF消息,不论上一个STOF消息是否有效,均认为本条STOF消息周期正确。在后续连续一段时间内,如果STOF消息不符合上述的条件,远程节点必须认为相应的CC失效。条件4,CC给节点的消息是有效的。
2024-04-29 23:38:31
264
原创 裸机 lwip,客户端断开连接后,无法重新连接server端
修改error_callback函数,将tcp_server_disconnect函数中的tcp_abort替换为tcp_close。/* PC上位机如果正常运行中闪退或者不良退出会出现这个错误,此时服务器需要释放掉连接 *///tcp_abort(tpcb);/* 关闭连接并释放tpcb控制块 */
2024-04-24 23:27:36
318
原创 复旦微 zynq amp cpu0 唤醒启动cpu1
这里注意选择apu 0,这样cpu1就不会主动唤醒了,而是等待被cpu0唤醒。2 在cpu0的main函数中增加唤醒代码 active_cpu1();代码load地址就是 icf 文件中分配的代码起始地址。3 打包 boot.bin,几个注意事项见下图。1 配置多核amp工程,参考上一篇文章。
2024-02-06 17:20:02
543
原创 复旦微zynq amp 多核使用
6. 打包 boot.bin 文件,boot.bin 文件由 fsbl+bit+app0+app1+app2+app3 组成,注意修改 destination CPU 和 cstartup.s 文件一致。4. 修改初始化代码,fsbl 里边已经将 DDR 等硬件初始化好了,注释掉哦 app 中的初始化 代码,避免重复是初始化。5.修改工程的 a7_ahbsram.icf,主要修改点是将地址指向 DDR 上,多个 core 使 用的地址空间分隔开。7 固化后,重新上电,打印效果。
2024-02-06 15:32:34
599
原创 zynq fmql45+ast88e1111 lwip的调试过程笔记。
11 分段测试tx clk ,在mac init 后,加while(1),阻塞,发现这时候,tx clk 还是25M 是正常的,但是跑起复旦微的官方lwip测试历程后,tx clk 就开始放飞了, 来回的变,观察lwip app代码,发现有段代码可疑,注释掉。5 先扫phy id 扫不到,测试复位信号,通过一通折腾,发现国产的88e1111工作慢,复位以后,好久才能扫到phy id ,没办法加延时。9 测试tx rx clk ,发现rx clk 25M是100M的速度,但是tx clk 来回变化,不稳定。
2024-01-18 09:56:38
688
5
原创 gd32问题记录 FreeRTOS_send函数发送成功,对方却收不到信息
define configTOTAL_HEAP_SIZE ( ( size_t ) ( 40 * 1024 ) ) 堆空间默认20*1024,太小网络任务无法运行但是不报错。
2024-01-05 14:12:55
358
原创 zynq vivado 工程修改FPGA 型号
FPGA 学习笔记:Vivado 工程更改FPGA 型号_vivado添加新的fpga型号-CSDN博客
2023-12-28 16:07:05
673
原创 zynq 导出canfd的测试工程
假设 CAN 时钟频率为 24MHz,波特率预分频寄存器 (BRPR) 和位定时寄存器 (BTR) 的设置使 CAN 波特率等于 40Kbps。有关更多信息,请参阅 CAN 2.0A、CAN 2.0B、ISO 11898-1 规范。假设 CAN 时钟为 24MHz,波特率预分频寄存器 (BRPR) 和位定时寄存器 (BTR) 的设置使 CAN 波特率等于 40Kbps。有关更多信息,请参阅 CAN 2.0A、CAN 2.0B、ISO 11898-1 规范。这里的示例显示了在中断模式下使用驱动程序/设备。
2023-12-26 11:15:13
573
原创 gd32 bin文件合并的方法
5单击“Target”菜单中的“Program & Verify”选项,以编程和验证芯片。选择APP.bin文件;2 File->open data file 打开刚才合并生成的bin文件。4单击“Target”菜单中的“Erase Chip”选项,以擦除芯片。6 单击“Target”菜单中的“Reset”选项,以重置芯片。1 首先利用keil文件分别生成iap和app的bin文件。使用JFlash软件,将2个BIN文件合并成一个BIN。3单击“Target”菜单中的“Connect”选项。
2023-12-09 14:16:06
144
原创 基于串口的ymodem的iap 一键式升级
app中 创建一个任务等待接收升级标志,如果接收到上位机通过串口发送过来的字符1 ,则将升级标志0x88,写入0x0803FFF4处,然后复位进入iap程序。串口升级参考上面这篇文章,实际场景是linux通过网络接收升级包,然后通过串口给gd32f450升级。iap代码,根据升级标志判断是否升级app程序。
2023-12-09 14:10:01
76
原创 gd32f450 freertos移植,iap教程
2 GD32F450+LAN8720A,#FreeRTOS_Plus_TCP 网络协议栈移植教程。2 修改案例中工程源码的flash读写的接口,匹配 gd32f450。3 基于串口ymodem的iap的程序升级主要参考以下这篇文章。【开源】串口YMODEM实现IAP程序升级(附工程源码)1 freertos移植主要参考以下这篇文章。1 iap程序要跑在没有移植系统之前的代码上。
2023-12-01 18:05:38
448
1
原创 uefi下如何打开串口控制台,可以在串口下登录系统
2 主界面选择 Boot Maintenance Manager->Console Options->Console Output Device Select。1 进入uefi的bios的设置界面。3 将第一个和最后一个选项选中。
2023-11-09 10:24:45
97
1
原创 使用u盘 升级uboot固件
思路: 使用命令将U盘的固件写入内存,然后从内存拷贝的spi nor flash。原因: 没有在spi_nor_ids[]添加使用的flash型号。如图 我的flash型号为 gd25wq32e。在uboot下输入以下指令 升级uboot。问题 sf probe 1:0时打印错误。更新完,重启uboot就可以了。
2023-10-24 15:45:44
730
原创 uboot下的gpio的命令调试
4 gpio_request()-->gpio_to_device() 错误由gpio_to_device()返回。5 加打印调试发现 gpio_base和gpio_count都为0,应该是驱动中哪块没有正常赋值导致的。故修改代码为plat->name = fdt_get_name(blob, node, NULL);3 gpio_request申请gpio失败,打印errno=3。
2023-10-19 14:19:11
867
原创 龙芯3a5000 设置温度传感器报警值
1 查看报警值cat /sys/module/cpu_hwmon/parameters/cpu_thermal_threshold。2 cpu温度传感器的驱动代码位置在drivers/platform/loongarch/cpu_hwmon.c。
2023-08-30 09:31:21
90
1
原创 龙芯 pmon中使用acpi 传参 添加一个i2c设备
acpi传参的文件名为/home/loongson/zmd/pmon-loongarch-new/Targets/ls3a5000_7a/acpi/acpi_tables/dsdt/platform.asl。代码中示例为在i2c1总线上添加一个i2c设备,i2c的设备名wei nst175.
2023-08-11 17:58:36
251
1
原创 Makefile编译ko模块的代码模板文件
obj-m := goodix_core.o 为生成目标文件。goodix_core-y := \ 为参与编译的源文件。
2023-08-01 14:28:10
248
1
原创 龙芯linux4.19中485串口驱动的调试
485串口与232串口的不用之处在于,485串口有一个换向引脚,通过相应的电平信号,完成串口控制器的收发操作。实现rs485_config接口,此举是为了在应用层使用ioctl函数进行rs485_config。在8250_port.c文件中。
2023-07-31 17:21:45
854
1
PMON 下的 x86vga模拟器工作机制.docx
2020-11-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人