打印

99F226 端口测试例子,如何实现端口反转?

[复制链接]
1989|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
liangyh88|  楼主 | 2012-6-1 15:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
第一次用中颖芯片,且被推荐了99F226,现在做了个IO口测试程序,不正常,不
知哪里设置有误?还请熟悉的工程师帮忙修正。



#include "SH99F226.h"
typedef unsigned char uint8;
typedef unsigned int uint16;



/*
void d_us(uint8 time)
{
while(time--);
}
*/
void delay(uint16 time) //18us
{
uint8 time1;
while(time--)
{
  for(time1=0x10;time1>0;time1--);
}
}
void main(void)
{
delay(0x200);
INSCON&=~0x40; // 选择Bank0 的 SFR
P0CR=0xFF;
P1CR=0xFF;   
P3CR=0xFF;
P4CR=0xFF;
P5CR=0xFF;  
P0PCR=0xFF;
P1PCR=0xFF;   
P3PCR=0xFF;
P4PCR=0xFF;
P5PCR=0xFF;

P0=0xFF;
P1=0xFF;   
P3=0xFF;
P4=0xFF;
P5=0xFF;
/* INSCON|=0x40; // 选择Bank1 的 SFR
P2CR=0xFF;
P2PCR=0xFF;
*/ while(1)
{
  delay(0x200);
  P0^=0xFF;
  P1^=0xFF;   
  P3^=0xFF;
  P4^=0xFF;
  P5^=0xFF;
//  P2^=0x30;
//  P2=0xff;
}
}

99F226_IO.rar

8.6 KB

沙发
liangyh88|  楼主 | 2012-6-1 15:02 | 只看该作者
用表测试端口电压,无变化,为“0”V

使用特权

评论回复
板凳
liangyh88|  楼主 | 2012-6-1 15:48 | 只看该作者
晕,难道新推出的芯片没人熟悉,很后悔当初没用79F166的做板子测试。。。

使用特权

评论回复
地板
缥缈九哥| | 2012-6-2 23:15 | 只看该作者
下周上班帮助你测试一下。不要后悔。

使用特权

评论回复
5
缥缈九哥| | 2012-6-2 23:17 | 只看该作者
#include "SH88F516.h"


#define DELAY        60000

void gpio_test(void)
{
        unsigned int i;
        while(1)
        {
                P0=P1=P2=P3=P4=0x00;
                for(i=0;i<DELAY;i++);
                P0=P1=P2=P3=P4=0xff;
                for(i=0;i<DELAY;i++);
        }
}
//以上代码我在SH88F516中用过。直接写到MAIN中调用就行了。266我还没有试。

使用特权

评论回复
6
liangyh88|  楼主 | 2012-6-4 10:32 | 只看该作者
先谢过关注,我也已在88F54 板子中测试过如下的程序是正常的

#include "SinoWealth\SH88F54.h"

typedef unsigned char uint8;
typedef unsigned int uint16;

/*
void d_us(uint8 time)
{
        while(time--);
}
*/
void delay(uint16 time)        //18us
{
        uint8 time1;

        while(time--)
        {
                for(time1=0x10;time1>0;time1--);
        }
}

void main(void)
{
        delay(0x200);

/*        P0CR=0xFF;
        P1CR=0xFF;                 
        P3CR=0xFF;
        P4CR=0xFF;
        P0PCR=0xFF;
        P1PCR=0xFF;                 
        P3PCR=0xFF;
        P4PCR=0xFF;
*/       
        P0=0xFF;
        P1=0xFF;                 
        P3=0xFF;
        P4=0xFF;

        while(1)
        {
                delay(0x2000);

                P0^=0xFF;
                P1^=0xFF;                 
                P3^=0xFF;
                P4^=0xFF;
        }
}


只是在226的板子中还未调通,也将例程通过代理商发给上海中颖的工程师看过,未发现什么问题。下午再检查测试。

使用特权

评论回复
7
bananarer| | 2012-6-4 13:03 | 只看该作者
看你的 程序,应该是行的呀

使用特权

评论回复
8
liangyh88|  楼主 | 2012-6-7 10:18 | 只看该作者
本帖最后由 liangyh88 于 2012-6-7 11:25 编辑

程序没问题,已经测试通过。问题竟来自于99F226的工作电压,一开始看其PDF是2-5V的工作电压,所以我用了3V,但MCU竟然工作不了。后来无奈之下单独供电5V,才发现其正常工作。有可能是代码选项的设置LVR(默认值是4.3V)。

使用特权

评论回复
9
xiaoxiao2011| | 2012-9-13 14:21 | 只看该作者
你好,我也遇到了这个问题,不过我的电压是5v  现在还是不能控制端口,知道怎么回事吗?急啊

使用特权

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

本版积分规则

1

主题

7

帖子

0

粉丝