智能车制作

 找回密码
 注册

扫一扫,访问微社区

查看: 7333|回复: 15
打印 上一主题 下一主题

12864与键盘程序

[复制链接]

3

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
883
威望
538
贡献
169
兑换币
71
注册时间
2010-10-29
在线时间
88 小时
跳转到指定楼层
1#
发表于 2012-4-13 14:36:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
总算在s12上把12864与键盘搞定了!看网上没有源程序,就传上来了!我主要控制4个步进电机,键盘和液晶在头文件里!主频48m,希望大家能用到!

3

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
883
威望
538
贡献
169
兑换币
71
注册时间
2010-10-29
在线时间
88 小时
2#
 楼主| 发表于 2012-4-13 14:46:19 | 只看该作者
附件掉了!
回复 支持 反对

使用道具 举报

3

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
883
威望
538
贡献
169
兑换币
71
注册时间
2010-10-29
在线时间
88 小时
3#
 楼主| 发表于 2012-4-13 14:48:00 | 只看该作者

12864与键盘

总算在s12上把12864与键盘搞定了!看网上没有源程序,就传上来了!我主要控制4个步进电机,键盘和液晶在头文件里!主频48m,希望大家能用到!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

3

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
883
威望
538
贡献
169
兑换币
71
注册时间
2010-10-29
在线时间
88 小时
4#
 楼主| 发表于 2012-4-13 14:48:21 | 只看该作者
好了!哈哈……
回复 支持 反对

使用道具 举报

0

主题

1

帖子

0

精华

注册会员

Rank: 2

积分
130
威望
100
贡献
26
兑换币
0
注册时间
2012-5-23
在线时间
2 小时
毕业学校
成都理工大学
5#
发表于 2012-5-23 22:08:48 | 只看该作者
zp健忘 发表于 2012-4-13 14:46
附件掉了!

能再上传下附件不?或者你给我简单说下工作原理也行,万分感谢。
回复 支持 反对

使用道具 举报

3

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
883
威望
538
贡献
169
兑换币
71
注册时间
2010-10-29
在线时间
88 小时
6#
 楼主| 发表于 2012-6-17 13:19:57 | 只看该作者
不好意思啊!这几天毕设忙得很!你重新搜所“12864与步进电机”就会找到!呵呵……祝你好运!
回复 支持 反对

使用道具 举报

4

主题

22

帖子

0

精华

高级会员

Rank: 4

积分
693
威望
484
贡献
151
兑换币
2
注册时间
2012-7-19
在线时间
29 小时
7#
发表于 2012-8-2 22:30:25 | 只看该作者
楼主好人   谢谢分享
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
199
威望
140
贡献
45
兑换币
0
注册时间
2012-8-8
在线时间
7 小时
8#
发表于 2012-8-27 11:05:23 | 只看该作者
对按键进行操作时要注意哪些事情,我发现并不是将通道设置为输入模式以后,就可以检测I/O口的电平,能不能帮忙写一段呀?下面这个程序不知道怎么回事
#include <hidef.h>      /* common defines and macros */
#include <MC9S12XS128.h>      /* derivative-specific definitions */
unsigned int num;
void delay(int z)
{ int x,y;
  for(x=z;x>0;x--)
    for(y=4000;y>0;y--);
}
void keyscan(void)
{
   if(PORTA_PA0==0)
   delay(4);
    if(PORTA_PA0==0)
       num++;
    if(num==9)
        num=1;            
}
void main(void)
{
  DDRB=0xff;
  DDRA=0xfe;  
  for(;;)
  {
     keyscan();
     
     if(num==1)
        PORTB=0X01;
     if(num==2)
        PORTB=0X02;
     if(num==3)
        PORTB=0X04;
     if(num==4)
        PORTB=0X08;
     if(num==5)
        PORTB=0X10;
     if(num==6)
        PORTB=0X20;
     if(num==7)
        PORTB=0X40;
     if(num==8)
        PORTB=0X80;
  }
}
PB口控制小灯,PA0口接一个按键,为什么按键不起作用呀?哪里出问题了,怎么修改呀?
回复 支持 反对

使用道具 举报

3

主题

87

帖子

0

精华

高级会员

Rank: 4

积分
883
威望
538
贡献
169
兑换币
71
注册时间
2010-10-29
在线时间
88 小时
9#
 楼主| 发表于 2012-8-27 15:12:23 | 只看该作者
舒田申 发表于 2012-8-27 11:05
对按键进行操作时要注意哪些事情,我发现并不是将通道设置为输入模式以后,就可以检测I/O口的电平,能不能帮 ...

我之前也是一样!最主要就是延时,因为s12有点快!还有就是你现在是PA0是输入,你在线看看初始化后是不是1,最好上拉;你可以在线调试,一步一步按,同时按住PA0键,当程序执行到扫面程序的时候注意观察,问题肯定在这,好运!
回复 支持 反对

使用道具 举报

1

主题

6

帖子

0

精华

注册会员

Rank: 2

积分
199
威望
140
贡献
45
兑换币
0
注册时间
2012-8-8
在线时间
7 小时
10#
发表于 2012-8-27 16:35:42 | 只看该作者
多谢了  我试试看
回复 支持 反对

使用道具 举报

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

本版积分规则

关于我们|联系我们|小黑屋|智能车制作 ( 黑ICP备2022002344号

GMT+8, 2024-9-28 04:10 , Processed in 0.050196 second(s), 32 queries , Gzip On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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