单片机教学(华南理工)单片机实验二.docVIP

单片机教学(华南理工)单片机实验二.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验、 实验目的 学习 实验要求 1. 把寄存器R0~R29置$FF,把SRAM $0060~$006F单元清0,把$0070~$007F单元置$FF,把$0080~$008F单元分别设置为0~F。 ============ .include m8def.inc .org $0000 rjmp reset .org $0013 reset: ldi r16,low(ramend) ;堆栈指针初始化 out spl,r16 ldi r16,high(ramend) out sph,r16 ldi zl,$60 ;设置Z指针 ldi zh,$00 ldi r16,$00 set1:st z+,r16 ;将SRAM $0060-$006F单元清0 cpi r30,$70 brne set1 ldi r16,$FF set2:st z+,r16 ;将SRAM $0070-$007F单元置$FF cpi r30,$80 brne set2 ldi r16,$00 set3:st z+,r16 ;将SRAM $0080-$008F单元分别设置为0-F inc r16 cpi r30,$90 brne set3 ldi zl,$1D ldi zh,$00 ldi r29,$FF ;将通用寄存器R0-R29置$FF set4:st -z,r29 cpi r30,0 brne set4 here:rjmp here ============ 2. 把SRAM地址为$0060开始的256个单元内容依次复制到地址为$0100开始的单元(注意两数据区有部分重叠) ============ .include m8def.inc .org $0000 rjmp reset .org $0013 reset: ldi r16,low(ramend) ;堆栈指针初始化 out spl,r16 ldi r16,high(ramend) out sph,r16 ldi zl,$60 ;数据段初始化(检验程序用) ldi zh,$00 ldi r16,0 loop:st z+,r16 inc r16 cpi r30,$5F brne loop ldi zl,$60 ;设置Z指针 ldi zh,$01 ldi yl,$00 ;设置Y指针 ldi yh,$02 copy:ld r16,-z st -y,r16 cpi r30,$60 brne copy here:rjmp here ============ 3. 把Flash中字地址为$003开始的10个字(Word)的内容复制到起始地址为$0100的SRAM(先低字节,后高字节) ============ .include m8def.inc .org $0000 rjmp reset .org $0003 ;程序数据段初始化(检验程序用) .db $01,$02,$04,$08,$10,$20,$40,$80,$0F,$F0 .db $10,$20,$40,$80,$01,$02,$04,$08,$F0,$0F .org $002A reset: ldi r16,low(ramend) ;堆栈指针初始化 out spl,r16 ldi r16,high(ramend) out sph,r16 ldi zl,$00 ;SRAM数据段初始化(检验程序用) ldi zh,$01 ldi r16,$00 clear:st z+,r16 cpi r30,20 brne clear ldi zl,$06 ;设置Z指针 ldi zh,$00 ldi yl,$00 ;设置Y指针 ldi yh,$01 loop:lpm r0,z+ st y+,r0 cpi r28,20 brne loop here:rjmp here ============ 4. 用I/O引脚驱动若干个LED,编写跑马灯程序 (画电路图、编程、调试、Proteus仿真、下载到实验板进行验证) ============ .include 8535def.inc .org $0000 rjmp reset .org $0013 reset: ldi r16,l

文档评论(0)

1243595614 + 关注
实名认证
文档贡献者

文档有任何问题,请私信留言,会第一时间解决。

版权声明书
用户编号:7043023136000000

1亿VIP精品文档

相关文档