中威单片机例程,方便大家下载
列表:
1621驱动范例程序.rar
1637驱动范例程序.rar
164驱动范例程序.rar
20150724102928_79049.rar
5104红外接收范例程序.rar
6222红外接收范例程序.rar
628系列MCU内部LED驱动范例程序.rar
CMS串行通信范例程序.rar
IIC读写EEPROM范例程序.rar
中威单片机.rar
编码器范例程序2.rar
单片机源程序如下:
- ;**************************************************
- ;164驱动程序
- ;**************************************************
- CLK_164 EQU PORTA,0 ;164时钟口
- DAT_164 EQU PORTA,1 ;164数据口
- CLK_IO EQU TRISA,0 ;时钟口方向
- DAT_IO EQU TRISA,1 ;数据口方向
- KCOUNT EQU ? ;扫键个数(示例程序扫描8个按键)
- KDATA EQU ? ;读取到的按键信息
- DTEMP EQU ? ;扫按键时传送给164的数据
- TEMP EQU ? ;临时缓存
- COUNT EQU ?
- ;**************************************************
- ;164移位写数据子程序
- ;**************************************************
- MOVE_164:
- LD TEMP,A
- LDIA 08H
- LD COUNT,A
- MOVE_LOOP:
- CLRB CLK_164
- CLRB DAT_164
- RLCR TEMP
- SZB STATUS,C
- SETB DAT_164
- SETB CLK_164
- SZDECR COUNT
- JP MOVE_LOOP
- CLRB CLK_164
- CLRB DAT_164
- RET 00H
-
-
- ;**************************************************
- ;164读键值示例子程序
- ;164芯片D0-D7口上的按键分别对应KDATA寄存器b0-b7位,
- ;若口线按键按下,KDATA相应位置1,否则置0
- ;**************************************************
- KSCAN_164:
- ;必须先关闭所有显示COM口
- CLR KCOUNT
- CLR KDATA
- ; CLRB DAT_IO ;164数据口作输出口传输数据
- ; CALL DELAY50US ;改变口线方向必要的延时
- LDIA B'11111110' ;从164芯片D0引脚按键开始扫描
- CALL MOVE_164
- SETB DAT_IO ;164数据口作输入口检测按键
- CALL DELAY50US ;改变口线方向必要的延时
- KSCAN_LOOP:
- CLRB CLK_164
- SNZB DAT_164
- JP KSCAN_IN
- SETB CLK_164
- INCR KCOUNT
- LDIA .8
- SUBA KCOUNT
- SNZB STATUS,Z
- JP KSCAN_LOOP
-
- CLRB CLK_164
- JP KSCAN_BACK
- KSCAN_IN:
- INCA KCOUNT
- LD KDATA,A
- KSCAN_BACK:
- CLRB DAT_IO ;扫描完成后将数据口作输出口
- RET
- ……………………
- …………限于本文篇幅 余下代码请从51黑下载附件…………
复制代码
所有资料51hei提供下载:
中威单片机.rar
(16.42 KB, 下载次数: 45)
|