ht66f0185单片机编译正常,烧录也正常,板子5V供电也正常,但就是输入输出端口电平不正常。每个端口都一样。
默认输入开上拉没有高电平在端口。设为输出低时,电平在3.5V左右,
接个LED时微亮且还闪烁,设为输出高时电平也在3.8V左右,LED不亮。有谁遇到过这种问题。哪位大神指点一下。
在while循环中的每个端口接LED都是一样。新手要漰溃了,哪位大师指点下哪设置不对,编译器有什么地方要特别设置。
#include "HT66F0185.h"
/****************************************************
数据类型重定义
****************************************************/
typedef unsigned int uint;
typedef unsigned char uchar;
#define en_5v _pd1
#define c5 _pc4
#define s1 _pc5
#define cord _pa1
#define s2 _pc3//_pc6
#define s0 _pc0
#define c1 _pc2
#define cord1 _pa3
void io_init()
{
_smod = 0x01; //fsys = fH bit0 = 1 f=8M不分频
// _lvrc=0xa5; //0xa5禁止低电复位
_wdtc=0xaf; //关看门狗。WDTC 01010开看门狗,10101关看门狗
// _fsyson=0;
// _idlen=1;
//内部上拉 1:打开,0:关闭
// _papu1=1; //DC检测
// _papu2=1; //usbwake
_pcpu0=0;
_pcpu1=0;
_pcpu2=0;
_pcpu3=0;
_pcpu4=0;
_pcpu5=0;
_pcpu6=0;
_pdpu1=0;
//输入输出设定
_pcc0=0; //LED_S0输出
// _pcc1=0; //LED_S1输出
_pcc2=0; //LED_C1输出
_pcc3=0; //LED_S2输出
_pcc4=0; //
_pcc5=0;
_pcc6=0;
// _pdc0=0; //
_pdc1=0; //设为输出;
// _pdc2=0;
//唤醒端口
// _pawu1=1; //DC唤醒使能
}
void main()
{
io_init();
_pcps3=1; //端口电流设定最大
_pcps2=1;
_pdps1=1;
_pdps0=1;
en_5v=1;
while(1)
{
// _wdtc = 0xA8; //清WDTC
// _pb1=1;
c1=0;
s0=1;
s2=1;
c5=1;
}
} |