找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 4539|回复: 2
打印 上一主题 下一主题
收起左侧

PIC16F716 PWM汇编程序

[复制链接]
跳转到指定楼层
楼主
PIC16F716 PWM

  1. opt subtitle "HI-TECH Software Omniscient Code Generator (PRO mode) build 10920"

  2. opt pagewidth 120

  3.         opt pm

  4.         processor        16F716
  5. clrc        macro
  6.         bcf        3,0
  7.         endm
  8. clrz        macro
  9.         bcf        3,2
  10.         endm
  11. setc        macro
  12.         bsf        3,0
  13.         endm
  14. setz        macro
  15.         bsf        3,2
  16.         endm
  17. skipc        macro
  18.         btfss        3,0
  19.         endm
  20. skipz        macro
  21.         btfss        3,2
  22.         endm
  23. skipnc        macro
  24.         btfsc        3,0
  25.         endm
  26. skipnz        macro
  27.         btfsc        3,2
  28.         endm
  29. indf        equ        0
  30. indf0        equ        0
  31. pc        equ        2
  32. pcl        equ        2
  33. status        equ        3
  34. fsr        equ        4
  35. fsr0        equ        4
  36. c        equ        1
  37. z        equ        0
  38. pclath        equ        10
  39.         FNROOT        _main
  40.         global        _CCP1CON
  41. psect        maintext,global,class=CODE,delta=2
  42. global __pmaintext
  43. __pmaintext:
  44. _CCP1CON        set        23
  45.         global        _CCPR1L
  46. _CCPR1L        set        21
  47.         global        _T2CKPS0
  48. _T2CKPS0        set        144
  49.         global        _T2CKPS1
  50. _T2CKPS1        set        145
  51.         global        _TMR2IF
  52. _TMR2IF        set        97
  53.         global        _TMR2ON
  54. _TMR2ON        set        146
  55.         global        _PR2
  56. _PR2        set        146
  57.         global        _TRISB
  58. _TRISB        set        134
  59.         file        "pic16f7161.as"
  60.         line        #
  61. psect cinit,class=CODE,delta=2
  62. global start_initialization
  63. start_initialization:

  64. psect cinit,class=CODE,delta=2
  65. global end_of_initialization

  66. ;End of C runtime variable initialization code

  67. end_of_initialization:
  68. clrf status
  69. ljmp _main        ;jump to C main() function
  70. psect        cstackCOMMON,class=COMMON,space=1
  71. global __pcstackCOMMON
  72. __pcstackCOMMON:
  73.         global        ?_main
  74. ?_main:        ; 0 bytes @ 0x0
  75.         global        ??_main
  76. ??_main:        ; 0 bytes @ 0x0
  77. ;;Data sizes: Strings 0, constant 0, data 0, bss 0, persistent 0 stack 0
  78. ;;Auto spaces:   Size  Autos    Used
  79. ;; COMMON          14      0       0
  80. ;; BANK0           80      0       0
  81. ;; BANK1           32      0       0

  82. ;;
  83. ;; Pointer list with targets:



  84. ;;
  85. ;; Critical Paths under _main in COMMON
  86. ;;
  87. ;;   None.
  88. ;;
  89. ;; Critical Paths under _main in BANK0
  90. ;;
  91. ;;   None.
  92. ;;
  93. ;; Critical Paths under _main in BANK1
  94. ;;
  95. ;;   None.

  96. ;;
  97. ;;Main: autosize = 0, tempsize = 0, incstack = 0, save=0
  98. ;;

  99. ;;
  100. ;;Call Graph Tables:
  101. ;;
  102. ;; ---------------------------------------------------------------------------------
  103. ;; (Depth) Function                   Calls       Base Space   Used Autos Params    Refs
  104. ;; ---------------------------------------------------------------------------------
  105. ;; (0) _main                                                 0     0      0       0
  106. ;; ---------------------------------------------------------------------------------
  107. ;; Estimated maximum stack depth 0
  108. ;; ---------------------------------------------------------------------------------

  109. ;; Call Graph Graphs:

  110. ;; _main (ROOT)
  111. ;;

  112. ;; Address spaces:

  113. ;;Name               Size   Autos  Total    Cost      Usage
  114. ;;BITCOMMON            E      0       0       0        0.0%
  115. ;;NULL                 0      0       0       0        0.0%
  116. ;;CODE                 0      0       0       0        0.0%
  117. ;;COMMON               E      0       0       1        0.0%
  118. ;;BITSFR0              0      0       0       1        0.0%
  119. ;;SFR0                 0      0       0       1        0.0%
  120. ;;BITSFR1              0      0       0       2        0.0%
  121. ;;SFR1                 0      0       0       2        0.0%
  122. ;;STACK                0      0       0       2        0.0%
  123. ;;BITBANK0            50      0       0       3        0.0%
  124. ;;BANK0               50      0       0       4        0.0%
  125. ;;BANK1               20      0       0       5        0.0%
  126. ;;ABS                  0      0       0       6        0.0%
  127. ;;BITBANK1            20      0       0       7        0.0%
  128. ;;DATA                 0      0       0       8        0.0%

  129.         global        _main
  130. psect        maintext

  131. ;; *************** function _main *****************
  132. ;; Defined at:
  133. ;;                line 5 in file "D:\pic\pic16f7161\pic16f716.c"
  134. ;; Parameters:    Size  Location     Type
  135. ;;                None
  136. ;; Auto vars:     Size  Location     Type
  137. ;;                None
  138. ;; Return value:  Size  Location     Type
  139. ;;                None               void
  140. ;; Registers used:
  141. ;;                wreg, status,2
  142. ;; Tracked objects:
  143. ;;                On entry : 17F/0
  144. ;;                On exit  : 15F/0
  145. ;;                Unchanged: FFE80/0
  146. ;; Data sizes:     COMMON   BANK0   BANK1
  147. ;;      Params:         0       0       0
  148. ;;      Locals:         0       0       0
  149. ;;      Temps:          0       0       0
  150. ;;      Totals:         0       0       0
  151. ;;Total ram usage:        0 bytes
  152. ;; This function calls:
  153. ;;                Nothing
  154. ;; This function is called by:
  155. ;;                Startup code after reset
  156. ;; This function uses a non-reentrant model
  157. ;;
  158. psect        maintext
  159.         file        "D:\pic\pic16f7161\pic16f716.c"
  160.         line        5
  161.         global        __size_of_main
  162.         __size_of_main        equ        __end_of_main-_main
  163.        
  164. _main:       
  165.         opt        stack 8
  166. ; Regs used in _main: [wreg+status,2]
  167.         line        7
  168.        
  169. l716:       
  170. ;pic16f716.c: 7: TRISB=0x08;
  171.         movlw        (08h)
  172.         bsf        status, 5        ;RP0=1, select bank1
  173.         movwf        (134)^080h        ;volatile
  174.         line        9
  175. ;pic16f716.c: 9: PR2=39;
  176.         movlw        (027h)
  177.         movwf        (146)^080h        ;volatile
  178.         line        11
  179. ;pic16f716.c: 11: CCP1CON=0x0c;
  180.         movlw        (0Ch)
  181.         bcf        status, 5        ;RP0=0, select bank0
  182.         movwf        (23)        ;volatile
  183.         line        13
  184. ;pic16f716.c: 13: CCPR1L=10;
  185.         movlw        (0Ah)
  186.         movwf        (21)        ;volatile
  187.         line        15
  188.        
  189. l718:       
  190. ;pic16f716.c: 15: TMR2IF=0;
  191.         bcf        (97/8),(97)&7
  192.         line        17
  193.        
  194. l720:       
  195. ;pic16f716.c: 17: T2CKPS0=0;
  196.         bcf        (144/8),(144)&7
  197.         line        18
  198.        
  199. l722:       
  200. ;pic16f716.c: 18: T2CKPS1=0;
  201.         bcf        (145/8),(145)&7
  202.         line        20
  203.        
  204. l724:       
  205. ;pic16f716.c: 20: TMR2ON=1;
  206.         bsf        (146/8),(146)&7
  207.         line        22
  208.        
  209. l726:       
  210. ;pic16f716.c: 22: while(TMR2IF==0);
  211.         btfss        (97/8),(97)&7
  212.         goto        u11
  213.         goto        u10
  214. u11:
  215.         goto        l726
  216. u10:
  217.         line        23
  218.        
  219. l728:       
  220. ;pic16f716.c: 23: TRISB=0x00;
  221.         bsf        status, 5        ;RP0=1, select bank1
  222.         clrf        (134)^080h        ;volatile
  223.         line        25
  224. ;pic16f716.c: 24: for( ; ; )
  225.        
  226. l345:       
  227. ;pic16f716.c: 25: {}
  228.         goto        l345
  229.         global        start
  230.         ljmp        start
  231.         opt stack 0
  232. psect        maintext
  233.         line        26
  234. GLOBAL        __end_of_main
  235.         __end_of_main:
  236. ;; =============== function _main ends ============

  237.         signat        _main,88
  238.         global        btemp
  239.         btemp set 07Eh

  240.         DABS        1,126,2        ;btemp
  241.         global        wtemp0
  242.         wtemp0 set btemp
  243.         end
复制代码


pic16f7161.rar

27.99 KB, 下载次数: 32, 下载积分: 黑币 -5

pic16f716 pwm

评分

参与人数 1黑币 +50 收起 理由
admin + 50 共享资料的黑币奖励!

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:66032 发表于 2016-5-18 10:27 | 只看该作者
说句老实话, 现在真正玩汇编的人已经不多了,我感觉楼主的功底还不错
回复

使用道具 举报

板凳
ID:247133 发表于 2017-11-30 17:19
咋不能下载

地板
ID:247133 发表于 2017-12-10 17:23 | 只看该作者
不能下载那是咋回事
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表