📄 sram_cpld3.lst
字号:
C51 COMPILER V7.06 SRAM_CPLD3 08/18/2005 18:42:03 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE SRAM_CPLD3
OBJECT MODULE PLACED IN Sram_cpld3.OBJ
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE Sram_cpld3.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /*mcu向通过fpga控制ram,写入时候,给地址a0ff分两次先后送如1和0,fpga向ram写入一定数据
2 单片机从读数据时候,先向a0fe送入ram读取首地址,接着可以从此口读出数据
3 //*7218在硬件译码的时候,低四位数据进行译码,最高位控制小数点,其余三位无效*/
4 // distab保存要显示的8位数据(每一位为一个字节)
5 // ledtab为7218软件译码字型表 /dp,a,b,c,e,g,f,d
6 #include<reg52.h>
7 //#include<intrins.h>
8 #include<absacc.h>
9 #define DisCmd XBYTE [0xC100] //7218控制字地址
10 #define DisData XBYTE [0xC000] //7218数据口地址
11 #define scode 0xb0 //7218软件译码方式命令字
12 #define bcode 0x90 //B码译码方式命令字
13 #define hexcode 0xd0 //软件译码方式命令字
14 #define unchar unsigned char
15 #define unint unsigned int
16 sbit P3_0=P3^0;
17 sbit P1_0=P1^0;
18 bit enter=0;
19 unchar keynum; //按键号
20 unchar ledcursor=7; //保存光标当前位置
21 unchar distab[8]={0x10,0x10,0x10,0x10,0x10,0x10,0x10,0x10} ; // 要显示的内容 hello-pp
22 unchar temp[8];
23 unchar code ledtab[]={ 0xfb,0xb0,0xed,0xf5,0xb6,0xd7,0xdf,0xf0,
24 //0, 1, 2, 3, 4, 5, 6, 7
25 0xff,0xf7,0xfe,0x9f,0xcb,0xbd,0xcf,0xce,
26 //8 9 ,a ,b c d e f
27 0x80,0xbe,0x8b,0xee,0x84,0xca,0xf6,0x00,
28 //灭 H L P - r q .
29 0xb7,0xbb,0xfa};
30 //y, u n
31 unchar xdata * cpld; // ram读取首地址
32 //***************************************************************************************
33 //void KeyprgF1(void){}
34 // void KeyprgF2(void ){}
35 //void KeyprgClear(void){}
36 //void KeyprgEnter(void){}
37 //***************************************************************************************
38
39 void display()
40 {
41 1 unchar i;
42 1 DisCmd=scode; //采用软件译码
43 1 for(i=0;i<8;i++) //将distab中的数据送如7218
44 1 {
45 2 DisData =ledtab[distab[i]]; //查表转化并将字型送入7218
46 2
47 2 }
48 1
49 1 }
50 void main()
51 {
52 1 unint i;
53 1 //EX0=1;
54 1 //EA=1;
55 1 // display();
C51 COMPILER V7.06 SRAM_CPLD3 08/18/2005 18:42:03 PAGE 2
56 1 while(1)
57 1 {
58 2 i=30000;
59 2 cpld=0x4000;
60 2 distab[2]=(*cpld)/100;
61 2 distab[1]=((*cpld)%100)/10;
62 2 distab[0]=((*cpld)%100)%10;
63 2 display();
64 2 while(--i);
65 2 }
66 1
67 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 86 ----
CONSTANT SIZE = 27 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 20 ----
IDATA SIZE = ---- ----
BIT SIZE = 1 ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -