打印
[Kinetis]

关于使用PTB前8位做并口输出的设置?

[复制链接]
1229|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
smiel_xll|  楼主 | 2014-6-13 11:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
大家好,有个问题想请教下:我想使用8080并口输出控制LCD显示屏,使用的是KL02 MCU 中PTB0-7位IO口,下面代码是初始设置,帮忙看看这样设置对不对?
  SIM->SCGC5|=SIM_SCGC5_PORTB_MASK;        //开启PTB时钟
        for(i=0;i<8;i++)

{
        PORTB->PCR[i]&=~(PORT_PCR_MUX_MASK);   
        PORTB->PCR[i]|=PORT_PCR_MUX(1);   //GPIO模式
        PTB->PDDR |= (1<<i);        //输出模式
        PORTB->PCR[i]&=~(PORT_PCR_PE_MASK); //做为输出时关闭上下拉电阻功能

}
下面是对LCD写命令与数据的定义:
void Write_Command(unsigned char Data)
{
        DC_L;
        CS_L;
        WR_L;
        PTB->PDOR=Data;
        WR_H;
        CS_H;
        DC_H;
}


void Write_Data(unsigned char Data)
{
        DC_H;
        CS_L;
        WR_L;
        PTB->PDOR=Data;
        WR_H;
        CS_H;
        DC_H;
}
我显示使用并口控制,显示屏没点亮,不确定使用PTB0到PTB7这8位作为数据口输出有没有问题?       


相关帖子

沙发
jd972594| | 2014-6-13 13:41 | 只看该作者
楼主难道没用逻辑分析仪抓一下数据时序吗?
这样就能看出哪个引脚时序不对了

使用特权

评论回复
板凳
FSL_TICS_Robin| | 2014-6-13 14:10 | 只看该作者
楼主你好
你的PTB5引脚上默认为不可屏蔽中断NMI_b功能,这个引脚比较特殊一旦低电平就会触发中断。

使用特权

评论回复
地板
smiel_xll|  楼主 | 2014-6-13 14:47 | 只看该作者
FSL_TICS_Robin 发表于 2014-6-13 14:10
楼主你好
你的PTB5引脚上默认为不可屏蔽中断NMI_b功能,这个引脚比较特殊一旦低电平就会触发中断。 ...

版主您好,如果我使用PTB0,1,2,3,4,7,10,11,管脚分别作为D0-D7数据口,请问怎么处理啊?

使用特权

评论回复
5
FSL_TICS_Robin| | 2014-6-13 15:42 | 只看该作者
smiel_xll 发表于 2014-6-13 14:47
版主您好,如果我使用PTB0,1,2,3,4,7,10,11,管脚分别作为D0-D7数据口,请问怎么处理啊? ...

那你这数据口操作起来不累吗?
NMI_b引脚功能是可以禁止的。

使用特权

评论回复
6
FSL_TICS_Robin| | 2014-6-13 15:44 | 只看该作者
FSL_TICS_Robin 发表于 2014-6-13 15:42
那你这数据口操作起来不累吗?
NMI_b引脚功能是可以禁止的。

因为方法比较特殊,所以我有写过2篇关于禁止不可屏蔽引脚NMI的帖子:
【经验分享】使用CW10.x的PE禁用NMI不可屏蔽中断

【经验分享】IAR编译环境禁用NMI(不可屏蔽中断)

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

58

帖子

0

粉丝