单片机与单片机通过CH375实现USB之间连接
USB的对象,有主从之分,这样才能在开始时,两个设备之间的握手可以由主设备打破;但是对于CH375,它的主从的配置是完全不同的。通道可以由主机在设置令牌时去做。一般主机配置端口2,它在设置为主机模式时候,有专有的主机通道,即...
硬件角度讨论FPGA开发框架
长久以来新型FPGA的功能和性能已经为它们赢得系统中的核心位置,成为许多产品的主要数据处理引擎。鉴于FPGA在如此多应用中的重要地位,采取正式且注重方法的开发流程来处理FPGA设计比以往更加重要。该流程旨在避免开发周...
如何克服FPGA电路板设计挑战
选取一家供应商你面临的第一个问题当然是供应商和器件的选择。通常供应商决策倾向于你以前接触最多的那家——如果你是一位FPGA初学者当然另当别论了。或许这个决策早已由设计内部逻辑的工程师(也许就是你)...
八位微控制器的代码优化技巧介绍
良好的操作方法许多程序员在 32 位处理器上学习编写软件,如 Intel 的 Pentium 处理器或某种ARM平台。不过,嵌入式领域的软件编写需要不同的思路。在 32 位CPU上,存储比特位的最佳方法通常是使用 32 位变量。对 8 位处理...
DSP开发中值得注意的问题
选择DSP的型号目前市场上的主要DSP生产商包括TI,ADI,Motorola,Lucent和Zilog等,其中TI占有最大市场份额。产品包括了从低端的低速度DSP到高端的大运算量的DSP产品。目前,广泛使用的TI DSP有三个系列:C2000、C5000、C6000(C3...
怎样在FPGA中实现状态机
状态机是在数量有限的状态之间进行转换的逻辑结构。一个状态机在某个特定的时间点只处于一种状态。但在一系列触发器的触发下,将在不同状态间进行转换。理论上讲,状态机可以分为Moore状态机和Mealy状态机两大类。它们之...
关于快速小波变换的定点DSP实现
作为一种新兴的理论,小波分析是数学发展史上的重要成果,对工程应用产生了深远的影响。广泛应用于语音信号处理、图像信号处理、信号检测、语音与图像编码、多尺度边缘提取与重建等领域。近年来,在电力系统中也开始应用小...
DSP硬件设计的几个注意事项说明
以下是DSP硬件设计的一些注意事项,各位同仁可以参考。时钟电路选择原则1,系统中要求多个不同频率的时钟信号时,首选可编程时钟芯片;2,单一时钟信号时,选择晶体时钟电路;3,多个同频时钟信号时,选择晶振;4,尽量使用DSP...
ARM中打印函数print 的几种实现方法
1利用C库函数printf。步骤:1)首先需要包含头文件stdio.h。2)然后定义文件句柄。实际上就是一个int型变量封装在结构体中。struct__FILE{inthandle;};3)定义FILE__stdout;FILE即为__FILE,通过stdio.h宏定义。4)实现函数intfp...
实例讲解!单片机控制继电器原理
首先看看继电器的驱动这是典型的继电器驱动电路图,这样的图在网络上随处可以搜到,并且标准教科书上一般也是这样的电路图为什么要明白这个图的原理?单片机是一个弱电器件,一般情况下它们大都工作在5V甚至更低.驱动电...
DSP硬件设计的注意事项
以下是DSP硬件设计的一些注意事项,各位同仁可以参考。时钟电路选择原则1,系统中要求多个不同频率的时钟信号时,首选可编程时钟芯片;2,单一时钟信号时,选择晶体时钟电路;3,多个同频时钟信号时,选择晶振;4,尽量使用DSP...
DSP中电源噪声的问题
现在,高端DSP的时钟率(1GHz)和速度(500MHZ)产生可观的谐波,这些是由于PCB线迹的作用如同天线所致。由此引起的噪声使音频、视频、图像和通信功能降低并对达到FCC/CE商标认证造成问题。为了降低电源噪声,对于高速DSP系统...
用普通 I/O 口模拟标准 UART 串行口
帧UART 通信规范是以 8 位二进制数为一帧,低位在前,逐位的传输。为了区分各个帧,在每一帧之前,要有一个 0 作为起始标记,之后,有一个 1,作为结束符。在结束符之前,还可选发一个“校验位”,但是,目前多数的应用都不选...
用51单片机怎么驱动12V共阳数码管?
用ULN2803接数码管的阴极。将PNP三极管8550接入阳极。--发射极接+12V,--集电极接数码管公共阳极,--基极用I/O口进行控制。但是,这时基极需要的控制电压,超出了单片机I/O口的输出能力。所以,基极和I/O口之间,还应该接入一个NPN型的...
四舍五入?四舍六入!
四舍五入这种方法小学的时候就学过,它虽然简单,但是产生误差累计的因素还是很明显的。就拿保留整数来说:小数部分从0.0~0.4999,是属于“舍”的范围,产生的误差就是0.0~0.4999;而小数部分0.5~0.9999,是属于“...
【问答】单片机中时间问题
【问】1、delay(unsigned int x){ while(x--);}以及2、delay(unsigned int x){for (i=0,i<x;i++);}这两个时间函数,他们所延迟的时间分别是X的多少倍?怎么结算的!谢谢高手指点!函数2中的I是定义的全局变量!单片机的晶振为1...
关于单片机驱动三极管的问题
【问】如图所示,我用的IO口是stc的单片机的准双向口,可是在IO口高电平的时候,蜂鸣器几乎没有声音,我把10k电阻拿掉,直接相连,声音大了一点,可还是很小。我用镊子把三极管的CE短接,蜂鸣器声音就会很大,我觉得这种情况就是IO驱动...
STM32 外部中断 易出错总结
一:触发方式STM32的外部中断是通过边沿来触发的,不支持电平触发;二:外部中断分组STM32的每一个GPIO都能配置成一个外部中断触发源,STM32通过根据引脚的序号不同将众多中断触发源分成不同的组,比如:PA0,PB0,PC0,PD0,PE0,PF0,PG0为第...
关于SYSTick的一些问题
Q:什么是SYSTick定时器?SysTick是一个24位的倒计数定时器,当计到0时,将从RELOAD寄存器中自动重装载定时初值。只要不把它在SysTick控制及状态寄存器中的使能位清除,就永不停息。Q:为什么要设置SysTick定时器?(1)产生操作系统的...
向量中断和非向量中断
向量中断与非向量中断的区别向量中断就是不同的中断有不同的入口地址,非向量中断就只有一个入口地址,进去了再判断中断标志来识别具体是哪个中断。向量中断实时性好,非向量中断简单向量中断控制器VIC具有32个中断请求输...
51单片机查表指令的用法
51单片机具有两条查表指令,用于从 ROM 中读出预存的数据:MOVC A, @A + PC MOVC A, @A + DPTR其中前一条指令的用法,比较难,使用的时候,需要计算一个“偏移量”。不了解“指令的字节数”的人,都不清楚应...
关于51单片机双字节(带有小数)无符号除法的问题
题目:在51单片机里,有两个16位(每个16位数是由两个字节组成)无符号数相除,结果放在30H、31H。例如:由R0、R1组成被除数,R2、R3组成除数,被除数的数值为500,除数的数值为1300,即“500/1300=0.3846”。在计算结果中,小数...
关于单片机测量信号频率的精度问题
问题:用C51系列单片机测TTL(f<50KHz)的信号,精度达到0.001Hz,用12MHz的单片机还是更高?怎么计算是否达到这个精度?=============================================解答:这个0.001Hz的测量精度,在单片机领域是不能达到的。精度...
单片机同一IO口输出两组数组
单片机同一IO口输出两组数组基于80C51,因为没有多余的口可用,只能用同一IO口输出两组数组,高4位一组输出0~9,低4位一组输出0~15!;=============================================试试看:MOV R0, #s1 ;数组一的指针 MOV R1, ...
单片机按键上电复位电路的理解
51系列单片机是高电平复位。如果在AT89S52的9号引脚(RST)加上宽度大于2个机器周期的高电平,该单片机芯片就将处于复位状态。复位时:PC=0000H,SP=07H,P0~P3=FFH,其它各个特殊功能寄存器的内容皆为0。此后,当RST引脚上的降为...
PROTEUS仿真中的总线
在使用PROTEUS进行仿真时,各元件的引脚,可以使用导线直接连接,也可以使用标号进行连接,还可以使用“总线”进行连接。在PROTEUS零件库中,有些零件的引脚,就是使用“总线”形式的,如8031、8155、8255等。...
拨盘开关输入方法
一个拨盘,它和计算机的接口是并行的四条线,可输入四位的8421码。它的表面,通常印的符号是十进制数字0~9,也有印着十六进制数字的,更有特制的,印着年月日。这种小东西,简单可靠,也没有一般的按键所具有的抖动现象。拼接成多位...
键盘编码芯片MM74C922
4×4的键盘,在单片机系统中,是很常见的。一般都是占用一个单片机的8位接口。对于这种输入设备,通常是由单片机来识别某行某列的按键是否按下,还需要延时消抖等等。为了节省单片机的IO接口,也可以使用外接芯片来驱动4&...
单片机接口电平的问题
1、给P1口一个数据(假如接了发光二极管),二极管会亮,那就说明P1口产生了电平比如: MOV P1,#3FH2、问题:书上说的,要测P1口引脚电平,需要让对应的引脚先置位,比如测P1.0口:ORL P1, #01H ;先置位 MOV C, P1.0 ;再读接口既然给P1...
关于单片机总线的解释
总线是一种内部结构,它是cpu、内存、输入、输出设备传递信息的公用通道,主机的各个部件通过总线相连接,外部设备通过相应的接口电路再与总线相连接,从而形成了计算机硬件系统。在计算机系统中,各个部件之间传送信息的公共...
关于单片机的硬件知识
I/O口MCS-51单片内部I/O口的数量和种类多而齐全,尤其是它有一个全双工的串行口,更突出了这种单片机的本身特点。该串行口是利用两根I/O口线构成的,由4种工作方式,可通过编程选定。MCS-51有32根I/P口线,而MCS-48只有27根。...
关于8279的实例
8279 是键盘、显示专用接口芯片,一般来说,它可以带动 8 个LED数码显示器和 64 个按键。它可以自动的实现动态扫描输出,按键消抖,按键缓存等等,优点不少。一个单片机系统,如果使用了 8279,基本就算是豪华系统了,但是近几年来,很...
Keil与Proteus的联合仿真调试
1. 复制文件把 Proteus 安装目录下的 VDM51.dll 文件复制到 Keil 安装目录下的 \C51\BIN 目录中。VDM51.dll 也可以到网上下载。2. 修改 Keil 的 TOOLS.INI 文件用记事本打开 Keil 安装目录下的 TOOLS.INI 文件,在 [...
Keil编程环境下STM32内存管理研究[转载]
非常简单的一个工程,没有用到任何IO操作,与STM32有关的仅仅只有芯片的选择,即其SRAM大小有区别。图1是工程示意图,从图中可以看出,除了自己编写的代码外,仅仅增加了2个文件,即system_stm32f10x.c和startup_stm32f10x_hd.s,其...
stm32开发问题集锦
1 在flash中跑程序时,能进入中断,但在ram中跑时,进不了中断的原因。看以下的中断配置函数可以知道,要在ram中调试程序,需要定义VECT_TAB_RAM。定义方法a:在Project\Options for taget 'xxx' 的对话框的c/c++中定义宏VEC...
8255的直接连接方法
8255是用来扩充接口的芯片。用上一片8255,就可以为系统增加3个8位的IO接口。在单片机的教材上,总是使用“三总线”的方式来连接8255。在这样的条件下,输入/输出数据的速度确实是比较快,一般用2个机器周期,就可以...
8255的三总线连接方法
有这样一个问题:按键计数,按一下键,显示数字加一。两个按键控制分别控制两组数码管,每个按键控制一个两位数码管,显示十进制数,0到99。题目给定的电路图中,共有四个共阴数码管,用8255的PA来驱动段,位,则使用了单片机P1口,按键使...
用74HC595把LCD1602改成串行数据接口
LCD1602的接口形式是并行的,它有8条数据线、3条控制线。这样就需要11条线来控制它的正常工作。虽然它还可以工作在4位数据线的形式,最精简的形式是6条线。有位网友想要使用74HC595进行串-并转换,想要用4条线来控制LCD1602...
PWM——呼吸灯
呼吸灯是很简单的东西,用一片555,搭成一个多谐振荡器,再用RC电路滤成锯齿波,再驱动LED就可以了。LED在锯齿波的控制下,逐渐的由亮到暗、再由暗到明的周期性变化,看起来就好像是在呼吸。555电路,调整起来比较困难,不如使用单片...
PWM——用按键控制LED的亮度
以前写过一篇关于PWM的博文,已经有一年了,链接如下:http://www.eeskill.com/article/id/50651。文中使用了示波器来显示不同占空比的波形。其实,利用LED也能通过亮度来表现出PWM参数的变化,用实物进行测试,效果很好,但是用PR...
Code、RO、RW、ZI分别表示什么?
在使用keil开发STM32应用程序时,点击Build后在Build Output窗口中经常会有如下信息:以前一直好奇这几个参数和实际使用的STM32芯片中Flash和SRAM的对应关系,于是上网搜了一圈,做如下总结:这些参数的单位是Byte图中几个参数...
stm32 IO口的基本操作
一、IO口的基本操作(1)IO口模式:GPIO_Mode_IN输入模式,输入3.3V或0V 的高低电平。例如按键程序就是配置称输入模式GPIO_Mode_OUT输出模式,输出3.3V或0V 的高低电平。例如LED闪烁程序配置成输出模式。GPIO_Mode_AF复用工作...
j_link调试K60
J-Link是SEGGER公司为支持仿真ARM内核芯片推出的JTAG通用仿真器,这里需要注意一下,像J-Link,ST-Link之类的他们都是一种JTAG工具,好多初手容易混淆把J-Link和JTAG同等级,呵呵,其实前者只是后者大范围下的一个包含,JTAG是一种...
单片机用定时器分配任务的程序结构总结
首先介绍一下任务的概念,main函数最后是一个死循环,它就是一个任务,是整个系统最基础的任务。除main函数的主循环无条件执行外,其实每一个进程和任务都是一个有条件跳出的循环,当这个任务没有完成时就会一直在这个循环里,当...
很详细的单片机复位电路介绍
单片机复位电路的可靠性设计一、概述影响单片机系统运行稳定性的因素可大体分为外因和内因两部分:1、外因射频干扰,它是以空间电磁场的形式传递 在机器内部的导体(引线或零件引脚)感生出相应的干扰,可通过电磁屏蔽和合理...
STM32配置DAC输出固定电压和方波
STM32F103VCT6自带两个12位DAC,DAC的转换速度一直没有查到,网上有人说是1MHZ的频率,那就是1us了。ADC的转换时间在56MHZ工作频率下为1us,在72MHZ工作频率下为1.17us。如果AD和DA有对称关系的话,那么很可能跟ADC的时间相同...
按键消抖的软硬件方法
我们所用的按键一般都是机械式的按键,因此在按下的时候并不立即导通,都有一定的抖动过程。在单片机的学习过程中,大家都有了这样一个按键消抖的概念。记得博主的单片机老师在上课的时候苦口婆心地反复提这。一、软件消抖...
解决mini2440开发板和虚拟机相互ping不通
虚拟机用的:fedora14开发板IP:192.168.0.250虚拟机IP:192.168.0.100先查看基本的设置对不:虚拟机桥型连接,开发板printenv查看IP是否设置在一个网段,查看主机和虚拟机ping的通不,主机和开发板相互ping的通不,查看完之后,都OK的...
STM8在STVD平台如何生成HEX文件的方法
1.工程设置中,Post-Build选项卡中,有如下设置chex -o $(OutputPath)$(TargetSName).s19 $(OutputPath)$(TargetSName).sm8这是生成*.s19文件的。2.如欲生成HEX文件,设置如下:chex -fi-o $(OutputPath)$(TargetSName).hex ...
初学STM32遇到的一些问题
1.设置工程时,如果忘记了在C/C++选项卡上设置STM32F10X_HD,USE_STDPEFIPH_DRIVER编译时会报如下的错误2.要注意新建工程包含库文件的路径是\Libraries\STM32F10x_StdPeriph_Driver\inc而不是\Libraries\STM32F10x...
如何在IAR中通过Watch窗口观察局部变量的值
在while(1)处设一断点,在Debug模式下通过Watch窗口观察变量:现在回过头去看IAR中的”Options — c/c++ compiler — Optimization[ˌɔptimaiˈzeiʃən] — Level” 选项:Level的缺省值为Low,当...
解决STM8L101单片机IO口模拟串口通讯发生的奇怪现象
在while(1){}的循环中,无论是接收还是发送。第一次循环的收发数据都是错的,此后的循环均正确。比如:PC一个字符一个字符的发送0x01,0x02,0x03,接收到3个字符MCU就发回来,但第1次循环接收到是错误数据0x40,0xA0,0xE0,此后再...
STM32 3.5固件库带sdio版本V4.5.0 bug修改
1:SD_WaitReadOperation()函数或者SD_WaitWriteOperation()函数进入死循环原因:数据传输错误导致传输中断,无法满足退出等待的判断条件。代码分析:SD_Error SD_WaitReadOperation(void){SD_Error errorstatus = SD_OK;whi...
STM32库函数USART_SendData的缺陷和解决方法
1、问题及现象使用USART_SendData()函数非连续发送单个字符是没有问题的;当连续发送字符时(两个字符间没有延时),就会发现发送缓冲区有溢出现象。若发送的数据量很小时,此时串口发送的只是最后一个字符,当发送数据量大时,...
浅谈ARM Cortex-M0/M0+ 中的中断抢占问题
下面让我们在Kinetis KL26芯片上来实际操作一把吧。KL26芯片为ARM Cortex M0+内核。硬件:FRDM_KL26Z软件:FRDM-KL26Z_SC_Rev_1.0 + IAR7.41) 先做第一个实验:程序中开启了两个定时器,一个为TPM2,周期10ms,另外一个PIT,周期1s...
通过脚本直接生成JIC文件的方法
JIC文件的转换方法,是在工程全编译后生成SOF文件,然后再通过QII文件菜单下的转换工具来进行转换,如图1所示。图1:配置文件转换工具今天给大家介绍一种通过脚本让Quartus II在编译过程的同时自动生成JIC文件。前提是设计者...
DSP硬件设计几个注意事项
以下是DSP硬件设计的一些注意事项,各位同仁可以参考。时钟电路选择原则1,系统中要求多个不同频率的时钟信号时,首选可编程时钟芯片;2,单一时钟信号时,选择晶体时钟电路;3,多个同频时钟信号时,选择晶振;4,尽量使用DSP...
DSP与外接存储器的连接方法
1 引言存储器接口分为ROM接口和RAM接口两种。ROM包括EPROM和FLASH,而RAM主要是指SRAM。TMS320C5409具有32K字的片内RAM和16K字的掩膜ROM。但是在DSP应用的很多场合,尤其是带信号存储的DSP应用来说,TMS320C5409的片内存储...
嵌入式应用中存储器类型选择的技巧
存储器的类型将决定整个嵌入式系统的操作和性能,因此存储器的选择一个非常重要的决策。无论系统是采用电池供电还是由市电供电,应用需求将决定存储器的类型(易失性或非易失性)以及使用目的(存储代码、数据或者两者兼有)...
DSP开发入门经验分享
在你进行DSP开发之前,你应该明确以下几个问题:(1).你是否应该或需要使用DSP?(2).你应该选择哪个型号的DSP?(3).你熟悉你即将使用的DSP吗?包括它的硬件结构、外设控制、指令系统、寻址方式以及开发环境(工具)?1-1为什么...
利用System Console工具对SoC设计进行调试
概述传统fpga逻辑工程师要开始进行基于SoC的fpga设计,确实有一些难题。这一系列的文档大致记录下本人学习SoC开发的一些历程,根据设计文档跑了一些例程,记录这些参考设计学习的过程,以便随时“温故知新”。本文...
SoC FPGA配置与启动
下图是HPS启动的详细步骤:Altera的SoC FPGA启动过程总体可以使用上图来概括,fpga和arm的配置和启动又可以分为3种不同情况(Xilinx似乎只有一种情况)。分别是fpga和arm彼此独立配置和启动、FPGA先配置然后通过fpga启动arm,...
QuartusII14.1安装问题
具体的解决方法,是直接点Ignore忽略就好。安装完之后,发现还是可以使用的。这个问题应该是altera提供的安装批处理文件出错,这个批处理似乎是先要将解压的安装文件拷贝到安装目标地,然后再进行安装。但是在拷贝的时候不知...
Start信号的测量
图1:Start信号传播框图所谓的Start信号是为了精确测量各个随机脉冲的到达时间,而在系统的角度提供的一个时间基准。所以Start信号是否精确地“同时”到达各自的目的就显得非常关键。在实验室可以通过Virtual ...
FPGA例化的内部RAM读取延迟差异
问题在进行查找表读取实验的时候,已经验证FPGA内部RAM(单口、单时钟)读取动作在地址有效后下一个时钟读取的数据就有效,如图1所示。而在今天调试符合仿真的时候,发现仿真数据从RAM读出送给CS时需要等待2个时钟周期,如图2所...
逻辑实现PCS模块
图1:StratixIVGX器件Transceiver数据路径框图可以看到每个transceiver通道包括发送和接收通道,其中发送通道包含了发送通道PCS以及发送通道的PMA;同样接收又进一步分为接收PCS和PMA。根据我们前面的介绍,我们知道,CMU通道...
有关altera下载器脚本命令介绍
一、quartus_pgmw在介绍quartus_pgm之前,我们先来看另外一个命令,即quartus_pgmw,这个命令可以在命令行下执行的命令用于启动programmer的GUI,所以如果Quartus II软件没有启动,而又只是进行程序下载的时候,可以简单地通过这...
TCL脚本存取二进制文件应用举例
先来简单介绍下我们项目的基本要求吧,如图1所示,项目中有22个FPGA,每个FPGA存有3种表格,而每种表格都有6个block,每一个block的表格在实际产品使用的时候都有可能需要更新,这时候就需要生成表格,然后写入到FPGA,具体如何写入F...
VHDL与Verilog比较之设计实体
VHDL设计单元如图1所示为VHDL设计单元的举例,后面逐一进行介绍,图1:VHDL设计单元举例1、实体VHDL的设计实体有点象设计的头,由实体名、类属表、端口表、实体说明和实体语句组成。所以一般我们在进行逻辑设计的时候,实体主...
SDRAM控制器逻辑调试问题记录
问题1:刷新周期这个问题在http://www.eeskill.com/group/topic/id/1930中已有记录,之前是关于4096和8192刷新周期的问题,即SDRAM行地址数,也就是SDRAM总共有多少个地址线的问题。现在重新提出来是因为发现SDRAM有偶发的某...
ALTERA器件中复位电路实现之异步复位同步化
为了避免纯粹的同步复位和纯粹异步复位的问题,可以使用一种叫做同步化的异步复位,我们称其为第三类复位。这种复位完全结合了异步复位和同步复位的优势,我们知道异步复位的优势是不参与数据路径,所以不影响数据路径速度,而...
所见即所得之逻辑单元端口取反结构实例分析
根据前面博文对所见即所得的简单展示,使得我们了解到了ALTERA器件逻辑单元某些输入端口确实包含了这种自动可编程取反的硬件结构。这里我将给出一个具体实例来为大家展示这种特性。图1:算术模式下DATAF进入ALM的路径图1...
FPGA学习需注意的几个重要问题
1.基础问题FPGA的基础就是数字电路和HDL语言,想学好FPGA的人,建议床头都有一本数字电路的书,不管是哪个版本的,这个是基础,多了解也有助于形成硬件设计的思想。 在语言方面,建议初学者学习Verilog语言,VHDL语言语法规范严格,...
FPGA时序约束的几种方法
下文总结了几种进行时序约束的方法。按照从易到难的顺序排列如下:0. 核心频率约束这是最基本的,所以标号为0。1. 核心频率约束+时序例外约束时序例外约束包括FalsePath、MulticyclePath、MaxDelay、MinDelay。但这还不...
FPGA基础知识及工作原理
1. FPGA-现场可编程门阵列每一块FPGA芯片都是由有限多个带有可编程连接的预定义源组成来实现一种可重构数字电路。图1.FPGA不同构成FPGA芯片说明书中,包含了可编程逻辑模块的数量、固定功能逻辑模块(如乘法器)的数目及存...
FPGA的基本结构:六大组成部分
每个单元简介如下:1.可编程输入/输出单元(I/O单元)目前大多数FPGA的I/O单元被设计为可编程模式,即通过软件的灵活配置,可适应不同的电器标准与I/O物理特性;可以调整匹配阻抗特性,上下拉电阻;可以调整输出驱动电流的大小等...
如何学习FPGA?FPGA学习必备基础知识
(一) 要了解什么是FPGA既然要玩转FPGA,那我们首先最重要的当然是要了解什么FPGA。FPGA(Field-Programmable Gate Array),即现场可编程门阵列。看到编程两个字码农就笑了,不就是编程嘛,那可是我们的强项。且慢,此编程非彼编...
FPGA管脚分配需考虑的因素
一般较好的方法是在综合过程中通过时序的一些约束让对应的工具自动分配,但是从研发的时间段上来考虑这种方法往往是不可取的,RTL验证与验证板设计必须是同步进行的,在验证代码出来时验证的单板也必须设计完毕,也就是管脚...
CPLD初学者入门的知识总结
CPLD按英语说是复杂可编程逻辑器件,对于一个硬件工程师来说,能应用cpld技术是一个十分强大的能力。它的应用可在根本上解决许多数字电路设计的问题,能大幅度改变设计思想,大幅度提高工作效率,甚至可以把以前的数十颗普通分...
完善FPGA系统设计的三个原则
一,面积与速度的平衡互换原则这里的面积指的是FPGA的芯片资源,包括逻辑资源和I/O资源等;这里的速度指的是FPGA工作的最高频率(和DSP或者ARM不同,FPGA设计的工作频率是不固定的,而是和设计本身的延迟紧密相连)。 在实际设计中...
PIC24单片机在血糖仪中的应用
血糖仪测试原理血糖值的检测方法采用的是生物电化学方法,其原理:血糖测试条插入血糖仪后,在测试条的顶端滴入血样,血液中的葡萄糖与血糖测试条上的酶发生化学反应,产生电子或微电流, 电子数量或者微电流的强弱随着血液中血...
FPGA学习经验的总结之二:AXI4-Stream协议
一、接口信号描述二、握手机制只有当VALID和READY同时为高时,才能进行传输。VALID和READY信号的先后顺序有一下三种形式:2.1VALID早于READY信号2.2READY信号早于VALID信号2.3 VALID信号与READY信号同时三、基本事务AXI4...
FPGA学习经验的总结之一:AXI4协议
一、特点单向通道体系结构:信息流只以单方向传输,简化时钟域间的桥接,减少门数量。当信号经过复杂的片上系统时,减少延时。支持多项数据交换:通过并行执行猝发操作,极大地提高了数据吞吐能力,可在更短的时间内完成任务,在满足...
FPGA四大设计要点的解析
FPGA的用处比我们平时想象的用处更广泛,原因在于其中集成的模块种类更多,而不仅仅是原来的简单逻辑单元(LE)。 早期的FPGA相对比较简单,所有的功能单元仅仅由管脚、内部buffer、LE、RAM构建而成,LE由LUT(查找表)和D触发器构成...
版本控制系统的十个技巧
版本控制系统是在开发人员之间共享源代码的一种极好方法。这些系统能够让多人同时修改相同的代码集而不会发生频繁来回发送文件的风险。当开发出现问题时,这些系统能够确保简单的按一下钮就可以回到开发前的完美状态。...
关于cic滤波器的FPGA实现
一、关于多采样率数字滤波器很明显从字面意思上可以理解,多采样率嘛,就是有多个采样率呗。前面所说的FIR,IIR滤波器都是只有一个采样频率,是固定不变的采样率,然而有些情况下需要不同采样频率下的信号,具体例子我也不解释了...
关于stm32_IO口的基本操作
一、IO口的基本操作(1)IO口模式:GPIO_Mode_IN输入模式,输入3.3V或0V 的高低电平。例如按键程序就是配置称输入模式GPIO_Mode_OUT输出模式,输出3.3V或0V 的高低电平。例如LED闪烁程序配置成输出模式。GPIO_Mode_AF复用工作...
Jlink v8 指示灯不亮,电脑无法识别的解决办法
放心,JLINK是没那么容易坏的,除非用火烧它。即便是山寨得也是如此。可以通过刷固件得方法解决。J-LINK是使用过程中,如果内部固件意外损坏或丢失,请参考下面操作步骤说明,重新烧录JLINK固件。安装固件烧录软件请ATMEL官方...
复活了JLINK V8 鸡冻了(WIN7自动安装驱动安装错了)
具体刷新方法见《JLINK V8固件烧录指导》,拆开JLINK,有两个短接跳线,开始短接顺序错了,然后灯就永远灭了。心中的希望。。。但是烧固件的软件SAM-PROG v2.4 按钮writeflash一直灰色,捣鼓N遍短接跳线,依然没法刷新。后来打开...
J-LINK可能遇到的问题及解决方法汇总
1.1J-Link指示灯不亮了,USB无法识别到CPU解决办法:我们首先确认连接仿真器的电脑USB口是否是好的,能不能识别到USB设备。我们可以用一些电脑设备识别,如U盘、鼠标等测试,或者是换其它的USB口,看看灯是否亮。要是都不亮的话,...
STM32调试过程中读保护写保护造成的无法擦写芯片问题
问题描述:调试Flash读保护时,Jlink不能下载程序。调试flash读保护时,点了jlink中Unsecure chip 后 能连接、能擦出芯片,但不能下载程序和读芯片,请问怎样解决···binglin:J-Flase ARM里下载程序,芯片型...
利用脚本抽取警告QII警告信息方法二
前面一篇文章(http://www.eeskill.com/article/id/38730)谈到可以使用grep指令抽取字符信息,只是该指令无法在MS的命令行(CMD)下支持,但是该指令是标准的脚本指令,我们可以在另外一个command shell下使用这条指令,并且也可以...
DSTFT的FSK通信系统建模仿真及DSP代码生成
引言 数字信号处理技术在最近20年获得了广泛的应用。数字信号处理器(DSP)是这项技术的核心,其中,可编程的DSP可以将性能很好的信号处理算法方便地应用到实时信号处理中。在DSP软件设计的整个过程中,编程者常常要花费大量的...
基于STC12C2052的对讲机加密系统设计
引言 CTCSS (Continuous Tone Controlled Squelch System,连续语音控制静噪系统)是一种将低于音频频率的频率(67.0~250.3 Hz)附加在音频信号中一起传输的技术。国际标准的CTCSS编码一共有38组频率,因为这些静噪信号频率为67...
具有技术保护功能的单片机程序固化系统设计
引言由于单片机技术的普及,产品智能化程度得到不断提升。通常来说,单片机程序代码的优化程度决定产品的智能化程度。众所周知,在分工越来越明确的现代社会中,技术开发者与产品生产者常常是不统一的,因此需要进行技术转让。...
TMS320F2812与CPLD的视频采集系统接口设计
引言随着现代视频采集处理技术的快速发展,视频采集系统接口在智能防盗、智能交通、银行、智能小区、医疗行业以及消防报警等系统中的应用越来越普遍。本文设计的是一个以TMS320F2812为视频A/D转换器,CPLD为时序和逻辑控...
FPGA和ARM的Profibus-DP主站通信平台设计
引言ProfibusDP是由西门子公司推出的一种开放式现场总线标准,用于现场级分布式自动化外设之间的高速数据传输。Profibus在2007年4月突破2000万节点大关。据PI(世界性的现场总线Profibus用户组织)称现在已经超过2500万...
MPC860T与DSP的HPI口通信设计
引言目前,在各种网络安全产品中,往往需要对大量的通信数据进行快速加密运算处理,以提高网络和信息的安全性。这对系统的数据处理能力和通信控制能力提出了很高的要求。如果该系统仅用一个DSP来实现,那么实际应用中要求DSP...
在ARM处理器上设计FIR低通滤波器
引言电阻抗成像技术是利用生物组织与器官的电特性及其变化,提取与人体生理、病理状况相关的生物医学信息的一种无损伤检测技术,是当今生物医学工程研究的热点课题之一[1]。电阻抗成像硬件系统中,滤波器是重要的组成部分...
AD9707高速DAC的内部寄存器配置
引言随着通信、工业仪器设备和便携式设备的发展,新一代高速DAC逐渐朝高性能、低功耗、芯片多功能集成和输入输出高速化的方向发展。AD970X系列DAC针对低功耗特性进行了优化,同时仍保持出色的动态性能,适用于手持便携式仪...