⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.lst

📁 HT829AE 最新的源代碼, 本程式為 USB to RS232
💻 LST
字号:
"File: MAIN.ASM      Holtek Cross-Assembler  Version 2.86      Page 1


   1  0000              #INCLUDE      HT82M99E.INC


   2  0000              #INCLUDE      RAM.INC


   3  004C              ;;***********************************************************
   4  004C              ;;**********************Mask option**************************
   5  004C              ;;***********************************************************
   6  004C              ;;MCU Body:                          HT82M99E
   7  004C              ;;Product:                           18DIP
   8  004C              ;;VDD:                               5V
   9  004C              ;;Fsys:                              12MHZ
  10  004C              ;;Pull-High:                         PA0~7 and PB2~7 ports all pull-high
  11  004C              ;;Pull-Down:                         PB2~3 none pull-down
  12  004C              ;;WDT:                               WDT enable
  13  004C              ;;WDT Clock Soure:                   T1
  14  004C              ;;CLR WDT:                           One clear instruction
  15  004C              ;;LVR:                               Disable
  16  004C              ;;Output mode PA0~7:                 CMOS output
  17  004C              ;;Wake-Up:                           PA0~7, PB4 and PB7 ports all none wake-up
  18  004C              ;;Project name:                      RS232 convert to USB(9600 baudrate).
  19  004C              ;;Established date:                  2002/09/01
  20  004C              ;;***********************************************************
  21  004C              ;;**********************Code section*************************
  22  004C              ;;***********************************************************
  23  0000              MAIN.     SECTION      AT 0H  'CODE'
  24  0000              ORG              00H
  25  0000  280D        JMP              MAIN
  26  0001              ;;-----------------------------------------------------------
  27  0001              ORG              04H
  28  0004  285A        JMP              ISR_USB
  29  0005              ;;-----------------------------------------------------------
  30  0005              ORG              0CH
  31  000C  285B        JMP              ISR_Timer
  32  000D              ;;-----------------------------------------------------------
  33  000D              MAIN:
  34  000D              ;		CLR             INTC
  35  000D              
  36  000D  0001        		CLR             WDT
  37  000E  0F87        		MOV             A,10000111B
  38  000F  0089        		MOV             WDTS,A
  39  0010              
  40  0010  2021        		CALL            Clear_RAM
  41  0011  2029        		CALL            INI_RAM
  42  0012              ;		CALL            INI_PORT
  43  0012              
  44  0012              ;;		CALL            INI_USB
  45  0012              ;		CLR             F_FsysClock                     
  46  0012              ;		MOV             A,125
  47  0012              ;		MOV             R_IdleTime,A
  48  0012              ;		SET             F_ReportProtocol
  49  0012              ;		SET             R_Stall
  50  0012              ;		SET             F_AddressStatus                 
  51  0012              ;		SET             F_USBClockOn
  52  0012  321B        		SET             F_PS2Mode  ;; Switch to PS/2 USR.4 
  53  0013  339C        		SET             F_PS2Flag  ;; SCC.7 p.23
  54  0014  369B        		CLR             F_USBMode  ;; USR.5                     
  55  0015              ;		MOV             A,00001011B                     
"File: MAIN.ASM      Holtek Cross-Assembler  Version 2.86      Page 2

  56  0015              ;		MOV             INTC,A
  57  0015              ;;-----------------------------------------------------------
  58  0015              MLP_MAIN:
  59  0015  0001        		CLR             WDT
  60  0016  3C1A        		SZ              F_Suspend
  61  0017  2819        		JMP             L_ToSuspend
  62  0018  2815        		JMP             MLP_MAIN
  63  0019              ;;-----------------------------------------------------------
  64  0019              L_ToSuspend:
  65  0019  3611        		CLR             TMR1C.4
  66  001A  2048        		CALL            SBR_DelaySecond
  67  001B  381A        		SNZ             F_Suspend
  68  001C  281F        		JMP             L_ExitSuspend
  69  001D              ;		CLR             F_USBClockOn
  70  001D  321C                SET             F_Suspend2
  71  001E  0002        		HALT
  72  001F              ;;-----------------------------------------------------------
  73  001F              L_Exitsuspend:
  74  001F  3211        		SET             TMR1C.4
  75  0020  2815        		JMP             MLP_MAIN
  76  0021              ;;***********************************************************
  77  0021              ;#INCLUDE          USB_ISR.ASM
  78  0021              #INCLUDE          INITIATE.ASM


  79  005A              ;#INCLUDE          USB_LIB.ASM      
  80  005A              ;#INCLUDE          STANDARD_REQUEST.ASM
  81  005A              ;#INCLUDE          CLASS_REQUEST.ASM
  82  005A              ;#INCLUDE          SERIAL.ASM
  83  005A              ;#INCLUDE          DESCRIPTOR.ASM
  84  005A              
  85  005A              ;; ************************ Jason Add
  86  005A              
  87  005A              ISR_USB:
  88  005A  0004        		RETI  ;USB Interrupt 
  89  005B              ISR_Timer:
  90  005B              ;		SZ             F_Polling
  91  005B              ;		JMP            L_ReceiveFromRS232Device
  92  005B              
  93  005B  3D14        		SZ             P_RXD
  94  005C  0004        		RETI
  95  005D  3D14        		SZ             P_RXD                            
  96  005E  0004        		RETI
  97  005F  00A1        		MOV            R_AccTimer,A
  98  0060              ;mov   a,02H                                            ;;test code(test baudrate)
  99  0060              ;xorm  a,pa                                             ;;
 100  0060  3611        		CLR            TMR1C.4
 101  0061  370B        		CLR            INTC.6                           
 102  0062  326B        		SET            F_Polling
 103  0063  348B        		CLR            INTC.1                           
 104  0064  0FC7        		MOV            A,C_ReBaudRate9600L
 105  0065  0090        		MOV            TMR1L,A
 106  0066  0FFE        		MOV            A,C_ReBaudRate9600H
 107  0067  008F        		MOV            TMR1H,A
 108  0068  0F09        		MOV            A,C_DataBits
 109  0069  00C1        		MOV            R_ReDataBits,A
 110  006A              
 111  006A  0721        		MOV            A,R_AccTimer
 112  006B  3211        		SET            TMR1C.4
 113  006C  0004        		RETI
"File: MAIN.ASM      Holtek Cross-Assembler  Version 2.86      Page 3



        0 Errors

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -