我看不懂的几句代码,请大家帮我解毒!

roline 2006-07-04 09:13:35
代码如下:

void INT_PDA()
{
unsigned char i;
wcadd1=0x40; /* SYSTEM SET代码 */
for(i=0;i<8;i++)
{
wdadd1=SYSTAB[i]; /* 写入参数 */
}
wcadd1=0x44; /* SCROLL代码 */
for(i=8;i<18;i++)
{
wdadd1=SYSTAB[i]; /* 写入参数 */
}
wcadd1=0x5a; /* HDOT SCR 代码 */
wdadd1=0x00; /* 设置参数P1 */
wcadd1=0x5b; /* OVLAY 代码 */
wdadd1=0x00; /* 设置参数:显示一,三区为文本属性 */
CLEAR(); /* 调清屏子程序 */
wcadd1=0x59; /* 显示状态设置 */
wdadd1=0x54; /* 设置参数:显示一~四区开显示 */
}
我郁闷的是,其中的某些语句,比如wcadd1=0x5a;我就搞不懂他是什么意思,虽然作者写了注释!
希望明白的朋友帮我解答!惭愧的是我太穷了,没有分数可以送给你们!
...全文
123 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
WuYL7812 2006-07-04
  • 打赏
  • 举报
回复
要往地址为0xDF21的内存写数据可以这么写
unsigned char * ptr = (unsigned char *)0xDF21
*ptr = 0x40
用宏定义后就像你写的那样了.但是不知道xdata 是什么东西
WuYL7812 2006-07-04
  • 打赏
  • 举报
回复
这是写硬件寄存器的代码
roline 2006-07-04
  • 打赏
  • 举报
回复
补充以下,其中有些参数的定义如下:
#define wcadd1 *(unsigned char xdata *)0xDF21
#define wdadd1 *(unsigned char xdata *)0xDF20
#define rdadd1 *(unsigned char xdata *)0xDF21
#define rbadd1 *(unsigned char xdata *)0xDF20

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