📄 ucos_ii.lst
字号:
1527 068e C901 movw r24,r18
1528 0690 24E6 ldi r18,lo8(100)
1529 0692 281B sub r18,r24
1530 .LM194:
1531 0694 27FD sbrc r18,7
1532 0696 03C0 rjmp .L105
1533 .LM195:
1534 0698 2093 0000 sts OSCPUUsage,r18
1535 069c 17C0 rjmp .L107
1536 .L105:
1537 .LM196:
1538 069e 1092 0000 sts OSCPUUsage,__zero_reg__
1539 06a2 14C0 rjmp .L107
1540 .L104:
1541 .LM197:
1542 06a4 1092 0000 sts OSCPUUsage,__zero_reg__
1543 .LM198:
1544 06a8 8091 0000 lds r24,OSIdleCtrMax
1545 06ac 9091 0000 lds r25,(OSIdleCtrMax)+1
1546 06b0 A091 0000 lds r26,(OSIdleCtrMax)+2
1547 06b4 B091 0000 lds r27,(OSIdleCtrMax)+3
1548 06b8 BC01 movw r22,r24
1549 06ba CD01 movw r24,r26
1550 06bc 24E6 ldi r18,lo8(100)
1551 06be 30E0 ldi r19,hi8(100)
1552 06c0 40E0 ldi r20,hlo8(100)
1553 06c2 50E0 ldi r21,hhi8(100)
1554 06c4 0E94 0000 call __udivmodsi4
1555 06c8 7901 movw r14,r18
1556 06ca 8A01 movw r16,r20
1557 .L107:
1558 .LM199:
1559 06cc 0E94 0000 call OSTaskStatHook
1560 .LM200:
1561 06d0 8AE0 ldi r24,lo8(10)
1562 06d2 90E0 ldi r25,hi8(10)
1563 06d4 0E94 0000 call OSTimeDly
1564 .LM201:
1565 06d8 AECF rjmp .L102
1566 /* epilogue: frame size=0 */
1567 /* epilogue: noreturn */
1568 /* epilogue end (size=0) */
1569 /* function OS_TaskStat size 115 (111) */
1570 .LFE29:
1572 .global OS_TCBInit
1574 OS_TCBInit:
1575 .LFB30:
1576 .LM202:
1577 /* prologue: frame size=0 */
1578 06da 1F93 push r17
1579 06dc CF93 push r28
1580 06de DF93 push r29
1581 /* prologue end (size=3) */
1582 06e0 182F mov r17,r24
1583 .LM203:
1584 /* #APP */
1585 06e2 F894 cli
1586 .LM204:
1587 /* #NOAPP */
1588 06e4 C091 0000 lds r28,OSTCBFreeList
1589 06e8 D091 0000 lds r29,(OSTCBFreeList)+1
1590 .LM205:
1591 06ec 2097 sbiw r28,0
1592 06ee 09F4 brne .+2
1593 06f0 5EC0 rjmp .L112
1594 .LM206:
1595 06f2 8A81 ldd r24,Y+2
1596 06f4 9B81 ldd r25,Y+3
1597 06f6 9093 0000 sts (OSTCBFreeList)+1,r25
1598 06fa 8093 0000 sts OSTCBFreeList,r24
1599 .LM207:
1600 /* #APP */
1601 06fe 7894 sei
1602 .LM208:
1603 /* #NOAPP */
1604 0700 6883 st Y,r22
1605 0702 7983 std Y+1,r23
1606 .LM209:
1607 0704 1C87 std Y+12,r17
1608 .LM210:
1609 0706 1A86 std Y+10,__zero_reg__
1610 .LM211:
1611 0708 1B86 std Y+11,__zero_reg__
1612 .LM212:
1613 070a 1886 std Y+8,__zero_reg__
1614 070c 1986 std Y+9,__zero_reg__
1615 .LM213:
1616 070e 812F mov r24,r17
1617 0710 8695 lsr r24
1618 0712 8695 lsr r24
1619 0714 8695 lsr r24
1620 0716 8E87 std Y+14,r24
1621 .LM214:
1622 0718 E82F mov r30,r24
1623 071a FF27 clr r31
1624 071c E050 subi r30,lo8(-(OSMapTbl))
1625 071e F040 sbci r31,hi8(-(OSMapTbl))
1626 0720 8081 ld r24,Z
1627 0722 888B std Y+16,r24
1628 .LM215:
1629 0724 812F mov r24,r17
1630 0726 8770 andi r24,lo8(7)
1631 0728 8D87 std Y+13,r24
1632 .LM216:
1633 072a E82F mov r30,r24
1634 072c FF27 clr r31
1635 072e E050 subi r30,lo8(-(OSMapTbl))
1636 0730 F040 sbci r31,hi8(-(OSMapTbl))
1637 0732 8081 ld r24,Z
1638 0734 8F87 std Y+15,r24
1639 .LM217:
1640 0736 1E82 std Y+6,__zero_reg__
1641 0738 1F82 std Y+7,__zero_reg__
1642 .LM218:
1643 073a 8FE3 ldi r24,lo8(63)
1644 073c 898B std Y+17,r24
1645 .LM219:
1646 073e 1A8A std Y+18,__zero_reg__
1647 .LM220:
1648 0740 CE01 movw r24,r28
1649 0742 0E94 0000 call OSTCBInitHook
1650 .LM221:
1651 0746 CE01 movw r24,r28
1652 0748 0E94 0000 call OSTaskCreateHook
1653 .LM222:
1654 /* #APP */
1655 074c F894 cli
1656 .LM223:
1657 /* #NOAPP */
1658 074e E12F mov r30,r17
1659 0750 FF27 clr r31
1660 0752 EE0F add r30,r30
1661 0754 FF1F adc r31,r31
1662 0756 E050 subi r30,lo8(-(OSTCBPrioTbl))
1663 0758 F040 sbci r31,hi8(-(OSTCBPrioTbl))
1664 075a C083 st Z,r28
1665 075c D183 std Z+1,r29
1666 .LM224:
1667 075e E091 0000 lds r30,OSTCBList
1668 0762 F091 0000 lds r31,(OSTCBList)+1
1669 0766 EA83 std Y+2,r30
1670 0768 FB83 std Y+3,r31
1671 .LM225:
1672 076a 1C82 std Y+4,__zero_reg__
1673 076c 1D82 std Y+5,__zero_reg__
1674 .LM226:
1675 076e 3097 sbiw r30,0
1676 0770 11F0 breq .L113
1677 .LM227:
1678 0772 C483 std Z+4,r28
1679 0774 D583 std Z+5,r29
1680 .L113:
1681 .LM228:
1682 0776 D093 0000 sts (OSTCBList)+1,r29
1683 077a C093 0000 sts OSTCBList,r28
1684 .LM229:
1685 077e 8091 0000 lds r24,OSRdyGrp
1686 0782 9889 ldd r25,Y+16
1687 0784 892B or r24,r25
1688 0786 8093 0000 sts OSRdyGrp,r24
1689 .LM230:
1690 078a 8E85 ldd r24,Y+14
1691 078c E82F mov r30,r24
1692 078e FF27 clr r31
1693 0790 E050 subi r30,lo8(-(OSRdyTbl))
1694 0792 F040 sbci r31,hi8(-(OSRdyTbl))
1695 0794 8081 ld r24,Z
1696 0796 9F85 ldd r25,Y+15
1697 0798 892B or r24,r25
1698 079a 8083 st Z,r24
1699 .LM231:
1700 079c 8091 0000 lds r24,OSTaskCtr
1701 07a0 8F5F subi r24,lo8(-(1))
1702 07a2 8093 0000 sts OSTaskCtr,r24
1703 .LM232:
1704 /* #APP */
1705 07a6 7894 sei
1706 .LM233:
1707 /* #NOAPP */
1708 07a8 80E0 ldi r24,lo8(0)
1709 07aa 90E0 ldi r25,hi8(0)
1710 07ac 03C0 rjmp .L111
1711 .L112:
1712 .LM234:
1713 /* #APP */
1714 07ae 7894 sei
1715 .LM235:
1716 /* #NOAPP */
1717 07b0 86E4 ldi r24,lo8(70)
1718 07b2 90E0 ldi r25,hi8(70)
1719 .L111:
1720 /* epilogue: frame size=0 */
1721 07b4 DF91 pop r29
1722 07b6 CF91 pop r28
1723 07b8 1F91 pop r17
1724 07ba 0895 ret
1725 /* epilogue end (size=4) */
1726 /* function OS_TCBInit size 118 (111) */
1727 .LFE30:
1729 .global OSSemCreate
1731 OSSemCreate:
1732 .LFB31:
1733 .LM236:
1734 /* prologue: frame size=0 */
1735 07bc CF93 push r28
1736 07be DF93 push r29
1737 /* prologue end (size=2) */
1738 07c0 9C01 movw r18,r24
1739 .LM237:
1740 07c2 4091 0000 lds r20,OSIntNesting
1741 07c6 4423 tst r20
1742 07c8 19F0 breq .L115
1743 .LM238:
1744 07ca 80E0 ldi r24,lo8(0)
1745 07cc 90E0 ldi r25,hi8(0)
1746 07ce 1DC0 rjmp .L114
1747 .L115:
1748 .LM239:
1749 /* #APP */
1750 07d0 F894 cli
1751 .LM240:
1752 /* #NOAPP */
1753 07d2 C091 0000 lds r28,OSEventFreeList
1754 07d6 D091 0000 lds r29,(OSEventFreeList)+1
1755 .LM241:
1756 07da 2097 sbiw r28,0
1757 07dc 31F0 breq .L116
1758 .LM242:
1759 07de 8C81 ldd r24,Y+4
1760 07e0 9D81 ldd r25,Y+5
1761 07e2 9093 0000 sts (OSEventFreeList)+1,r25
1762 07e6 8093 0000 sts OSEventFreeList,r24
1763 .L116:
1764 .LM243:
1765 /* #APP */
1766 07ea 7894 sei
1767 .LM244:
1768 /* #NOAPP */
1769 07ec 2097 sbiw r28,0
1770 07ee 61F0 breq .L117
1771 .LM245:
1772 07f0 83E0 ldi r24,lo8(3)
1773 07f2 8883 st Y,r24
1774 .LM246:
1775 07f4 2A83 std Y+2,r18
1776 07f6 3B83 std Y+3,r19
1777 .LM247:
1778 07f8 1C82 std Y+4,__zero_reg__
1779 07fa 1D82 std Y+5,__zero_reg__
1780 .LM248:
1781 07fc 8FE3 ldi r24,lo8(63)
1782 07fe 8887 std Y+8,r24
1783 .LM249:
1784 0800 4987 std Y+9,r20
1785 .LM250:
1786 0802 CE01 movw r24,r28
1787 0804 0E94 0000 call OS_EventWaitListInit
1788 .L117:
1789 .LM251:
1790 0808 CE01 movw r24,r28
1791 .L114:
1792 /* epilogue: frame size=0 */
1793 080a DF91 pop r29
1794 080c CF91 pop r28
1795 080e 0895 ret
1796 /* epilogue end (size=3) */
1797 /* function OSSemCreate size 44 (39) */
1798 .LFE31:
1800 .global OSSemPend
1802 OSSemPend:
1803 .LFB32:
1804 .LM252:
1805 /* prologue: frame size=0 */
1806 0810 DF92 push r13
1807 0812 EF92 push r14
1808 0814 FF92 push r15
1809 0816 0F93 push r16
1810 0818 1F93 push r17
1811 081a CF93 push r28
1812 081c DF93 push r29
1813 /* prologue end (size=7) */
1814 081e 8C01 movw r16,r24
1815 0820 7A01 movw r14,r20
1816 .LM253:
1817 0822 D090 0000 lds r13,OSIntNesting
1818 0826 DD20 tst r13
1819 0828 11F0 breq .L119
1820 .LM254:
1821 082a 82E0 ldi r24,lo8(2)
1822 082c 35C0 rjmp .L124
1823 .L119:
1824 .LM255:
1825 082e FC01 movw r30,r24
1826 0830 8081 ld r24,Z
1827 0832 8330 cpi r24,lo8(3)
1828 0834 11F0 breq .L120
1829 .LM256:
1830 0836 81E0 ldi r24,lo8(1)
1831 0838 2FC0 rjmp .L124
1832 .L120:
1833 .LM257:
1834 /* #APP */
1835 083a F894 cli
1836 .LM258:
1837 /* #NOAPP */
1838 083c F801 movw r30,r16
1839 083e C281 ldd r28,Z+2
1840 0840 D381 ldd r29,Z+3
1841 0842 2097 sbiw r28,0
1842 0844 21F0 breq .L121
1843 .LM259:
1844 0846 2197 sbiw r28,1
1845 0848 C283 std Z+2,r28
1846 084a D383 std Z+3,r29
1847 084c 2AC0 rjmp .L123
1848 .L121:
1849 .LM260:
1850 084e E091 0000 lds r30,OSTCBCur
1851 0852 F091 0000 lds r31,(OSTCBCur)+1
1852 0856 8285 ldd r24,Z+10
1853 0858 8160 ori r24,lo8(1)
1854 085a 8287 std Z+10,r24
1855 .LM261:
1856 085c E091 0000 lds r30,OSTCBCur
1857 0860 F091 0000 lds r31,(OSTCBCur)+1
1858 0864 D386 std Z+11,r13
1859 .LM262:
1860 0866 E091 0000 lds r30,OSTCBCur
1861 086a F091 0000 lds r31,(OSTCBCur)+1
1862 086e 6087 std Z+8,r22
1863 0870 7187 std Z+9,r23
1864 .LM263:
1865 0872 C801 movw r24,r16
1866 0874 0E94 0000 call OS_EventTaskWait
1867 .LM264:
1868 /* #APP */
1869 0878 7894 sei
1870 .LM265:
1871 /* #NOAPP */
1872 087a 0E94 0000 call OS_Sched
1873 .LM266:
1874 /* #APP */
1875 087e F894 cli
1876 .LM267:
1877 /* #NOAPP */
1878 0880 E091 0000 lds r30,OSTCBCur
1879 0884 F091 0000 lds r31,(OSTCBCur)+1
1880 0888 8385 ldd r24,Z+11
1881 088a 8130 cpi r24,lo8(1)
1882 088c 41F4 brne .L122
1883 .LM268:
1884 088e C801 movw r24,r16
1885 0890 0E94 0000 call OS_EventTO
1886 .LM269:
1887 /* #APP */
1888 0894 7894 sei
1889 .LM270:
1890 /* #NOAPP */
1891 0896 8AE0 ldi r24,lo8(10)
1892 .L124:
1893 0898 F701 movw r30,r14
1894 089a 8083 st Z,r24
1895 .LM271:
1896 089c 05C0 rjmp .L118
1897 .L122:
1898 .LM272:
189
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -