自己想的第一个程序,总是在板子上实现不了,求大神

2019-03-24 19:36发布

思路想法 按下 独立按键s9(开机键) 后8*8点阵显示DGXT流动 1602 液晶显示welcome
在此以后
 按下s1(音乐A键)后8*8点阵显示DGXT流动 1602 液晶显示ZHIYOUMAMAHAO
和液晶上 时间计数 从00:00:00开始,同时蜂鸣器演奏音乐A
 按下s5(音乐B键)后8*8点阵显示DGXT流动 1602 液晶显示SONGBIE
和液晶上 时间计数 从00:00:00开始,同时蜂鸣器演奏音乐B
在音乐播放的时候 可以按s1或者s5换歌  也可以按下s9复位开机显示 (我自己想的还有很多不完善的地方,比如说关机,音乐停止时延时一会液晶时间清零音乐从新开始,我都没想出来咋写) 遇到问题 我把每个都做成独立的子函数了 分别调用 都可以实现 (在自己的开发板上)
液晶和 8*8点阵可以同时实现
但是 音乐和液晶不能同时实现 我觉得是中断冲突??还是优先级问题? 还有就是最后的按键 不会弄 实现不了 主函数的写法想到了用中断,只能实现开机(按下s9)后再按s1(音乐A键)8*8点阵循环,液晶显示歌名,但是液晶时间不动... 还有很多困难从写子函数到连线到最后的调试弄了好久了... (流程图现在还不大会写,只能这样了) 程序如下: ..... 程序太长..... 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
19条回答
孤獨の快樂
2019-03-26 05:30

原帖由 51学习者 于 2011-11-13 13:27 发表 我用了4次interrupt 1 应该是不对吧!!???但是我想用4次定时器中断咋办??

void tiner0() interrupt 1

void tiner1() interrupt 1

这两个的函数不是一样吗?分两个干嘛?

 

51只有2个定时器。

如果你想执行不同的中断的函数,只要设置个变量标志,改变该变量来执行不同的函数,当然没法同时。

话说,你这程序需要同时使用几个定时器?

[ 本帖最后由 孤獨の快樂 于 2011-11-13 14:15 编辑 ]

一周热门 更多>