摘要: 几种嵌入式GUI介绍MicroWindowsCentury软件公司维护的,较早出现的开放源代码的嵌入式嵌入式 GUI特点:1主要特色:提供较为完善的图形功能,支持多种外部设备输入,包括LCD、鼠标和键盘等。2核心是基于显示设备接口的,绝大部分使用 C语言开发的,移植性很强。3主要在 linux、wince等操作系统上运行。MiniGUI我国为数不多的在国际比较知名的自由软件之一,早期有魏永明先生和许多志愿者开发,现在有北京飞漫公司(www.minigui.com)进行维护和商业运作。特点:1主要特色:轻量级的图形界面, MiniGUI代码都采用c 语言开发,提供完备的多窗口机制和消息传递机制。 阅读全文
posted @ 2013-04-01 21:40 c_cloud 阅读(2976) 评论(0) 推荐(0) 编辑
摘要: SDRAM DQM的解释,总算明白了数据掩码在讲述读/写操作时,我们谈到了突发长度。如果BL=4,那么也就是说一次就传送4×64bit的数据。但是,如果其中的第二笔数据是不需要的,怎么办?还都传输吗?为了屏蔽不需要的数据,人们采用了数据掩码(Data I/O Mask,简称DQM)技术。通过DQM,内存可以控制I/O端口取消哪些输出或输入的数据。这里需要强调的是,在读取时,被屏蔽的数据仍然会从存储体传出,只是在“掩码逻辑单元”处被屏蔽。DQM由北桥控制,为了精确屏蔽一个P-Bank位宽中的每个字节,每个DIMM有8个DQM信号线,每个信号针对一个字节。这样,对于4bit位宽芯片,两个 阅读全文
posted @ 2013-04-01 16:31 c_cloud 阅读(966) 评论(0) 推荐(0) 编辑
摘要: 本文通过简单的测试程序,明确给出了ALTSHIFT_TAPS的用法以及时序:首先介绍一下ALTSHIFT_TAPS Quartus II中的MegaWizard® Plug-In Manager提供一种基于RAM的Shift Register 宏函数,称为ALTSHIFT_TAPS megafunction,产生一个参数化可配置的包含Taps的移位寄存器。 ALTSHIFT_TAPS megafunction产生的移位寄存器的容量主要通过以下几个参数控制:WIDTH,TAP_DISTANCE,NUMBER_OF_TAPS等。其中WIDTH表示shiftin shiftout的输出.. 阅读全文
posted @ 2013-03-26 16:37 c_cloud 阅读(4115) 评论(0) 推荐(0) 编辑
摘要: 今天用vhdl写数字时钟显示器:出现以下问题:1、Error (10822): HDL error at mintue.vhd(37): couldn't implement registers for assignments on this clock edge一个进程只能有一个上升沿判别语句;process中如果有两个以上的判别语句,则出现以上错误;Error (10821): HDL error at mintue.vhd(19): can't infer register for "count_6[2]" because its behavior d 阅读全文
posted @ 2013-01-09 23:54 c_cloud 阅读(8181) 评论(1) 推荐(0) 编辑
摘要: 怎样用modelsim做后仿(编译工具采用quatus)step1:在qurtus改变编译选项: assignments->EDA tool setting:选择verilog还是vhdl。step2:编译。你会在你的工程所在目录 看到一个simulation的目录,这里面有你生成的网表文件和标准延时文件。step3:在目录:\quartus\eda\sim_lib找到你选用器件对应的库文件,将库文件和网表文件以及延时文件和testbench文件放在同一目录,在modelsim里进行编译库文件、网表文件以及bench文件。step4:编译成功后,然后进行load,在load design 阅读全文
posted @ 2012-12-27 11:58 c_cloud 阅读(590) 评论(0) 推荐(0) 编辑
摘要: 1) QuartusII对代码进行时序仿真时出现Error: Can't continue timing simulation because delay annotation information for design is missing.原因:如果只需要进行功能仿真,不全编译也是可以进行下去的,但时序仿真就必须进行全编译(即工具栏上的紫色实心三角符号那项)。全仿真包括四个模块:综合器(Synthesis)、电路装配器(Fitter)、组装器(Assember)和时序分析器(Timing Analyzer),任务窗格中会有成功标志(对号)。2) 在下载运行的时候,出现下面的错误: 阅读全文
posted @ 2012-12-13 15:40 c_cloud 阅读(2170) 评论(0) 推荐(0) 编辑
摘要: Error: Can't continue timing simulation because delay annotation information for design is missing原因如下:CAUSE: You attempted to simulate a design whose netlist has not been annotated with delayannotation information by the Timing Analyzer or Fitter. As a result, the Simulator cannotcontinue the c 阅读全文
posted @ 2012-12-13 15:31 c_cloud 阅读(2336) 评论(0) 推荐(0) 编辑
摘要: “信号不能在多个并发进程中赋值”这是个代码的可综合方面的要求,也就是说一般综合工具会对此报错的,但从仿真角度上说是没有问题的,除非多个赋值造成冲突导致仿真无法继续,modelsim是纯粹的仿真工具,它不会关心代码是否可综合;据我所知,采用波形输入在quartus下进行时序仿真是需要先综合的,这样工具就会检查代码在可综合性方面的问题,因此会报你上述错误.只要将复位操作分开到每个寄存器描述进程中表达就行了. 1 -- 计数器 2 counter:process (clk, rst) 3 begin 4 if rst = '1' then 5 -- Asynchronous ... 阅读全文
posted @ 2012-12-12 11:28 c_cloud 阅读(4348) 评论(1) 推荐(0) 编辑
摘要: 摘要:本应用指南阐述如何将1-Wire主机(1WM)嵌入到用户ASIC设计之中。本文包含了采用Verilog语言如何创建1-Wire主机例程的摘要。本文提到的DS89C200只是一个理论上的微控制器。另外,假定读者已经具备了1-Wire主机DS1WM和1-Wire协议的一般知识。引言1-Wire主机DS1WM,称作1WM,创建它是为了便于实现主机CPU通过1-Wire总线与器件进行通信,而无须涉及位时序操作。本应用指南阐述如何将1-Wire主机(1WM)嵌入到用户ASIC设计之中。本文提到的DS89C200只是一个理论上的微控制器,另外,假定读者已经具备了1-Wire主机DS1WM和Maxim 阅读全文
posted @ 2012-12-09 21:52 c_cloud 阅读(674) 评论(0) 推荐(0) 编辑
摘要: 摘要:本应用笔记介绍了嵌入式应用中的四类1-Wire主机电路,并讨论了它们与备用(即未用)系统资源相关的性能与要求。文中给出的电路适用于半径不超过1米,只挂接少量1-Wire从器件的小型网络。文章还介绍了针对具体应用寻找最具性价比的1-Wire主机的指令和决策表。这里假设读者熟悉1-Wire通信和微控制器的基本知识。引言1-Wire总线是一个简单的信号传输电路,可通过一根共用的数据线实现主控制器与一个或一个以上从器件之间的半双工双向通信。电源和数据通信通过单根数据线传输,使得1-Wire器件具有无与伦比的强大功能,可减少系统间的互联。1-Wire器件通过受专利保护的单触点串行接口提供存储器、混 阅读全文
posted @ 2012-12-09 21:48 c_cloud 阅读(312) 评论(0) 推荐(0) 编辑