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

📄 addangfeng.lst

📁 c语言的一个简单的铆接机控制程序
💻 LST
📖 第 1 页 / 共 3 页
字号:
    077F 2422      CLR	R2
    0780 BC2F      OUT	0x2F,R2
(0409) 	 TCCR1B=0x02;  //8分频
    0781 E082      LDI	R24,2
    0782 BD8E      OUT	0x2E,R24
(0410) 	 TCNT1=0x00;  //;从(0-30D4)匹配
    0783 2433      CLR	R3
    0784 BC3D      OUT	0x2D,R3
    0785 BC2C      OUT	0x2C,R2
(0411) 	 OCR1A=0x30d4;//1M主频8分频 基本定时单元
    0786 ED84      LDI	R24,0xD4
    0787 E390      LDI	R25,0x30
    0788 BD9B      OUT	0x2B,R25
    0789 BD8A      OUT	0x2A,R24
(0412) 	 TIMSK= 0x40; //;定时中断时间100MS,定时常数为30D4
    078A E480      LDI	R24,0x40
    078B BF89      OUT	0x39,R24
(0413) 	 SEI();
    078C 9478      BSET	7
    078D 9508      RET
_ZDCS1:
  j                    --> Y+1
  i                    --> Y+1
    078E 922A      ST	R2,-Y
    078F 923A      ST	R3,-Y
    0790 924A      ST	R4,-Y
    0791 925A      ST	R5,-Y
    0792 938A      ST	R24,-Y
    0793 939A      ST	R25,-Y
    0794 B62F      IN	R2,0x3F
    0795 922A      ST	R2,-Y
