我在写一个程序时,主程序用来处理主要的事情,显示用在2HZ的中断中,用的是静态显示,但这样数码管频繁闪烁,怎么才能很好地解决闪烁问题?
谢谢!
如果数据频繁变化时怎么办?
.INCLUDE hardware.inc ;
.INCLUDE key.inc ; // 包括key.inc文件
.RAM
.VAR R_KeyCode ; // 定义变量保存键值
.CODE
.PUBLIC _main ; // 对main程序声明
_main :
call F_User_Init_IO; // 初始化IO口
call F_Key_Scan_Initial; // 初始化键盘扫描
L_MainLoop:
call F_Key_Scan_ServiceLoop; // 扫描键盘
call F_Key_DebounceCnt_Down; // Key debounce
call F_SP_GetCh; // 取键值
cmp R1, 0x0000; // 是否有键按下
je L_MainLoop; // 没有,继续检测
[R_KeyCode] = R1; // 有, 保存键值
[P_IOB_Buffer] = R1; // 送到B口显示
jmp L_MainLoop;
F_User_Init_I
r1 = 0x0000; // 设置A口为带下拉电阻的输入端
[P_IOA_Dir] = r1;
[P_IOA_Attrib] = r1;
[P_IOA_Data] = r1;
r1 = 0xffff; // 设置B口为无数据反相功能的低电
[P_IOB_Dir] = r1; 平输出
[P_IOB_Attrib] = r1;
r1 = 0x0000;
[P_IOB_Data] = r1;
retf;
为什么我一编译就出现如下的错误啊
有没有厉害的大虾帮帮我啊
谢谢拉
Error L0080: The external symbol "_main" has not a public definition.
Failed to generate G:\unSP IDE 1.16.1\unSPIDE\LLLL\Debug\LLLL.S37
1 Error, 0 Warning
G:\UNSPID~1.1\unSPIDE\make: *** [.\Debug\LLLL.S37] unknown signal
G:\unSP IDE 1.16.1\unSPIDE\LLLL\Debug\LLLL.S37 - 1 Error(s), 0 Warning(s)
<DIV class=quote><B>以下是引用<i>47316568</i>在2006-6-16 16:04:00的发言:</B><br><P>.INCLUDE hardware.inc ;<br>.INCLUDE key.inc ; // 包括key.inc文件<br>.RAM<br>.VAR R_KeyCode ; // 定义变量保存键值<br>.CODE<br>.PUBLIC _main ; // 对main程序声明<br> _main :<br>call F_User_Init_IO; // 初始化IO口<br>call F_Key_Scan_Initial; // 初始化键盘扫描<br>L_MainLoop:<br>call F_Key_Scan_ServiceLoop; // 扫描键盘<br>call F_Key_DebounceCnt_Down; // Key debounce<br>call F_SP_GetCh; // 取键值<br>cmp R1, 0x0000; // 是否有键按下<br>je L_MainLoop; // 没有,继续检测<br>[R_KeyCode] = R1; // 有, 保存键值<br>[P_IOB_Buffer] = R1; // 送到B口显示<br>jmp L_MainLoop;<br>F_User_Init_I<br>r1 = 0x0000; // 设置A口为带下拉电阻的输入端<br>[P_IOA_Dir] = r1;<br>[P_IOA_Attrib] = r1;<br>[P_IOA_Data] = r1;<br>r1 = 0xffff; // 设置B口为无数据反相功能的低电<br>[P_IOB_Dir] = r1; 平输出<br>[P_IOB_Attrib] = r1;<br>r1 = 0x0000;<br>[P_IOB_Data] = r1;<br>retf;<br></P><P>为什么我一编译就出现如下的错误啊</P><P>有没有厉害的大虾帮帮我啊</P><P>谢谢拉</P><P>Error L0080: The external symbol "_main" has not a public definition.<br>Failed to generate G:\unSP IDE 1.16.1\unSPIDE\LLLL\Debug\LLLL.S37</P><P>1 Error, 0 Warning</P><P>G:\UNSPID~1.1\unSPIDE\make: *** [.\Debug\LLLL.S37] unknown signal<br>G:\unSP IDE 1.16.1\unSPIDE\LLLL\Debug\LLLL.S37 - 1 Error(s), 0 Warning(s)<br></P></DIV><p>
是否是_main后面多了个空格?
_main: