Assembly 8051中LCD LM016中的旋转文本(组件)

Assembly 8051中LCD LM016中的旋转文本(组件),assembly,8051,Assembly,8051,编辑:此任务没有任何预定义指令,因此必须手动执行,以下是最终输出: 我必须在连接到微控制器8051的显示器LM016上向左和向右旋转文本,我希望我需要的文本向右旋转,然后向左旋转,使用大循环我做到了: 80 Address = T 81 Address = A 82 Address = N 83 Address = I C1 Address = 0 C2 Address = 2 80-83地址通过寄存器R0定向,C1-C2地址使用Rr1寄存器定向。每次重复,它都会增加两个寄存器的值,因此下次

编辑:此任务没有任何预定义指令,因此必须手动执行,以下是最终输出:

我必须在连接到微控制器8051的显示器LM016上向左和向右旋转文本,我希望我需要的文本向右旋转,然后向左旋转,使用大循环我做到了:

80 Address = T
81 Address = A
82 Address = N
83 Address = I

C1 Address = 0
C2 Address = 2
80-83地址通过寄存器R0定向,C1-C2地址使用Rr1寄存器定向。每次重复,它都会增加两个寄存器的值,因此下次生成文本时,看起来文本正在向右侧移动,此循环持续16次,因此文本在右侧消失,现在每次执行同一循环时,R0和R1都会减少1,因此文本看起来好像正在向左侧移动

一旦光标到达80个位置后(当光标到达79个位置时),第一行的文本立即消失,程序运行不稳定(我可以解决这个问题,但我的方法效率低下)

使用18H和1CH命令文本整体上向左和向右移动,我想一个字符一个字符地移动文本,您能指导我使用任何有效的方法吗?我正在使用的方法没有什么问题

我想要的是,我的逻辑运行良好,可以扩展到完美移位,但效率不高,因为我一次又一次地写数据。
我自己做的,这个任务没有任何预定义的函数,下面是优化的输出。
我自己做的,这个任务没有任何预定义的函数,下面是优化的输出。