天嵌 ARM开发社区

 找回密码
 注册
查看: 3083|回复: 1

TQ2440 GPG口不受控制

[复制链接]
5297 发表于 2014-9-9 09:30:35 | 显示全部楼层 |阅读模式
最近在写一个模拟spi驱动,IO配置输出正确,但是管脚木有按照逻辑输出,输出电平不能改变,一直为高电平或一直为低电平,GPG14口可输出电平变化,而GPG13,木有波形属性
 楼主| 5297 发表于 2014-9-9 09:34:10 | 显示全部楼层
初始化IO口,v_pIOPregs->GPBCON  = (v_pIOPregs->GPBCON  &~(3 << 14)) | (1<< 14);        // GPB7 == OUTPUT.  CS
        v_pIOPregs->GPGCON  = (v_pIOPregs->GPGCON  &~(3 << 26)) | (1<< 13);        // GPG13 == OUTPUT .CLK
        v_pIOPregs->GPECON  = (v_pIOPregs->GPECON  &~(3 << 24)) | (1<< 24);        // GPE12 == OUTPUT.
v_pIOPregs->GPEDAT  &= ~(0x1 << 12);//输出低电平
    Delay(10);
        for (i = 0;i<16;i++)
        {  
                //v_pIOPregs->GPGDAT=v_pIOPregs->GPGDAT&~(0x1<<13);   //CLK   0
                v_pIOPregs->GPGDAT  &= ~(0x1 << 13);//输出低电平 CLK   0
                if (value&0x8000)   //
                {
                          //v_pIOPregs->GPBDAT=v_pIOPregs->GPBDAT|(0x1<<7);  //DAT   1
                          v_pIOPregs->GPBDAT  |= (0x1 << 7);//输出高电平
                }
                else
                {
                         //v_pIOPregs->GPBDAT=v_pIOPregs->GPBDAT&~(0x1<<7);  //DAT   0
                        v_pIOPregs->GPBDAT  &= ~(0x1 << 7);//输出低电平
                }
                Delay(8);
                //v_pIOPregs->GPGDAT=v_pIOPregs->GPGDAT|(0x1<<13);      //CLK   1
                v_pIOPregs->GPGDAT  |= (0x1 << 13);//输出高电平
                Delay(10);
                value<<=1;
        }
        Delay(10);
        //v_pIOPregs->GPEDAT=v_pIOPregs->GPEDAT|(0x1<<12); //  CS  1
        v_pIOPregs->GPEDAT  |= (0x1 << 12);//输出高电平
        控制部分
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号 )

GMT+8, 2024-4-20 19:36 , Processed in 1.062506 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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