📄 main.lst
字号:
00176 #define CDS_VT_CTRL PORTD, 4
00177 #define TG_VDD_CTRL PORTD, 5
00178 #define I_REL_CTRL PORTD, 6
00179 #define OP_DRV_CTRL PORTD, 7
00180
00181 #define AC PORTD, 0
00182 #define BC PORTD, 1
00183 #define CC PORTD, 2
MPASM 03.80 Released MAIN.ASM 12-8-2006 14:28:20 PAGE 5
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00184 #define INH PORTD, 3
00185 ;
00186 #define ZCD_DRV_IO TRISC, 7
00187 #define ACT_MODE_IO TRISC, 6
00188 #define FAIL_LED_IO TRISC, 5
00189 #define START_SW_IO TRISC, 5
00190 #define PASS_LED_IO TRISC, 4
00191 #define STEP_SW_IO TRISC, 4
00192 #define ADRI0_IO TRISC, 3
00193 #define ADRI1_IO TRISC, 2
00194 #define ADRO1_IO TRISC, 1
00195 #define ADRO0_IO TRISC, 0
00196 #define CDS_VT_CTRL_IO TRISD, 4
00197 #define TG_VDD_CTRL_IO TRISD, 5
00198 #define I_REL_CTRL_IO TRISD, 6
00199 #define OP_DRV_CTRL_IO TRISD, 7
00200 #define AC_IO TRISD, 0
00201 #define BC_IO TRISD, 1
00202 #define CC_IO TRISD, 2
00203 #define INH_IO TRISD, 3
00204
00205 #define LCD_DATA_PORT PORTD
00206 #define LCD_PORT_IO TRISD
00207 #define LCD_EN PORTE, 0
00208 #define LCD_RW PORTE, 1
00209 #define LCD_RS PORTE, 2
00210 ;-------PORT define end --------------------------------
00211 ;
00212 ;--------OTHER CONSTANT Define--------------------------
00213 #define DELAY5MS .30
00214 #define DELAY10MS .60
00215 #define DELAY15MS .90
00216 #define DELAY20MS .120
00217 #define DELAY25MS .150
00218 #define DELAY30MS .180
00219 #define DELAY35MS .210
00220 #define DELAY40MS .240
00221 #define TMR1_CSTH 0xB1
00222 #define TMR1_CSTL 0xDA ;DF - 5 = DA
00223 #define DOT_CNT 0x08
00224 #define TRIC_DRV_CNT 0x08
00225 #define AD_CNT 0x10
00226
00227 ;SYS_STATUS bit define
00228 #define UART_SENT_EN 7
00229 #define UART_BUSY 6
00230 #define TEST_FAIL 5
00231 #define SOFT_MODE 4
00232 #define FLAG10MS 0
00233 ;SYS_STATUS bit define end
00234 ;
00235 ;KEY_STATUS bit define -------------------
00236 #define KEY_VALID 7
MPASM 03.80 Released MAIN.ASM 12-8-2006 14:28:20 PAGE 6
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00237 #define KEY_BUSY 0
00238 #define MODE_CHECK B'00010000'
00239 #define ONOFF_CHECK B'00100000'
00240 ;KEY_STATUS bit define -------------------
00241 ;
00242 ;TIMER_FLAG bit define end
00243 #define KEY_SCAN_FLAG 0
00244 #define KEY_PROCESS_FLAG 1
00245 #define AD_CONVERT_FLAG 2
00246 #define UART_SENT_FLAG 3
00247 #define LCD_DRIVE_FLAG 4
00248 ;TIMER_FLAG bit define end
00249 ;
00250 ;LCD_DRV_REQ bit define------------------
00251 #define G_LCD_DRV_REQ 7
00252 #define S_LCD_DRV_REQ 6
00253 #define R_LCD_DRV_REQ 5
00254 #define SCREEN_DRV_REQ 4
00255
00256 ;LCD_DRV_REQ bit define end--------------
00257 ;--------OTHER CONSTANT define end-------------
00258
Warning[205]: Found directive in column 1. (CBLOCK)
00259 CBLOCK 0x20
00000020 00260 TEMP0
00000021 00261 TEMP1
00000022 00262 TEMP2
00000023 00263 TEMP3
00000024 00264 TEMP4
00000025 00265 TEMP5
00000026 00266 TEMP6
00000027 00267 TEMP7 ;--------TEMP0~TEMP7,TEMPARY REGISTER IN NORMAL PROGRAM
00000028 00268 TEMP8
00000029 00269 TEMP9
0000002A 00270 TEMP10
0000002B 00271 TEMP11
0000002C 00272 TEMP12
0000002D 00273 TEMP13
0000002E 00274 TEMP14
0000002F 00275 TEMP15 ;--------TEMP8~TEMP15,TEMPARY REGISTER IN NORMAL PROGRAM
00000030 00276 TEMPCNT
00000031 00277 MUL16AHI
00000032 00278 MUL16ALO ;A 乘数
00000033 00279 MUL16BHI ;B 被乘数和积的高16位
00000034 00280 MUL16BLO
00000035 00281 MULRL8 ;积的低16位,多设变量名,方便记忆
00000036 00282 MULRH8
00000037 00283 CP_RESULT
00000038 00284 LINE_CHAR_CNT
00000039 00285 CHN_AD_SEL
0000003A 00286 CHN_SW4053_SEL
0000003B 00287 DISP_DATAR: 4
0000003F 00288 DISP_DATAS: 2
MPASM 03.80 Released MAIN.ASM 12-8-2006 14:28:20 PAGE 7
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00000041 00289 AD_VAL_REGH
00000042 00290 AD_VAL_REGL ;16采样后求平均数作为当前的测试值
00000043 00291 AD_VAL_REGL_BUF
00000044 00292 AD_CONVERT_CNT
00000045 00293 LCD_DRV_REQ ;
00294 ;----LCD_DRV_REQ bit define----------
00295 ;bit7 :总的刷新请求
00296 ;bit6 :接收数据刷新请求
00297 ;bit5 :发送数据刷新请求
00298 ;----LCD_DRV_REQ bit define end------
00000046 00299 CNT_10MS
00000047 00300 INT_CNT
00000048 00301 TEMPI0
00000049 00302 TEMPI1
0000004A 00303 TEMPI2 ;--------TEMPI0~I7,TEMPARY REGISTER IN INTERRUPT PROGRAM
0000004B 00304 LED_DRV_CNT
0000004C 00305 RX_DATA1
0000004D 00306 RX_DATA2
0000004E 00307 RX_DATA3
0000004F 00308 TX_DATA
00000050 00309 MODE_REG
00310 ;MODE_REG define-------------
00311 ;0 to P1
00312 ;1 to P2
00313 ;2 to P3
00314 ;3 to all
00315 ;---MODE_REG define end------
00000051 00316 MODE_CNT
00000052 00317 KEY_VAL_BUF ;
00000053 00318 KEY_VAL
00000054 00319 KEY_CNT ;
00000055 00320 KEY_STATUS ;Bit7, valid key,after key processing, please clear this bit.
00000056 00321 SYS_STATUS
00322 ;------SYS_STATUS bit define -------
00323 ;bit7: UART_SENT_EN ;0--->OFF ;1--->ON
00324 ;bit6:
00325 ;bit5;
00326 ;bit4:
00327 ;------SYS_STATUS bit define end
00000057 00328 TIMER_FLAG ; ALL TASK EXCUTE PER 10mS
00329
00330
00331
00332
Warning[205]: Found directive in column 1. (ENDC)
00333 ENDC
00334
Warning[205]: Found directive in column 1. (CBLOCK)
00335 CBLOCK 0x70
00000070 00336 STATUSBUF
00000071 00337 PCLATHBUF
00000072 00338 FSRBUF
00000073 00339 WBUF
MPASM 03.80 Released MAIN.ASM 12-8-2006 14:28:20 PAGE 8
LOC OBJECT CODE LINE SOURCE TEXT
VALUE
00000074 00340 STSBUF
Warning[205]: Found directive in column 1. (ENDC)
00341 ENDC
00342
00343
00344
00345
00346
00347
00348
00349
00350
00351
00026 #include <marco.inc>
00001 ;/**************************************************************************
00002 ;* *
00003 ;* Copyright (c) 2006 by JINRUN Technology Co., Ltd. *
00004 ;* Title : FPPA TM demo board---PIC PARTY
00005 ;* Content: AD,LCM Drive,Key input,LED flash,etc.,
00006 ;* MCU : PIC16F877A(PIC),PDK80C08(PDK)[FPPA TM]
00007 ;* LCD : RT1602C
00008 ;* OSC : 8MHz(ext. HT)
00009 ;* WDT : OFF
00010 ;* Author : Raker.Yang *
00011 ;* FPPA TM 简介:FPPA TM是世界首创的多核心单晶片,所有RAM和ROM却能够共享
00012 ;* 目前支持8个核心(8路独立PC,STACK,ACC等)
00013 ;* 既然有了独立多核心,跑多任务程序也就更简单了。
00014 ;* 更重要的是,它可以非常方便的扩展MCU外围,如,PWM,IIC,UART等。
00015 ;* 如果你对FPPA TM技术感兴趣,欢迎访问笔者博客 http://gongkong.gkbk.com
00016 ;* 或加入作者QQ:595142970, QQ群25644462
00017 ;* 同时欢迎各路商家前来进行方案合作!
00018 ;*
00019 ;* 声明:本资料仅供个人学习PIC或FPPA TM软件设计参考,任何人都可以转载此资料。
00020 ;* 但任何单位或个人都不能将此资料作为商业用品。本资料可能存在一些缺陷,
00021 ;* 如果你将本资料用于产品,所引起的一切后果,均由使用者承担
00022 ;* *
00023 ;**************************************************************************/
00024 ; #include <const.inc>
00025 ;-------MACRO FOR interrupt push and pop special register-------
00026 ;-------Push special register---------
00027 PUSH_REG MACRO
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -