- 1、本文档共49页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
上一页 下一页 返回 例题7-6为采用汇编语言编写的TLC549A/D转换程序,执行后将启动TLC549连续进行A/D转换,并将A/D转换结果通过单片机的P1口进行显示。 例7-6 启动TLC549进行A/D转换汇编语言程序。 SCLK BIT P3.0 ;定义I/O口 CS549 BIT P3.1 DOUT BIT P3.2 ORG 0000H LJMP MAIN ORG 0030H MAIN: MOV SP,#60H LCALL TLC549 ;启动TLC549进行A/D转换 LCALL DELAY LOOP: LCALL TLC549 ;读取上次ADC值,再次启动TLC549进行A/D转换 LCALL DELAY 上一页 下一页 返回 MOV P1,A ;将读取的A/D转换值送往P1口显示 SJMP LOOP TLC549: CLR CS549 ;选中TLC549 NOP NOP MOV C,DOUT ;接受第一位数据 RLC A NOP NOP MOV R0,#07 ;置循环次数 SPIIN: SETB SCLK NOP NOP CLR SCLK ;产生有效沿,以便从器件锁存数据 NOP 上一页 下一页 返回 NOP MOV C,DOUT ;接受下一位数据(从最高位开始) RLC A DJNZ R0,SPIIN ;8位数据未接收完,则继续接收下一位 CLR SCLK NOP NOP SETB SCLK NOP NOP CLR SCLK SETB CS549 ;结束SPI总线操作,关闭从器件 RET 上一页 下一页 返回 DELAY: MOV R7,#40 ;延时子程序 DJNZ R7,$ RET END 上一页 下一页 返回 任务7.5波形发生器的设计与仿真 7.5.1 硬件电路设计 7.5.2典型波形分析 7.5.3 程序设计 7.5.4 综合仿真调试 上一页 下一页 返回 7.5.1 硬件电路设计 采用图7-23所示的硬件接口,DAC0832的地址为7FFFH,工作于单缓冲器方式,执行一次对DAC0832的写入操作即可完成一次D/A转换。为了识别按键,对8051单片机的外部中断INT0进行了扩展。可通过不同按键产生阶梯波、三角波、方波和正弦波。 上一页 下一页 返回 上一页 下一页 返回 7.5.2典型波形分析 1、正向的阶梯波 程序如下: MOV DPTR,#7FFFH ;DAC0832的口地址 ST: MOV A,#00H ;阶梯波 LOOP: MOVX @DPTR,A ;启动D/A转换 INC A AJMP LOOP ;连续输出波形 上一页 下一页 返回 2、三角波 如果将正向锯齿波与负向锯齿波组合起来就可以获得三角波,程序如下: MOV DPTR,#7FFFH ;DAC0832地址 TRI: MOV A,#00H ;三角波 UP: MOVX @DPTR,A ;启动D/A转换
文档评论(0)