![]() |
yzwzfyz 發表于 2018-1-7 12:50 保護程序標志位?什么意思啊,我回答的都是中斷程序中有的啊,搞不清楚了。。。。無知確實不是借口,但我真不清楚 |
看來你還不糊糊。 把你回答的,補寫到中斷服務程序中去。 另外DA A是依據PSW中的半進和進位標記進行調整的,你沒有保護PSW!!! 我回你的三點在中斷務程序中沒有看到。 這與你是不是初學無關,能理解、邏輯清楚就好。初學不可以作借口,態度要正確。 |
yzwzfyz 發表于 2018-1-6 20:45 老師,我是初學,受教了 |
yzwzfyz 發表于 2018-1-6 20:42 1,R0是每4毫秒加1,也就是每中斷1次就加一, 2,執行中斷時,我將累加器的值壓入了堆棧,中斷結束POP ACC,彈棧 3,秒不會等于大于60H,CJNE A,60H,INC MIN此時MOV 30H,00對秒請0了 |
本帖最后由 zl2168 于 2018-1-6 21:32 編輯 實例94 模擬電子鐘(由80C51定時器產生秒時基) 先Proteus仿真一下,確認有效。 ![]() ![]() 以上摘自張志良編著《80C51單片機實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9, 用于學習51單片機原理,程序(雙解c和匯編)語句條條有注解,便于閱讀理解,便于自學,可從零基礎c語言開始學習。 仿真電路和Hex文件能在清華出版社網站免費下載,程序源代碼只能到書上看了。到圖書館借,或到新華書店翻閱,或到網上書店打折購買。 |
本帖最后由 zl2168 于 2018-1-6 21:28 編輯 實例93 具有校正功能的時鐘1302(LED數碼管顯示) 先Proteus仿真一下,確認有效。 ![]() 以上摘自張志良編著《80C51單片機實用教程——基于Keil C和Proteus》高等教育出版社ISBN 978-7-04-044532-9, 用于學習51單片機原理,程序(雙解c和匯編)語句條條有注解,便于閱讀理解,便于自學,可從零基礎c語言開始學習。 仿真電路和Hex文件能在清華出版社網站免費下載,程序源代碼只能到書上看了。到圖書館借,或到新華書店翻閱,或到網上書店打折購買。 |
以分為例: 何時清0?何時+1? |
寫程序,先畫個框圖,框圖走通了再寫程序。 這么點邏輯關系都搞不定,復雜一些怎么辦?學會畫框圖很重要!. |
1、R0何時+1? 2、如果T0中斷發生在: NOPRESS4: JB P3.2,LOOP CALL FILTER MOV A,32H ADD A,#01H...........發生在這里 中斷返回后: DA A MOV 32H,A 這時的 DA A之后能保證正確碼? 3、當秒會不會=60H、61H、62H呢? |