OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5056|回复: 3

这个写寄存器/寄存器值怎么实现的。。。求解

[复制链接]

34

主题

173

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1087
金钱
1087
注册时间
2017-3-10
在线时间
172 小时
发表于 2017-5-17 10:43:02 | 显示全部楼层 |阅读模式
8金钱
[mw_shl_code=applescript,true]/***************************************************************************************
* Function name         函数名称:    wr_reg
* Description           功能描述:    写入寄存器地址/寄存器值
* Input parameters      输入参数:    command 寄存器地址或寄存器值
* Returned value        返回参数:    无
* Used global variables 全局变量:    无
* Calling funcations    调用函数:    无
* Calling declare                调用声明:         无
* --------------------------------------------------------------------------------------
***************************************************************************************/
void wr_reg(U8 command)
{
#ifdef        BUS_SWITCH
        LcdBus = lcd_bus_convert(command);
#else
        LcdBus = command;
#endif
        _RD = 1;
        A0 = 1;
        _CS = 0;       
        _WR = 0;
        _nop_();        //        _nop_();_nop_();_nop_();        空闲一个机器周期
        _WR = 1;
        _CS = 1;
        A0 = 1;       
}[/mw_shl_code]

        /************************************************************/
        /*****************LCD控制口线定义****************************/
        sbit BLA = P2^7;                  //控制BLA,但是BLA高电平,LCD关闭,因此BLK=0V,即blk_bit=1;
        sbit _RST =P1^0;                //LCD 复位信号,电压稳定前应保持低电平。
        sbit A0 = P1^1;
        sbit _CS = P4^7;                       
        sbit _RD = P1^2;
        sbit _WR = P1^3;                //端口设置
        #define LcdBus P0

最佳答案

查看完整内容[请看2#楼]

A0应该连接的是LCD的RS,我记得当初弄RA8875看到过,主要现在没给我电路图,恼火啊,要自己就去分析,几万行代码。。。。。。。
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

34

主题

173

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1087
金钱
1087
注册时间
2017-3-10
在线时间
172 小时
 楼主| 发表于 2017-5-17 10:43:03 | 显示全部楼层
本帖最后由 stm32wwxf 于 2017-5-18 10:11 编辑
mack13013 发表于 2017-5-17 21:37
先将数据准备好,  LcdBus = XXX,
剩下的就是常规的IC写入流程了。
RD=1(关闭读)

A0应该连接的是LCD的RS,我记得当初弄RA8875看到过,主要现在没给我电路图,恼火啊,要自己就去分析,几万行代码。。。。。。。
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165369
金钱
165369
注册时间
2010-12-1
在线时间
2110 小时
发表于 2017-5-17 21:31:47 | 显示全部楼层
帮顶
回复

使用道具 举报

33

主题

983

帖子

1

精华

论坛元老

Rank: 8Rank: 8

积分
7930
金钱
7930
注册时间
2014-8-13
在线时间
1588 小时
发表于 2017-5-17 21:37:45 | 显示全部楼层
先将数据准备好,  LcdBus = XXX,
剩下的就是常规的IC写入流程了。
RD=1(关闭读)
A0 = 1????????
CS=0(片选)
WR=0(写使能)
nop()等待一下,确保WR低电平保持一定时间
WR=1(写关闭,一般的IC,在WR上升沿锁存数据)
CS=1(取消片选)
A1=1???????????
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-1 14:59

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表