3858|8

86

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

香主问您一个问题! [复制链接]

                                 我现在用ZET6的FSMC控制TFT了,系统上还有SRAM,NOR等,现在PE5口已经是FSMC的地址线A20了,但是我的存储器地址线只到了A17,这样下来作为A20的地址线就空余了,我的问题是这个口可以做普通IO用吗?比如接一个外部中断触发输入或者是是外设的一个反馈信号!可以这么做吗?
此帖出自stm32/stm8论坛

最新回复

                                     详情 回复 发表于 2008-10-14 16:58
点赞 关注
 

回复
举报

84

帖子

0

TA的资源

一粒金砂(初级)

沙发
 

可以

                                  
此帖出自stm32/stm8论坛
 
 

回复

81

帖子

0

TA的资源

一粒金砂(初级)

板凳
 

好的 谢谢香主

也应该是这个样子,否则那些空余的地址线就白白浪费了!呵呵
此帖出自stm32/stm8论坛
 
 

回复

70

帖子

0

TA的资源

一粒金砂(初级)

4
 

香主不行啊!

                                 我刚才将空余的地址线A20(PE6)作为浮空输入用以触发外部中断,PE口其他的地址线都是作为推拉输出的,这样做后,虽然可以进入外部中断了,但是连接FSMC接口的液晶不能写入了,一片白屏!请香主帮看看怎么回事啊?
此帖出自stm32/stm8论坛
 
 
 

回复

99

帖子

0

TA的资源

一粒金砂(初级)

5
 

你的初始化程序呢?

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

64

帖子

0

TA的资源

一粒金砂(初级)

6
 

您指的是什么意思?

                                 初始化?初始化当然做过了啊!现在就是如果用了PE6口作为中断口的话液晶就不能用了,如果液晶能用就不能用中断接口!
此帖出自stm32/stm8论坛
 
 
 

回复

86

帖子

0

TA的资源

一粒金砂(初级)

7
 

请把初始化程序贴出来

                                  
此帖出自stm32/stm8论坛
 
 
 

回复

73

帖子

0

TA的资源

一粒金砂(初级)

8
 

香主!问题解决了!

香主:问题解决了,还是程序问题啊!这我深有感触啊,论坛上好多人一旦有问题,都是怨天尤人,怀疑芯片或者库有问题,其实最大的问题往往还是我们的程序本身,我把这个问题摘录下来:希望大家以后不要犯这样的错误:
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_4 | GPIO_Pin_5 |GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_14 |GPIO_Pin_15;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
GPIO_Init(GPIOD, &GPIO_InitStructure);

  /* Set PE.07(D4), PE.08(D5), PE.09(D6), PE.10(D7), PE.11(D8), PE.12(D9), PE.13(D10),PE.14(D11), PE.15(D12) as alternate function push pull */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_7 | GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11 | GPIO_Pin_12 | GPIO_Pin_13 | GPIO_Pin_14 |GPIO_Pin_15;
  GPIO_Init(GPIOE, &GPIO_InitStructure);
  
 
  
  
  
  
  /* Set PF.00(A0 (RS)) as alternate function push pull */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
  GPIO_Init(GPIOF, &GPIO_InitStructure);

  /* Set PG.12(NE4 (LCD/CS)) as alternate function push pull - CE3    (LCD /CS) */
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12;
  GPIO_Init(GPIOG, &GPIO_InitStructure);
  
  
  GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6;
  GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
  GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;
  GPIO_Init(GPIOE, &GPIO_InitStructure);
  GPIO_WriteBit(GPIOE, GPIO_Pin_6, Bit_SET);
我这个最后初初始化段本来是放在上面的空白区域的,我在初始化一个东西IO口之后,由于下面的IO口还是需要50M,端口的上下拉状态还是相同,所以我下面的口初始化时候就同省略了速度和端口配置,以便减少一些语句,这本来是很不错的做法,但是我把初始化GPIOE6的(后来加上的初始化)往中间一放,这样的话由于这个口的初始化端口配置和前面不一样的,所以我这个初始化端口下面的语句就开始沿用我后来加上的这个端口的初始化配置,从而造成错误,改正的方法很简单,就是吧我后来加上的这个端口的初始化放在后面就好了,不能随便插在中间,从而吧以前正常的上下文的初始化流程被破坏!呵呵!
此帖出自stm32/stm8论坛
 
 
 

回复

84

帖子

0

TA的资源

一粒金砂(初级)

9
 

谢谢,你自己找到问题就不用我瞎忙了

                                  
此帖出自stm32/stm8论坛
 
 
 

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

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表