(0414) }  
(0415) #pragma interrupt_handler ZDCS1:14  
(0416) void ZDCS1(void)                          //0.1s定时
(0417) { unsigned char i,j;
(0418) TCNT1=0x00;
    0796 2422      CLR	R2
    0797 2433      CLR	R3
    0798 BC3D      OUT	0x2D,R3
    0799 BC2C      OUT	0x2C,R2
(0419) if (time1>0)  time1=time1-1;
    079A 90300130  LDS	R3,time1
    079C 1423      CP	R2,R3
    079D F420      BCC	0x07A2
    079E 2D83      MOV	R24,R3
    079F 5081      SUBI	R24,1
    07A0 93800130  STS	time1,R24
(0420) if (time0>9)                            //1s进来一次
    07A2 E089      LDI	R24,0x9
    07A3 9020012F  LDS	R2,time0
    07A5 1582      CP	R24,R2
    07A6 F5A0      BCC	0x07DB
(0421)     {if (time2>0)  time2--;
    07A7 2422      CLR	R2
    07A8 2433      CLR	R3
    07A9 90400131  LDS	R4,time2
    07AB 90500132  LDS	R5,time2+1
    07AD 1424      CP	R2,R4
    07AE 0435      CPC	R3,R5
    07AF F434      BGE	0x07B6
    07B0 01C2      MOVW	R24,R4
    07B1 9701      SBIW	R24,1
    07B2 93900132  STS	time2+1,R25
    07B4 93800131  STS	time2,R24
(0422)  	 if (time3>0)  time3--;
    07B6 2422      CLR	R2
    07B7 2433      CLR	R3
    07B8 90400133  LDS	R4,time3
    07BA 90500134  LDS	R5,time3+1
    07BC 1424      CP	R2,R4
    07BD 0435      CPC	R3,R5
    07BE F434      BGE	0x07C5
    07BF 01C2      MOVW	R24,R4
    07C0 9701      SBIW	R24,1
    07C1 93900134  STS	time3+1,R25
    07C3 93800133  STS	time3,R24
(0423)  	 if (time4>0)  time4--;
    07C5 2422      CLR	R2
    07C6 2433      CLR	R3
    07C7 90400135  LDS	R4,time4
    07C9 90500136  LDS	R5,time4+1
    07CB 1424      CP	R2,R4
    07CC 0435      CPC	R3,R5
    07CD F434      BGE	0x07D4
    07CE 01C2      MOVW	R24,R4
    07CF 9701      SBIW	R24,1
    07D0 93900136  STS	time4+1,R25
    07D2 93800135  STS	time4,R24
(0424) 	 time0=0;
    07D4 2422      CLR	R2
    07D5 9220012F  STS	time0,R2
(0425) 	 eor_resc; 
    07D7 E081      LDI	R24,1
    07D8 B222      IN	R2,0x12
    07D9 2628      EOR	R2,R24
    07DA BA22      OUT	0x12,R2
(0426) 	}
(0427) time0++;
    07DB 9180012F  LDS	R24,time0
    07DD 5F8F      SUBI	R24,0xFF
    07DE 9380012F  STS	time0,R24
(0428) if (maojietime_plan>0)  maojietime_plan--;
    07E0 90200140  LDS	R2,maojietime_plan
    07E2 90300141  LDS	R3,maojietime_plan+1
    07E4 2022      TST	R2
    07E5 F411      BNE	0x07E8
    07E6 2033      TST	R3
    07E7 F049      BEQ	0x07F1
    07E8 91800140  LDS	R24,maojietime_plan
    07EA 91900141  LDS	R25,maojietime_plan+1
    07EC 9701      SBIW	R24,1
    07ED 93900141  STS	maojietime_plan+1,R25
    07EF 93800140  STS	maojietime_plan,R24
(0429) jishu++;
    07F1 91800153  LDS	R24,jishu
    07F3 5F8F      SUBI	R24,0xFF
    07F4 93800153  STS	jishu,R24
(0430) if (jishu>10) jishu=0;
    07F6 E08A      LDI	R24,0xA
    07F7 90200153  LDS	R2,jishu
    07F9 1582      CP	R24,R2
    07FA F418      BCC	0x07FE
    07FB 2422      CLR	R2
    07FC 92200153  STS	jishu,R2
    07FE 9029      LD	R2,Y+
    07FF BE2F      OUT	0x3F,R2
    0800 9199      LD	R25,Y+
    0801 9189      LD	R24,Y+
    0802 9059      LD	R5,Y+
    0803 9049      LD	R4,Y+
    0804 9039      LD	R3,Y+
    0805 9029      LD	R2,Y+
    0806 9518      RETI
_delay:
  i                    --> R20
  j                    --> R22
  n                    --> R16
    0807 940E1D55  CALL	push_gset2
(0431) 
(0432) }
(0433) 
(0434)  //}
(0435) /*****************************************************************
(0436) * 名称:delay()
(0437) * 延时n个ms
(0438) * 入口参数:n
(0439) * 出口参数:无
(0440) *****************************************************************/
(0441) void  delay(unsigned int n)
(0442) {
(0443)  unsigned int i,j;
(0444)  for(i=1;i<=n;i++)
    0809 E041      LDI	R20,1
    080A E050      LDI	R21,0
    080B C00C      RJMP	0x0818
(0445)  {
(0446)  for(j=1;j<=10;j++)
    080C E061      LDI	R22,1
    080D E070      LDI	R23,0
    080E C002      RJMP	0x0811
    080F 5F6F      SUBI	R22,0xFF
    0810 4F7F      SBCI	R23,0xFF
    0811 E08A      LDI	R24,0xA
    0812 E090      LDI	R25,0
    0813 1786      CP	R24,R22
    0814 0797      CPC	R25,R23
    0815 F7C8      BCC	0x080F
    0816 5F4F      SUBI	R20,0xFF
    0817 4F5F      SBCI	R21,0xFF
    0818 1704      CP	R16,R20
    0819 0715      CPC	R17,R21
    081A F788      BCC	0x080C
    081B 940E1D43  CALL	pop_gset2
    081D 9508      RET
(0447)  ;
(0448)  } 
(0449) }
(0450) void delay_10us(void)
(0451) {
(0452)   unsigned char y;
(0453)     for (y=0; y<20; y++)
_delay_10us:
  y                    --> R16
    081E 2700      CLR	R16
    081F C001      RJMP	0x0821
    0820 9503      INC	R16
    0821 3104      CPI	R16,0x14
    0822 F3E8      BCS	0x0820
    0823 9508      RET
(0454) 	    {
(0455) 	     ;
(0456) 	    }    
(0457)  }
(0458)  
(0459)  unsigned char RTEEPROMReady(void)
(0460) {
(0461) 	return !(EECR & 0x02);
_RTEEPROMReady:
    0824 99E1      SBIC	0x1C,1
    0825 C003      RJMP	0x0829
    0826 E001      LDI	R16,1
    0827 E010      LDI	R17,0
    0828 C002      RJMP	0x082B
    0829 2700      CLR	R16
    082A 2711      CLR	R17
    082B 9508      RET
(0462) } 
(0463) /**************************************************************
(0464) * 名称: write_code()
(0465) * 功能:液晶屏的全屏写?
(0466) * 入口参数:写指令
(0467) * 出口参数:发送命令
(0468) ***************************************************************/
(0469) void write_code(unsigned char w_code)
(0470) {
(0471) code_ADDRESS=w_code;
_write_code:
  w_code               --> R16
    082C 9300F400  STS	0xF400,R16
    082E 9508      RET
(0472) }
(0473) /*****************************************************************
(0474) * 名称:

⌨️ 快捷键说明

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