借用fxmxh出的一个题,有兴趣的朋友不妨试试看;
1:CPU不限,但只准用一个可中断的timer,其他中断、定时器不准用
2:驱动两位数码管(段驱动用164)
3:四个按键
4:驱动无源蜂鸣器,要求输出频率、时间可变,以实现多键音或音乐演奏
(音乐演奏可作为加分题,自由发挥)
5:驱动一个步进电机(四相八拍)
6:有红外遥控接收
总体要求:蜂鸣器响时,数码管不能闪,且蜂鸣器声音不能失真;红外接收要灵
备注:
1、音乐演奏作为加分题,可以选择发挥,不影响总分
2、CPU、编程语言不限,以便大家用自己熟悉的环境编写
3、主要是考考是否有编复杂程序的能力,程序大小不做严格要求
4、程序规范性、程序大小等不做严格要求,但可以别人的评价哦
回复:俺来出题了:一道题区分你是编程老手还是菜鸟
其实就是利用定时器的问题。
回复:俺来出题了:一道题区分你是编程老手还是菜鸟
这点有点难,人耳灵敏度太高了,稍许的延迟都可能造成失真
定时器必须支持可自动重载
cpu速度够快的话,其它也不难
回复:俺来出题了:一道题区分你是编程老手还是菜鸟
三言两语的都不算数,真正动手的才是真!
很多事都是看起来容易做起来难哦,
而且细节上更能体现水平:-)
回复:俺来出题了:一道题区分你是编程老手还是菜鸟
加分:用的io口越少越好,成本越低越好
回复:俺来出题了:一道题区分你是编程老手还是菜鸟
例如蜂鸣器的输出频率调节范围,步进量,时间范围,步进量。
步进电机的速度要求等等。
回复:俺来出题了:一道题区分你是编程老手还是菜鸟
定时器必须产生一个高频率的节拍(譬如50-100K),可以实现LZ要求的功能.
无源蜂鸣器可以变化音调,但是步长会比较大,秦乐可能不好实现.
回复:俺来出题了:一道题区分你是编程老手还是菜鸟
好题目~~~~~支持一下~~~~