资讯详情

N76E003AT20单片机串口0调试

一个按键1 若按下,即使 N76E003串口0 发送1到串口调试助手,但总有问题,哪个大神帮我。代码如下:

#include "n76e003.h"

#include "stdio.h"

#define uint32 unsigned int

//typedef unsigned int uint32;

void delay_us(int n)

{

int m;

for(m=0;m

}

void delay_ms(int j)

{

int k;

for(k=0;k

delay_us(1000);

}

void P0_P1_Mode(void)

{

P0M1=0x3A;P0M2=0x3B;//设置P0

P1M1=0xA0;P1M2=0xBF;//设置P1

}

sbit s1 = P0^0;

sbit s2 = P1^0;

sbit s3 = P1^1;

sbit s4 = P1^2;

sbit s5 = P1^3;

sbit s6 = P1^4;

void UART0_Init(uint32 Baud) //设置串口0

{

P0_P1_Mode();

ES=1; //使所有中断

ES=1; //串口0中断使能

ET1=0; ///关闭定时器1中断

SCON = 0x52; //串口0选择模式1 SM0=0 SM1=1REN=1TI=1

T3CON|=0x00; //选择定时器1 BRCK=0

PCON |=0x80; ////定时器1波特率加倍 SMOD=1

CKCON|=0x10; ///定时器1的时钟源是系统时钟 T1M=1

TMOD |=0x20; ///定时器1选择模式2 数值从8位计数器TH自动重新装载TL1 M1=1 M0=02^8=256

#ifdef FOSC_160000

TH1 = 256 - (1000000/Baud 1); /*16 MHz */

#endif

TCON |=0x40; ///定时器1启动 TR1=1

}

void Send_Data_UART0(int a)

{

TI=0;

SBUF=a; //

while(TI==0);

}

int main()

{

s1=1;

s2=1;

s3=1;

s4=1;

s5=1;

s6=1;

UART0_Init(9600);

while(1)

{

if(s1=0)

{ Send_Data_UART0(1); }

delay_ms(10);

if(s2=0)

{ Send_Data_UART0(2); }

delay_ms(10);

if(s3=0)

{ Send_Data_UART0(3); }

delay_ms(10);

if(s4=0)

{ Send_Data_UART0(4); }

delay_ms(10);

if(s5=0)

{ Send_Data_UART0(5); }

delay_ms(10);

if(s6=0)

{ Send_Data_UART0(6); }

delay_ms(10);

}

}

标签: e003公母对接连接器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台