利用单片机8255制作电子琴,更换操作按键问题.

来源:百度知道 编辑:UC知道 时间:2024/06/07 16:57:32
利用单片机8255制作电子琴
当程序编译运行,并在实验箱上[Dais-DG206(达爱思教仪)]连接好以后.在其右下脚的键盘上(4行8列键盘)
第三四列和第七八列按键成为操作键(按下后出声).
我的问题是: 怎样修改程序使操作键换成第一二行,即:
按下第一行的8个按钮,依次出现(1 2 3 4 5 6 7 1)8个低音符
按下第二行的8个按钮,依次出现(1 2 3 4 5 6 7 1)8个高音符
谢谢高手帮忙,结果满意还有50分相送.
明天早上(10月10号)要到实验室验证
程序太长,只好发在帖子上 http://post.baidu.com/f?kz=272857873
哪位大哥帮忙呀!今天(10月10号)晚上又要去实验室了

8255是微机并行接口芯片。
8255是可编程I/O口扩展芯片。对8255输入不同的指令可改变I/O口的工作方式。8255与单片机系统连接方式简单,工作方式由程序设定,图2为8255的引脚图。

8255内部有4个寄存器:分别为寄存器A、B、C和控制寄存器。A、B、C寄存器的数据就是引脚PA7~PA0、PB7~PB0、 PC7~PC0上输入或输出的数据。而控制寄存器的数据则表明PA、PB、PC的工作方式。通过CS、A0、A1、RD和WR对4个寄存器进行操作。

1)CS为低电平时选通8255;2)A1、A0为地址选通;3)RD和WR为读、写信号:RD为低、WR为高时为读方式,RD为高、WR为低时为写方式。4)D0~D7为数据口。

向控制寄存器写入不同的数据可以使8255工作在三种不同的方式下。这里只介绍应用最多的方式0。方式0下8255的PA、PB及PC口上半部分(PC7~PC4)和下半部分(PC3~PC0)中任何一个端口都可以设定为输入或输出,PC口还可以进行位操作。控制寄存器各位的含义如图3所示。 SLPC-24中8255工作在方式0。PA、PB为输入口、PC为输出口,对控制寄存器写入的数据为10010010B,即92H。