自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 一个快速打包Firmware的脚本

 一般SDK可以直接打包Firmware,但是我们常要制作不同功能的FW用来Debug和发行,通常的做法是将不同功能的配置文件另存,需要时载入,这样做每次要重新make, 而且config文件被意外修改可能影响功能的稳定。我写了一个sigmadesigns的FW打包小脚本,每次生成新的二进制文件后,轻松copy,再MakeROM一下,只要几秒种就可打包好FW。cat MakeROM#!/b

2007-07-03 19:35:00 1040

原创 开始步入EM86XX的程序开发

这几天Blog很不正常,页面打不开,我还以为会资料丢失了呢!今天终于看到了。前一段时间接到了新的任务,修改新一代MP4 Player的介面与功能,使用的是EM8620芯片,相关资料很少,SigmaDesgin的网站上的技术资料没有可供下载的,连datasheet都没搜到。不过也没关系,台北有相关的开发资料。EM86XX使用的linux嵌入式系统,我是刚接触linux的,先要好好学习一下系统的使用,

2005-11-07 17:07:00 1853

原创 2005-10-14 程序移植到89C420的工作基本完成

经过几天的努力,程序移植到89C420的工作基本完成了,进入测试阶段。在89C420新功能的开发过程中也遇到了不少问题,走了一些弯路,不过都还算顺利的解决了。首先是配置串口的问题,以前都是使用单串口的MCU,没有双串口的相关经验。开始想过是两只串口使用同一个Timer来控制波特率,但Datasheet上没有介绍这么做,提到了一点,Serial port 1只能使用Timer1来控制,而 Seria

2005-10-14 21:40:00 1227

原创 2005-10-07 发现89c420的Loader测试板有问题

    昨天拿到了89c420的Loader测试板与芯片样品,台北已经焊好了板子,我接上RS232的串口线,执行Loader420,功能正常,可以烧写,但发现了一个问题,就是测试程序是P1输出指示灯全亮,而所有LED不停的闪烁,检查不出原因所在。    今天继续,分析原因是程序在不停的重启,所以P1口的状态为交替的输出高电平与低电平。一般有四种原因造成不停的重启:一、系统开机上电复位;二、软件故障

2005-10-07 22:24:00 1136

原创 2005-09-29

    今天研究了一下台北设计的第二代T3051线路图,第二代暂命名为T5052。仔细对比第一代,改进点是MCU处理能力与存储容量有了很大提高,扩展了串行口,MCU自带两个双工口,另外用了一只串行扩展芯片扩展了两个串行口,共有4个串行口,好像多了一点,暂时还没那么多需求。其它芯片跟一代是一样的,不过片选电路作了修改,主要是因为加入了串行扩展电路的片选功能。如果不要串行扩展的话,片选电路就可以重用以

2005-09-29 21:43:00 815

原创 在Keil C51函数中加入ASM代码

使用C51进行单片机编程是事半功倍的事,但是很多算法上以及编译上的问题,往往使用ASM代码更为方便又高效。但不知什么原因,Keil在实现C51夹杂ASM代码比SDCC麻烦很多,方法如下:预处理指令 #pragma asm 开始ASM代码预处理指令 #pragma endasm 结束ASM代码如果就这样直接编译的话,会出现以下错误:error C272: asm/endasm requires

2005-04-25 17:34:00 11892

原创 单片机中unsigned char转字符串的方法

在单片机中,常用到数字与字符的方法,在C中都是使用itoa函数,C51也有这个函数,但是,8051的RAM是很有限的,所以尽量避免使用int型,常用的是unsigned char。当需要转换成字符串时用itoa的话,还是有点浪费。还是自力更生,自己写了一个,代码如下: typedef unsigned char BYTE;BYTE * ByteToStr(BYTE n){ BYTE str[4];

2005-04-23 10:24:00 9163 2

原创 VC++等待线程结束的方法

今天在调试我的串口扫描程序的停止问题,原来是用两个线程分别扫描设备与数据库的,扫描时跟据bScanBreak变量的值来确定是否结束,停止按钮设定bScanBreak的值。bScanBreak = true;bool bScanState = true;while( bScanState){        Sleep(500);        bScanState = (bScanThread1 |

2005-04-21 22:38:00 10116 2

转载 在打印时如何度量字符串?

Q:When programming printing code, how to measure string?A:    You cant use Graphics.MeasureString Function, and must use typographic StringFormat object.Reason is: when printing string size is resolu

2005-01-20 19:43:00 1447 2

原创 谁的IP跟你冲突

    企业网络管理中,对IP的管理很重要。在组网一开始就要把IP分配好,要对IP进行区间划分(不是子掩码分段,仅仅是为了方便管理):哪一区间给服务器,哪一区间给网络设备,哪一区间给电脑用户等等。服务器与网络设备肯定是固定的IP,管理起来才方便。其他的用户用动态分配就要了。    我们常用到一个技巧是对特定区间的IP提供特别的网络服务,如使用高速Internet专线。这开始一般都是隐蔽的,但时间一

2005-01-19 20:32:00 1263

对比GAS和NASM

本文解释两种最流行的 Linux® 汇编器 —— GNU Assembler(GAS)和 Netwide Assembler(NASM) —— 之间一些比较重要的语法 差异和语义差异,包括基本语法、变量和内存访问、宏处理、函数和外部例程、堆栈处理以及重复执行代码块的技术方面的差异。

2010-10-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除