標(biāo)題: 單片機(jī)LCD驅(qū)動(dòng)求教,關(guān)于直接控制與間接控制 [打印本頁(yè)]

作者: w1179benp    時(shí)間: 2023-2-21 07:25
標(biāo)題: 單片機(jī)LCD驅(qū)動(dòng)求教,關(guān)于直接控制與間接控制
此前在遇到LCD控制時(shí),都是如下
// 間接控制方式驅(qū)動(dòng)子程序
#define LCDBUS    P0
sbit _WR     = P2^4;
sbit _RD     = P2^3;
sbit _CS     = P2^2;
sbit  RS     = P2^6; //A0
sbit _RST     = P2^5;
sbit _sel     = P2^7;

最近遇到一個(gè)采用直接控制方式的如下
#define DW_ADD XBYTE[0x0000]                 /* LCD屏數(shù)據(jù)口寫(xiě)地址 */        
#define CW_ADD XBYTE[0x0100]                 /* LCD屏指令口寫(xiě)地址 */
#define DR_ADD XBYTE[0x0100]                 /* LCD屏數(shù)據(jù)口讀地址 */
#define CR_ADD XBYTE[0x0000]                 /* LCD屏指令口讀地址 */

那么應(yīng)如何按上述P2口對(duì)應(yīng)的關(guān)系,修改下邊方括號(hào)里的值呢?如DW_ADD XBYTE[ 0x ????]


作者: wys91203    時(shí)間: 2023-2-21 08:49
如果是51單片機(jī),P2.7位作為地址選擇時(shí)1000 0000 0000 0000  即0X8000 到  1111 1111 1111 1111 即0XFFFF
作者: w1179benp    時(shí)間: 2023-2-22 08:37
wys91203 發(fā)表于 2023-2-21 08:49
如果是51單片機(jī),P2.7位作為地址選擇時(shí)1000 0000 0000 0000  即0X8000 到  1111 1111 1111 1111 即0XFFFF

感謝回復(fù)。這兩天又找了些例程注釋看了看,有些理解不知對(duì)否:1.直接控制法先決條件:硬件必須是P0的并口8位數(shù)據(jù)、P2控制端口;且R\D、R\W必須分別接在P37、P36端上(以89C52為例),2. 而間接控制法無(wú)需數(shù)據(jù)端口、控制端口的硬性要求,只需對(duì)各端口分別分配、定義就可以了。
作者: 人中狼    時(shí)間: 2023-2-22 09:42
兩個(gè)不同的概念,一個(gè)是端口控制方式,一個(gè)是總線控制方式,查查51有關(guān)使用總線的資料,其實(shí)現(xiàn)在除了51,很多應(yīng)用環(huán)境都不使用總線方式了




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1