
6.汇编源程序
Count EQU 30H
SP1BIT P3.7
ORG 0
START: MOV Count,#00H
NEXT: MOV A,Count
MOV B,#10
DIV AB
MOV DPTR,#TABLE
MOVC A,@A+DPTR
MOV P0,A
MOV A,B
MOVC A,@A+DPTR
MOV P2,A
WT: JNB SP1,WT
WAIT: JB SP1,WAIT
LCALL DELY10MS
JB SP1,WAIT
INC Count
MOV A,Count
CJNE A,#100,NEXT
LJMP START
DELY10MS: MOV R6,#20
D1:MOV R7,#248
DJNZ R7,$
DJNZ R6,D1
RET
TABLE: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH
END
7. C 语言源程序
#include <AT89X51.H>
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f}
unsigned char Count
void delay10ms(void)
{
unsigned char i,j
for(i=20i>0i--)
for(j=248j>0j--)
}
void main(void)
{
Count=0
unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,
0x6d,0x7d,0x07,0x7f,0x6f}
unsigned char Count
void delay10ms(void)
{
unsigned char i,j
for(i=20i>0i--)
for(j=248j>0j--)
}
void main(void)
{
Count=0
P2=table[Count%10]
while(P3_7==0)
}
}
}
}
我觉得没什么用。程序与板与屏有关系。当换新板芯片型号变了功能也略有变化程序也要一定变化。这是对工程师来说那“源代码”有点意义。对于维修者来说只能刷原板而且原板重刷写成功率又不高。高仿真的山寨板是多数能重刷大牌子的厂家几乎都加密。1、⑴组建仿真电路"" componet”对话框的“family”栏中先选取“805x”,="" 然后在“componet”栏下选取“8051”,最后单击对话框右上角的“ok”按钮。鼠标箭头将带出一个“8052”模块,在电子仿真平台上单击鼠标,将先d出MCU向导对话框之一,第一栏是工作区路径,第二栏是工作区取名,这里输入“my mcu design1”,最后单击下方的“Next”按钮;
⑵再次d出MCU向导对话框之二,共有4栏选项,第一栏为项目类型,一般选择“Standard (标准) ”;第二栏选择编程语言种类,单击右侧下拉箭头,可以在“Assembly C汇编”和“C”语言之间选择,这里选取“C”语言;则第三栏自动显示“Hi-tech C51-Lite compiler”字样; 第四栏可以输入项目名称,本文取名为“project1”,最后单击下方的“Next”按钮;
⑶再次d出MCU向导对话框之三,有2个单选项:“Create emptyproject (创建空项目) ”和“Addsource file (添加源文件) ”, 这里选取“Add sourcefile”;下面栏中可以输入后缀为“。 C”的源文件名,这里就用“LED001. c”最后单击下方“Finish”按钮完成。
⑷完成MCU向导对话框之后,这时能在电子仿真平台上显示出原来调出单片机模块U18051,右击鼠标退出元件 *** 作。
⑸保存文件,在文件名栏输入“led11”文件名,默认文件后缀“.ms10”。
⑹在电子仿真软件Multisim10基本界面平台上,单击主菜单“View /Design Toolbox”,在基本界面左侧将打开“设计工具盒”窗口,单击“led11”前的“ + ”号可以看到刚才命名的工作区“my mcudesign1”,在工作区下面是项目名“project1 ”, 在项目名下面是源文件名“Led001. c”。
⑺编写MCU源C语言程序(过程略);
⑻调出其他仿真元件,搭建单片机仿真电路,进行仿真;
2、51单片机用protues这个软件仿真更好!里面已经有现成的51模块了。调用就可以用,电源、地、复位电路和时钟等等都不用画。只要把编好的程序下载到protues中的51单片机里面就可以运行。外围提供的器件可以自己搭建。非常好用。
3、可以参考《基于Multisim 10的51单片机仿真实战教程:使用汇编和C语言》。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)