原创 关于Keil 51的绝对寻圵

2008-6-5 00:17 2692 5 6 分类: MCU/ 嵌入式
一直不明白怎么用C进行外部总线操作,问了老师,他竟然说用程序去实现总线操作的时序!吓了我一跳。
还好,今天晚上就找到了答案,这还要多谢互联网啊!当然也要谢谢那些把自己的心得写出来的仁兄了!
总的说来,有三种方式:
a:直接定义直接地圵的指针。
   eg:aaa=*((volatile int xdata *) 0x000a);//从0x000a起定义了一个INT型变   量,当然,它是在外部数据区定义的。其中volatile用来说明这个变量是会随时间变的,用之前必须读一次数值。这样做的原因是为了防止编译器优化时出问题。举个例子:XWORD[0x0001]=0x01;XWORD[0x0002]=0x02;这两句编译出来是什么样子的呢?有点多,只写重点了。(XWORD在下面说)
                      mov dptr,#0002h
                      mov a,#00h
                      movx @dptr,a
                      inc dptr
                      mov a,#01h
                      movx @dptr,a
                      inc dptr

                      mov a,#00h

                      movx @dptr,a
                      inc dptr

                      mov a,#02h

                      movx @dptr,a
看出来了吧,第二次并没有往DPTR里写0002H。这也行,但是如果把DPTR换成IO口,那就不行了吧。所以,要加上volatile!
b:通过加入absacc.h。定义方式如上:XWORD[0x0001]=0x01。别的不说了,自己找下吧,里面都很清楚的。对了,要说一下都有什么类型的:XBYTE,PBYTE,CBYTE,DBYTE,XWORD,PWORD,CWORD,DWORD.
c:用_at_定义。
  这个还没弄清楚,总是通不过编译,会了再补充吧。
睡觉了!
再加个链接吧,这个很有用:http://www.guangdongdz.com.cn/special_column/techarticle/20065/610111432244.html


PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

用户403611 2011-10-10 17:33

gelivable是什么意思?

用户754892 2011-9-29 00:09

铜哥做事越来越gelivable

Cybershu 2008-6-5 23:51

学习学习
相关推荐阅读
用户1354166 2010-04-14 21:34
arm9开发2-定时器
又是这样,先忙一个晚上,没有结果,但在第二天很快就把事情搞定了。终于啊,定时器的定时方法弄完了,但在RAM中运行的方法还没弄明白。下面是源码,有注释,我就不说废话了。但自己觉得重点有:1、  时钟的设...
用户1354166 2009-08-29 23:28
毕业设计--基于GSM网络的远程温度监测报警系统
https://static.assets-stash.eet-china.com/album/old-resources/2009/8/29/db283c81-a374-4fcc-a3a4-f7ba...
用户1354166 2009-08-28 21:20
简单多任务调度的实现--基于STC89C52
https://static.assets-stash.eet-china.com/album/old-resources/2009/8/28/9143ed66-2512-4415-8303-6809...
用户1354166 2009-06-30 16:08
mini2440学习-1.流水灯的实现
买了块ARM9的开发板,mini2440,500多。上班了,还好自己的时间比较多,这几天一直在看一些资料,终于,今天上午把流水灯程序弄好了,高兴啊!先说一下在调试过程中的所得,最后附上代码。1、调试前...
用户1354166 2008-11-17 00:09
周立功招聘笔记
前天参加周立功单片机的招聘,结果是失败了,但是收获还是有的。参加笔试的在约有200人,硬件方面应该有100人左右。我参加的是硬件,题不难,要不然不会有个大三的考个最高分—60分,100分满分。40分有...
用户1354166 2008-09-04 21:10
连续路径识别的实现方法
                 连续路径识别的实现方法     对于电光组来说,横向的路径检测精度是比较低的。我们有必要想方设法提高其检测精度。现对常用的连续路径识别方法做一说明:     普通的数...
我要评论
1
5
关闭 站长推荐上一条 /3 下一条