为方便工作上做测试,移植FreeRTOS到STM32F103xx,先做简单的UART1 printf. 工程编译通过,运行逻辑也确认可行,可就是无法正常打印消息.对比了网上的移植工程也是一致,硬件仿真在汇编窗口看到停留在“0x0800XXXX BEAB BKPT 0xAB",遂网上搜索"BKPT",找到下面网友的笔记, 参考:014:针对mdk中STM32程序无法使用printf,产生停留BEAB BKPT 0xAB处问题的解决(转) 试了“问题3”后可正常运行了,再看“问题…
引言 嵌入式系统的开发最终需要将编译好的代码下载到具体的微控制器芯片上,而不同厂家的微控制器芯片有不同的下载方式.随着技术的发展和应用需求的更新,用户程序加载趋向于在线编程的方式,越来越多的芯片公司提供和开放了用户更新程序的接口与方式,以提高整个系统的可靠性和可维护性.ST公司基于CortexM3内核的STM32系列产品得到了广泛应用,在许多基于STM32系列产品的开发过程中不可避免要进行用户程序的加载.本文在介绍IAP技术原理基础上,详细论述使用该技术在STM32F103ZE芯片上实现用户在线…
MDK st-link下载STM32程序出现Internal command error和Error:Flash download failed. Target DLL   是因为目标板的芯片处于休眠的状态,在尝试连接目标板时候也会出现报错Internal command error Flash download failed target dll has been can的现象,解决办法是使目标板退出休眠,即按住reset键再下载程序,看到USB通讯灯闪后一小会儿(自己把握)后放开reset就…
网上基于MDK的移植数不胜数,但是基于IAR的移植几乎没有,因为官方的例程就是基于IAR的,所以移植起来很简单,没人介绍,但还是得小心谨慎,一不小心就出错,对于新手来说,查找错误可不是那么容易的.IAR建立工程,这里就不介绍. 以下红色部分需要与MCU型号对应 (1)在官网下载适合自己STM32的uCOS-II库,连接如下,我用的MCU是STM32F103VCT6,属于大容量的,所以选择的库是STMicroelectronics STM32F103ZE. https://www.micrium.…
我们在STM32开发调试过程中,常常需要做些直观的输出,如果手头没有相关的设备或仪器,我们可以使用 IDE自带的工具.这里分享两个基于MDK  IDE的调试输出技巧. 一.使用其自带的逻辑分析仪查看波形. 比方我们需要查看STM32定时器的PWM输出,手头又没有示波器或逻辑分析仪, 尤其学生族.我们可以用MDK自带的逻辑分析仪来察看结果. 假设基于某一款STM32F4芯片,输出一个脉宽为100us,占空比为40%的波形.使用TIM3的通道1输出PWM波形,用到GPIOA_6,即PA6. STM3…
写在前面:本博客为本人原创,严禁任何形式的转载!本博客只允许放在博客园(.cnblogs.com),如果您在其他网站看到这篇博文,请通过下面这个唯一的合法链接转到原文! 本博客全网唯一合法URL:http://www.cnblogs.com/acm-icpcer/p/9308649.html 1.完成硬件编程并确保你的工程文件可以正确通过编译.我使用的Verilog HDL进行编程,硬件编程不在本文讨论范围内,可详见Verilog HDL语言实现的单周期CPU设计(全部代码及其注释).但是我和我…
编写基于TCP的应用程序   这似乎是一个非常简单的话题, 就跟"是个人就能做网站"一样, 你可能也认为"是个人就能写使用TCP socket的网络程序". 不过, 下面介绍的几个基本的原理的做法, 你可能并没有理解. TCP是一种流式的协议, 简单的说, TCP不检查数据的语义, 更不会检查数据的边界, 而应用层一般使用的是报文协议, 所以会有所谓的"粘包""拆包"问题. 为此, 产生了一些特定的用法和模式. 任何应用程序,…
基于Verilog HDL整数乘法器设计与仿真验证 1.预备知识 整数分为短整数,中整数,长整数,本文只涉及到短整数.短整数:占用一个字节空间,8位,其中最高位为符号位(最高位为1表示为负数,最高位为0表示为正数),取值范围为-127~127. 负数的表示方法为正值的求反又加1.例如: 8’b0000_0100; //表示值:4,正值求反为:8’b1111_1011:再加1表示为:8’b1111_1100,这样便得到了-4的表示方法为:8’b1111_1100. 同理,负值变成正值的方法为:负值…
前提: 最近公司里有一个同事,年龄比我大几岁,但是由于是转行来做开发的,许多的关于.net开发技术不是很入行,所以总是会问我一些东西,基于自己以前的一些 经验,总是会愿意给他讲一些总结性的东西,希望他可以对我们所使用到的一些技术,有一些整体性的认识,于是,自己也在这里想写几段话,用来总结归纳一下.         总结的内容: 总结基于.net的WEB程序开发所需要的一些技术:         主要必备的技术分三类:前端.后台.数据库 前端所使用到的一些技术,如下: 1.html 2.div+c…
本文首发于:码友网--一个专注.NET/.NET Core开发的编程爱好者社区. 文章目录 C#/.NET基于Topshelf创建Windows服务的系列文章目录: C#/.NET基于Topshelf创建Windows服务程序及服务的安装和卸载 (1) 在C#/.NET应用程序开发中创建一个基于Topshelf的应用程序守护进程(服务) (2) C#/.NET基于Topshelf创建Windows服务的守护程序作为服务启动的客户端桌面程序不显示UI界面的问题分析和解决方案 (3) 前言 在上一篇…
<Essential C++>读书笔记 之 基于对象编程风格 2014-07-13 4.1 如何实现一个class 4.2 什么是Constructors(构造函数)和Destructors(析构函数) Constructor Member Initialization List(成员初值表) Destructor Memberwise initialization(成员逐一初始化) 4.3 何谓mutable(可变)和const(不变) Mutable Data Member(可变的数据成员…
基于ZigBee和STM32的智能家居控制系统的设计与实现(三) 自从前两篇博客介绍了智能家居系统的基本实现机理后,收到了好多朋友的来信,和我讨论了好多的这方面的知识,在此很高兴,虽然自己做的这个所谓的智能家居看着挺高大上的,其实没有什么了,在内行人眼里都是小儿科.所以如果你是高手,请绕步.对于想要学习这方面知识的小伙伴来说还是有其价值的. 这篇博客就来说说界面的问题吧 界面的实现 打开下位机系统第一版,发现它是这个样子的,才想起来自己当时只是想在PC机上跑跑而已,而如今已经跑在了ARM板上.…
基于DRL和TORCS的自动驾驶仿真系统 --之环境配置 玩TORCS和DRL差不多有一整年了,开始的摸爬滚打都是不断碰壁过来的,近来在参与CMU的DRL10703课程学习和翻译志愿者工作,也将自己以前的一些工作做一些备忘,以作为有兴趣同学的参考. TORCS仿真器平台安装 仿真器平台主要包括两步:安装TORCS,然后添加锦标赛用的patch. TORCS仿真器的安装 The open racing car simulator(TORCS)主页 仿真器源文件下载地址 支持windows和linu…
三个EDA公司都有自己的hardware emulation verification platform: Cadence Palladium, Synopsys ZeBu, Mentor Veloce. 这些工具在IC验证工作中的使用情况如何?与传统的仿真(simulation)相比,emulation platform将对IC的验证方法学产生怎样的影响? 这些工具在IC验证工作中的使用情况如何? 可视为Simulator的补充(不是替代),软件仿真的硬件化,极大提高了仿真效率. 越来越多的公…
<pre style=""><pre class="cpp" name="code">1 #include <windows.h>//① 2 LRESULT CALLBACK WinSunProc( 3 HWND hwnd,      // handle to window 4 UINT uMsg,      // message identifier 5 WPARAM wParam,  // first me…
流控的概念源于 RS232 这个标准,在 RS232 标准里面包含了串口.流控的定义.大家一定了解,RS232 中的"RS"是Recommend Standard 的缩写,即"推荐标准"之意,它并不像 IEEE-1284.IEEE-1394 等标准,是由"委员会定制".因而,不同的厂商在做 RS232 时,多少会有不同,流控也都会存在差异.以下我们与大家一起探讨流控的作用.搭建及如何操作. 本文着重探讨硬件流控. 为什么需要流控? 数据在两个串口…
首个基于NHibernate的应用程序  Your first NHibernate based application 英文原文地址:http://www.nhforge.org/wikis/howtonh/your-first-nhibernate-based-application.aspx 翻译原文地址:http://www.cnblogs.com/13yan/p/5671072.html 本文涉及到的DEMO下载   定义领域模型 让我们开始通过定义一个非常简单的领域模型.目前它是由一…
在我们做系统开发的时候,都会面临一个安装包制作的问题,如何把我们做好的系统,通过安装包工具整合成一个安装包给客户进行安装.安装包的优势就是一步步安装就可以了,不用复制一大堆文件给客户,还怕缺少那个文件导致系统运行出错.本文主要介绍基于DevExpress的Winform程序安装包的制作内容,包括VS2010和VS2013/V2105的不同处理方式. 我们知道,VS2010是最后一个可以使用微软安装包制作工具的VS版本了,所以后面VS2012/2013/2015版本都需要使用第三方安装包制作工具,…
Eclipse 基于接口编程的时候,要跳转到实现类很麻烦,其实Eclipse已经实现该功能. 只要按照Ctrl键,把鼠标的光标放在要跳转的方法上面,第一个是跳转到接口里面,第二个方法是跳转到实现类的位置…
Robocopy是微软Windows Server 2003资源工具包中众多多用途的实用程序之一(它是基于强大的拷贝程序).没错,Robocopy的功能是拷贝文件,你也许会觉得无聊并且要翻阅下一篇文章了,且慢,让我们给这个有趣的小程序一个机会吧.Robocopy能够处理包括巨大的数据字节块在内的复制操作,并且它可以让你确定拥有像Copy和Xcopy等其它拷贝程序那样的技术规范.解释一下,例如你可以用Robocopy去拷贝某一个完整的目录树,而不仅仅是树下的三层.并且,你还可以指定Robocopy…
本人目前从事的工作面对的客户中很多来自高端制造业,他们对CAD/CAE/CAM软件的应用比较多.公司现有的软件产品主要是用于渲染展示及交互,但面对诸如CAD方面的应用(比如基于约束的装配.制造工艺的流程演示等),功能比较薄弱.本人计划在工作之余开始研究一下基于OpenGL的CAD程序开发的基础功能实现.由于目前工作直接使用的商业游戏引擎进行开发,对底层的OpenGL还不是特别熟悉,从产品发展的长远来看,结合CAD的功能应该是大势所趋,而目前利用一些三维CAD二次开发来实现虽然可以临时解决一些功能…
一,下载安装测试arm-none-eabi-gcc编译工具链 1,查看arm-none-eabi-gcc编译工具版本        打开网页:https://sourcery.mentor.com/GNUT ... db0be6eb3fb4a618248        有关详细的工具手册.        2,下载arm-none-eabi-gcc编译工具链        打开网页:https://sourcery.mentor.com/GNUToolchain/release2322      …
1 .使用MDK将STM32的标准库编译成lib使用[图文]  http://www.cnblogs.com/zyqgold/p/3189719.html…
原文:基于4.5Framework web程序.SQLSERVER数据库打包 估计很多朋友和我一样,对于C/S程序打包很熟悉,但对于B/S程序打包一头雾水... 最近公司要求我们把项目和数据库(SQLSERVER)一起打包,然后安装在CD光盘上,打算拿光盘去客户那边实现一键安装.哎!!!最终这个任务给我了, 我只有抱着学习的态度去慢慢摸索. 打包的程序是基于VS2012.MVC4模板开发出来的,框架是4.5版本. 类似于这种4.5框架打包,目前微软好像也提供了一个打包工具 InstallShie…
在VS2012下基于Glut 矩阵变换示例程序:中我们在绘制甜圈或者圆柱时使用矩阵对相应的坐标进行变换后自己绘制甜圈或者圆柱.我们也可以使用glLoadMatrixf.glLoadMatrixd载入变换矩阵后直接使用Glut提供的函数绘制甜圈.这里我在载入变换矩阵后再去绘制坐标轴,所以在程序运行时坐标轴会随着定时器绕Y轴旋转.点击鼠标右键在弹出的菜单里面可以选择是否显示坐标轴.正视图还是透视视图.是否打印变换矩阵. 源代码在VS2012下基于Glut 矩阵变换示例程序:只修改了: GlutTra…
Windows 编程,程序编译使用的命令行工具. 1.cl.exe文件是Visual C\C++的编译器,它将程序源代码文件编译为obj文件. 2.rc.exe文件是资源编译器.工程项目中的.rc文件中包含了对程序中所使用资源(菜单.图标等)的描述.rc.exe将.rc格式的文件编译为.res文件,供链接器链接到可执行文件中. 3.link.exe是Windows平台的链接器,它将cl.exe编译生成的obj文件,资源编译器生成的.res文件,以及lib目录下的lib文件等链接成可执行的exe文…
这一节应该是聊天程序的最后一节了,现在回顾我们的聊天程序,看起来还有很多功能没有实现,但是不管怎么说,都还是不错的.这一节我们将讲多服务器问题(高大上的说法就是负载问题了.)至于聊天程序的文件发送(也即二进制文件发送例如图片)和单点登陆(就是多加一个数组fd_L[],用来记录是否已经登陆过了.),这些问题就不讨论了. 支持多服务器实现负载问题的聊天程序 今天才知道原来我们一直使用的select来处理IO多路复用的这个函数最多只能有1024个连接,因为内部实现里面的数组就是只有1024,多了不行.…
能在xcode5中开发基于IOS7sdk的应用程序兼容ios4.3之后的系统吗?…
安装“Microsoft .NET Framework 2.exe”报错如下: c:\windows\microsoft.net\framework\...类似这种错误都因 .NET Framework受到损害.有一部分程序将无法使用.微软输入法也将瘫痪... ---------------------------Microsoft .NET Framework 2.0 安装程序---------------------------Error 25007.初始化合成时发生错误.安装程序无法使用…
目录 概述 概念解析 单元测试和集成测试 Mock和Stub 技术实现 单元测试 测试常规的bean 测试Controller 测试持久层 集成测试 从Controller开始测试 从中间层开始测试 Mock Stub 返回预设的结果 执行预设的操作 参数匹配 附录 相关注解的汇总 参考资料 概述 本文主要介绍单元测试.集成测试相关的概念.技术实现以及最佳实践. 本文的demo是基于Java语言,Spring Boot构建的web应用.测试框架使用Junit,模拟框架使用mockito. 之前曾…