楼主: 陈克雄

STM32F0 #16进程帖(一)----- LCD12864液晶显示

  [复制链接]
  • TA的每日心情
    奋斗
    2016-8-26 01:52
  • 签到天数: 120 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-5-13 04:08:52 | 显示全部楼层
    分享到:
    zyj 发表于 2014-5-12 13:48
    只需要SID: PC0  SCLK: PC1这两根线吗?

    是的,只需要两根信号线
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-5-13 16:18:22 | 显示全部楼层
    能来个电路图吗?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-5-13 22:50:19 | 显示全部楼层
    这句       #define LCD12864_SID_OUT(x)                (x) ? (GPIOC->BSRR |= 1<<0) : (GPIOC->BRR |= 1<<0)
            #define LCD12864_SCLK_OUT(x)        (x) ? (GPIOC->BSRR |= 1<<1) : (GPIOC->BRR |= 1<<1)
    是不是应该这样写  #define LCD12864_SID_OUT(x)                (x) ? (GPIOC->BSRR |= 1<<0) : (GPIOC->BRR |= 1<<(16+1)) 解释下这两句吧
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-5-13 23:18:14 | 显示全部楼层
    PS引脚怎么接的?直接接的GND吗?看到回答呀
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2016-8-26 01:52
  • 签到天数: 120 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-5-14 03:59:04 | 显示全部楼层
    嘉嘉_雪儿 发表于 2014-5-13 16:18
    能来个电路图吗?

    电路图如下,RS拉高,PSB拉低,R/W 和 E 在串行控制中分别作为数据线和时钟线
    LCD12864_Serial.jpg
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2016-8-26 01:52
  • 签到天数: 120 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-5-14 04:02:30 | 显示全部楼层
    嘉嘉_雪儿 发表于 2014-5-13 22:50
    这句       #define LCD12864_SID_OUT(x)                (x) ? (GPIOC->BSRR |= 1

    (x) ? (GPIOC->BSRR |= 1<<0) : (GPIOC->BRR |= 1<<0)
                     ||
                     ↓↓
    (x) ? (将数据线拉高) : (将数据线拉低)
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2016-8-26 01:52
  • 签到天数: 120 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-5-14 04:06:22 | 显示全部楼层
    嘉嘉_雪儿 发表于 2014-5-13 22:50
    这句       #define LCD12864_SID_OUT(x)                (x) ? (GPIOC->BSRR |= 1

    里面的  GPIOC->BSRR |= 1<<0  是使用C语言的位操作对STM32的 BSRR寄存器的 第0位 置1,对应作用就是使PC_0 引脚输出高电平
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-5-14 16:21:27 | 显示全部楼层
    CS不是低电平有效吗?这里怎么是高电平呀??你这个图对吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    奋斗
    2016-8-26 01:52
  • 签到天数: 120 天

    连续签到: 1 天

    [LV.7]常住居民III

     楼主| 发表于 2014-5-14 20:46:58 | 显示全部楼层
    嘉嘉_雪儿 发表于 2014-5-14 16:21
    CS不是低电平有效吗?这里怎么是高电平呀??你这个图对吗?

    在串行控制时,(RS)CS是片选,高电平选中。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2014-5-14 21:47:29 | 显示全部楼层
    这里        void GPIO_Initializations(void)
            {
                    GPIO_InitTypeDef GPIO_InitStructure;

                    /* GPIOA Configuration */
                    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
                    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_OUT;                        //output mode
                    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_Level_3;           //high speed
                    GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;                //pushpull mode
                    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;                                //
                    GPIO_Init(GPIOC, &GPIO_InitStructure);
            }
    怎么不这样写呀?你这个 GPIO_PuPd_NOPULL手册里也没有呀啊?
    我这样写的        GPIO_InitTypeDef GPIO_InitStructure;
                    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC, ENABLE);
                    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2;
                    GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;       
                    GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
                      
                    GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3;
                    GPIO_Init(GPIOC, &GPIO_InitStructure);
    我只有PC2和PC3两个引脚了,其余的都用了
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-11-22 06:16 , Processed in 0.188946 second(s), 32 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.