在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > GNU ARM匯編--(十四)GNU ARM匯編下做任務(wù)調(diào)度

            GNU ARM匯編--(十四)GNU ARM匯編下做任務(wù)調(diào)度

            作者: 時(shí)間:2016-11-26 來(lái)源:網(wǎng)絡(luò) 收藏
            [cpp]view plaincopy
            1. .text
            2. .globalEntryTask3
            3. Feq_Table:
            4. .word20
            5. .word40
            6. .word60
            7. .word80
            8. .word100
            9. .word120
            10. .word140
            11. .word160
            12. .word180
            13. .word200
            14. .word220
            15. .word240
            16. CurrentFeq:
            17. .word0x0
            18. task3_delay:
            19. ldrr3,=0xffffff
            20. task3_delay1:
            21. subr3,r3,#1
            22. cmpr3,#0x0
            23. bnetask3_delay1
            24. movpc,lr
            25. EntryTask3:
            26. loopfeq:
            27. ldrr1,=TCON
            28. ldrr2,=(DZ_eable<<4)|(auto_reload<<3)|(inverter<<2)|(man_update<<1)|(stop<<0)
            29. strr2,[r1]
            30. ldrr2,=GPBCON
            31. ldrr1,[r2]
            32. //ldrr1,=0x15400
            33. bicr1,r1,#0x3
            34. orrr1,r1,#0x2
            35. strr1,[r2]
            36. ldrr1,=TCFG0
            37. ldrr2,=(Prescaler0<<0)
            38. strr2,[r1]
            39. ldrr1,=TCFG1
            40. ldrr2,=(DMA_MODE<<20)|(MUX0<<0)
            41. strr2,[r1]
            42. ldrr3,=CurrentFeq
            43. ldrr0,[r3]
            44. ldrr4,=Feq_Table
            45. ldrr4,[r4,r0,LSL#2]@用r4存放table中的值
            46. addr0,r0,#1
            47. cmpr0,#12
            48. moveqr0,#0
            49. strr0,[r3]
            50. ldrr1,=TCNTB0
            51. //ldrr4,=100
            52. strr4,[r1]
            53. movr4,r4,LSR#2
            54. ldrr1,=TCMPB0
            55. //ldrr4,=25
            56. strr4,[r1]
            57. ldrr1,=TCON
            58. ldrr2,=(DZ_eable<<4)|(auto_reload<<3)|(inverter<<2)|(man_update<<1)|(start<<0)
            59. strr2,[r1]
            60. ldrr1,=TCON
            61. ldrr2,=(DZ_eable<<4)|(auto_reload<<3)|(inverter<<2)|(clear_man_update<<1)|(start<<0)
            62. strr2,[r1]
            63. bltask3_delay
            64. bloopfeq
            第三個(gè)任務(wù)就是每隔一段時(shí)間就有新的頻率產(chǎn)生.

            整個(gè)編譯出來(lái)不到2K,直接在4K的sram中跑.看到的就是led在流水,蜂鳴器在各種頻率.忽然想到了“落霞與孤鶩齊飛”.有了任務(wù)調(diào)度,看起來(lái)還是很美的.

            下一步,利用MMU的MPU功能,改進(jìn)這個(gè)任務(wù)調(diào)度,并且任務(wù)是單獨(dú)編譯的.總大小應(yīng)該不會(huì)超過(guò)4K,這樣我就暫時(shí)不用看Nandflash的datasheet了.不過(guò)遲早是要看的.......


            上一頁(yè) 1 2 下一頁(yè)

            關(guān)鍵詞: ARM匯編任務(wù)調(diào)

            評(píng)論


            技術(shù)專區(qū)

            關(guān)閉