找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2402|回復(fù): 1
打印 上一主題 下一主題
收起左側(cè)

51單片機(jī)延時(shí)程序如何改才能應(yīng)用于15F104W

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:72088 發(fā)表于 2018-6-10 10:19 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
寫了個(gè)51單片機(jī)解碼程序在AT89C51和STC89C52RC運(yùn)行都正確,但是寫到15F104W上就不正確了,延時(shí)與內(nèi)部晶振頻率都改了,還是不行
下面是AT89C51晶振12M,延時(shí)540us程序:
DELAY540US:                        
       MOV    R7, #180
DE1:  NOP
       DJNZ    R7, DE1
       RET

下面是15F104W晶振6M延時(shí)540US,是否真的是延時(shí)了540us???????????
DELAY540US:                        ;@6.000MHz
        PUSH 38H
        PUSH 39H
        MOV 38H,#3
        MOV 39H,#127
NEXT1:
        DJNZ 39H,$
        DJNZ 38H,NEXT1
        POP 39H
        POP 38H
        RET


要如何改才能用,
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:343102 發(fā)表于 2018-6-29 07:18 | 只看該作者
可用stc網(wǎng)站提供的15系列延時(shí)程序:
//========================================================================
// 函數(shù): void  delayms(unsigned int ms)
// 描述: 延時(shí)函數(shù)。
// 參數(shù): ms,要延時(shí)的ms數(shù), 這里只支持1~65535ms. 自動(dòng)適應(yīng)主時(shí)鐘.
// 返回: none.
// 版本: VER1.0
// 日期: 2013-4-1
// 備注:
//========================================================================
void  delayms(unsigned int ms)
{
     unsigned int i;
         do{
              i = MAIN_Fosc / 13000;
                  while(--i)        ;   //14T per loop
     }while(--ms);
}

原程序是1ms的,可根據(jù)需要修改i的循環(huán)次數(shù),例如:
i = MAIN_Fosc / 130*54;//1ms*0.54=540us
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表