[upload=jpg]UploadFile/2006-4/2006424135513796.jpg[/upload]
[upload=jpg]UploadFile/2006-4/2006424135826953.jpg[/upload]
[upload=jpg]UploadFile/2006-4/2006424135836571.jpg[/upload]
[upload=jpg]UploadFile/2006-4/2006424135846430.jpg[/upload]
[em01][em01][em01]版主真是太牛了!!!!这也能想到!!哈哈
好!!!
[upload=bmp]UploadFile/2006-4/200642414045713.bmp[/upload]
[upload=jpg]UploadFile/2006-4/200642414445656.jpg[/upload]
本错误还有二个病毒变种:1, 在一个工程中打开了其他的文件包含程序入口,但是这个文件没有隶属于本工程,导致提示没有程序入口的错误。2, 在一个工程中同时使用了汇编语言与c语言,而且都具有程序入口,导致程序入口的重复定义
[upload=jpg]UploadFile/2006-4/200642414635272.jpg[/upload]
[upload=jpg]UploadFile/2006-4/200642414645637.jpg[/upload]
[upload=jpg]UploadFile/2006-4/200642414115764.jpg[/upload]
[upload=rar]viewFile.asp?ID=3130[/upload]
[upload=jpg]UploadFile/2006-4/2006424141336174.jpg[/upload]
斑竹也不例外
每天只能上传20个附件
今天就到这里
明天接着贴
:)
接着来
谢谢coolqianz
我又可以上传附件了
[upload=rar]viewFile.asp?ID=3135[/upload]
这个是上面错误的工程文件
宏等出现错误,编译器提示出现不认识字符
[upload=jpg]UploadFile/2006-4/200642419475822.jpg[/upload]
在需要清看门狗的地方没有清看门狗,导致程序复位
[upload=jpg]UploadFile/2006-4/2006424195036384.jpg[/upload]
错误代码工程参考
请问我在61上作led的闪烁实验,在延时时间用软件延时一切正常,但改用定时器A作延时为什么整个程序执行后LED无任何反应,请问是怎么回事?其源程序如下:
.DEFINE P_IOA_Data 0x7000;
.DEFINE P_IOA_Buffer 0x7001;
.DEFINE P_IOA_Dir 0x7002;
.DEFINE P_IOA_Attrib 0x7003;
.DEFINE P_IOA_Latch 0x7004;
.DEFINE P_IOB_Data 0x7005;
.DEFINE P_IOB_Buffer 0x7006;
.DEFINE P_IOB_Dir 0x7007;
.DEFINE P_IOB_Attrib 0x7008;
.DEFINE P_TimerA_Data 0x700A;
.DEFINE P_TimerA_Ctrl 0x700B;
.DEFINE P_Watchdog_Clear 0x7012;
.ram
.var R_LedControl
.code
.public _main
_main:
r1 = 0x00FF //设置A0~A7口为同相低电平输出
[P_IOA_Dir] = r1
[P_IOA_Attrib] = r1
r1 = 0x0000
[P_IOA_Data] = r1
r1=0x0040
[P_IOB_Dir]=r1
[P_IOB_Attrib]=r1
[P_IOB_Data]=r1 //B6输出高电平,保证LED阴极接地
r1=0x0001
[R_LedControl] = r1 //LED点亮控制初值
L_MainLoop:
r1 = [R_LedControl]
[P_IOA_Data] = r1 //送数据到A口
call F_Delay
r1 = [R_LedControl] //延时
r1=r1 LSL 1 //修改LED点亮控制参数
cmp r1,0x0100 //只有8个LED,保证输出数据在8位以内
jne NoOver
r1 = 0x0001
NoOver:
[R_LedControl] = r1
jmp L_MainLoop //跳转到L_MainLoop循环,点亮LED
//=============================================================
// 函数名称: F_Delay
// 功能描述: 实现延时
//=============================================================
F_Delay:
r1=0x0001
[P_Watchdog_Clear] = r1
r1 = 0x0005
[P_TimerA_Ctrl]=r1
r1=0xfbff
[P_TimerA_Data]=r1
retf
程序在执行完主要程序后,退出了程序控制
[upload=jpg]UploadFile/2006-4/20064241953179.jpg[/upload]
没有使用系统保留的中断函数入口
[upload=jpg]UploadFile/2006-4/2006424195634497.jpg[/upload]
经验指数:9
错误的工程代码:
[upload=rar]viewFile.asp?ID=3147[/upload]
没有中断服务函数,导致程序复位
[upload=jpg]UploadFile/2006-4/2006424195758303.jpg[/upload]
在无意之间多开了一个中断,但是没有写这部分服务代码,导致程序出错
错误的工程代码:
[upload=rar]viewFile.asp?ID=3149[/upload]
在中断程序返回时,忘记了reti指令,导致程序异常(有时复位,有时即不复位也不知道跑哪去了)
[upload=jpg]UploadFile/2006-4/2006424195942661.jpg[/upload]
其实正常在写程序的时候,一般是不会忘记的,但是有的时候中断服务函数具有多个出口,就是要进行判断,从而决定哪些程序代码执行,哪些程序代码不执行,导致忘记reti的书写
错误的工程代码:
[upload=rar]viewFile.asp?ID=3151[/upload]
没有清楚中断请求标志位,导致重复进入中断。或者清除错误
[upload=jpg]UploadFile/2006-4/20064242014795.jpg[/upload]
经验指数:7
错误的工程代码:
[upload=rar]viewFile.asp?ID=3153[/upload]
:没有对堆栈进行保护或者说保护不好
[upload=jpg]UploadFile/2006-4/200642420259409.jpg[/upload]
压栈与弹栈出现错位,导致堆栈崩溃
光压不弹,只弹不压,都得不到正确的结果!!
错误的工程代码:
[upload=rar]viewFile.asp?ID=3161[/upload]
进不去中断
[upload=jpg]UploadFile/2006-4/200642420733341.jpg[/upload]
由于当前单片机,为了满足嵌入式操作系统的设计,对中断加入了指令控制,所以需要使用IRQ ON等指令打开中断,这样才可以进入中断
[upload=rar]viewFile.asp?ID=3163[/upload]
指计算结果超过了变量的存储范围
[upload=jpg]UploadFile/2006-4/200642420922729.jpg[/upload]
运算结果超出了变量的存储范围,导致a溢出,得不到正确的结果