| 
| 
查看: 1308|回复: 5
 | 
PIC(MPLAB) counting even 的小问题
[复制链接] |  
 |  | 
 
| 各位大大。。。 请教教我。。。
 我现在用asm code 写 PIC 16F877a 的 code
 code 如下:
 
 .
 .
 .
 movlw   d'255'
 movwf    count_1
 
 p_x:          movlw    b'00000110'
 movwf    PORTB
 call    delay_1
 movlw    b'00000000'
 movwf    PORTB
 call    delay_1
 decfsz    count_1,f
 goto     p_x
 return
 
 以上是其中一个part, 我的counting event 只能做到最多255而已,
 请问有什么方法能让我的counting 多过 255?
 比如 count 到多过 1000,2000....
 先谢谢大家的帮忙咯。。。
 
   | 
 |  |  |  |
 
|  |  |  
|  |  | 
 |  | 
 
 发表于 2-11-2007 09:26 PM
|
显示全部楼层 
| 原帖由 jason86 于 2-11-2007 09:08 PM 发表  各位大大。。。
 请教教我。。。
 我现在用asm code 写 PIC 16F877a 的 code
 code 如下:
 
 .
 .
 .
 movlw   d'255'
 movwf    count_1
 
 p_x:          movlw    b'00000110'
 movwf    P ...
 你可以用一个以上的 variable 来做啊!
 
 movlw   d'255'
 movwf   count_2
 p_x1:
 movlw   d'255'
 movwf    count_1
 
 p_x2:           movlw    b'00000110'
 movwf    PORTB
 call    delay_1
 movlw    b'00000000'
 movwf    PORTB
 call    delay_1
 decfsz    count_1,f
 goto     p_x2
 decfsz    count_2,f
 goto     p_x1
 return
 
 这样你就可以制造 65535 个回路(loop) 了。
 | 
 |  |  |  |
 
|  |  |  
|  |  | 
 |  | 
 
 发表于 2-11-2007 09:30 PM
|
显示全部楼层 |  |  |  |
 
|  |  |  
|  |  | 
 |  | 
 
 
 楼主|
发表于 2-11-2007 09:35 PM
|
显示全部楼层 
| 原帖由 rothmans 于 2-11-2007 09:26 PM 发表  
 
 你可以用一个以上的 variable 来做啊!
 
 movlw   d'255'
 movwf   count_2
 p_x1:
 movlw   d'255'
 movwf    count_1
 
 p_x2:       ...
 如果像您讲这样,为什么是 65535 呢?
 不是255x255=65025 吗?
 如果用以上的code,那么counting event 要得到 1050 的话呢?
 count 方面该怎么办?
  | 
 |  |  |  |
 
|  |  |  
|  |  | 
 |  | 
 
 
 楼主|
发表于 2-11-2007 09:43 PM
|
显示全部楼层 |  |  |  |
 
|  |  |  
|  |  | 
 |  | 
 
 发表于 2-11-2007 09:43 PM
|
显示全部楼层 |  |  |  |
 
|  |  |  
|  |  |  |  | 
            本周最热论坛帖子 |