欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

[已解決]奇怪,我的單片機(jī)計數(shù)器0工作1狀態(tài)下只能計10299以下的數(shù)?

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:776619 發(fā)表于 2022-3-11 13:52 | 只看該作者 回帖獎勵 |倒序?yàn)g覽 |閱讀模式
工作1是16位的啊,最高可以60000多的計數(shù)量的。單片機(jī)芯片是STC516RD+的。好奇怪!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

沙發(fā)
ID:776619 發(fā)表于 2022-3-11 13:54 | 只看該作者
計數(shù)器1一樣的,工作方式1也是只能計10299以下的數(shù)(包括10299)。
回復(fù)

使用道具 舉報

板凳
ID:491577 發(fā)表于 2022-3-11 19:42 | 只看該作者
程序呢?你怎么確定只能夠計數(shù)到10299?
回復(fù)

使用道具 舉報

地板
ID:624769 發(fā)表于 2022-3-11 20:14 | 只看該作者
10299  =>   0010 1000 0011 1011

所以,你也不用去捉摸其他有的沒有的,就是你程序?qū)戝e了。
回復(fù)

使用道具 舉報

5#
ID:509548 發(fā)表于 2022-3-11 23:35 | 只看該作者
就像樓上說的  絕對是程序的問題
回復(fù)

使用道具 舉報

6#
ID:776619 發(fā)表于 2022-3-12 11:02 | 只看該作者
程序是沒有問題的,一個個數(shù)代進(jìn)去試的,高開10299就不運(yùn)行了。比如是10000的話,另一全局變量定時來就加1.滿100清零,相當(dāng)開一秒,延后時鐘運(yùn)算顯示,定時10299以下一切正常,想改比如50000,全局變量滿20清零,也相當(dāng)于1秒,然后時鐘就不跳了。
回復(fù)

使用道具 舉報

7#
ID:776619 發(fā)表于 2022-3-12 11:09 | 只看該作者
本帖最后由 wolfinn 于 2022-3-12 11:19 編輯

你們也別武斷的說我的程序錯了,這只是改TH0和THL0=(65536-10000)/2565;THL0=(65536-10000)%2565;改這個10000這個數(shù)而已,從10000到10299都可以,再多1都不行。
回復(fù)

使用道具 舉報

8#
ID:776619 發(fā)表于 2022-3-12 11:16 | 只看該作者
用定時0時TMOD為0x01,用定時1時TMOD為0x10。兩定時都是在可以跳的情況下改值的,正常時秒能跳,滿60秒分鐘也能跳,。
回復(fù)

使用道具 舉報

9#
ID:776619 發(fā)表于 2022-3-12 11:30 | 只看該作者
除了一個可能沒試,就是在外面給的是10299,中斷里面重裝時給10300,這樣應(yīng)該能跳一個秒數(shù)。
回復(fù)

使用道具 舉報

10#
ID:624769 發(fā)表于 2022-3-12 16:42 | 只看該作者
wolfinn 發(fā)表于 2022-3-12 11:09
你們也別武斷的說我的程序錯了,這只是改TH0和THL0=(65536-10000)/2565;THL0=(65536-10000)%2565;改這個100 ...

說實(shí)話,我是真不知道,這樣  空空而談,對你解決問題有什么幫助么? 前面,已經(jīng)把 10299 的2進(jìn)制給你看了,現(xiàn)在,我在跟你講幾個基本原理,

首先,定時器,是計數(shù)到 65535,然后再 +1 溢出之后, 歸0, 所以 TH0 和 TL0 都會計數(shù)達(dá)到 0xFF (255) 然后溢出,這個原則是不變的。
然后,所謂的13位定時器, 他是用的 TH0 的8位   和 TL0 的5位, 從這個意義上來講, 你單純看 TH0  和 TL0 的值,它也是會計數(shù)到 6萬多的。
再然后,你說你用:
改TH0和THL0=(65536-10000)/2565;THL0=(65536-10000)%2565;
撇開, THL0 這個名稱是不存在的, 2565 這個數(shù)值的奇怪之處, 都當(dāng)你是論壇里的筆誤。你也不是計數(shù)只能到 10299 而是 從 5萬多開始計數(shù)。

至于為什么不動,基于發(fā)個貼證明你自己方法沒錯,都能有那么多“筆誤”,我依然認(rèn)為你的程序里存在著這樣那樣的“筆誤”,這就是我說的你的程序是錯的。至少,就算我可以理解你是筆誤,但是編譯器不會管,編譯出來的程序,最終的結(jié)果,就是“錯”的。
回復(fù)

使用道具 舉報

11#
ID:734017 發(fā)表于 2022-3-12 17:52 | 只看該作者
當(dāng)你發(fā)現(xiàn)想不通的時候,就是程序問題。
回復(fù)

使用道具 舉報

12#
ID:776619 發(fā)表于 2022-3-12 18:33 | 只看該作者
188610329 發(fā)表于 2022-3-12 16:42
說實(shí)話,我是真不知道,這樣  空空而談,對你解決問題有什么幫助么? 前面,已經(jīng)把 10299 的2進(jìn)制給你看 ...

