电子系统可靠性技术实验指导书V10版.docx
- 文档编号:2196060
- 上传时间:2022-10-27
- 格式:DOCX
- 页数:28
- 大小:1.09MB
电子系统可靠性技术实验指导书V10版.docx
《电子系统可靠性技术实验指导书V10版.docx》由会员分享,可在线阅读,更多相关《电子系统可靠性技术实验指导书V10版.docx(28页珍藏版)》请在冰豆网上搜索。
电子系统可靠性技术实验指导书V10版
《电子系统可靠性技术》
实验指导书
哈尔滨理工大学
自动化学院
电子信息科学与技术系
2015版
实验一、在线仿真与编程实验
一、实验目的
通过一个简单单片机应用实例开发设计,初步掌握单片机实际应用开发、在线仿真的基本流程和方法。
1、了解并掌握KeiluVision4的使用方法;
2、了解并掌握STC学习板的硬件环境和使用方法;
3、学习(STC)51单片机的烧录(下载)过程和方法
二、实验内容:
1、通过在学习板上设计发光二极管循环点亮的编辑、编译、调试。
掌握uVision4和STC-ISP的使用方法。
步骤如下:
、在桌面新建一个空文件夹
、打开keil4软件
、点击Project——再点击NewVisionProject——选择刚才桌面的文件夹输入文件名(随意取)——再按住Ctrl+N按键此时新建一文档——再点击保存(Ctrl+S保存),再输入刚才的文件名字最好是英文,然后在英文输入法下输入“.asm”
、选择工程栏中第二个右击“SourceGroup1”SourceGroup1,再选择AddFilestoGroup’SourceGroup…
、在出现的对话框中找到并选择以.asm结尾所建的文件,然后在“文件类型”中选择然后再点击
、将“参考程序”粘贴到程序编辑界面,再点击再选择“Output”,然后勾选这里再点击“OK”
、依次点击左上方工具栏中三个按钮
、将双头USB线分别连接在电脑和学习板上
、打开程序烧写软件,选择单片机型号,其它不用改动,再点击找到所建的文件,点击“打开”,再点击后按一下学习板上的“主控电源芯片开关”完毕。
参考程序如下:
;*************功能说明**************
;程序使用P4.7P1.6来演示两灯交替闪烁,输出低驱动。
;******************************************
Fosc_KHZEQU22118;22118KHZ
STACK_POIRTEREQU0D0H;堆栈开始地质
;*******************************************************************
;*******************************************************************
P4DATA0C0H
P0M1DATA0x93;P0M1.n,P0M0.n=00--->Standard,01--->push-pull
P0M0DATA0x94;=10--->pureinput,11--->opendrain
P1M1DATA0x91;P1M1.n,P1M0.n=00--->Standard,01--->push-pull
P1M0DATA0x92;=10--->pureinput,11--->opendrain
P2M1DATA0x95;P2M1.n,P2M0.n=00--->Standard,01--->push-pull
P2M0DATA0x96;=10--->pureinput,11--->opendrain
P3M1DATA0xB1;P3M1.n,P3M0.n=00--->Standard,01--->push-pull
P3M0DATA0xB2;=10--->pureinput,11--->opendrain
P4M1DATA0xB3;P4M1.n,P4M0.n=00--->Standard,01--->push-pull
P4M0DATA0xB4;=10--->pureinput,11--->opendrain
P5M1DATA0xC9;P5M1.n,P5M0.n=00--->Standard,01--->push-pull
P5M0DATA0xCA;=10--->pureinput,11--->opendrain
P6M1DATA0xCB;P6M1.n,P6M0.n=00--->Standard,01--->push-pull
P6M0DATA0xCC;=10--->pureinput,11--->opendrain
P7M1DATA0xE1;
P7M0DATA0xE2;
;*******************************************************************
;*******************************************************************
ORG0000H;reset
LJMPF_Main
ORG0003H;0INT0interrupt
RETI
LJMPF_INT0_Interrupt
ORG000BH;1Timer0interrupt
LJMPF_Timer0_Interrupt
ORG0013H;2INT1interrupt
LJMPF_INT1_Interrupt
ORG001BH;3Timer1interrupt
LJMPF_Timer1_Interrupt
ORG0023H;4UART1interrupt
LJMPF_UART1_Interrupt
ORG002BH;5ADCandSPIinterrupt
LJMPF_ADC_Interrupt
ORG0033H;6LowVoltageDetectinterrupt
LJMPF_LVD_Interrupt
ORG003BH;7PCAinterrupt
LJMPF_PCA_Interrupt
ORG0043H;8UART2interrupt
LJMPF_UART2_Interrupt
ORG004BH;9SPIinterrupt
LJMPF_SPI_Interrupt
ORG0053H;10INT2interrupt
LJMPF_INT2_Interrupt
ORG005BH;11INT3interrupt
LJMPF_INT3_Interrupt
ORG0063H;12Timer2interrupt
LJMPF_Timer2_Interrupt
ORG0083H;16INT4interrupt
LJMPF_INT4_Interrupt
;********************主程序**************************/
ORG0100H;reset
F_Main:
CLRA
MOVP0M1,A;设置为准双向口
MOVP0M0,A
MOVP1M1,A;设置为准双向口
MOVP1M0,A
MOVP2M1,A;设置为准双向口
MOVP2M0,A
MOVP3M1,A;设置为准双向口
MOVP3M0,A
MOVP4M1,A;设置为准双向口
MOVP4M0,A
MOVP5M1,A;设置为准双向口
MOVP5M0,A
MOVP6M1,A;设置为准双向口
MOVP6M0,A
MOVP7M1,A;设置为准双向口
MOVP7M0,A
MOVSP,#STACK_POIRTER
MOVPSW,#0;选择第0组R0~R7
L_MainLoop:
CLRP4.7
MOVA,#250
LCALLF_delay_ms;延时250ms
LCALLF_delay_ms;延时250ms
SETBP4.7
CLRP4.6
MOVA,#250
LCALLF_delay_ms;延时250ms
LCALLF_delay_ms;延时250ms
SETBP4.6
SJMPL_MainLoop
;*******************************************************************
;*******************************************************************
;========================================================================
;函数:
F_delay_ms
;描述:
延时子程序。
;参数:
ACC:
延时ms数.
;返回:
none.
;备注:
除了ACCC和PSW外,所用到的通用寄存器都入栈
;========================================================================
F_delay_ms:
PUSH02H;入栈R2
PUSH03H;入栈R3
PUSH04H;入栈R4
MOVR2,A
L_delay_ms_1:
MOVR3,#HIGH(Fosc_KHZ/13)
MOVR4,#LOW(Fosc_KHZ/13)
L_delay_ms_2:
MOVA,R4;1TTotal13T/loop
DECR4;2T
JNZL_delay_ms_3;4T
DECR3
L_delay_ms_3:
DECA;1T
ORLA,R3;1T
JNZL_delay_ms_2;4T
DJNZR2,L_delay_ms_1
POP04H;出栈R2
POP03H;出栈R3
POP02H;出栈R4
RET
;****************中断函数***************************************************
F_Timer0_Interrupt:
;Timer01ms中断函数
RETI
F_Timer1_Interrupt:
RETI
F_Timer2_Interrupt:
RETI
F_INT0_Interrupt:
RETI
F_INT1_Interrupt:
RETI
F_INT2_Interrupt:
RETI
F_INT3_Interrupt:
RETI
F_INT4_Interrupt:
RETI
F_UART1_Interrupt:
RETI
F_UART2_Interrupt:
RETI
F_ADC_Interrupt:
RETI
F_LVD_Int
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子 系统 可靠性 技术 实验 指导书 V10