痞酷網_PIGOO

 找回密碼
 立即註冊
!!! [系統偵測到廣告阻擋軟體] !!!

如果您覺得痞酷網對您有些許幫助,或者您認同痞酷網的理想,

那麼希望您將痞酷網設定為白名單.

並請在上論壇的時候,動動您的手指,用行動支持我們.

謝謝!
查看: 3894|回復: 8

STC15F204EA LCM 推動的問題解決!!

[複製鏈接]
發表於 2013-4-17 00:47:51 | 顯示全部樓層 |閱讀模式
日前 因為剛剛使用 STC15F204EA 結果發生 LCM漏字的問題,才知道 1T 12T MCU的問題(嚴重)以及自己的所學不足,經過 LEGION大以及 FATZEROS大的幫助,於是上網下載了 試用版的 KEIL uV4,也發現了 STC MCU的一些小問題,還有 uV4不支援的問題... 陸續的摸索還是有所收穫,  "天道籌勤"得以印證...

    DSC07109.JPG

問題在哪裡?
以附贈的程式,用在12T上面可以但是用在 1T就不行,以 LCM的時續需求 190ns 來說並不是問題,因為1T速度更快,但是我忘了 寫進 LCM又需要一段時間讓他內部處理,這需要 40us的時間, 1T MCU跑太快了,經過程式小幫手確認延遲上面 12T vs STC15F204EA 1T(實際約為2T) 所以40us就變的不夠了,難怪會跳字!!

  我還發現 keil uv4 版本還有差, F大給的有部分功能沒有,不知道是因為 4.0 vs 4.x 的原因??還是其他? 日後再報告!!

  感謝大家的幫忙!! 痞酷網真好!!

評分

2

查看全部評分

發表於 2013-4-17 01:51:21 | 顯示全部樓層
恭喜阿乾大,果然有志者事竟成。n_116|
發表於 2013-4-17 17:31:27 | 顯示全部樓層
阿乾兄:
有空可以幫我試試這個SFR嗎?

stc_clk_div_sfr.PNG

這是從STC_11F-10Fxx的datasheet第45頁截出來的,
看看,這個SFR有沒有作用!

因為,這個SFR好像就是STC用1T MCU來替代12T MCU的工具!

說不定可以解決掉一些時序的問題!
 樓主| 發表於 2013-4-17 17:58:46 | 顯示全部樓層
FATZEROS大:
   您太看得起我了!! 我只是先把 stc89c53的程式 轉移到 15F204EA 上去,用意是要利用他的平價又有 AD功能,我也不太想要再"減速"了!! 因為我想減速若使用在通訊就會出問題, 我的問題有點像 CPU跑太快硬碟跟不上,所以重點是硬碟讀取需要多少時間,CPU利用空檔多做一點事情比較實在!!要他全面慢動作,不划算啊!!
 樓主| 發表於 2013-4-17 21:18:33 | 顯示全部樓層
fatzeros 發表於 2013-4-17 05:31 PM static/image/common/back.gif
阿乾兄:
有空可以幫我試試這個SFR嗎?

FAT0S大:
   告訴你好消息! uV4 最新版本 V4.60.6.10 功能很不錯!! 只是 只能使用2K的模擬!! KEY GEN 裡面好像是空的!!
發表於 2013-4-17 22:09:42 | 顯示全部樓層
antlu 發表於 2013-4-17 09:18 PM static/image/common/back.gif
FAT0S大:
   告訴你好消息! uV4 最新版本 V4.60.6.10 功能很不錯!! 只是 只能使用2K的模擬!! KEY GEN 裡 ...

應該是這樣寫吧:
C語言:
SFR          CLK_DIV          =          0x97;          //定義CLK_DIV這個SFR
CLK_DIV=0x03;                                             //設定為時脈/8
再來接著原來在12T MCU的程式。

匯編ASM:
CLK_DIV          EQU          097H                     ;放在程序頭段定義CLK_DIV這個SFR
                      MOV          CLK_DIV,#003H     ;在MAIN段第一行放上這個參數
再來接著原來在12T MCU的程式。

有錯請各位師傅指教啊!

阿乾兄:
另外,KEY這種東西要低調一點啊!
我想過一陣子,應該就會有快樂版的啦!
所以,要低調一點,有2K的就很好用啦!
 樓主| 發表於 2013-4-17 23:55:25 | 顯示全部樓層
fatzeros 發表於 2013-4-17 10:09 PM static/image/common/back.gif
應該是這樣寫吧:
C語言:
SFR          CLK_DIV          =          0x97;          //定義CLK_DIV這個 ...

//系统管理特殊功能寄存器
sfr PCON        =   0x87;   //0001,0000 电源控制寄存器
sfr AUXR        =   0x8E;   //0000,0000 辅助寄存器
sfr AUXR1       =   0xA2;   //0000,0000 辅助寄存器1
sfr P_SW1       =   0xA2;   //0000,0000 外设端口切换寄存器1
sfr CLK_DIV     =   0x97;   //xxxx,x000 时钟分频控制寄存器
sfr BUS_SPEED   =   0xA1;   //xx10,x011 总线速度控制寄存器
sfr P1ASF       =   0x9D;   //0000,0000 端口1模拟功能配置寄存器
sfr P_SW2       =   0xBA;   //0000,0000 外设端口切换寄存器
sfr IRC_CLKO    =   0xBB;   //0000,0000 内部振荡器时钟输出控制寄存器

這是頭文字!!內容!! 我目前還在摸索中!! 今天把筆電灌上 UV4 剛剛上STC網站,關於 STC15F204EA的資料很少,難怪網路賣這一個價錢跟89S52一樣價錢30 元/個 ...
發表於 2013-4-18 00:38:03 | 顯示全部樓層
,但是我忘了 寫進 LCM又需要一段時間讓他內部處理,這需要 40us的時間, 1T MCU跑太快了
--------------------------------------------------------------------------------------------------------------
恭喜抓到問題.....不過這不是一開始我就有提醒您要注意指令與指令之間的延時問題?
 樓主| 發表於 2013-4-18 00:58:42 | 顯示全部樓層
ysc 發表於 2013-4-18 12:38 AM static/image/common/back.gif
,但是我忘了 寫進 LCM又需要一段時間讓他內部處理,這需要 40us的時間, 1T MCU跑太快了
------------------- ...

YSC大:
   沒有經過一番摸索是無法體會 老師傅的"指點"啦!!  感謝繼續指點!! 這樣微控的路上才能持續走下去!!
您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

關閉

站長小叮嚀上一條 /1 下一條

禁閉室|手機版|連繫我們|痞酷網電子技術論壇

GMT+8, 2024-11-23 04:50 AM , Processed in 0.317608 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.