久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2323|回復: 3
打印 上一主題 下一主題
收起左側

關于單片機頭文件中數據存儲區地址宏定義的問題

[復制鏈接]
跳轉到指定樓層
樓主
ID:504174 發表于 2019-4-3 16:28 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
#define status                                        (*(volatile unsigned char*)0x80)
sbit                inscolor                                =                status^0;
sbit                voltagesel                                =                status^1;
sbit                E1                                        =                status^2
sbit                E2                                        =                status^3;
sbit                E3                                        =                status^4;

各位大佬看一下這一段宏定義,如果我這么定義數據存儲區的話,inscolor指向的是0x80的最低位嗎?還是會被自動分配到位尋址區去?
這樣定義的匯編操作又是怎么樣的呢?有什么更簡便的方法嗎?除對存儲區數據進行邏輯運算之外的。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:123289 發表于 2019-4-4 13:08 | 只看該作者
你想一下:status 是不是一定是80H?
如果是:status^0 將是什么?
如果不是:status^0 又是什么?
回復

使用道具 舉報

板凳
ID:401564 發表于 2019-4-4 14:04 | 只看該作者
你這么干的目的是什么?你用的是51單片機嗎?如果 是51的話,你就參考包含的頭文件中的reg52.h的寄存器命名方法來命名
但51和別的單片機卻是有點不同的,就是在寄存器和數據存儲地址上,80H以上的地址名稱它是寄存器和數據存儲器共用的,也就是說0X80這個地址名稱是有兩個東西在用的,一個是P0端口的地址,它是0X80,另一個是數據存儲器,它也是0X80,當你要對0X80這個地址進行操作的時候,它是通過尋址方式的不同來區分你是要操作寄存器還是操作數據存儲器的。
既然你用C,那就應該沒有理由要用匯編去操作硬件,那就沒有必要用C去定義一個數據地址,那就和用匯編是一樣的了,那就是用匯編的方法去用C,沒意義
回復

使用道具 舉報

地板
ID:504174 發表于 2019-4-8 14:45 | 只看該作者
感謝大佬們的解答!
其實我現在屬于卡在匯編和C之間的感覺,經常不知道該用哪種方式去調用數據和操作數據,再加上老板匯編用習慣了經常要求我們一個寄存器掰成8個位來用,一點資源也不能浪費,于是就變成上面這種寫法了,其實我也想用匯編來寫啊,奈何匯編用不熟練,太長的代碼我自己都繞暈了
另外,我看reg51里的寫法,P0口之類對應的端口地址不都是用sfr P0=0x80;這種方式來寫的嗎?sfr應該就是您寫的不同尋址方式吧?
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精久久久久 | 亚洲狠狠丁香婷婷综合久久久 | 欧美亚洲一区二区三区 | 久久婷婷国产 | a级片在线| 日韩精品在线观看一区二区三区 | 中文字幕在线观看成人 | 国产一极毛片 | 日韩在线 | 欧美日韩在线视频观看 | 久久久夜 | 天天操天天射综合网 | 亚洲精品三级 | 久久久久久久久久久久久久av | 亚洲黄色网址视频 | 四虎永久免费在线 | 一区二区三区四区国产 | 色视频网站 | 皇色视频在线 | 国产精品久久久久aaaa九色 | 韩三级在线观看 | 国产一区二区三区久久久久久久久 | 91一区| 欧美a区| 免费av播放 | 99免费在线观看 | 欧美精品在线观看 | 性做久久久久久免费观看欧美 | 一区二区三区精品视频 | 日韩欧美综合在线视频 | 国产69精品久久久久777 | 人人玩人人添人人澡欧美 | 999精品网 | 欧美日韩在线观看视频 | 毛片一级电影 | 欧美精品一区二区三区蜜桃视频 | 亚洲字幕在线观看 | 精品影院 | 日韩欧美国产不卡 | 免费成人高清在线视频 | 亚洲视频在线看 |