TI C54xx DSP 十天速成讲义 <四>
[replyview]实验4.1 数码管及LED显示接口实验
实验箱说明部分已经介绍了数码管的控制原理,下面的程序DigitalLED.asm简单的演示了对数码管和LED控制的指令,可以在显示预设的数字和LED状态。复杂的程序可以见附盘的流水灯程序,DigitalLED2.asm
;=========================================================
;DigitalLED.asm
;实验用DSP控制实验板数码管
;DSP用I/O指令对CPLD地址1000-10005写数据,分别对应Digtal0-5
;=========================================================
.mmregs
.def main ;主程序入口
.ref Timer0Init ;Timer0初始化子程序
;数据管地址
Digital0 .set 1000H ;数据管1
Digital1 .set 1001H ;数据管2
Digital2 .set 1002H ;数据管3
Digital3 .set 1003H ;数据管4
Digital4 .set 1004H ;数据管5
Digital5 .set 1005H ;数据管6
DotPoint .set 1006H ;小数点
LED .set 1007H ;LED
STACK .usect "STACK",10H ;分配堆栈空间
.data
DATA: .word 1,2,3,4,5,6 ;测试数据
Dot_DATA: .word 010101b;
LED_DATA: .word 0101010b
.text
main:
STM #STACK+10H,SP ;设堆栈指针SP
STM #K_SWWSR,SWWSR
SSBX INTM ;关中断
LD #DATA,DP ;设数据地址DP
STM #DATA,AR1
*写数据
PORTW *AR1+,Digital0
PORTW *AR1+,Digital1
PORTW *AR1+,Digital2
PORTW *AR1+,Digital3
PORTW *AR1+,Digital4
PORTW *AR1+,Digital5
PORTW Dot_DATA,DotPoint
PORTW LED_DATA,LED
END: B END
.end
技巧提示:数码管、LED的IO地址的定义也可以单独存到一个文件中,在需要它的程序中用.include/.copy指令。
练习:修改预设值重新运行观察结果。
[/replyview]
关键词: C54xx 十天 速成 讲义 数据
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
【换取逻辑分析仪】-基于ADI单片机MAX78000的简易MP3音乐播放器被打赏48分 | |
我想要一部加热台+树莓派PICO驱动AHT10被打赏38分 | |
【换取逻辑分析仪】-硬件SPI驱动OLED屏幕被打赏36分 | |
换逻辑分析仪+上下拉与多路选择器被打赏29分 | |
Let'sdo第3期任务合集被打赏50分 | |
换逻辑分析仪+Verilog三态门被打赏27分 | |
换逻辑分析仪+Verilog多输出门被打赏24分 | |
【分享评测,赢取加热台】使用8051单片机驱动WS2812被打赏40分 | |
【换取逻辑分析仪】rtthread添加RRH62000传感器驱动-基于野火启明6M5被打赏48分 | |
换逻辑分析仪+Verilog多输入门被打赏27分 |