查看: 2878|回复: 5

[原创] 【疯狂的四驱车】实验一 LCD驱显

[复制链接]
  • TA的每日心情
    开心
    2019-2-14 16:49
  • 签到天数: 296 天

    连续签到: 1 天

    [LV.8]以坛为家I

    241

    主题

    2239

    帖子

    6

    金牌会员

    Rank: 6Rank: 6

    积分
    4473
    最后登录
    2020-4-14
    发表于 2016-7-17 05:38:11 | 显示全部楼层 |阅读模式
    由于在上一文档中已经说明了KS22\K22\K64F的I/O口配置问题,此处直接给对应代码:
    BOARD.h里面加上自己的:
    //4Line LCD I/O Define

    #define res  GPIOB
    #define resPin 11U
    #define reg  GPIOB
    #define regPin 10U
    #define sda  GPIOB
    #define sdaPin 2U
    #define clk  GPIOB
    #define clkPin 3U
    #define led  GPIOB
    #define ledPin 22U


    在pin_mux.c中更改为:
    //Define Board I/O
    void BOARD_InitPins(void){
    //Debug uart port mux config||Enable gpioB[uart] port clock
    CLOCK_EnableClock(kCLOCK_PortB);
    //Affects PORTB_PCR16 PORTB_PCR17 register
    PORT_SetPinMux(PORTB, 16U, kPORT_MuxAlt3);
    PORT_SetPinMux(PORTB, 17U, kPORT_MuxAlt3);
    //Config the LCD IOs
    PORT_SetPinMux(PORTB, 2U,kPORT_MuxAsGpio);
    PORT_SetPinMux(PORTB, 3U,kPORT_MuxAsGpio);
    PORT_SetPinMux(PORTB,10U,kPORT_MuxAsGpio);
    PORT_SetPinMux(PORTB,11U,kPORT_MuxAsGpio);
    //Led pin mux Configuration
    PORT_SetPinMux(PORTB, 22U, kPORT_MuxAsGpio);
    }


    将自己编写的lcd.h和lcd.c驾到主函数中:
    #include "lcd.h"
    这两个程序可以参考以前小车的工程中的对应文件,完全一样直接抄来——因为完全一样的LCD。

    将原来的GPIO改成ioCtrl.c——将来控制小车的祝函数模块了,其中添加了:
    ioInit();
    while(1)中添加了显示LCD界面需要显示的东西,结果如图。


    LCD显示界面

    LCD显示界面
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2021-9-9 22:51
  • 签到天数: 415 天

    连续签到: 1 天

    [LV.9]以坛为家II

    79

    主题

    3088

    帖子

    21

    金牌会员

    Rank: 6Rank: 6

    积分
    5181
    最后登录
    2022-5-23
    发表于 2016-7-17 06:35:22 | 显示全部楼层
      模拟SPI驱动吗?SPI 也可以试试。我倒想FLEXBUS 看看
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2021-9-9 22:51
  • 签到天数: 415 天

    连续签到: 1 天

    [LV.9]以坛为家II

    79

    主题

    3088

    帖子

    21

    金牌会员

    Rank: 6Rank: 6

    积分
    5181
    最后登录
    2022-5-23
    发表于 2016-7-17 06:35:43 | 显示全部楼层
    赞一个!
    该会员没有填写今日想说内容.
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2019-2-14 16:49
  • 签到天数: 296 天

    连续签到: 1 天

    [LV.8]以坛为家I

    241

    主题

    2239

    帖子

    6

    金牌会员

    Rank: 6Rank: 6

    积分
    4473
    最后登录
    2020-4-14
     楼主| 发表于 2016-7-17 06:39:16 | 显示全部楼层
    ALTIUM2 发表于 2016-7-17 06:35
    模拟SPI驱动吗?SPI 也可以试试。我倒想FLEXBUS 看看

    FlexBUS适用于并口的LCD,特别费I/O口,我只在144PIN的芯片上用过。在100或以下的PIN芯片上不太好用,因为并口的LCD都带有触摸屏,一共至少需要26个I/O以上【16位或18位或24位驱动】
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2021-9-9 22:51
  • 签到天数: 415 天

    连续签到: 1 天

    [LV.9]以坛为家II

    79

    主题

    3088

    帖子

    21

    金牌会员

    Rank: 6Rank: 6

    积分
    5181
    最后登录
    2022-5-23
    发表于 2016-7-17 06:49:40 | 显示全部楼层
    zhjb1 发表于 2016-7-17 06:39
    FlexBUS适用于并口的LCD,特别费I/O口,我只在144PIN的芯片上用过。在100或以下的PIN芯片上不太好用,因 ...

      我也刚开始玩K64,请问下如果我只用8位Flexbus驱动这种简单的点阵OLED,应该可行么?8080或者6800接口
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2019-2-14 16:49
  • 签到天数: 296 天

    连续签到: 1 天

    [LV.8]以坛为家I

    241

    主题

    2239

    帖子

    6

    金牌会员

    Rank: 6Rank: 6

    积分
    4473
    最后登录
    2020-4-14
     楼主| 发表于 2016-7-17 07:14:02 | 显示全部楼层
    应该可以,只是没有这么用过。8位数据+控制线大约需要至少12根线的
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

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

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2025-7-18 18:39 , Processed in 0.093638 second(s), 25 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.

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