⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 harve.lst

📁 6探头液晶显示倒车雷达系统 方位指示
💻 LST
📖 第 1 页 / 共 3 页
字号:
0048:  BSF    06.3
....................  delay_cycles(4);  
0049:  NOP
004A:  NOP
004B:  NOP
004C:  NOP
....................  ucTmpCmd<<=1;  
004D:  BCF    03.0
004E:  RLF    44,F
.................... }  
004F:  INCF   45,F
0050:  GOTO   039
.................... HT1621_CS=1;  
0051:  BSF    06.5
.................... delay_cycles(8);  
0052:  MOVLW  02
0053:  MOVWF  20
0054:  DECFSZ 20,F
0055:  GOTO   054
0056:  NOP
.................... }  
0057:  RETLW  00
....................   
.................... ///////////////////////////  
.................... //       adder           //  
.................... ///////////////////////////  
.................... void Ht1621WrDataCmd(unsigned char ucAddr)  
.................... {  
.................... unsigned char i,ucDataCmd=0x05; //101  
*
00AB:  MOVLW  05
00AC:  MOVWF  46
.................... ucDataCmd<<=5;  
00AD:  SWAPF  46,F
00AE:  RLF    46,F
00AF:  MOVLW  E0
00B0:  ANDWF  46,F
.................... for (i=0;i<3;i++)  
00B1:  CLRF   45
00B2:  MOVF   45,W
00B3:  SUBLW  02
00B4:  BTFSS  03.0
00B5:  GOTO   0CA
.................... {  
....................  if (ucDataCmd&0x80) HT1621_DAT=1;  
00B6:  BTFSS  46.7
00B7:  GOTO   0BA
00B8:  BSF    06.2
....................  else HT1621_DAT=0;  
00B9:  GOTO   0BB
00BA:  BCF    06.2
....................  HT1621_WR=0;  
00BB:  BCF    06.3
....................  delay_cycles(8);  
00BC:  MOVLW  02
00BD:  MOVWF  20
00BE:  DECFSZ 20,F
00BF:  GOTO   0BE
00C0:  NOP
....................  HT1621_WR=1;  
00C1:  BSF    06.3
....................  delay_cycles(4);  
00C2:  NOP
00C3:  NOP
00C4:  NOP
00C5:  NOP
....................  ucDataCmd<<=1;  
00C6:  BCF    03.0
00C7:  RLF    46,F
.................... }  
00C8:  INCF   45,F
00C9:  GOTO   0B2
....................   ucAddr<<=2;  
00CA:  RLF    44,F
00CB:  RLF    44,F
00CC:  MOVLW  FC
00CD:  ANDWF  44,F
....................   for (i=0;i<6;i++)  
00CE:  CLRF   45
00CF:  MOVF   45,W
00D0:  SUBLW  05
00D1:  BTFSS  03.0
00D2:  GOTO   0E7
.................... 	{  
.................... 	 if (ucAddr&0x80) HT1621_DAT=1;  
00D3:  BTFSS  44.7
00D4:  GOTO   0D7
00D5:  BSF    06.2
.................... 	 else HT1621_DAT=0;  
00D6:  GOTO   0D8
00D7:  BCF    06.2
.................... 	 HT1621_WR=0;  
00D8:  BCF    06.3
.................... 	 delay_cycles(8);  
00D9:  MOVLW  02
00DA:  MOVWF  20
00DB:  DECFSZ 20,F
00DC:  GOTO   0DB
00DD:  NOP
.................... 	 HT1621_WR=1;  
00DE:  BSF    06.3
.................... 	 delay_cycles(4);  
00DF:  NOP
00E0:  NOP
00E1:  NOP
00E2:  NOP
.................... 	 ucAddr<<=1;  
00E3:  BCF    03.0
00E4:  RLF    44,F
.................... 	}  
00E5:  INCF   45,F
00E6:  GOTO   0CF
.................... }  
00E7:  BCF    0A.3
00E8:  GOTO   277 (RETURN)
....................   
.................... ///////////////////////////  
.................... //       write a word    //  
.................... ///////////////////////////  
.................... void Ht1621WrByte(unsigned char ucTmpData)  
.................... {  
....................    unsigned char i;  
.................... 	for (i=0;i<8;i++)  
00E9:  CLRF   46
00EA:  MOVF   46,W
00EB:  SUBLW  07
00EC:  BTFSS  03.0
00ED:  GOTO   106
.................... 		{  
.................... 		 if (ucTmpData&0x80)   
.................... 		     HT1621_DAT=1;  
00EE:  BTFSS  45.7
00EF:  GOTO   0F2
00F0:  BSF    06.2
.................... 		 else   
.................... 		     HT1621_DAT=0;  
00F1:  GOTO   0F3
00F2:  BCF    06.2
.................... 		 HT1621_WR=0;  
00F3:  BCF    06.3
.................... 		 delay_cycles(8);  
00F4:  MOVLW  02
00F5:  MOVWF  20
00F6:  DECFSZ 20,F
00F7:  GOTO   0F6
00F8:  NOP
.................... 		 HT1621_WR=1;  
00F9:  BSF    06.3
.................... 		 delay_cycles(4);  
00FA:  NOP
00FB:  NOP
00FC:  NOP
00FD:  NOP
....................          if (i<4)  
.................... 		 ucTmpData<<=1;  
00FE:  MOVF   46,W
00FF:  SUBLW  03
0100:  BTFSS  03.0
0101:  GOTO   104
0102:  BCF    03.0
0103:  RLF    45,F
.................... 		}  
0104:  INCF   46,F
0105:  GOTO   0EA
.................... 	for (i=0;i<8;i++)  
0106:  CLRF   46
0107:  MOVF   46,W
0108:  SUBLW  07
0109:  BTFSS  03.0
010A:  GOTO   11F
.................... 		{  
.................... 		 if (ucTmpData&0x80)   
.................... 		     HT1621_DAT=1;  
010B:  BTFSS  45.7
010C:  GOTO   10F
010D:  BSF    06.2
.................... 		 else   
.................... 		     HT1621_DAT=0;  
010E:  GOTO   110
010F:  BCF    06.2
.................... 		 HT1621_WR=0;  
0110:  BCF    06.3
.................... 		 delay_cycles(8);  
0111:  MOVLW  02
0112:  MOVWF  20
0113:  DECFSZ 20,F
0114:  GOTO   113
0115:  NOP
.................... 		 HT1621_WR=1;  
0116:  BSF    06.3
.................... 		 delay_cycles(4);  
0117:  NOP
0118:  NOP
0119:  NOP
011A:  NOP
.................... 		 ucTmpData<<=1;  
011B:  BCF    03.0
011C:  RLF    45,F
.................... 		}  
011D:  INCF   46,F
011E:  GOTO   107
.................... }  
011F:  RETLW  00
....................   
.................... void soundout(void)  
.................... {  
.................... unsigned char sound_code,i,sounddata;  
....................   sounddata=new_rx_data;  
*
01BF:  MOVF   40,W
01C0:  MOVWF  46
....................  // TMR1ON=0;  
....................   if(sounddata<170)  
....................   	{//red=!red;  
01C1:  MOVF   46,W
01C2:  SUBLW  A9
01C3:  BTFSS  03.0
01C4:  GOTO   232
....................      if(sounddata<40)  
....................       sound_code=0xCE;  
01C5:  MOVF   46,W
01C6:  SUBLW  27
01C7:  BTFSS  03.0
01C8:  GOTO   1CC
01C9:  MOVLW  CE
01CA:  MOVWF  44
....................       else if(sounddata<=50)  
01CB:  GOTO   1F8
....................          sound_code=0x4E;  
01CC:  MOVF   46,W
01CD:  SUBLW  32
01CE:  BTFSS  03.0
01CF:  GOTO   1D3
01D0:  MOVLW  4E
01D1:  MOVWF  44
....................       else if(sounddata<=70)  
01D2:  GOTO   1F8
....................          sound_code=0x8E;  
01D3:  MOVF   46,W
01D4:  SUBLW  46
01D5:  BTFSS  03.0
01D6:  GOTO   1DA
01D7:  MOVLW  8E
01D8:  MOVWF  44
....................       else if(sounddata<=90)  
01D9:  GOTO   1F8
....................          sound_code=0x0E;  
01DA:  MOVF   46,W
01DB:  SUBLW  5A
01DC:  BTFSS  03.0
01DD:  GOTO   1E1
01DE:  MOVLW  0E
01DF:  MOVWF  44
....................       else if(sounddata<=110)  
01E0:  GOTO   1F8
....................          sound_code=0xF6;  
01E1:  MOVF   46,W
01E2:  SUBLW  6E
01E3:  BTFSS  03.0
01E4:  GOTO   1E8
01E5:  MOVLW  F6
01E6:  MOVWF  44
....................       else if(sounddata<=130)  
01E7:  GOTO   1F8
....................          sound_code=0x76;  
01E8:  MOVF   46,W
01E9:  SUBLW  82
01EA:  BTFSS  03.0
01EB:  GOTO   1EF
01EC:  MOVLW  76
01ED:  MOVWF  44
....................       else if(sounddata<=150)  
01EE:  GOTO   1F8
....................          sound_code=0xB6;  
01EF:  MOVF   46,W
01F0:  SUBLW  96
01F1:  BTFSS  03.0
01F2:  GOTO   1F6
01F3:  MOVLW  B6
01F4:  MOVWF  44
....................       else //if(sounddata<=170)  
....................          sound_code=0x36;  
01F5:  GOTO   1F8
01F6:  MOVLW  36
01F7:  MOVWF  44
....................       
....................     if(((sound_code!=olddata)||(sound_code==0xCE))&&(!P01))  
....................     	{  
01F8:  MOVF   3F,W
01F9:  SUBWF  44,W
01FA:  BTFSS  03.2
01FB:  GOTO   200
01FC:  MOVF   44,W
01FD:  SUBLW  CE
01FE:  BTFSS  03.2
01FF:  GOTO   232
0200:  BTFSC  07.4
0201:  GOTO   232
....................     		olddata=sound_code;  
0202:  MOVF   44,W
0203:  MOVWF  3F
....................       // if((sounddata<160)&&(!P01)){  
....................        // olddata=sound_code;  
....................      // if(!P01)  
....................      //  {  
....................          P00=0;  
0204:  BCF    07.2
....................          delay_ms(16);  
0205:  MOVLW  10
0206:  MOVWF  47
0207:  CALL   004
.................... 		      for(i=8;i>0;i--)  
0208:  MOVLW  08
0209:  MOVWF  45
020A:  MOVF   45,F
020B:  BTFSC  03.2
020C:  GOTO   231
....................           {  
....................           //sounddata=sounddata<<1;  
....................           #asm  
....................           RRF sound_code,f  
020D:  RRF    44,F
....................           #endasm  
.................... 		      if(C)  
....................           {  
020E:  BTFSS  03.0
020F:  GOTO   220
....................            P00=1;delay_ms(1);  
0210:  BSF    07.2
0211:  MOVLW  01
0212:  MOVWF  47
0213:  CALL   004
....................            P00=0;delay_us(250);delay_us(250);  
0214:  BCF    07.2
0215:  MOVLW  A6
0216:  MOVWF  20
0217:  DECFSZ 20,F
0218:  GOTO   217
0219:  NOP
021A:  MOVLW  A6
021B:  MOVWF  20
021C:  DECFSZ 20,F
021D:  GOTO   21C
021E:  NOP
....................                }  
....................           else  
....................            {  
021F:  GOTO   22F
....................             P00=1;delay_us(250);delay_us(250);  
0220:  BSF    07.2
0221:  MOVLW  A6
0222:  MOVWF  20
0223:  DECFSZ 20,F
0224:  GOTO   223
0225:  NOP
0226:  MOVLW  A6
0227:  MOVWF  20
0228:  DECFSZ 20,F
0229:  GOTO   228
022A:  NOP
....................             P00=0;delay_ms(1);  
022B:  BCF    07.2
022C:  MOVLW  01
022D:  MOVWF  47
022E:  CALL   004
....................                }  
....................            }  
022F:  DECF   45,F
0230:  GOTO   20A
....................           P00=1;  
0231:  BSF    07.2
....................          }  
....................      }  
.................... }  
0232:  BCF    0A.3
0233:  GOTO   28F (RETURN)
....................  

Configuration Fuses:
   Word  1: 3FBA   HS NOWDT NOPUT NOPROTECT NOBROWNOUT

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -