📄 test15.asm
字号:
//======================================================
// The information contained herein is the exclusive property of
// Sunnnorth Technology Co. And shall not be distributed, reproduced,
// or disclosed in whole in part without prior written permission.
// (C) COPYRIGHT 2003 SUNNORTH TECHNOLOGY CO.
// ALL RIGHTS RESERVED
// The entire notice above must be reproduced on all authorized copies.
//========================================================
//============================================================
// 工程名称:test15.spj
// 功能描述: 本实验采取直接方式,通过编程实现一个锯齿波,用示波器则观
// 察到锯齿波形,同时也可以听到AUD1和ADU2两端的扬声器有持续间
// 断的声音。
// 文件来源:《实验仪实验指导书》 "实验十八 双通道 D/A" 第62页
// IDE环境: SUNPLUS u'nSPTM IDE 1.8.4
//
// 涉及的库:
// 组成文件:
// test15.asm
//============================================================
//============================================================
// 文件名称:test15.asm
// 实现功能: 本实验采取直接方式,通过编程实现一个锯齿波,用示波器则观
// 察到锯齿波形,同时也可以听到AUD1和ADU2两端的扬声器有持续间
// 断的声音。
//============================================================
.define P_DAC_Ctrl 0x702A
.define P_DAC1 0x7017
.define P_DAC2 0x7016
.define P_Watchdog_Clear 0x7012
.public _main;
.code
//=============================================================
// 函数名称: _main
// 功能描述: 本实验采取直接方式,通过编程实现一个锯齿波,用示波器则观
// 察到锯齿波形,同时也可以听到AUD1和ADU2两端的扬声器有持续间
// 断的声音。
// 语法格式: _main
//入口参数: 无
// 出口参数: 无
// 注意事项: 仅为用户模型
//=================================================================
_main:
INT off;
r1=0x0000;
[P_DAC_Ctrl]=r1;
r3=0x0040; //D/A转换为10位,即B15~B6
r1=0x0000;
MainLoop1:
[P_DAC1]=r1;
[P_DAC2]=r1;
call Delay //调用延时
r1+=r3
r4=0x0001 //清看门狗
[P_Watchdog_Clear] = r4
jmp MainLoop1
Delay: //延时
r2=0
DelayLoop:
r2+=2048;
jnz DelayLoop
retf
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -