久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

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

要做一個(gè)單片機(jī)脈沖計(jì)數(shù)器。結(jié)果無(wú)論如何就是不成功

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
本來(lái)設(shè)計(jì)要做了個(gè)ADC電路,實(shí)驗(yàn)挺成功的。下一步要做一個(gè)脈沖計(jì)數(shù)器。結(jié)果無(wú)論如何就是不成功。

先聲明,我自己做了NE555方波發(fā)生器。50%固定占空,頻率從 0.72Hz ~ 72kHz 可調(diào)。產(chǎn)生出來(lái)的波形送給51單片機(jī)P34引腳。雖然樣子丑了點(diǎn),但是功能完全正常。

單片機(jī)型號(hào)為STC8A8K64S4A12。所有的測(cè)試都做過(guò)了。先寫(xiě)了一個(gè)簡(jiǎn)單代碼,就是檢測(cè)外部脈沖,LED跟著閃爍就行



測(cè)試結(jié)果完全正常,說(shuō)明準(zhǔn)雙向口輸入輸出均正常。


但下面妖魔鬼怪就來(lái)了。
  1. #include "reg51.h"
  2. #include "intrins.h"

  3. sbit    P05         =   P0^5;

  4. void TM0_Isr() interrupt 1
  5. {
  6.     P05 = !P05;                                 //測(cè)試端口
  7. }

  8. void main()
  9. {
  10.     TMOD = 0x04;                                //外部計(jì)數(shù)模式
  11.     TL0 = 0x08;
  12.     TH0 = 0x00;
  13.     TR0 = 1;                                    //啟動(dòng)定時(shí)器
  14.     ET0 = 1;                                    //使能定時(shí)器中斷
  15.     EA = 1;

  16.     while (1);
  17. }
復(fù)制代碼

這段程序可不是我寫(xiě)的,是人家STC官方的范例程序,只是測(cè)試端口
修改為P05,計(jì)數(shù)次數(shù)改成了8次。然后就沒(méi)有然后了,我已無(wú)法用語(yǔ)言形容。更可恨的是換成定時(shí)器1、定時(shí)器2、定時(shí)器3、定時(shí)器4都不能正常計(jì)數(shù)。甚至連芯片都換了也白搭。

我已無(wú)法用見(jiàn)了鬼來(lái)形容了,無(wú)語(yǔ)了,詞窮了。

請(qǐng)各路大神來(lái)賜教一下吧,謝謝啦。

51hei圖片_20200919213659.jpg (72.43 KB, 下載次數(shù): 120)

51hei圖片_20200919213659.jpg

51hei圖片_20200919213705.jpg (69.34 KB, 下載次數(shù): 115)

51hei圖片_20200919213705.jpg
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:155507 發(fā)表于 2020-9-20 09:19 | 只看該作者
你是怎么測(cè)試的? 就說(shuō)不成功
回復(fù)

使用道具 舉報(bào)

板凳
ID:820855 發(fā)表于 2020-9-20 10:10 | 只看該作者
親,你的定時(shí)器都沒(méi)有初始化,時(shí)鐘都沒(méi)設(shè)定。另外你要檢測(cè)555定時(shí)器的輸出脈沖的話,代碼不是這么寫(xiě)的。需要用捕獲模式,中斷函數(shù)里面也不對(duì)。你這段代碼即使把定時(shí)器設(shè)好了,也是上電閃幾次燈的事情,可能太快眼睛都看不見(jiàn)。
回復(fù)

使用道具 舉報(bào)

地板
ID:213173 發(fā)表于 2020-9-20 10:39 | 只看該作者
本帖最后由 wulin 于 2020-9-20 17:33 編輯

