虫儿飞曲谱PIC汇编程序Word格式文档下载.docx
《虫儿飞曲谱PIC汇编程序Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《虫儿飞曲谱PIC汇编程序Word格式文档下载.docx(34页珍藏版)》请在冰豆网上搜索。
负扫描方式,正送信号
--B0B1B2B3B4B5B6B7A0A1A2A3A4A5E1E2
+RC0=11111110011111110x7F,0X3E,0x06
+RC1=11000000000000110x03,0X00,0x06
+RC2=11000000000000110x03,0X00,0x06
+RC3=11110011110011110xCF,0X33,0x06
+RC4=11111001100111110x9F,0X39,0x06
+RC5=10000000000000010x01,0X00,0x04
+RC6=10000000000000010x01,0X00,0x04
+RC7=11111111111111110xFF,0X3F,0x06
+RD0=11100000000001110x07,0X20,0x06
+RD1=11100111111001110xE7,0X27,0x06
+RD2=11100000000001110x07,0X20,0x06
+RD3=11100111111001110xE7,0X27,0x06
+RD4=11100000000001110x07,0X20,0x06
+RD5=11100000000001110x07,0X20,0x06
+RD6=11100111111001110xE7,0X27,0x06
开始编写
#INCLUDE<
P16F74.INC>
__CONFIG_CP_OFF&
_WDT_OFF&
_BODEN_OFF&
_PWRTE_OFF&
_XT_OSC
XIANSHI_CHONGEQU70H;
用于循环显示延时
ORG0X000
GOTOMAIN
NOP
*****主函数*******************
MAIN
NOP
CALLinitmcu;
mcu初始化
CALLquanxian;
全显函数
CALLanjian;
按键函数
CALLxianshichong;
显示'
虫"
函数
**********************************************
**********************************************
quanxianMOVLW0XFF
MOVWFPORTC
MOVWFPORTD
CLRFPORTA
CLRFPORTB
CLRFPORTE
CALLDELAY0.5S;
全显
CALLinitmcu;
初始化
CALLDELAY0.5S
RETURN
按键函数
anjian
BTFSSPORTD,7
GOTOAJ2C;
没按下就延时再次检测
CALLbofang;
按键按下就调用播放函数
AJ2CCALLDELAY10MS
BTFSCPORTD,7
显示字函数
xianshichong
BCFSTATUS,Z;
Z标志位清0
MOVLW0XFF;
显示慢了可以0XFF
MOVWFXIANSHI_CHONG;
用于循环显示0X50次
XSL1CALLxianshidao2;
2级堆栈,调用显示子函数
扫描按键
DECFXIANSHI_CHONG,F;
循环减1
BTFSSSTATUS,Z
GOTOXSL1
显示字子函数
扫描显示第1行
xianshidao2
3级堆栈,mcu初始化
BSFPORTC,0;
负扫描送数据
MOVLW0X7F
MOVWFPORTB
MOVLW0X3E
MOVWFPORTA
MOVLW0X06
MOVWFPORTE
CALLDELAY10MS;
扫描延时
扫描显示第2行
BSFPORTC,1;
MOVLW0X03
MOVLW0X00
MOVWFPORTA
扫描显示第3行
BSFPORTC,2;
MOVWFPORTA
扫描显示第4行
BSFPORTC,3;
MOVLW0XCF
MOVLW0X33
扫描显示第5行
BSFPORTC,4;
MOVLW0X9F
MOVLW0X39
扫描显示第6行
BSFPORTC,5;
MOVLW0X01
MOVLW0X04
扫描显示第7行
BSFPORTC,6;
扫描显示第8行
BSFPORTC,7;
MOVLW0XFF
MOVLW0X3F
CALLDELAY10MS;
扫描显示第9行
BSFPORTD,0;
MOVLW0X07
MOVLW0X20
CALLDELAY10MS;
扫描显示第10行
BSFPORTD,1;
MOVLW0XE7
MOVLW0X27
扫描显示第11行
BSFPORTD,2;
扫描显示第12行
BSFPORTD,3;
扫描延时
扫描显示第13行
BSFPORTD,4;
扫描显示第14行
BSFPORTD,5;
扫描显示第15行
CALLinitmcu;
BSFPORTD,6;
RETURN
播放函数<
虫儿飞>
bofang
NOP;
开始
播放31/2拍函数黑
CALLbo3_4fengzhi1
CALLDELAY10MS
播放31/4拍函数黑
播放31/4拍函数的
播放41/2拍函数天
CALLbo4_4fengzhi1
播放51/2拍函数空
CALLbo5_4fengzhi1
播放31拍函数低
播放21拍函数垂
CALLbo2_4fengzhi1
-------------------------------------
播放11/2拍函数亮
CALLbo1_4fengzhi1
播放11/4拍函数亮
播放11/4拍函数的
播放21/2拍函数繁
播放31/2拍函数星
播放31拍函数相
CALLbo3_4fengzhi1
播放7`1拍函数随
CALLbo7_4fengzhi1
播放6`1/2拍函数虫
CALLbo6_4fengzhi1
播放31/2拍函数儿
播放21拍函数飞
CALLbo2_4fengzhi1
播放31/2拍函数儿
-------------------------------------
播放6`1/2拍函数你
播放31/2拍函数在
播放23/4拍函数思
播放11/4拍函数恋
播放11拍函数谁
播放11拍函数-
CALLbo1_4fengzhi1
2S延时休止符号
CALLDELAY0.5S;
扫描延时1S
----------------------------------------
--------------------1小节完--------------------
-----------------------------------------
播放31/2拍函数天
播放31/4拍函数上
播放41/2拍函数星
播放51/2拍函数星
播放31拍函数流
播放21拍函数泪
播放11/2拍函数地
播放11/4拍函数上
播放21/2拍函数玫
播放31/2拍函数瑰
播放31拍函数枯
播放7`1拍函数萎
播放6`1/2拍函数冷
CALLbo6_4fengzhi1
播放31/2拍函数风
播放21拍函数吹