佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1027|回复: 9

pic的delay code

[复制链接]
发表于 29-7-2007 01:03 PM | 显示全部楼层 |阅读模式
我酱做对吗????

COUNT    EQU    20H
COUNT1    EQU    21H
COUNT2    EQU    22H

DELAY1    MOVLW    0xFA
    MOVWF    COUNT2
DEL1_1    NOP
    DECFSZ    COUNT2,F
    GOTO    DEL1_1
    RETLW    0                                        (1ms delay)

DELAY2    MOVLW    0X02
    MOVWF    COUNT
DEL2_1    CALL    DELAY1
    DECFSZ    COUNT,F
    GOTO    DEL2_1
    RETLW    0                                        (2ms delay)

DELAY5    MOVLW    0X05
    MOVWF    COUNT
DEL5_1    CALL    DELAY1
    DECFSZ    COUNT,F
    GOTO    DEL5_1
    RETLW    0                                        (5ms delay)

DELAY10    MOVLW    0X0A
    MOVWF    COUNT
DEL10_1    CALL    DELAY1
    DECFSZ    COUNT,F
    GOTO    DEL10_1
    RETLW    0                                        (10ms delay)

DELAY30    MOVLW    0X1E
    MOVWF    COUNT
DEL30_1    CALL    DELAY1
    DECFSZ    COUNT,F
    GOTO    DEL30_1
    RETLW    0                                        (30ms delay)

DELAY1S    MOVLW    0X64
    MOVWF    COUNT1
DEL1S_1    CALL    DELAY10
    DECFSZ    COUNT1,F
    GOTO    DEL1S_1
    RETLW    0                                        (1s delay)

DELAY2S    MOVLW    0XC8
    MOVWF    COUNT1
DEL2S_1    CALL    DELAY10
    DECFSZ    COUNT1,F
    GOTO    DEL2S_1
    RETLW    0                                        (2s delay)

[ 本帖最后由 ydf85 于 29-7-2007 01:36 PM 编辑 ]
回复

使用道具 举报


ADVERTISEMENT

发表于 29-7-2007 02:46 PM | 显示全部楼层

回复 #1 ydf85 的帖子

pic的delay code
我酱做对吗????

如是我, 我会在Simulator 里跑 (MPLAB), 对不对, 试一下就知道了。
回复

使用道具 举报

发表于 29-7-2007 10:49 PM | 显示全部楼层
原帖由 pic 于 29-7-2007 02:46 PM 发表

如是我, 我会在Simulator 里跑 (MPLAB), 对不对, 试一下就知道了。


另一个我比较常用的是把program download进硬件, blink led/toogle 一个led, 然后量frequency.
回复

使用道具 举报

 楼主| 发表于 30-7-2007 02:05 AM | 显示全部楼层
原帖由 pic 于 29-7-2007 02:46 PM 发表

如是我, 我会在Simulator 里跑 (MPLAB), 对不对, 试一下就知道了。


那个只是懂code对还是不对罢了。。
不能看我的code是不是有delay~~~~~~
回复

使用道具 举报

 楼主| 发表于 30-7-2007 02:11 AM | 显示全部楼层
原帖由 fritlizt 于 29-7-2007 10:49 PM 发表


另一个我比较常用的是把program download进硬件, blink led/toogle 一个led, 然后量frequency.


用什么量frequency。。??
量了就
1/frequency = time???
回复

使用道具 举报

发表于 30-7-2007 03:04 AM | 显示全部楼层
原帖由 ydf85 于 30-7-2007 02:11 AM 发表


用什么量frequency。。??
量了就
1/frequency = time???


比如说你写delay 1ms.
你就每50ms toogle/complement一次portpin.
你量到的frequency会是1/(50 * 2)ms = 10Hz
回复

使用道具 举报

Follow Us
发表于 30-7-2007 02:51 PM | 显示全部楼层
原帖由 ydf85 于 30-7-2007 02:05 AM 发表


那个只是懂code对还是不对罢了。。
不能看我的code是不是有delay~~~~~~

对啊, 放进MPLAB里simulate啊, 你当然也要有个Program call 那个Delay routine。。。。

要不你等热心的网友帮你测试吧。。。
回复

使用道具 举报

发表于 31-7-2007 11:15 AM | 显示全部楼层
原帖由 ydf85 于 30-7-2007 02:05 AM 发表


那个只是懂code对还是不对罢了。。
不能看我的code是不是有delay~~~~~~


可以的,
但要 set 好你的crystal适度,才可以拿到真确的打案。
回复

使用道具 举报


ADVERTISEMENT

 楼主| 发表于 31-7-2007 05:37 PM | 显示全部楼层
原帖由 pic 于 30-7-2007 02:51 PM 发表

对啊, 放进MPLAB里simulate啊, 你当然也要有个Program call 那个Delay routine。。。。

要不你等热心的网友帮你测试吧。。。


你可以帮我test吗???
回复

使用道具 举报

 楼主| 发表于 31-7-2007 05:38 PM | 显示全部楼层
原帖由 ajijakoko 于 31-7-2007 11:15 AM 发表


可以的,
但要 set 好你的crystal适度,才可以拿到真确的打案。


忘记告诉你们我的crystal是用4MHZ的。。。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 24-5-2024 01:18 AM , Processed in 0.062708 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表