定時(shí)器初值錯(cuò)誤,應(yīng)該是65536-8=65528=0xFFF8,中斷中也要重新賦初值FFF8。
  1. #include "reg51.h"
  2. #include "intrins.h"

  3. sbit P05=P0^5;

  4. void TM0_Isr() interrupt 1
  5. {
  6.     P05=!P05;                                 //測(cè)試端口
  7.     TL0 = 0xf8;
  8.     TH0 = 0xff;
  9. }

  10. void main()
  11. {
  12.     TMOD = 0x04;                                //外部計(jì)數(shù)模式
  13.     TL0 = 0xf8;
  14.     TH0 = 0xff;
  15.     TR0 = 1;                                    //啟動(dòng)定時(shí)器
  16.     ET0 = 1;                                    //使能定時(shí)器中斷
  17.     EA = 1;

  18.     while (1);
  19. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

5#
ID:719608 發(fā)表于 2020-9-20 15:47 | 只看該作者
好像有問(wèn)題,稍后看看
回復(fù)

使用道具 舉報(bào)

6#
ID:342822 發(fā)表于 2020-9-20 18:24 | 只看該作者


#include <reg51.h>
#include <stdio.h>


#include "intrins.h"

sbit    P05         =   P0^5;

void TM0_Isr() interrupt 0
{
    P05 = ~P05;                                 //測(cè)試端口
}

void main()
{
  EA =1;
        EX0 =1;
        IT0= 1;

    while (1);

}

回復(fù)

使用道具 舉報(bào)

7#
ID:224104 發(fā)表于 2020-9-20 20:49 | 只看該作者
本帖最后由 guysxpf 于 2020-9-20 20:52 編輯
wulin 發(fā)表于 2020-9-20 10:39
定時(shí)器初值錯(cuò)誤,應(yīng)該是65536-8=65528=0xFFF8,中斷中也要重新賦初值FFF8。

我明白了,謝謝,定時(shí)器是從設(shè)定值累加到FF?磥(lái)是當(dāng)時(shí)學(xué)的原理都忘光了。
學(xué)習(xí)了,謝謝您!
回復(fù)

使用道具 舉報(bào)

8#
ID:224104 發(fā)表于 2020-9-20 20:51 | 只看該作者
laoshu2521 發(fā)表于 2020-9-20 10:10
親,你的定時(shí)器都沒(méi)有初始化,時(shí)鐘都沒(méi)設(shè)定。另外你要檢測(cè)555定時(shí)器的輸出脈沖的話,代碼不是這么寫(xiě)的。需 ...

我的代碼不是自己寫(xiě)的,是STC官方給的,簡(jiǎn)單改了改。

不過(guò)問(wèn)題已經(jīng)有另外兩個(gè)大神解答了,不過(guò)還是謝謝您
回復(fù)

使用道具 舉報(bào)

9#
ID:224104 發(fā)表于 2020-9-20 21:02 | 只看該作者
wulin 發(fā)表于 2020-9-20 10:39
定時(shí)器初值錯(cuò)誤,應(yīng)該是65536-8=65528=0xFFF8,中斷中也要重新賦初值FFF8。

初值的定義我理解錯(cuò)了,謝謝指正。。

可是是有一點(diǎn)我不太理解,我選的是自動(dòng)重載模式,但,您說(shuō)“中斷函數(shù)里面要重新賦初值FFF8”,已經(jīng)自動(dòng)重載了還有這個(gè)必要嗎?
回復(fù)

使用道具 舉報(bào)

10#
ID:224104 發(fā)表于 2020-9-20 21:02 | 只看該作者

太詳細(xì)了,謝謝您
回復(fù)

使用道具 舉報(bào)

11#
ID:213173 發(fā)表于 2020-9-21 06:00 | 只看該作者
guysxpf 發(fā)表于 2020-9-20 21:02
初值的定義我理解錯(cuò)了,謝謝指正。。

可是是有一點(diǎn)我不太理解,我選的是自動(dòng)重載模式,但,您說(shuō)“中斷 ...

已經(jīng)設(shè)置自動(dòng)重載模式就不需在中斷函數(shù)里面重新賦初值。
回復(fù)

使用道具 舉報(bào)

12#
ID:224104 發(fā)表于 2020-9-21 11:18 | 只看該作者
wulin 發(fā)表于 2020-9-21 06:00
已經(jīng)設(shè)置自動(dòng)重載模式就不需在中斷函數(shù)里面重新賦初值。

OK
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 精品av| 精品久久香蕉国产线看观看亚洲 | av一二三四| 国产成人亚洲精品自产在线 | 亚洲一区二区在线播放 | 久久久久国产 | 久久久久久久亚洲精品 | 久久久久国产一区二区三区四区 | 亚洲人成人网 | 一区二区伦理电影 | 成人不卡视频 | 成在线人视频免费视频 | 伦理午夜电影免费观看 | 手机av网 | 古典武侠第一页久久777 | 久久久久久久久久久丰满 | 夜夜爽99久久国产综合精品女不卡 | 欧美一区二区三区在线观看视频 | 久在线 | 亚洲一区二区免费视频 | 天天干天天爱天天操 | 成人国产一区二区三区精品麻豆 | 国产福利视频 | 男人的天堂在线视频 | 日韩视频 中文字幕 | 国产亚洲欧美在线 | 中文字幕日韩一区二区 | www.国产91| 蜜桃免费一区二区三区 | www.五月天婷婷 | 国产亚洲日本精品 | 在线观看视频亚洲 | 91在线视频在线观看 | 欧美午夜精品 | 九九免费视频 | 精品视频一区二区三区在线观看 | 国产一级片久久久 | 黄色国产 | av色站| 日韩国产精品一区二区三区 | 中国xxxx性xxxx产国 |