找回密碼
         注冊會員
        搜索附件  

        timer.rar

         

        幫忙看一下時鐘定時問題:
        附件里面有程序和proteus仿真圖,運行即可看到現象,用來顯示hour的十位不正常,程序中有注明是哪段程序,把那段程序去掉顯示就正常了,如果加上那段,點擊運行秒不動,等一會兒才懂,走過幾秒就又停止了,就是那段程序干擾了整個循環,還請幫忙看看怎么修改;還有就是是不是用proteus仿真定時不準,還是我的代碼有問題,大概走1分鐘會慢下來9秒

        復制代碼
        1. #include"reg51.h" //包含reg51.h頭文件
        2. #define uchar unsigned char //宏定義
        3. #define uint unsigned int //宏定義
        4. sbit led1=P1^0; //定義LED連接關系
        5. sbit led2=P1^1;
        6. sbit w1=P2^0; //時-十位
        7. sbit w2=P2^1; //時-各位
        8. sbit w3=P2^2; //分-十位
        9. sbit w4=P2^3; //分-個位
        10. sbit w5=P2^4; //秒-十位
        11. sbit w6=P2^5; //秒-個位
        12. uchar sec,min,hour,num; //定義變量
        13. uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共陽極字碼表
        14. void delay(uint ims) //延時子函數
        15. {
        16. uint i,j;
        17. for(i=ims;i>0;i--) //ims為多少就是多少ms
        18. for(j=110;j>0;j--);
        19. }
        20. void main() //主函數
        21. {
        22. TMOD=0x01; //設置為定時器0工作方式1定時器1工作方式1
        23. TH0=(65536-45872)/256; //裝入定時初值
        24. TL0=(65536-45872)%256;
        25. EA=1; //開總中斷
        26. ET0=1; //開定時器0中斷
        27. TR0=1; //開定時器0
        28. while(1) //大循環
        29. {
        30. P0=table[sec%10];
        31. w6=0; //秒-個位
        32. delay(10);
        33. w6=1;
        34. P0=table[sec/10];
        35. w5=0; //秒-十位
        36. delay(10);
        37. w5=1;
        38. P0=table[min%10];
        39. w4=0; //分-個位
        40. delay(10);
        41. w4=1;
        42. P0=table[min/10];
        43. w3=0; //分-十位
        44. delay(10);
        45. w3=1;
        46. P0=table[hour%10];
        47. w2=0; //時-個位
        48. delay(10);
        49. w2=1;
        50. /************這段程序有問題**************/
        51. P0=table[hour/10];
        52. w1=0; //時-十位
        53. delay(10); //問題可能就是這個延時破壞了循環,請高手指教
        54. w1=1;
        55. /***************************************/
        56. if(num==20)
        57. {
        58. num=0;
        59. led1=~led1;
        60. led2=~led2;
        61. if(sec<59)
        62. sec++;
        63. else
        64. {
        65. sec=0;
        66. if(min<59)
        67. min++;
        68. else
        69. {
        70. min=0;
        71. if(hour<11)
        72. hour++;
        73. else
        74. hour=0;
        75. }
        76. }
        77. }
        78. }
        79. }
        80. void timer0()interrupt 1
        81. {
        82. TH0=(65536-45872)/256;
        83. TL0=(65536-45872)%256;
        84. num++;
        85. }
        復制代碼
        [ 此貼被role_2099在2009-04-23 19:17重新編輯 ]


        QQ|手機版|MCU資訊論壇 ( 京ICP備18035221號-2 )|網站地圖

        GMT+8, 2025-5-1 05:35 , Processed in 0.044343 second(s), 8 queries , Redis On.

        Powered by Discuz! X3.5

        © 2001-2025 Discuz! Team.

        返回頂部
        免费精品精品国产欧美在线欧美高清免费一级在线 | 97精品国产手机| 99久久人妻无码精品系列| 亚洲午夜久久久精品影院| 538国产精品一区二区在线| 国内精品久久国产大陆| 国产亚洲精品a在线观看 | 国产剧情国产精品一区| 2021国产成人精品久久| 热RE99久久精品国产66热| 精品久久久久久无码专区| 国产午夜精品一区二区三区不卡| 一本岛一区在线观看不卡| 精品国产欧美一区二区三区成人| 亚洲国产精品线观看不卡| 国产成人精品电影在线观看| 国产亚洲精品激情都市| 无码精品日韩中文字幕| 亚洲综合国产精品| 欧美日韩一区二区三区韩大 | 国产在线精品一区二区高清不卡| 台湾佬中文性娱乐| 精品九九人人做人人爱| 合区精品中文字幕| 99在线精品一区二区三区| 精品午夜福利1000在线观看| 奇米影视7777久久精品| 国产精品久久久99| 亚洲αv在线精品糸列| 国产精品福利片免费看| 亚洲乱码精品久久久久..| 亚洲天堂久久精品| 日韩精品无码一区二区中文字幕 | 国产精品乱码高清在线观看| 国内精品国语自产拍在线观看| 日本一卡精品视频免费| 精品国产青草久久久久福利| 精品国偷自产在线| 蜜桃麻豆www久久国产精品 | v视界影院最新网站| 国产成人久久精品麻豆一区|