本博客为本人学生时代的技术博客,工作后10年已经不再更新,需要关注可以访问geekpm.com,点击访问!
摘要: 这个小程序仍然是定时器的运用,比较简单,具体的地方都在注释中注明了,参考注释。/*********************************************程序功能:MCU控制蜂鸣器演奏歌曲《祝你平安》----------------------------------------------拨码开关设置:将BUZZER位拨至ON,其余位拨至OFF测试说明:聆听蜂鸣器“唱出”的乐曲既然是演奏乐曲对于一个音符应该包括两个部分一是声调 二是持续时间,在这个程序中声调是用简单的延时-电平翻转来实现的,改变了延时的时间就改变了声调,而时间是通过计数比较来实现的,当计数值相等时就跳出循环演 阅读全文
posted @ 2010-07-22 14:36 emouse 阅读(1534) 评论(1) 推荐(0) 编辑
摘要: 最近开始430单片机的学习,主要是先把开发板的例程弄懂,我会把程序进行注释和修改在博客中贴出来。 阅读全文
posted @ 2010-07-21 20:55 emouse 阅读(262) 评论(0) 推荐(0) 编辑
摘要: 这个程序是开发板中用来产生不同频率声音的程序,整体程序较为简单,主要是两个定时器的使用,代码及我的注释如下。/*********************************************************程序功能:用固定频率的方波驱动蜂鸣器,共16种音调;在蜂鸣器 发出不同音调的同时,LED发光以二进制数字形式指示 当前音调的编号(1~16)----------------------------------------------------------拨码开关设置:将BUZZER位拨至ON,其余位拨至OFF测试说明:聆听蜂鸣器发声的音... 阅读全文
posted @ 2010-07-21 20:51 emouse 阅读(1001) 评论(0) 推荐(0) 编辑
摘要: 这个程序主要是利用定时器的比较输出功能来产生PWM波控制LED,定时器A的比较输出对应P2.3 P2.4,因此在程序的一开始需要设置比较匹配的工作模式,需要说明的是头文件中已经对各种模式给了详细的定义,不需要在去配置寄存器,程序较为简单,稍微扩展一下去控制舵机也很容易,大家自己分析。/*******************************************************程序功能:用从P2.3和P2.4输出的PWM波形驱动LED闪烁-------------------------------------------------------拨码开关设置:将LED位拨至ON 阅读全文
posted @ 2010-07-21 13:51 emouse 阅读(718) 评论(0) 推荐(0) 编辑
摘要: 这个例子主要还是熟悉有关定时器A的寄存器配置以及IAR的配置方式。/***********************************************程序功能:实现流水灯以三种流动方式和四种流动速度 的不同组合而进行点亮"流动"------------------------------------------------拨码开关设置:将LED位拨至ON,其余拨至OFF测试说明:观察流水灯流动顺序和速度的变化************************************************/#include <msp430x14x.h> 阅读全文
posted @ 2010-07-20 21:58 emouse 阅读(1161) 评论(0) 推荐(0) 编辑
摘要: /***************************************************程序功能:控制8个LED闪烁,用于测试下载功能是否正常---------------------------------------------------测试说明:观察LED闪烁孙浩,2010.7.20***************************************************/#include <msp430x14x.h>/****************主函数****************/void main(void){ /*下面六行程序关闭所 阅读全文
posted @ 2010-07-20 16:13 emouse 阅读(697) 评论(0) 推荐(1) 编辑
摘要: 对于51系统来说,很容易理解编程器和仿真器。通俗的说,仿真器是用来调试仿真的,编程器是用来批量生产时对MCU进行烧写目标代码的。对于MSP430来说,无论仿真还是烧写程序一般可以通过:JTAG、SBW、BSL接口进行。JTAG、SBW接口可以用于仿真接口,BSL接口不能用于仿真。而编程器则三种接口都支持。所以并不能说JTAG只支持仿真不支持编程,这是概念错误,JTAG仅仅是一种接口协议而已。下面简单描述一下三种接口的区别:1、JTAG是边界扫描技术,其在430内部有逻辑接口给JTAG使用,内部有若干个寄存器连接到了430的内部数据地址总线上,所以可以用JTAG访问430内部的所有资源,包括对F 阅读全文
posted @ 2010-07-09 20:57 emouse 阅读(791) 评论(0) 推荐(0) 编辑
摘要: 将图片背景删除,保存为png格式即可,注意颜色必须为RGB模式,否则存储为中找不到png这个格式。 阅读全文
posted @ 2010-07-08 23:06 emouse 阅读(922) 评论(0) 推荐(0) 编辑
摘要: 0. 概述VTune是Intel一个比较强大的性能分析软件。主要包括三个小工具:(1)Performance Analyzer:性能分析,找到软件性能比较热的部分,一般也就是性能瓶颈的关键点,帮助我们收集数据发现问题,至于Analyzer这个功能,有点大言不惭了,还得靠各位大家自己分析了,当然个人认为这一点会是Intel下一步强化该工具的重点。(2)Intel Threading Checker:用于查找线程错误, 能够检测资源竞争、线程死锁等问题. 大家程序在并行化后,可以通过Threading Checker 检测一下有没有多线程相关的错误。(3)Intel Threading Prof. 阅读全文
posted @ 2010-06-17 10:47 emouse 阅读(10163) 评论(1) 推荐(1) 编辑
摘要: 这个问题主要会出现在用CVAVR来编译的程序中。一时兴起想弄个仿真,结果怎么着都不正常,AVR的端口一闪一闪的,觉得很奇怪,后来才发现是看门狗溢出了导致单片机不停的复位,把程序下到网上的proteus的AVR中就可以,网上下的proteus中的ATmega16何库里找出来的不太一样,就是没明白为什么库里调出来的不行。后来在仿真日志中发现原来是看门狗一直都开着,我又没喂狗,因此一直都把处理器复位了,这回我更郁闷,我又没开看门狗,又没配置fuse,为什么自己会开呢,搞了N久后,发现有这个可能,一个CVAVR本身编译之后在proteus仿真中,默认开了看门狗(实际上我并没有开啊!!!而且在实物中,要 阅读全文
posted @ 2010-06-08 19:49 emouse 阅读(526) 评论(0) 推荐(0) 编辑