別說我錯了,我只改四處10000這個值,先50000,40000,30000,10000,多次改,最后發(fā)現(xiàn)10000處可以動。然后為了找這個值。500加,300加,然后幾十加,10300以下從沒有出現(xiàn)過不動的。
回復(fù)

使用道具 舉報

13#
ID:776619 發(fā)表于 2022-3-12 18:35 | 只看該作者
10299的二進(jìn)制我也會算,一般不算出來,用公式讓機(jī)器去做,這樣知道是多少定時值。
回復(fù)

使用道具 舉報

14#
ID:776619 發(fā)表于 2022-3-12 18:38 | 只看該作者
現(xiàn)在是改四處10299就馬上行,10300馬上不行。你別說我用的是方式1,方式1的最大值是8192,16進(jìn)制是0x2000
回復(fù)

使用道具 舉報

15#
ID:884147 發(fā)表于 2022-3-12 19:23 | 只看該作者
如果程序沒錯,那一定就是芯片錯了!
回復(fù)

使用道具 舉報

16#
ID:879809 發(fā)表于 2022-3-12 19:35 | 只看該作者
編譯器在預(yù)編譯階段運(yùn)算THL0=(65536-10000)/2565;THL0=(65536-10000)%2565;溢出了。
回復(fù)

使用道具 舉報

17#
ID:776619 發(fā)表于 2022-3-12 19:39 | 只看該作者
mtdzok 發(fā)表于 2022-3-12 19:23
如果程序沒錯,那一定就是芯片錯了!

終于有人說句象樣的話了,我只說一個現(xiàn)象,不放程序上來不是讓人來解決問題的。那樣我覺得學(xué)不到東西。對別人也是種折磨。有空我找找看,以前我買過幾個真AT89C52的,換個芯片試試。
回復(fù)

使用道具 舉報

18#
ID:776619 發(fā)表于 2022-3-12 19:41 | 只看該作者
用10000的值跑7個多小時,做的時鐘沒問題。就改這四個10000的數(shù),看在什么地方定時器會停。,
回復(fù)

使用道具 舉報

19#
ID:776619 發(fā)表于 2022-3-12 19:42 | 只看該作者
發(fā)表于 2022-3-12 19:35
編譯器在預(yù)編譯階段運(yùn)算THL0=(65536-10000)/2565;THL0=(65536-10000)%2565;溢出了。

真正程序沒錯的,在論壇打多了個5.
回復(fù)

使用道具 舉報

20#
ID:776619 發(fā)表于 2022-3-12 20:04 | 只看該作者
我也直接寫入換算出來的值,還是不運(yùn)行,F(xiàn)在是10300可以運(yùn)行了。
回復(fù)

使用道具 舉報

21#
ID:776619 發(fā)表于 2022-3-12 20:13 | 只看該作者
最新消息,現(xiàn)在是10305不行,10304可以。哈哈,奇怪的芯片。
回復(fù)

使用道具 舉報

22#
ID:776619 發(fā)表于 2022-3-12 20:24 | 只看該作者
發(fā)表于 2022-3-12 19:35
編譯器在預(yù)編譯階段運(yùn)算THL0=(65536-10000)/2565;THL0=(65536-10000)%2565;溢出了。

討論一下,這是常量運(yùn)算,不會溢出吧?最多是得0,運(yùn)行一次就停止了。
回復(fù)

使用道具 舉報

23#
ID:401564 發(fā)表于 2022-3-12 23:25 | 只看該作者
在通常情況下,99%是代碼的問題,你這個問題,99.99%是你代碼的問題
整了兩天,你就只說不行,它怎么個不行?你怎么知道它不行?為什么不把代碼上傳一下?
你把代碼上傳一下,基本就能解決問題
在很多情況下,是代碼的問題,你這芯片還能下載,基本就是好的
回復(fù)

使用道具 舉報

24#
ID:776619 發(fā)表于 2022-3-13 07:04 | 只看該作者
問題解決。找到我舊的AT89S52芯片,換個實(shí)驗(yàn)版燒進(jìn)去,故障一樣的。查了下程序,原來我把定時器0初始化語句放WHILE(1)大循環(huán)里了,放前面OK。
回復(fù)

使用道具 舉報

25#
ID:776619 發(fā)表于 2022-3-13 07:07 | 只看該作者
本帖最后由 wolfinn 于 2022-3-13 09:31 編輯

又來了新問題,普中5的實(shí)驗(yàn)板,燒不了AT89S52的芯片。用別的板子WIN7 64位又不認(rèn)USBaSP驅(qū)動。下載幾個據(jù)說是WIN7 64位USBaSP的都不行。又有得搞。裝了個XP系統(tǒng)才能燒。
回復(fù)

使用道具 舉報

26#
ID:776619 發(fā)表于 2022-3-13 10:23 | 只看該作者
萬能的某一個寶,找了家賣USBASP下載線的商戶,從商品描述里找到了一個21.3M的驅(qū)動下載地址,下完裝入OK。現(xiàn)在是STC的51芯片只能用STC的軟件下載。AT89S52的只能用AVR_fighter來下載,兩者不能互用。
回復(fù)

使用道具 舉報

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

本版積分規(guī)則

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

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

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