数据手册没看完!所以不知道OptionByte,呵呵!才搞到这
/**********************
MCU初始化
**********************/
void MCU_init(void)
{
//~~~~~~~~~~时钟
//时钟操作模式选择积存器
OSCCTL_bit.no7=0;OSCCTL_bit.no6=1; //0、2-IO端口模式;1-晶震模式;3-外部时钟输入模式
PCC_bit.no6=0;OSCCTL_bit.no5=0;OSCCTL_bit.no4=1; //XTSTART位EXCLKS\OSCSELS副时钟设置 0\2-IO模式 1\4-晶体震荡器 3-外部时钟
OSCCTL_bit.no0=1; //AMPH位 1-10M 0;10-20M-1
//处理器时钟控制寄存器
//PCC_bit.no6= //XTSTART位
//PCC_bit.no5=0; //CLS位 0-主时钟系统;1-副时钟系统(只读)
PCC_bit.no4=0; //CSS 0-主时钟系统;1-副时钟系统
PCC_bit.no2=0;PCC_bit.no1=0;PCC_bit.no0=0; //(0-F主和F副/2)(1-F主/2)(2-F主/4)(3-F主/8)(4-F主/16)
//内部震荡模式积存器
//RCM_bit.no7=; //RSTS 0-等待内部高速震荡器稳定;1-内部高速震荡器稳定工作(只读)
//RCM_bit.no1=; //LSRSTOP 0-内部低速震荡器工作;1-内部低速震荡器停止
//RCM_bit.no0=; //RSTOP 0-内部高速震荡器工作;1-内部高速震荡器停止
//主OSC控制积存器
//MOC_bit.no7=; //MSTOP 0-允许来自EXCLK的时钟;1-禁止来自EXCLK的时钟
}
改成这样就没有之前的怪现象了
#include <io78f0513_44.h>
//#include <io78k0.h>
#define uchar unsigned char
#define uint unsigned int
/*************************************************
延时函数
需要延时长短的参数g,
*************************************************/
void delay(uint shijian)//延时函数
{
uchar xx,yy;
for(;shijian>0;shijian--)
{
for(xx=0;xx<250;xx++)
{
for(yy=0;yy<250;yy++);
}
}
}
/**********************
MCU初始化
**********************/
void MCU_init(void)
{
//~~~~~~~~~~时钟
//时钟操作模式选择积存器
OSCCTL_bit.no7=0;OSCCTL_bit.no6=1; //0、2-IO端口模式;1-晶震模式;3-外部时钟输入模式
PCC_bit.no6=0;OSCCTL_bit.no5=0;OSCCTL_bit.no4=1; //XTSTART位EXCLKS\OSCSELS副时钟设置 0\2-IO模式 1\4-晶体震荡器 3-外部时钟
OSCCTL_bit.no0=1; //AMPH位 1-10M 0;10-20M-1
//处理器时钟控制寄存器
//PCC_bit.no6= //XTSTART位
//PCC_bit.no5=0; //CLS位 0-主时钟系统;1-副时钟系统(只读)
PCC_bit.no4=0; //CSS 0-主时钟系统;1-副时钟系统
PCC_bit.no2=0;PCC_bit.no1=0;PCC_bit.no0=0; //(0-F主和F副/2)(1-F主/2)(2-F主/4)(3-F主/8)(4-F主/16)
//内部震荡模式积存器
//RCM_bit.no7=; //RSTS 0-等待内部高速震荡器稳定;1-内部高速震荡器稳定工作(只读)
//RCM_bit.no1=; //LSRSTOP 0-内部低速震荡器工作;1-内部低速震荡器停止
//RCM_bit.no0=; //RSTOP 0-内部高速震荡器工作;1-内部高速震荡器停止
//主OSC控制积存器
//MOC_bit.no7=; //MSTOP 0-允许来自EXCLK的时钟;1-禁止来自EXCLK的时钟
}
/**********************
//赋OptionByte值
**********************/
__root const unsigned char OptionByte[1] @0x0080 = {0x00}; //关看门狗
/************************************************
************************************************/
void main( void )
{
uchar rrt;
PM6=0X00; //P6设为输出口
while(1)
{
rrt=0x0e;P6=rrt;delay(150);
rrt=0x0d;P6=rrt;delay(150);
rrt=0x0b;P6=rrt;delay(150);
rrt=0x07;P6=rrt;delay(150);
}
}
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |