终于可以上手Zedboard了,装完ISE,Vivano就已经花了半天时间了。下午开始,按照《嵌入式软硬件协同设计实战指南》这本书,一步步往下走········首先在SD卡分区上就出现了问题:为什么SD卡一定要在Linux上分区? 不是一定要在Linux上分的,也可以在windows下,书本上没说清楚,或许大家都懂吧,估计是我对这种存储设备比较文盲······o(╯□╰)o在windows下需要额外下载软件,譬如说PM9.0什么的,软件很多不一一列举。因本 Read More
posted @ 2014-03-22 21:31 Silent Higher Views(4403) Comments(1) Diggs(0) Edit
launch edge和latch edge分别是指一条路径的起点和终点,只是一个参考时间,本身没有什么意义,latch_edge-launch_edge才有意义。1. 背景 静态时序分析的前提就是设计者先提出要求,然后时序分析工具才会根据特定的时序模型进行分析,给出正确是时序报告。 进行静态时序分析,主要目的就是为了提高系统工作主频以及增加系统的稳定性。对很多数字电路设计来说,提高工作频率非常重要,因为高工作频率意味着高处理能力。通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。2. 理论分析 2.1固定参数launch edge、latch edg. Read More
posted @ 2013-08-04 16:24 Silent Higher Views(542) Comments(0) Diggs(0) Edit
记得好早以前为了建一个keil的工程折腾了好久,在这里写写基本的Keil工程创建方法,以防自己以后再忘记: 新建工程 保存工程 选择器件 在这边新建文件夹,然后就是添加程序代码到里面去了。其中一些文件跟文件夹的作用,可以去本人的另一篇转载的文章 http://www.cnblogs.com/Silent-Higher/archive/2013/02/22/2922068.html里面看。在代码中基本要包含的头文件如下:#include "stm32f10x.h" /* 如果要用ST的固件库,必须包含这个文件 */#include <stdio.h> /* 因.. Read More
posted @ 2013-02-22 14:23 Silent Higher Views(10117) Comments(0) Diggs(0) Edit
volatile 影响编译器编译的结果,指出,volatile 变量是随时可能发生变化的,与volatile变量有关的运算,不要进行编译优化,以免出错,(VC++ 在产生release版可执行码时会进行编译优化,加volatile关键字的变量有关的运算,将不进行编译优化。)。例如:volatile int i=10; int j = i; ... int k = i;volatile 告诉编译器i是随时可能发生变化的,每次使用它的时候必须从i的地址中读取,因而编译器生成的可执行码会重新从i的地址读取数据放在k中。 而优化做法是,由于编译器发现两次从i读数据的代码之间的代码没有对i进行过操作,它 Read More
posted @ 2013-02-22 13:38 Silent Higher Views(297) Comments(0) Diggs(0) Edit
1.1 基于标准外设库的软件开发1.1.1 STM32标准外设库概述STM32标准外设库之前的版本也称固件函数库或简称固件库,是一个固件函数包,它由程序、数据结构和宏组成,包括了微控制器所有外设的性能特征。该函数库还包括每一个外设的驱动描述和应用实例,为开发者访问底层硬件提供了一个中间API,通过使用固件函数库,无需深入掌握底层硬件细节,开发者就可以轻松应用每一个外设。因此,使用固态函数库可以大大减少用户的程序编写时间,进而降低开发成本。每个外设驱动都由一组函数组成,这组函数覆盖了该外设所有功能。每个器件的开发都由一个通用API (application programming interfa Read More
posted @ 2013-02-22 12:11 Silent Higher Views(6074) Comments(0) Diggs(2) Edit
一直在想为什么FPGA的频率能达到那么高而STM32等一些控制器的频率却是比较慢,到现在还没真正想通。在百度上搜索FSMC的频率时看到了这样一个讨论,正如里面的版主说的通过示波器测量可以测出FSMC的频率跟相应的配置的问题吧。可惜现在暂时没示波器,就先记下吧。讨论网址:http://bbs.21ic.com/icview-111330-1-1.html这是官方的嘛? Read More
posted @ 2013-02-16 22:57 Silent Higher Views(585) Comments(0) Diggs(0) Edit
存储器可分为易失性存储器和非易失性存储器,易失性存储器一般有:SRAM、DRAM、SDRAM等,而非易失性存储器有:ROM(只读存储器)、PROM(可编程式只读存储器)、EPROM(电可改写只读存储器)、EEPROM(电可擦除编程式只读存储器)、FLASHMemory(闪存)等。若数据需要长期保存,则必须存储在非易失性的存储器里面。易失性存储器在掉点之后数据无法保存,将会丢失,而非易失性存储器在掉电之后仍然可以保存资料。SRAM:中文名为静态随机访问存储器,不需要进行刷新操作,只要不掉电数据就不会丢失。“随机访问”意味着存储器里面的内容可以以任何顺序进行访问。缺点是集成度低。常用作告诉缓存,比 Read More
posted @ 2013-02-16 21:27 Silent Higher Views(257) Comments(0) Diggs(0) Edit
从接触MCS-51单片机开始,我们就知道有一个叫KEIL的软件。在开发单片机时,使用的是C语言或者汇编语言,我们知道,这两种语言都不能直接灌到单片机里面,执不执行暂且不说,光是代码的体积,就足以撑破整个单片机。所以,我们需要一个软件,把C语言或者汇编语言编译生成单片机可执行的二进制代码,而且它的体积也非常的小,足够存放在单片机的存储器里面。KEIL公司(现在是ARM公司的一个公司)的软件恰好可以提供这样的功能,并且它还有很多优点,比如工程易于管理,自动加载启动代码,集编辑、编译、仿真一体,调试功能强大等等。因此,不管是初学单片机的爱好者,还是经验丰富的工程师,都非常喜欢使用这些软件。但是,.. Read More
posted @ 2013-02-02 11:00 Silent Higher Views(5111) Comments(0) Diggs(0) Edit
文章作者:姜南(Slyar)文章来源:Slyar Home (www.slyar.com) 转载请注明,谢谢合作。恩,问这个问题的人太多了,懒得继续回答,直接贴上来自己看。。。优先级运算符名称或含义使用形式结合方向说明1[]数组下标数组名[常量表达式]左到右()圆括号(表达式)/函数名(形参表).成员选择(对象)对象.成员名->成员选择(指针)对象指针->成员名2-负号运算符-表达式右到左单目运算符(类型)强制类型转换(数据类型)表达式++自增运算符++变量名/变量名++单目运算符--自减运算符--变量名/变量名--单目运算符*取值运算符*指针变量单目运算符&取地址运算符& Read More
posted @ 2012-12-16 19:07 Silent Higher Views(224) Comments(0) Diggs(0) Edit
博客开通好久了,总是以各种理由,各种忙碌来限制了自己的博客之旅,一直荒废,直到现在······ 总觉得一个知识点在没掌握的时候,不知道该怎么记录,在已经掌握了之后,觉得挺简单的,自己都懂了,没什么可记录的,可是,渐渐的发现我错了······ 总以为博客是给别人看的,应该要写的很好,可是,渐渐地发现我还是错了······ 好记性不如烂笔头,再说我这个记性不是很好的人,实在更应该多敲敲键盘的·· Read More
posted @ 2012-12-16 18:41 Silent Higher Views(122) Comments(0) Diggs(0) Edit