基于ZYNQ PS-SPI的Flash驱动开发 本文使用PS-SPI实现Flash读写,PS-SPI的基础资料参考Xilinx UG1085的文档说明,其基础使用方法是,配置SPI模式,控制TXFIFO/RXFIFO,ZYNQ的IP自动完成发送TXFIFO数据,接收数据到RXFIFO,FIFO深度为128Byte。本文介绍了使用PS-SPI的Flash开发。
64位指针赋值遇到的问题 问题:mmap成功返回一个地址,地址g_mmap_addr赋值给整数变量temp。 unsigned int temp; unsigned int phy_addr = 0xA0000000; void *g_mmap_addr; g_fd = open("/dev/mem", O_RDWR | O_SYNC); if (g_fd < 0) { debug("open fail,abort"); abort(); } debug("open mem
python程序画吉他和弦 和弦是指有一定音程关系的一组声音,例如1、3、5组成C和弦,我入门学的第一个和弦。可以使用python的matplotlib库来绘制和弦图,matplotlib一般是用来分析数据用的。和弦图像一个4行5列的网格,表示琴弦的位置和品柱位置。图:4行5列的网格环境:Window10 + Python 3.10.1import matplotlib.pyplot as pltdef draw_block(): plt.cla() plt.clf() ..
设备树(DeviceTree)数组使用 Linux驱动内需要设备数组数据,又不想在驱动文件添加,这样会使代码显得过于臃肿。可以在设备树(devicetree)使用"[01 02 03 04]"或者<01 02 03 04>的方式定义,这种方式和我们在C语言内定义数组颇为相似。
unity面向角度和运动 实现一只斑马面向一个颗球,球左右摇摆。创建一只斑马,加上下面的脚本,创建一颗红色球。using System.Collections;using System.Collections.Generic;using UnityEngine;public class NewBehaviourScript : MonoBehaviour{ Quaternion targetRotation; float fLastTime; GameObject TargetObje
C++ 内存泄漏调试 C++和其他高级语言不同,需要自行管理内存,项目大\调用多,容易内存泄漏.内存申请释放使用malloc/free和new delete两种方式.当内存报错弹出一个陌生的地址,我一脸懵逼,不清楚是哪个地方出的错,特别是程序退出的时候报错更不好定位.可以使用第三方工具来定位解决,也可以自己想办法解决.我在做神经网络训练的时候碰到一个的BUG,发送完训练图片之后直接提示使用了非法内存.HEAP[Test.exe]: HEAP: Free Heap block 0000015E950E4A60 mod
js和python通信 js和python是两种语言,js处理网页数据,python可作为服务端开发,两者通过websocket进行通信,websocket是socket的封装,省去了通信上的HTTP协议转换上的麻烦.中大型项目推荐使用torando/Djiango平台,两个平台集成度较高,方便开发使用.实验以发送html页面上的图片到服务器后端为例子.服务端接收图片后,开启本地端口为10086的服务,等待前端的连接.服务把前端发的图像url存在本地文件car.bmp.import asyncioimport.
Zynq AXI-GPIO 硬件:Xilinx Zynq-7000 SoC ZC706版本:vivado2015.4Zynq上有三种GPIO方式,AXI-GPIO是其中一种,需要创建一个AXI-GPIO核,AXI总线连接至ZYNQ。然后配置GPIO的宽度和初始状态。All Outputs:设置成输出,根据需要配置。GPIO Width为GPIO的数量,这边配置成2Default Output Va...
嵌入式系统设计师笔记 努力了3个月,终于考过了!把这阶段的心得和笔记分享到网上 指令周期若干个即周期组成,是取指令、分析、执行所需的全部时间。过程CPU从<程序计数器>获取所需的指令地址 (PC上取指令地址)从内存(cache)读取指令的内容暂存<暂存寄存器>,然后进行分析和执行 (IR暂存指令地址对应的指令)简称IR 指令寄存器...
ZYNQ PL-PS中断 硬件:Xilinx Zynq-7000 SoC ZC706版本:vivado2015.4目的:PL触发中断,PS做中断处理PL部分添加两个中断源,一个普通中断,一个FIQ中断,对应中断号为61和28连接图约束set_property PACKAGE_PIN AK25 [get_ports {SW1[0]}]set_property IOSTANDARD L...
ZYNQ 使用EMIO点亮LED 硬件:Xilinx Zynq-7000 SoC ZC706版本:vivado2015.4目的:同时闪烁3个灯。点亮分为PS和PL两部分。PL属于硬件连接。PL部分设置EMIO宽度为3连接EMIO设置管脚约束Create HDL Wapper生成.v文件gpio_0_tri_io在.v文件里生成,注意不是GPIO_0;管脚号PACKAGE_PIN...
编址范围计算 寻址的时候需要地址,所以就需要到编址。编址的时候需要考虑字长、存储容量。几个名词较为抽象,先解释清楚。字长是CPU一次能并行处理的二进制位数,有8/16/32/64位,也称为8/16/32/64位机器。字节8位一字节单字编址单字这里不解释为字节,理解为单字长编址双字编址理解为双字长编址 ,32位字长,对应编址方式就是64位的步长。即地址访问偏移64位。像C语...
Android微信刷卡支付开发 微信开发不容易,在于各个环节的理解和疏通。支付类型就分为几种,每种的业务也不相同,所以就困扰了很多人,我也抱怨过资料的混乱,没办法慢慢梳理。摸索过后才知道我需要的是刷卡支付业务。公司的Android终端集成扫描功能,不需要调用微信的扫描。1、什么是刷卡支付刷卡支付场景就像超市收银台扫你微信上的二维码,收银台主动发起扫码请求,扫码完成后扣取你的费用。流程如下图