OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4626|回复: 4

PS2手柄移植STM32F4问题

[复制链接]

3

主题

8

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2018-5-21
在线时间
11 小时
发表于 2018-6-11 20:38:02 | 显示全部楼层 |阅读模式
10金钱
有朋友成功把ps2手柄移植到stm32f4系列上么?我尝试了数天,摇杆输入模拟量一直不成功,无法切换“红灯模式”(按下MOOD后,闪几下,红灯仍不亮),将DO接头拔下后,可切换“红灯模式”,接上DO又变回绿灯。请问是与IO口配置有关吗?或者其它什么原因? 谢谢!


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 2018-6-12 01:00:31 | 显示全部楼层
移植自我们429开发板?
回复

使用道具 举报

3

主题

8

帖子

0

精华

新手上路

积分
44
金钱
44
注册时间
2018-5-21
在线时间
11 小时
 楼主| 发表于 2018-6-12 10:17:07 | 显示全部楼层
正点原子 发表于 2018-6-12 01:00
移植自我们429开发板?

从战舰移植到427的板子 我看源程序里也没配置dac、模拟io什么的,就可以接收摇杆数据了
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165508
金钱
165508
注册时间
2010-12-1
在线时间
2115 小时
发表于 2018-6-13 01:03:47 | 显示全部楼层
wwrrpp 发表于 2018-6-12 10:17
从战舰移植到427的板子 我看源程序里也没配置dac、模拟io什么的,就可以接收摇杆数据了

你是用USB驱动吧,当然和DAC没关系了。
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复

使用道具 举报

0

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2019-4-29
在线时间
1 小时
发表于 2019-7-18 21:31:47 | 显示全部楼层
我也有上述的问题,主要试的代码是按键  有时候按键按下之后也没有数值返回,或者是没有按下都会有数值的返回,代码基本是这样的 int main(void)
{               
        SystemInit();
        delay_init(168);                     //ÑÓʱº¯Êý³õʼ»¯          
        NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2); //ÉèÖÃNVICÖжϷÖ×é2:2λÇÀÕ¼ÓÅÏȼ¶£¬2λÏìÓ¦ÓÅÏȼ¶
        usart3_init(115200);         //´®¿Ú³õʼ»¯Îª115200
         uart_init(115200);         //´®¿Ú³õʼ»¯Îª115200
        LED_Init();                             //LED¶Ë¿Ú³õʼ»¯
        TIM3_Int_Init(9,83);//10KhzµÄ¼ÆÊýƵÂÊ£¬¼ÆÊýµ½5000Ϊ500ms
        printf("ok\r\n");         
         PS2_Init();
         PS2_Cmd(0x42);
        while(1)
  {
//         if( !PS2_RedLight()) //ÅжÏÊÖ±úÊÇ·ñΪºìµÆÄ£Ê½£¬ÊÇ£¬Ö¸Ê¾µÆLEDµãÁÁ
//                {
                        delay_ms(50);         //ÑÓʱºÜÖØÒª²»¿ÉÈ¥
                        PS2_DataKey();         //ÊÖ±ú°´¼ü²¶»ñ´¦
//                  key=PS2_DataKey();
             printf("key:%d\r\n",key);
                  if(key!=0)
      {

                          y=PS2_ReadData();       
                                printf("y:%d\r\n",y);
                        }
                        printf(" %5d %5d %5d %5d\r\n",PS2_AnologData(PSS_LX),PS2_AnologData(PSS_LY),PS2_AnologData(PSS_RX),PS2_AnologData(PSS_RY) );
                                delay_ms(50);                       
因为我移植的是F407的板子,pstwo.c也就改了一下IO口的配置
因为网上看pstwo是用spi通讯,也照着F103的spi的口(PB12,PB13,PB14,PB15)对应F4那边接过一次,还是不行,现在有点不知道是什么原因了
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-15 10:37

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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